Reklam gösterimini engelleyici yazılım kullandığınızı görüyoruz.
Sitemizin ayakta kalıp sizlere hizmet edebilmek için en büyük gelir kaynağı sayfamızda gösterilen reklamlardır.
Reklam gösterimde bizim sayfamıza ayrıcalık tanıyarak ayakta kalmamıza destek olmak ister misiniz ?

Yazılı Ders   | Plugin Kodlamada Temel Bilgiler

Konu

#1
Son Düzenleme: 27-03-2017, Saat: 18:07, Düzenleyen: Anıl Can.
Bu derste sizlere plugin kodlamadaki temel bilgileri verip birkaç örnek vererek konuyu pekiştirmenizi sağlıycam.

#include

Bu yazacağınız kodları barındıran bir kütüphanedir.Örnek vermek gerekirse, bir kişinin hpsini değiştirmek istiyoruz bunun codu ise set_user_healthindex,health ). Bu komut fun kütüphanesine ait komuttur.Eğer #include fun eklemezsek compilerimiz fonksiyonu tanımıyacaktır.İlerki derslerimde her kütüphaneye ait özellikleri anlatacağım.

#define

Define ise 2 farklı işlevi vardır.1.işlevi bir değişken tanımlamamızı sağlar.

Örnek

PHP Kod:
#define TASKID 1923 
Burada TASKID' yi 1923 sayısına tanımladık yani pluginin herhangi bir yerine TASKID yazarsak bu 1923 sayını çağıracak anlamına geliyor.

2.işlevi ise kendinize özel komut yaratmanızı sağlar

Örnek

PHP Kod:
#define oldur(%1) user_kill(%1,1) 
Burada ise oldur adlı bir komut yarattık.Bu komudun işlevi ise idyi öldürmemizi sağlar.

Değişken:

Değişkenler pluginler en önemli yapıtaşlarından biridir.Peki ne işe yarar bu değişkenler ?.
Değişkenler herhangi bir numarayı temsil eder.Eğer bir numara belirtmezseniz değişkenin karşılığı 0 olur.

PHP Kod:
new numara 
Yukarda numara adlı bir değişken yarattık.Default değeri 0'dır.Şimdi bu değişkeninim değerini değişelim.

PHP Kod:
numara 
Değişkenimizin değerini 5 yaptık.Peki değeri değiştirmenin birçok yolu vardır.

PHP Kod:
numara ++ // Değişkeninin değeri 1 artar
numara -- //  Değşikeninin değeri 1 azalir
nummara += //  Değişkeninin değeri 5 artar
nummara -= //  Değişkeninin değeri 5 azalir 
Değişkenler bir kaç farklı varyasyonu vardır.Yukarıda anlattığım integer yani tamsayı değişkenleriydi.Şimdi diğer değişken çeşitlerine bakalım.

Bool 

PHP Kod:
new bool:degisken 
Bu değişken 2 değere sahip olur.Değeri ya true ( 1 ) veya false ( 0 ) olur.Eğer bir değer belirtilmezse değeri false olur.Peki bu değişkenler ne işimize yarar ? Küçük bir örnekle açıklıyım

PHP Kod:
#include <amxmodx>
#include <amxmisc>
#include <fun
#include <hamsandwich>

#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"

new bool:g_yetki 33 ]
public 
plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
 
       // Bu ham eventi hamsanwich kütüphanesine ait bir fonksiyondur.İleriki derslerimde bu kütüphaneyle
 
       // ilgili dersleri vericeğim şimdilik bu eventin oyuncunun doğduğu zaman çalıştığını bilin.
    
RegisterHam(Ham_Spawn,         "player""dogunca",    1); 
    
}
public 
client_connectid )
{
    if(
is_user_admin(id) ) // Eğer bağlanan kişinin yetkisi varsa değişken true olacak
    
{
        
g_yetki[id] = true
    
}
    else 
// ama yoksa değeri false olcak.
    
{
        
g_yetki[id] = false
    
}
}
public 
doguncaid )
{
    if( 
g_yetkiid ] ) // Eğer değişken true olursa aşağıdaki komut çalışacak
    
{
        
set_user_healthidget_user_health(id ) + 20 )
    }

Float

Bu değişken çeşidi değer olarak ondalıklı sayı alır.

