PAWN

PAWN
GeliştiriciITB CompuPhase
İlk yayınlanma1998
İşletim sistemiPlatformlar arası
Lisanszlib Lisans
Resmî sitesicompuphase.com/pawn/pawn.htm

Pawn (Small olarak da bilinir) açık kaynaklı bir programlama dilidir. Hollanda'da kurulan CompuPhase şirketi tarafından geliştirilmiştir. İlk olarak 1998 yılında yayınlanmıştır. 3. versiyonu yayınlanana kadar Small dili olarak bilinmiştir, 3.versiyonu 2005 yılının Mart ayında çıkmıştır.

Pawn dinamik yazılı kodlama dilidir. Small-C dilinden etkilenilerek yaratılmıştır ve kodları C dilini andırmaktadır.

Pawn, San Andreas Multiplayer mod, Half-Life mod, AMX Mod X ve Source Engine gibi çeşitli projelerde kullanılmaktadır.

Tasarım

PAWN kodları compiler tabanlıdır. PAWN scriptleri '.pwn' uzantılı dosyada tutulur.Bu pwn uzantılı dosyaları not defteri dahil çeşitli kod editörleri açabilir.

PAWN compiler, kaynak kodlarını P-code veya bytecode dillerine çevirir.Bu diller de '.amx' uzantısıyla kaydedilir. '.amx" uzantılı dosyaların açılma yolu yoktur. Tek bir yolu vardır o da illegal bir yöntemdir ve moda ekleyeceğiniz ufak bir eklentiyle çözülmektedir.

Özellikleri

Kullanım alanları

Grand Theft Auto: San Andreas Multiplayer

Popüler gayriresmî Grand Theft Auto: San Andreas modifikasyonu için kullanılır. "San Andreas Multiplayer26 Nisan 2015 tarihinde Wayback Machine sitesinde arşivlendi.". Bu oyunda, oyunun tek kişilik versiyonundaki her şeyi PAWN ile yapılabilir. Türkiye'de yaygın olarak kullanılır. Counter-Strike 1.6 multiplayer için plug-in yaratmak için kullanılır.

Scriptler arası tasarım

PAWN diğer programlama dillerinin kodları arasındaki bir köprü dil olarak tasarlanmıştır. PAWN dili hiçbir native fonksiyonu taşımaz. PAWN fonksiyonlarını include dosyalarından alır.

Operatörler

OperatörÖrnek Kullanımİşlevi
+a + biki veya birden fazla sayıyı toplar
-a - biki veya birden fazla sayıyı çıkartır
*a * bBir sayı ile başka bir sayıyı çarpar
/a / bBir sayıyı bir diğer sayıya böler
=a = 5Bir değişkene değer atama
++a++Değişkende bulunan değeri 1 arttırır.
--a--Değikende bulunan değeri 1 azaltır.
+=a += 5Değişkende bulunan değer ile bir başka değer toplanıp tekrar değişkene eşitlenir.
-=a -= 5Değişkende bulunan değer ile bir başka değer çıkartılıp tekrar değişkene eşitlenir.
/=a /= 10Değişkende bulunan değeri bir başka değere böler ve sonuç yine değişkene aktarılır
*=a /= 10Değişkende bulunan değeri bir başka değerle çarpılır ve sonuç yine değişkene aktarılır
==5 == 5Bir değerin diğer değere eşit olup olmadığını sorgular.
!=5 != 6Bir değerin diğer değere eşit olmadığını sorgular.
>5 > 3Bir değerin diğer değereden büyük olup olmadığını sorgular
<5 < 8Bir değerin diğer değerden küçük olup olmadığını sorgular
>=5 >= 6Bir değerin bir değerden büyük veya o değere eşit olup olmadığını sorgular
<=5 <= 3Bir değerin bir değerden küçük veya o değere eşit olmadığını sorgular

Örnek Operatör kullanımları

Kod Örnekleri

Dizi örneği

#include <core>

new dizi[3]; // İçerisine 3 adet değer alabilecek bir dizi tanıttık.

main()
{
	dizi[0] = 5; 
	dizi[1] = 10;
	dizi[2] = dizi[1] * dizi[2]; // Dizi 1 ve 2'deki değerleri çarpıp dizi 3'e atadık.
	printf("Dizi 1 ile Dizi 2'de bulunan değerlerin çarpımı: %i", dizi[3]); // dizi 3 içerisinde bulunan değeri printf ile ekrana yazdırdık
}

Dış bağlantılar