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

https://discord.gg/43gGDQe6tS

Eklenti Yazma Bilgi Konusu ile ilgili istekler

Diğer forum kategorileri dışında kalan herşey.

Moderatör: Moderatörler

Kullanıcı avatarı

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

Eklenti Yazma Bilgi Konusu ile ilgili istekler

Mesaj gönderen Colditz »

Merhabalar,
Bildiğiniz ve gördüğünüz üzere yazar arkadaşlar için bilgiler paylaşıyorum.
gelistirme-arac-gerecler/eklenti-yazarligi-t47494.html

Bu konuyu; anlatmamı, paylaşmamı istediğiniz bir şeyin olup olmadığını öğrenmek için açtım. Yorum olarak bu konu altında belirtebiliriz. Konuyla alakasız yorumlar atmamanızı istiyorum. Video çekemiyorum maalesef bu yüzden kodları açıklıyorum. Umarım yardımcı olabiliyorumdur. Taslağa uygun şekilde yorumunuzu belirtirseniz daha iyi olur. Bilgiler yeni başlayanlar için değil de biraz daha bilgisi olanlar için yazılmıştır.

Örnek bir yorum;
Oyuncuları çekerken get_players mı yoksa for mu kullanacağım bilmiyorum. Arasındaki farkı ve nasıl kullanılması gerektiğini anlatabilir misin?

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

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

Eklenti Yazma Bilgi Konusu ile ilgili istekler

Mesaj gönderen bestcore »

Array komutları kullanım şekli (ArrayPushArray, ArrayGetArray, ArraySize vs.) ve bunları ne tür bir eklenti yaparken kullanmalıyız.

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

bilalgecer47
Mesajlar: 729
Kayıt: Çrş Ağu 22, 2018 9:20 pm

Eklenti Yazma Bilgi Konusu ile ilgili istekler

Mesaj gönderen bilalgecer47 »

Elsonu ve elbaşı için amxmodxteki eventlerimi kullanmak daha iyi reapideki hooklarımı?
Örnek :

Kod: Tümünü seç

register_event("HLTV", "elbasi", "a", "1=0", "2=0");

Kod: Tümünü seç

RegisterHookChain(RG_CSGameRules_RestartRound, "@CSGameRules_RestartRound_Pre", .post = false);
Yine aynı şekilde amxmodx kütüphanesindeki

Kod: Tümünü seç

get_user_team
komutumu

Kod: Tümünü seç

get_member(pPlayer, m_iTeam)
komutumu daha iyi?

Bunlar sadece örnek asıl soru amxmodxle yapılan şeyleri reapiyle yapmakmi daha iyi yoksa olmayan komutlar içinmi reapi kullanımı daha iyi?

Ekstradan

Kod: Tümünü seç

register_event_ex("CurWeapon","@eCurWeapon",RegisterEvent_Single|RegisterEvent_OnlyAlive,"1=1");
curweapon yani silah değişince aktifleşen eventin reapide karşılığı varmı?

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

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

Eklenti Yazma Bilgi Konusu ile ilgili istekler

Mesaj gönderen Colditz »

Buraya kişisel istek değil de herhangi bir işlevin nasıl yapıldığını sormanızı istiyorum. Örneğin şunun reapi hâli var mı gibi sorular istemiyorum, lütfen.
Herhangi bir teşekkür cevabı da istemiyorum. Yorumlar sadece isteğe ve çözüme bağlı olmalı.
bestcore yazdı: Pzt Mar 08, 2021 11:17 am Array komutları kullanım şekli (ArrayPushArray, ArrayGetArray, ArraySize vs.) ve bunları ne tür bir eklenti yaparken kullanmalıyız.
Notlarıma ekledim.
bilalgecer47 yazdı: Pzt Mar 08, 2021 5:16 pm Elsonu ve elbaşı için amxmodxteki eventlerimi kullanmak daha iyi reapideki hooklarımı?
Yine aynı şekilde amxmodx kütüphanesindeki komut mu yoksa get_member komutu mu daha iyi?
Bunlar sadece örnek asıl soru amxmodxle yapılan şeyleri reapiyle yapmakmi daha iyi yoksa olmayan komutlar içinmi reapi kullanımı daha iyi?
Reapi kütüphanesi diğer kütüphanelerden daha hızlı çalışır, bu yüzden tercih edilmesi gerekiyor. Zaten kullanılmasını istemeselerdi eklemezlerdi.
bilalgecer47 yazdı: Pzt Mar 08, 2021 5:16 pm curweapon yani silah değişince aktifleşen eventin reapide karşılığı varmı?

Kod: Tümünü seç

/*
    * Description:      -
    * Return type:      BOOL
    * Params:           (const this, szViewModel[], szWeaponModel[], iAnim, szAnimExt[], skiplocal)
    */
    RG_CBasePlayerWeapon_DefaultDeploy,

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

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

Eklenti Yazma Bilgi Konusu ile ilgili istekler

Mesaj gönderen Colditz »

İsteklerinizi buraya hâlâ yazabilirsiniz.

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

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

Eklenti Yazma Bilgi Konusu ile ilgili istekler

