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
Geliştirici(ler)ITB CompuPhase
İlk yayınlanma1998
Güncel sürüm4.0.4548 / 1 Ağustos 2011
İşletim sistemiPlatformlar arası
Lisanszlib Lisans
Resmî sitesicompuphase.com/pawn/pawn.htm

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 değiştir

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 değiştir

  • PAWN C kodlama diline benzer.
  • Include ekleyebilirsiniz ki bu da fonksiyon çeşitliliği sağlar.
  • Başka dillere kolayca çevirebilmek için PAWN,mümkün oldukça ANSI dilinde geliştirilmiştir.
  • PAWN Unicode/UCS-4 ve UTF-8 dillerini de destekler.

Kullanım alanları değiştir

Grand Theft Auto: San Andreas Multiplayer değiştir

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 değiştir

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 değiştir

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

Örnek Operatör kullanımları

Kod Örnekleri değiştir

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 değiştir