# PropertyAdd

- **Ortam:** İstemci, Sunucu
- **İngilizce aslı:** https://wiki.facepunch.com/gmod/Structures/PropertyAdd
- **Çeviri tarihi:** 2025-09-08

## Açıklama

[properties.Add](https://gmod.tr/wiki/properties.Add) için kullanılan yapıdır.

## Üyeler

- [string](https://gmod.tr/wiki/string) **Type**

  Bu özelliği bir açma/kapama özelliği yapmak için "toggle" olarak ayarlanabilir.

  **Varsayılan:** `"simple"`

- [string](https://gmod.tr/wiki/string) **MenuLabel**

  Açılan menüde gösterilecek etiket

- [string](https://gmod.tr/wiki/string) **MenuIcon**

  Bu öğe için açılan menüde gösterilecek simge. Basit özellikler için isteğe bağlıdır ve açma/kapama özellikleri için kullanılmaz.

- [number](https://gmod.tr/wiki/number) **Order**

  Özellik, diğer özelliklere göre listenin neresinde konumlandırılmalıdır.

  Referans olarak, varsayılan özellikler ve Order değerleri aşağıdadır:

  | Özellik | Order |
  |---|---|
  | Kemik Manipülasyonu | 500 |
  | Gövde Grupları | 600 |
  | Görünüm | 601 |
  | Dik Tut | 900 |
  | Ateşle/Söndür | 999 |
  | Kaldır | 1000 |
  | Yer Çekimi | 1001 |
  | Sür | 1100 |
  | Çarpışma | 1500 |
  | Heykel | 1501 |
  | NPC Büyüt/Küçült | 1799, 1800 |
  | Hareket Kontrolü (Kinect) | 2500 |
  | [Özellikleri Düzenle](https://gmod.tr/wiki/Editable_Entities) | 90001 |

- [boolean](https://gmod.tr/wiki/boolean) **PrependSpacer**

  Bu özellikten önce bir ayırıcı eklenip eklenmeyeceği. Bu, genellikle bir özellik grubundaki ilk özellik için true olmalıdır.

  **Varsayılan:** `false`

- [function](https://gmod.tr/wiki/function) **Filter**

  Bu özelliğin bir varlık için gösterilip gösterilmeyeceğine karar vermek için **istemci tarafında** kullanılır.

  [gamemode.Call](https://gmod.tr/wiki/gamemode.Call) veya [hook.Run](https://gmod.tr/wiki/hook.Run) aracılığıyla bu hook'ta [GM:CanProperty](https://gmod.tr/wiki/GM:CanProperty)'yi çağırmak iyi bir uygulamadır.

  Fonksiyon argüman(lar)ı:

  1. [table](https://gmod.tr/wiki/table) **self** - özellik tablosu

  2. [Entity](https://gmod.tr/wiki/Entity) **ent** - oyuncunun tıkladığı varlık

  3. [Player](https://gmod.tr/wiki/Player) **player** - [LocalPlayer](https://gmod.tr/wiki/Global.LocalPlayer)

  Fonksiyon dönüş değeri/değerleri:

  1. [boolean](https://gmod.tr/wiki/boolean) **check** - Özellik bu varlık için gösterilecekse true döndürün.

- [function](https://gmod.tr/wiki/function) **Checked**

  Açma/kapama özellikleri için gereklidir (istemci tarafı).

  Fonksiyon argüman(lar)ı:

  1. [table](https://gmod.tr/wiki/table) **self** - özellik tablosu

  2. [Entity](https://gmod.tr/wiki/Entity) **ent** - oyuncunun tıkladığı varlık

  3. [table](https://gmod.tr/wiki/table) **tr** - oyuncunun göz izi

  Fonksiyon dönüş değeri/değerleri:

  1. [boolean](https://gmod.tr/wiki/boolean) **check** - Özellik kullanıcı arayüzünde işaretli görünmesi gerekiyorsa true döndürün.

- [function](https://gmod.tr/wiki/function) **Action**

  Özellik tıklandığında **istemci tarafında** çağrılır

  Fonksiyon argüman(lar)ı:

  1. [table](https://gmod.tr/wiki/table) **self** - özellik tablosu

  2. [Entity](https://gmod.tr/wiki/Entity) **ent** - oyuncunun tıkladığı varlık

  3. [table](https://gmod.tr/wiki/table) **tr** - oyuncunun göz izi

  Uygun olduğunda, bu fonksiyon içinde `self:MsgStart()`'ı çağırabilir, [net](https://gmod.tr/wiki/net).`Write*` fonksiyonları ile veri yazabilir ve `self:MsgEnd()` ile bitirebilirsiniz. Bu, sunucudaki `Receive` fonksiyonunu etkinleştirir. Çoğu durumda, varsayılan olarak yapılmadığı için varlığı sunucuya göndermek isteyeceksiniz.

- [function](https://gmod.tr/wiki/function) **Receive**

  İstemci `Action` fonksiyonunda bir mesaj gönderirse **sunucu tarafında** çağrılır (yukarıya bakın).

  Fonksiyon argüman(lar)ı:

  1. [table](https://gmod.tr/wiki/table) **self** - özellik tablosu

  2. [number](https://gmod.tr/wiki/number) **len** - net mesajının uzunluğu, ancak bu dahili olarak kullanılan özellik tanımlayıcısını (özelliğin adı) içerir

  3. [Player](https://gmod.tr/wiki/Player) **ply** - özelliğe tıklayan oyuncu

  [net](https://gmod.tr/wiki/net).`Read*` fonksiyonları ile istemciden alınan verileri okuyabilirsiniz. Burada [gamemode.Call](https://gmod.tr/wiki/gamemode.Call) veya [hook.Run](https://gmod.tr/wiki/hook.Run) aracılığıyla [GM:CanProperty](https://gmod.tr/wiki/GM:CanProperty)'yi kontrol etmek iyi bir uygulamadır.

- [function](https://gmod.tr/wiki/function) **MenuOpen**

  Özellik seçeneği sağ tıklama menüsünde oluşturulduğunda **istemci tarafında** çağrılır. Bu, açma/kapama özellikleri için çağrılmaz!

  Fonksiyon argüman(lar)ı:

  1. [table](https://gmod.tr/wiki/table) **self** - özellik tablosu

  2. [DMenuOption](https://gmod.tr/wiki/DMenuOption) **option** - menü seçeneği

  3. [Entity](https://gmod.tr/wiki/Entity) **ent** - oyuncunun sağ tıkladığı varlık

  4. [table](https://gmod.tr/wiki/table) **tr** - oyuncunun göz izi

- [function](https://gmod.tr/wiki/function) **OnCreate**

  `MenuOpen` ile aynıdır, ancak açma/kapama özellikleri için de çağrılır ve farklı argümanlara sahiptir. Bu, `MenuOpen`'dan hemen sonra çağrılır, ancak arada hiçbir şey olmaz, bu yüzden her zaman birini veya diğerini kullanmalısınız.

  Fonksiyon argüman(lar)ı:

  1. [table](https://gmod.tr/wiki/table) **self** - özellik tablosu

  2. [DMenu](https://gmod.tr/wiki/DMenu) **menu** - özellik menüsü

  3. [DMenuOption](https://gmod.tr/wiki/DMenuOption) **option** - menü seçeneği

- [GMod Wiki ana sayfası](https://gmod.tr/wiki)

---

[Tüm sunucular](https://gmod.tr/) · [GmodTR Launcher](https://gmod.tr/launcher) · [Rehber](https://gmod.tr/rehber) · [GMod Wiki](https://gmod.tr/wiki) · [GmodTR nedir?](https://gmod.tr/hakkinda) · [Sunucu ekle](https://gmod.tr/sunucu-ekle) · [Discord](https://discord.gg/gmodtr)

Kaynak: https://gmod.tr/wiki/Structures/PropertyAdd
