1. sayfa (Toplam 2 sayfa)

Amxmodx Kod Anlamları

Gönderilme zamanı: Prş Eki 01, 2020 1:07 pm
gönderen bestcore
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ı

Gönderilme zamanı: Prş Eki 01, 2020 9:31 pm
gönderen Taha Demirbaş
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.).

Amxmodx Kod Anlamları

Gönderilme zamanı: Prş Eki 01, 2020 10:01 pm
gönderen bestcore
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.

Amxmodx Kod Anlamları

Gönderilme zamanı: Prş Eki 01, 2020 10:19 pm
gönderen ByBuLuT ☪
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...

Amxmodx Kod Anlamları

Gönderilme zamanı: Prş Eki 01, 2020 11:09 pm
gönderen bestcore
Sorular güzel, bende 4. soruyu soracaktım neden const id kullanılıyor ?
teşekkürler.

Amxmodx Kod Anlamları

Gönderilme zamanı: Cum Eki 02, 2020 1:10 am
gönderen Taha Demirbaş
ByBuLuT ☪ yazdı: Prş Eki 01, 2020 10:19 pm 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...
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.

Amxmodx Kod Anlamları

Gönderilme zamanı: Cum Eki 02, 2020 8:38 pm
gönderen bestcore
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.

Amxmodx Kod Anlamları

Gönderilme zamanı: Pzr Eki 04, 2020 8:37 pm
gönderen ByBuLuT ☪
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.

Amxmodx Kod Anlamları

Gönderilme zamanı: Pzr Eki 04, 2020 8:46 pm
gönderen bestcore
ByBuLuT ☪ yazdı: Pzr Eki 04, 2020 8:37 pm 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.
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.

Amxmodx Kod Anlamları

Gönderilme zamanı: Pzr Eki 04, 2020 11:35 pm
gönderen amad
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.
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.

2- Basit bir revmenu eklentisinde gerekli cevabı bulabilirsiniz.