Mesaj gönderen bestcore »

Bir mapta veya bir roundda en çok rankı olan oyuncuyu yada en çok rankı olan ilk 2,3 oyuncuyu çekme.
Bu tür istekler kendi çıkarlarımız için oluyor mu ? Olmuyor ise ekleyebilirseniz sevinirim.

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

bilalgecer47
Mesajlar: 729
Kayıt: Çrş Ağu 22, 2018 9:20 pm

Eklenti Yazma Bilgi Konusu ile ilgili istekler

Mesaj gönderen bilalgecer47 »

Kişisel istek veya soru gibi olcak ancak merak ettiğim bi konu var.New tanimlamalari yapilirken yazilan new test[64] gibi kisimlardaki sayilar ne için sayiliyor 64 yerine daha düşük veya fazla bi sayi yazssak ne gibi sıkıntı olabilir.Diğer soru ise yine aynı kisimden bazi tanimlamalar yapilirken örnek new mapname[32] yapılıyor.Bunun yerine
new mapname[MAX_PLAYERS] Yazssak ne gibi sıkıntı olabilir.Veya new test[MAX_CLIENTS*2] yazssak ne olur?Kisaca bu sayilarin amaci ne.

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:

Eklenti Yazma Bilgi Konusu ile ilgili istekler

Mesaj gönderen Taha Demirbaş »

bilalgecer47 yazdı: Çrş Mar 10, 2021 6:50 pm Kişisel istek veya soru gibi olcak ancak merak ettiğim bi konu var.New tanimlamalari yapilirken yazilan new test[64] gibi kisimlardaki sayilar ne için sayiliyor 64 yerine daha düşük veya fazla bi sayi yazssak ne gibi sıkıntı olabilir.Diğer soru ise yine aynı kisimden bazi tanimlamalar yapilirken örnek new mapname[32] yapılıyor.Bunun yerine
new mapname[MAX_PLAYERS] Yazssak ne gibi sıkıntı olabilir.Veya new test[MAX_CLIENTS*2] yazssak ne olur?Kisaca bu sayilarin amaci ne.
Kısaca bahsedeyim. tanımlamalarda genelde oyuncu slot sayısına göre belirleniyor. 32 kişilik bir sunucuda MAX_PLAYERS+1 veya 33 yazarak tanımlama yapılabilinir. Bunu 32 yazarsanız mesela 32. idye denk gelen oyuncunun göreceği bir işlem bu tanımlamadan dolayı yapılamaz ve eklenti hata logu basar. Sınırlamalar her zaman bir üst sayı olarak alınır. Bazı kodlar da da yazılan mesajdaki karakter uzunluğu olarak da kullanılabilmekte.

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

bilalgecer47
Mesajlar: 729
Kayıt: Çrş Ağu 22, 2018 9:20 pm

Eklenti Yazma Bilgi Konusu ile ilgili istekler

Mesaj gönderen bilalgecer47 »

Taha Demirbaş yazdı: Çrş Mar 10, 2021 11:59 pm
bilalgecer47 yazdı: Çrş Mar 10, 2021 6:50 pm Kişisel istek veya soru gibi olcak ancak merak ettiğim bi konu var.New tanimlamalari yapilirken yazilan new test[64] gibi kisimlardaki sayilar ne için sayiliyor 64 yerine daha düşük veya fazla bi sayi yazssak ne gibi sıkıntı olabilir.Diğer soru ise yine aynı kisimden bazi tanimlamalar yapilirken örnek new mapname[32] yapılıyor.Bunun yerine
new mapname[MAX_PLAYERS] Yazssak ne gibi sıkıntı olabilir.Veya new test[MAX_CLIENTS*2] yazssak ne olur?Kisaca bu sayilarin amaci ne.
Kısaca bahsedeyim. tanımlamalarda genelde oyuncu slot sayısına göre belirleniyor. 32 kişilik bir sunucuda MAX_PLAYERS+1 veya 33 yazarak tanımlama yapılabilinir. Bunu 32 yazarsanız mesela 32. idye denk gelen oyuncunun göreceği bir işlem bu tanımlamadan dolayı yapılamaz ve eklenti hata logu basar. Sınırlamalar her zaman bir üst sayı olarak alınır. Bazı kodlar da da yazılan mesajdaki karakter uzunluğu olarak da kullanılabilmekte.
Anladım teşekkür ederim. Map ismi çektirirken veya veri tanimlarken bu tarz new mapname[MAX_PLAYERS] veya new test[MAX_CLIENTS*2] gibi kullanımlar yapabilirmiyiz sayi yazmak yerine.

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

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

Eklenti Yazma Bilgi Konusu ile ilgili istekler

Mesaj gönderen Colditz »

Evet, MAX_PLAYERS kullanabilirsin ama saçma gözükür. Her şeyin bir amacı var, MAX_PLAYERS veya MAX_CLIENTS in amacı da maksimum oyuncu sayısını göstermek. Gerektiği yerde kullanmak daha uygun olur. Hele ki zaten [MAX_CLIENTS*2] diye bir şey düşünmeyin bile.

Link:
Linklerini gizle
Linki Kopyala
Cevapla