PHP Kod:
new Float naber 4.5 
Diziler ( Arrays ) :

Diziler birlikte hareket eden değişkenler toplululuğu diyebiliriz yani birden fazla birden değişken kullanmak yerine tek bir değişkenle bu işi yapabiliriz.

PHP Kod:
new array[ 
Yukarıdaki kodun anlamı değişkeninin içinde 3 farklı değişken olduğunu gösterir.

PHP Kod:
new array[ ]

array[ 
] = 200
array[ ] = 150
array[ ] = 120 
Yukarıda gördüğnüz gibi ilk dizi her zaman 0 ile başlar ve son değişkenimiz ise 1 eksiği olur.

Şimdi bir örnek gösterelim.

Çoğu pluginde gördüğünüz

PHP Kod:
killer33 

Şimdi gelelim neden 33 yaptığımıza;
 
1 - )  Bir serverin maximum oyuncu sayısı 32 dir.
2 - )  Bizde her oyuncunun kaç kill aldığını öğrenmek istiyoruz.
3 - )   new killer [ 32 ]  ve her oyuncuyu öğrenmek için killer [ id - 1 ]  yazmalıyız.
4 - )    Ama yazarken 32 yerine 33 ü kullanırız çünkü maxplayers + 1 = 33
5 - )   Böylece new killer[ 33 ] yazarsak killer[ id ] kullanabiliriz.

String


String ise harf ve sembolleri belirtmemizi sağlar.

PHP Kod:
new mystring]

mystring] = 83  // S
mystring] = 101 // e
mystring] = 108 // l
mystring] = 97 // a 
mystring] = 109 // m
mystring] = // Bunun 0 olmasi stringin sona erdiği anlamına gelir. 
Buradaki sayıları ASCII Karakterlere göre yazıyoz aşağıya ascıı karakter tablosunu koydum.Bakmak isteyen inceleyebilir.

[Resim: R0PJYa.jpg]


Tabiki bir string yazmanın daha kısa ve pratik yolunu göstericeğim .


PHP Kod:
new mystring[7]
copy(mystring6"Selam"

Şimdilik bu kadar yeterli kafanızın takıldığı bir şey olursa yorumlarda belirtebilirsiniz.Eğer devam etmemi istemiyorsanız 
hiç çekinmeden söyleyebilirsiniz.


Sadece CS:GO ekletisi yapıyorum 1.6 plugin isteklerine bakmıyorum.

Serverinize özel go eklentisi için steam üzerinden iletişime geçin

Steam :   https://steamcommunity.com/id/cananil44

Cevapla
#3
Anilcan gercekten basarili olmus .
Bilmedigim seyler vardi bana gercekten yarari oldu tesekkurler +REP .
Kesinlikle dersin serisinin devamini beklicegim



Cevapla
#4
Son Düzenleme: 27-03-2017, Saat: 18:05, Düzenleyen: CoonquaR.
@ Anıl Can Bana Hainlik Yaptın Kardeşim Ben Geldigimde Paylaşacaktık Hani Üzüldüm Şaka Bir Yana Gerçekten Süper Olmuş Eline Koluna Emegine Sağlık


                                                                                                                                            CoonquaR
                                                                                                                    https://www.facebook.com/CoonquaR
Cevapla
#5
Artık diğer derse diyelim Gülmekten Ölüyorum


Sadece CS:GO ekletisi yapıyorum 1.6 plugin isteklerine bakmıyorum.

Serverinize özel go eklentisi için steam üzerinden iletişime geçin

Steam :   https://steamcommunity.com/id/cananil44

Cevapla
#6
İyi anlatiyon videolu ders gelsin ☺ @ Anıl Can


Cevapla
#7
Bilmeyenler için iyi bir çalışma teşekkürler zevkle okudum.


Cevapla
#8
İnternet patates :S yüklemem 1 günümü alır Gülmekten Ölüyorum


Sadece CS:GO ekletisi yapıyorum 1.6 plugin isteklerine bakmıyorum.

Serverinize özel go eklentisi için steam üzerinden iletişime geçin

Steam :   https://steamcommunity.com/id/cananil44

Cevapla
#9
Helal olsun Gülücük



                                                                                                                                               | Facebook |                                  | Instagram | 
Cevapla
#10
Güzel anlatım saol


Cevapla


Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Task