Discord sunucumuz açılmıştır, hepinizi bekleriz

https://discord.gg/43gGDQe6tS

Amxmodx Kod Anlamları

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler

Kullanıcı avatarı

Konu Sahibi
bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

Amxmodx Kod Anlamları

Mesaj gönderen bestcore »

Teşekkürler.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Colditz
Mesajlar: 2574
Kayıt: Çrş Ağu 23, 2017 9:17 pm

Amxmodx Kod Anlamları

Mesaj gönderen Colditz »

Taha Demirbaş yazdı: Cum Eki 02, 2020 1:10 am 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.
Çok güzel anlatmış fakat bir yeri eksik. Connectex, bütün komutlardan önce aktif olur. Şu şekilde anlatayım.
Oyuncu sunucuya bağlandığı gibi connectex aktif olur, daha sonra connect, authorized, putin diye gider. Connectex de oyuncunun ismini, authidsini, ipsini alabiliyorsun fakat oyuncuya herhangi bir komut yollayamıyorsun (client_cmd vs).
Connect e geldiğimizde oyuncuya komut yollayabilmeye başlıyorsun.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

Amxmodx Kod Anlamları

Mesaj gönderen bestcore »

Colditz yazdı: Pzt Eki 05, 2020 1:18 am
Taha Demirbaş yazdı: Cum Eki 02, 2020 1:10 am 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.
Çok güzel anlatmış fakat bir yeri eksik. Connectex, bütün komutlardan önce aktif olur. Şu şekilde anlatayım.
Oyuncu sunucuya bağlandığı gibi connectex aktif olur, daha sonra connect, authorized, putin diye gider. Connectex de oyuncunun ismini, authidsini, ipsini alabiliyorsun fakat oyuncuya herhangi bir komut yollayamıyorsun (client_cmd vs).
Connect e geldiğimizde oyuncuya komut yollayabilmeye başlıyorsun.
Peki, bu eklentilerde public client_putinserver den sonra birkaç şey yazıyorlar değişkenler vs. bunları neden yazıyorlar çalışması için mi?

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

