Arkadaşlar merhaba,
Bu konunun altına Kod yazmayı iyi bilen arkadaşlar belirttiğim soruların cevaplarını detaylı bir şekilde yazarsanız sevinirim.
Not 1: Bu konuyu açma amacım hem kendim için hemde ihtiyacı olan başka arkadaşlara bilgi amaçlı olması.
Not 2: Günlük 1,2 tane böyle konular ile gelişmeye çalışmak.
Soru 1 : Örneğin new xxxx[33] , new xxxx[128] , new xxx[33][128] (aynı anda), bunlarda parantez içlerinin anlamları.
Soru 2 : Örneğin new bool:xxx[33] , new bool:xx[128] , boolun ne zaman kullanacagımız ve yanındaki rakamların anlamları.
Soru 3 : Örneğin new Float: xxxx[MAX Clients +1] , floatın ne zaman kullanacagımız ve yanındaki parantez içinin anlamı.
Amxmodx Kod Anlamları
Moderatör: Moderatörler
-
Konu Sahibi - Mesajlar: 1625
- Kayıt: Cmt Eyl 30, 2017 12:44 pm
- Konum: Samsun
Amxmodx Kod Anlamları
1. Soru Cevabı : xxxx[33]: Değişkenin array yani dize olduğunu belirtir. Ve bu dizenin 0 ile 33 ayrı verinin taşınabileceğini belirtir. Eğer xxx[33][33] ise çift boyut oluyor. 33 değer aralığındadır. Yani her bir boyut 0 ile 33 değer aralığında en fazla 32 ayrı dizeye sahip olabilir.
2. Soru Cevabı : new bool:xxx[33] mantıksal değer döndürecektir. Ve mantıksal bir değer girilebilir. Bu değerler ise 1 ile 0 arasında olacaktır. Bu değerler true ve false de olabilir. Yani pozitif ve pozitif olmayan-natural de negatif sayılıyor, doğru- yanlış olarak değer döndürür.
3. Soru Cevabı : Float : virgüllü , kesirli(virgüllü) sayı anlamına gelir. Mesela integer direkt 3 değerini integer olarak döndürebiliriz .Fakat 3,5 değerini float olarak virgüllü olarak döndürüz. C dillerinde bunu double olarak da döndürebiliriz. Fakat pawn dili daha salt bir dil olduğundan float ile işlem yapılır.
Maxclients = Max serverdeki olabilecek oyuncu sayisi (artı) kalan dize değeri(32 max oyuncu sayısı için artı 1 slot bırakılır fakat bu boş slot değildir. Değer aralığı olduğu için sınırdır.).
2. Soru Cevabı : new bool:xxx[33] mantıksal değer döndürecektir. Ve mantıksal bir değer girilebilir. Bu değerler ise 1 ile 0 arasında olacaktır. Bu değerler true ve false de olabilir. Yani pozitif ve pozitif olmayan-natural de negatif sayılıyor, doğru- yanlış olarak değer döndürür.
3. Soru Cevabı : Float : virgüllü , kesirli(virgüllü) sayı anlamına gelir. Mesela integer direkt 3 değerini integer olarak döndürebiliriz .Fakat 3,5 değerini float olarak virgüllü olarak döndürüz. C dillerinde bunu double olarak da döndürebiliriz. Fakat pawn dili daha salt bir dil olduğundan float ile işlem yapılır.
Maxclients = Max serverdeki olabilecek oyuncu sayisi (artı) kalan dize değeri(32 max oyuncu sayısı için artı 1 slot bırakılır fakat bu boş slot değildir. Değer aralığı olduğu için sınırdır.).
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 1625
- Kayıt: Cmt Eyl 30, 2017 12:44 pm
- Konum: Samsun
Amxmodx Kod Anlamları
Cevaplar için teşekkürler, güzel bir anlatım yaptınız, birdahaki konumda da böyle amxmodx ile ilgili bilgi konusu açıcağım. Tekrardan teşekkürler.
Link: | |
Linklerini gizle |
-
- Mesajlar: 2368
- Kayıt: Sal Oca 26, 2016 3:54 pm
- Konum: Samsun
- Clan İsmi: -
- İletişim:
Amxmodx Kod Anlamları
bu konu altından devam edilebilir bence.
Soruda sorayım,
1) new - static farkı
2) %s %n %i %d %L anlam ve kullanım yerleri
3) connect , connectex , putinserver farkları
4) public'de neden id değil const id
mesela...
Soruda sorayım,
1) new - static farkı
2) %s %n %i %d %L anlam ve kullanım yerleri
3) connect , connectex , putinserver farkları
4) public'de neden id değil const id
mesela...
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 1625
- Kayıt: Cmt Eyl 30, 2017 12:44 pm
- Konum: Samsun
Amxmodx Kod Anlamları
Sorular güzel, bende 4. soruyu soracaktım neden const id kullanılıyor ?
teşekkürler.
teşekkürler.
Link: | |
Linklerini gizle |
Amxmodx Kod Anlamları
Cevap 1 : new : "Sadece pawn dili için açıklama yapıyorum" , Yeni obje tanımlamada kullanılıyor. string,constant, integer vs. tanımlamayı bir kere yapar. Tek sefer döner ve her aynı kod okunuşunda ramdaki veriyi silip üstüne yazacaktır.(en basit anlatımı).
static : ise bir objenin(string,integer gibi) bir kere tanımlanıp aynı kod 2. defa döndüğünde ramdaki(bellek) veri üzerinden işlem yapılacaktır. Yani sıfırlanmadan işlem görecektir. İsterseniz static ile tanımlandırdığınız bir değişken üzerinden toplama çıkartma işlemi yaptırın dediğimi anlayacaksınız.
Cevap 2: Burada bahsetmiş olduğunuz karakterleri değişken verilerin joker karakterleri gibi düşünün. Bu belirteçler constant(sabit) değişkenlerde işe yaramazlar. Sadece değişken objelerde işe yarayacaktır.
%s : Bulunduğu yere string geleceğini belirtir.
%n : bu belirteç kullanıcının ismini çekmek için kullanılmakta genelde.
%i : bu belirteç bulunduğu alanda sayı olacağını belirtir. Genelde bu sayı sabit olur. (cvar gibi fonksiyonlar kabul edilmiyor genelde)
%d: Bu belirteç bulunduğu alana %i gibi sayı getirir. Cvarlarda ve bazı string lerde bu belirteç kullanılır. Burada önemli olan sayılar bazen string olarak işleme alınır. Bunun sebebi veri kaynağının tipi ve değişkenin biçimi + aktarılış biçimidir. Fakat bir metni sayı olarak algılatamazsınız.
%L Kütüphane verisi nin bu alana geleceğini belirtir. Bu belirteçi kullanmak için dictionary(sözlük) tanıtmış olmanız gerekir.
Cevap 3 : connect : oyuncu sunucuya bağlandığı anda etkileşime geçen kodların bulunduğu public tir. connectex le arasında öyle bi fark yoktur. Connectex te oyuncu bağlanırken nicki ip port gibi bilgileri alınabiliyor diye biliyorum.
putinserver : bu public ise oyuncu oyuna bağlanır ve motd ekranını gördüğünde ilk sunucu ile fiziksel etkileşime girdiği anda(motd nin OK) butonuna tıkladığı zaman devreye girmektedir.
authorized: bu public ise sunucuya girdiğinizde konsolu açtığınızda karşınıza ":Haklar onaylandı. " gibi bir yazı çıkacaktır. O oyuncunun sunucuda gerekli oturumu açtığını belirtir. O esnada yapılan işlemler bu publicte işleme alınmaktadır.
Cevap 4 :
public başlarken id de kullanabilirsin const id de. O kodlamaya kalmış bir şey. Fakat const kullandığınızda id değişkeni sabit olacaktır. Yani publicin içerisinde id değişkeni ile const ifadesini kaldırmadan işlem yapamayacaksınız.
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 1625
- Kayıt: Cmt Eyl 30, 2017 12:44 pm
- Konum: Samsun
Amxmodx Kod Anlamları
Soru 1 : Bir menüde bilgi olarak kaybolma süresi eklemek istiyorum ve burada şöyle yazıcak, kaybolma süresi : xx saniye ve bu belirlediğimiz süre ile kaybolacak geri sayım yaparak. Bunu nasıl yapabilirim menüye hangi kodları eklemem gerek.
Soru 2 : Menüde seçeneğe tıklayınca oyuncunun kendisini revlemesini nasıl sağlayabilirim. Server_cmd ile mi ? tam kod olarak atarmısınız.
Soru 2 : Menüde seçeneğe tıklayınca oyuncunun kendisini revlemesini nasıl sağlayabilirim. Server_cmd ile mi ? tam kod olarak atarmısınız.
Link: | |
Linklerini gizle |
-
- Mesajlar: 2368
- Kayıt: Sal Oca 26, 2016 3:54 pm
- Konum: Samsun
- Clan İsmi: -
- İletişim:
Amxmodx Kod Anlamları
soru 1i tam anlamadım ne kaybolacak
soru 2 de ise server_cmd yapılmaması gereken tek şey olabilir. Farklı kütüphanelerde(include) farklı revleme komutları mevcut. Eklenti düzenlemeye başlamadan önce yazılı eklentileri okuyup anlamaya çalışmanı öneririm.
soru 2 de ise server_cmd yapılmaması gereken tek şey olabilir. Farklı kütüphanelerde(include) farklı revleme komutları mevcut. Eklenti düzenlemeye başlamadan önce yazılı eklentileri okuyup anlamaya çalışmanı öneririm.
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 1625
- Kayıt: Cmt Eyl 30, 2017 12:44 pm
- Konum: Samsun
Amxmodx Kod Anlamları
Teşekkürler, 1. soru da mesela rokette geri sayım yapılıyor 10 , 9 , 8 gibi bende açılan bir menünün 3 saniye geri doğru sayacak ve menü kapatılacak, bunu sormak istemiştim örnek eklentide atabilirsin.
Link: | |
Linklerini gizle |
-
- Mesajlar: 1809
- Kayıt: Cmt Nis 30, 2016 2:46 pm
- Konum: Batman
- Clan İsmi: Ke$`h | Gaming
- İletişim:
Amxmodx Kod Anlamları
1- Kalan süreyi kullanıcıya dinamik olarak göstermek istiyorsanız menüyü kullanıcı için tekrar tekrar çağırmalısınız. Yani bu yapıya göre menüyü bir defa bastırıp süreyi birer defa azaltmayacaksınız. Menüyü her saniyede bir (süre değişkenini 1 azaltarak) ekrana basacaksınız. Bunun örneği de n.dgn'ın paylaştığı ctmenu eklentilerinde mevcut.bestcore yazdı: ↑Cum Eki 02, 2020 8:38 pm Soru 1 : Bir menüde bilgi olarak kaybolma süresi eklemek istiyorum ve burada şöyle yazıcak, kaybolma süresi : xx saniye ve bu belirlediğimiz süre ile kaybolacak geri sayım yaparak. Bunu nasıl yapabilirim menüye hangi kodları eklemem gerek.
Soru 2 : Menüde seçeneğe tıklayınca oyuncunun kendisini revlemesini nasıl sağlayabilirim. Server_cmd ile mi ? tam kod olarak atarmısınız.
2- Basit bir revmenu eklentisinde gerekli cevabı bulabilirsiniz.
Link: | |
Linklerini gizle |