amad
Mesajlar: 1809
Kayıt: Cmt Nis 30, 2016 2:46 pm
Konum: Batman
Clan İsmi: Ke$`h | Gaming
İletişim:

Amxmodx Kod Anlamları

Mesaj gönderen amad »

bestcore yazdı: Pzt Eki 05, 2020 9:06 am Peki, bu eklentilerde public client_putinserver den sonra birkaç şey yazıyorlar değişkenler vs. bunları neden yazıyorlar çalışması için mi?
32/32'lik bir sunucuda tüm oyuncuların paralarının tutulduğu paralar[33] dizisini düşünün. 5 dakikada bir herkesin parası 5₺ artsın.
paralar[0] -> id'si 0 olan oyuncunun parası : 10
paralar[1] -> id'si 1 olan oyuncunun parası : 10
Bu iki oyuncu sunucudan ayrıldı. Yerine iki oyuncu geldi. Sunucudan çıkan oyuncuların id'si bu yeni kişilere verildi. Yani bu yeni kişilerin parasına ulaşmak istiyorsan yine paralar[0] ve paralar[1] kullanacağız. Ancak şöyle bir sorun var. Bu oyuncular yeni girmesine rağmen 5 dakika sonra alacakları 5₺ ile birlikte toplam 15'er TL'leri olacak. Bunun önüne geçebilmek için oyuncu oyuna girdiğinde başlangıç değeri ataması yapılır. Çıkarken de yapabilirsin ama en sağlıklısı oyuna girdiği andır.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

Amxmodx Kod Anlamları

Mesaj gönderen bestcore »

amad yazdı: Pzt Eki 05, 2020 2:49 pm
bestcore yazdı: Pzt Eki 05, 2020 9:06 am Peki, bu eklentilerde public client_putinserver den sonra birkaç şey yazıyorlar değişkenler vs. bunları neden yazıyorlar çalışması için mi?
32/32'lik bir sunucuda tüm oyuncuların paralarının tutulduğu paralar[33] dizisini düşünün. 5 dakikada bir herkesin parası 5₺ artsın.
paralar[0] -> id'si 0 olan oyuncunun parası : 10
paralar[1] -> id'si 1 olan oyuncunun parası : 10
Bu iki oyuncu sunucudan ayrıldı. Yerine iki oyuncu geldi. Sunucudan çıkan oyuncuların id'si bu yeni kişilere verildi. Yani bu yeni kişilerin parasına ulaşmak istiyorsan yine paralar[0] ve paralar[1] kullanacağız. Ancak şöyle bir sorun var. Bu oyuncular yeni girmesine rağmen 5 dakika sonra alacakları 5₺ ile birlikte toplam 15'er TL'leri olacak. Bunun önüne geçebilmek için oyuncu oyuna girdiğinde başlangıç değeri ataması yapılır. Çıkarken de yapabilirsin ama en sağlıklısı oyuna girdiği andır.
Güzel anlattınız teşekkürler Anladım. Başka birşeye aklım takılırsa tekrar konuya yazarım. Tekrardan teşekkürler.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

Amxmodx Kod Anlamları

Mesaj gönderen bestcore »

Soru 1 : Bir eklenti sonunda bulunan return X; - X'in yerine yazılan kelimelerin anlamları.(Bazen return 0, plugin_handled , 1 vs. yerine return değişken yazılıyor.(buraya nasıl bir değişken atanıyor.)

Soru 2 : En üste yazılan new xxx,xxx,xxx; , buraya ne zaman kelime yazmamız gerekiyor ? yani eklentide yeni bir değişken atayınca mı ?

Soru 3 : Bazı publiclerde id,menu,item yerine victim,inflictor,attacker, vs. yazıyor bunların anlamları ve neden koyuldukları.

Soru 4 : Enum kodu ne işe yarar ?

Cevaplar için şimdiden teşekkürler.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

ENESIZM
Mesajlar: 2175
Kayıt: Prş Tem 06, 2017 10:44 pm
Konum: Mersin
Server Ip/DNS: MoonDeveloperTeam
İletişim:

Amxmodx Kod Anlamları

Mesaj gönderen ENESIZM »

bestcore yazdı: Cmt Eki 10, 2020 4:31 pm Soru 1 : Bir eklenti sonunda bulunan return X; - X'in yerine yazılan kelimelerin anlamları.(Bazen return 0, plugin_handled , 1 vs. yerine return değişken yazılıyor.(buraya nasıl bir değişken atanıyor.)

Soru 2 : En üste yazılan new xxx,xxx,xxx; , buraya ne zaman kelime yazmamız gerekiyor ? yani eklentide yeni bir değişken atayınca mı ?

Soru 3 : Bazı publiclerde id,menu,item yerine victim,inflictor,attacker, vs. yazıyor bunların anlamları ve neden koyuldukları.

Soru 4 : Enum kodu ne işe yarar ?

Cevaplar için şimdiden teşekkürler.
bende bildiğim kadarı ile anlatayım, umarım eksik bir şey söylemem

s1-cevap: public sonuna yazdığın return kodları o public'e veya döngüye daha sonra ne yapması gerektiğini söyler. mesela:

Kod: Tümünü seç

public dvmgana(id) {
	new teams=get_user_team(id);
	switch(teams){
		case 1: anamenu(id);
		case 2: mgtlver(id);
	}
	return PLUGIN_HANDLED;
s2-cevap: aynı kodu daha kolay ve hatırlayabileceğin biçimde yazmak için kullanırsın. mesela:

Kod: Tümünü seç

public dvmgana(id) {
	new teams=get_user_team(id);
	switch(teams){
		case 1: anamenu(id);
		case 2: mgtlver(id);
	}
	return PLUGIN_HANDLED;
switch(teams) yerine uzun uzun switch(get_user_team(id)) mı istersin ?

s3-cevap: aslında soruyu biliyorum ama nasıl cevaplayacağımı bilmiyorum, mantığımı kullanarak cevap vereceğim

o public'in kim veya ne için kullanacağını belirtiyor. mesela:

Kod: Tümünü seç

public TakeDamage(victim, inflictor, attacker, Float:damage, damage_bits)
burada, bu public'in hasar alan kişi/oyuncu için olacağını belirtiyor. ya da tanıtıyor.

Kod: Tümünü seç

if(is_user_connected(attacker) && is_user_connected(victim) && victim != attacker)
pardon tanıtıyor, burada belirtiyor.

Kod: Tümünü seç

public TakeDamage(victim, inflictor, attacker, Float:damage, damage_bits) {
	if(is_user_connected(attacker) && is_user_connected(victim) && victim != attacker)
s4-cevap: bilmiyorum

bildiğim kadarı ile cevap verdim. dört dörtlük bilgim yok maalesef. umarım yardımcı olabilmişimdir.

Link:
Linklerini gizle
Linki Kopyala

WhiteMan
Mesajlar: 15
Kayıt: Çrş Haz 10, 2020 5:50 pm

Amxmodx Kod Anlamları

Mesaj gönderen WhiteMan »

bestcore yazdı: Cmt Eki 10, 2020 4:31 pm Soru 1 : Bir eklenti sonunda bulunan return X; - X'in yerine yazılan kelimelerin anlamları.(Bazen return 0, plugin_handled , 1 vs. yerine return değişken yazılıyor.(buraya nasıl bir değişken atanıyor.)

Soru 2 : En üste yazılan new xxx,xxx,xxx; , buraya ne zaman kelime yazmamız gerekiyor ? yani eklentide yeni bir değişken atayınca mı ?

Soru 3 : Bazı publiclerde id,menu,item yerine victim,inflictor,attacker, vs. yazıyor bunların anlamları ve neden koyuldukları.

Soru 4 : Enum kodu ne işe yarar ?

Cevaplar için şimdiden teşekkürler.
Cevap 1: geri dönüş değerini ayarlıyorsun bir matematik işlemini bir kaç yerde hesaplattırıcaksın 4-5 farklı yerde aynı kodları yazmak yerine bir fonksiyona atıyıp orda bu işlemleri yaptırıp return ile döndürürsen o fonksiyon o işlemin değerini döndürür örneğin

Kod: Tümünü seç

,
public test(){
	new mathvalue = math(1,5);
	bu değişkene 6 değer gelecektir
}
public math(val1,val2){
	return val1+val2;
}

Cevap 2: orası değişken adı genel bir yapı var dünya geleninde fakat istediğini yazabilirsin new'den sonra değişken adı bölümüne örneğin

Kod: Tümünü seç

new bestcore
new bool:bestcoreb
new Float:bestcoref
new Handle:bestcoreh
Cevap 3: örneğin herkes o örneği verdiği için onun üzerinden örneğe devam edelim orasıda bir tanımlama olduğu için istediğini yazabilirsin yani victim yerine hasaralan da yazabilirsin attacker yerine saldiran da yazabilirsin.

Cevap 4: enum bir veri yapısı ve bu yapı oldukça popüler Türkçe anlatım yapmaya kalkarsak konu bitmez eklenti öğrenmeye hevesin olduğuna göre ingilizcenin olması gerek diye düşünüyorum o yüzden bir anlatım konusu ekliyorum alta
https://forums.alliedmods.net/showthread.php?t=140103

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Taha Demirbaş
Mesajlar: 10424
Kayıt: Cum Tem 08, 2016 10:05 pm
Konum: Türkiye
İletişim:

Amxmodx Kod Anlamları

Mesaj gönderen Taha Demirbaş »

bestcore yazdı: Cmt Eki 10, 2020 4:31 pm Soru 1 : Bir eklenti sonunda bulunan return X; - X'in yerine yazılan kelimelerin anlamları.(Bazen return 0, plugin_handled , 1 vs. yerine return değişken yazılıyor.(buraya nasıl bir değişken atanıyor.)
İçinde bulundukları publicin yada stockun , sınıfın eylem bittiğinde geri döndüreceği veriyi belirliyor. retun 0 negatif, 1 pozitif döndürür. Fakat PLUGIN_HANDLED,PLUGIN_CONTINUE gibi kodlar müdahale eder. Genelde publicin çalışmasını bitirmek istediğimiz zaman PLUGIN_HANDLED kullanırız. Fakat arkada başka bir komut dönüyor ya da bir döngü içerisinde sorgulanan değerin atlanmasını ama işlemin bitirilmemesini istiyorsak PLUGIN_CONTINUE kullanırız. Bunlar kullanılan kütüphanelere göre de değişkenlik gösteriyor. Hamsandwich, reapi kütüphanelerinde değişik geri dönüş kodları bulunuyor.

bestcore yazdı: Cmt Eki 10, 2020 4:31 pm Soru 2 : En üste yazılan new xxx,xxx,xxx; , buraya ne zaman kelime yazmamız gerekiyor ? yani eklentide yeni bir değişken atayınca mı ?
Onların en üste yazılmasının sebebi tüm publiclerden erişilebilir olması gerekmesi. Yani en üstte tanımlanan değişkenler ile birden fazla publicte işlem yapılabilir. Hepsinde aynı veri bellekte tutulur.
bestcore yazdı: Cmt Eki 10, 2020 4:31 pm Soru 3 : Bazı publiclerde id,menu,item yerine victim,inflictor,attacker, vs. yazıyor bunların anlamları ve neden koyuldukları.
id,menu,item menüler ve onların handler publicleri için gerekli olan tanımlamalar. Bunlar menü yazış stiline göre değişecektir. Peşin bir şey yazamam bunlarla alakalı. Ama genelde herkes neredeyse aynı menü kalıbını kullandığı için onlar genellikle her eklentide bulunur.

Victim,inflictor,attacker ler ise oyuncu hasar alınca, ölünce gibi çalışan publiclerde kullanılıyor. saldırganın verisini taşıyan attacker, kurbanın verisini taşıyan victim gibi..
bestcore yazdı: Cmt Eki 10, 2020 4:31 pm Soru 4 : Enum kodu ne işe yarar ?
enum'u genelde ben dosyadan ya da bir yerden çektiğim stringleri consta çevirmek için kullanıyorum. tek bir enum değişkeni içerisinde birden fazla veri taşıyabiliyorsunuz. Bir nevi array gibi. Ama tam tanımı bu değil.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

Konu Sahibi
bestcore
Mesajlar: 1625
Kayıt: Cmt Eyl 30, 2017 12:44 pm
Konum: Samsun

Amxmodx Kod Anlamları

Mesaj gönderen bestcore »

Hepinize ayrı ayrı teşekkür ederim çok güzel anlatımlar yaptınız. Kendimizi böyle böyle geliştirmeye çalışacağız artık. Tekrardan teşekkürler.

Link:
Linklerini gizle
Linki Kopyala
Cevapla