Şifremi/Kullanıcı Adımı Unuttum
Bağlan Google+ ile Bağlan Facebook ile Bağlan
DonanımHaber'de AraYENİ GELİŞMİŞ ARAMA
ForumBu Bölümde Ara

SA-MP Server Açmak Ve Pawno Dersleri

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir Kullanıcı
37
Cevap
2
Favori
32.779
Tıklama
Cevapla
Tüm Forumlar >> Oyun >> Oyuna Özel Forumlar >> Grand Theft Auto >> SA-MP Server Açmak Ve Pawno Dersleri
Sayfaya Git:
Sayfa:
Giriş
Mesaj
    • Yarbay
      2648 Mesaj
      23 Mayıs 2012 18:32:43 Konu Sahibi
      Merhaba arkadaşlar öncelikle www.samp.com/download gidiyoruz. SA-MP 0.3e ve SA-MP 0.3e Windows Server indiriyoruz. SA-MP 0.3e Windows Server'ın içinden çıkan dosyaları Rockstar Games/San Andreas'ın içine atıyoruz. Şimdi geldik server açmak ve pawno derslerine.

      Öncelikle server.cfg dosyasını not defteri ile açıyoruz ve karşımıza şöyle bir şey geliyor;

      echo Executing Server Config... 
      lanmode 0
      rcon_password changeme <-- Bu serverın şifresidir. Bunu istediğiniz başka bir şifre ile değiştirerek serverı aktif edebilirsiniz.
      maxplayers 500 <-- Bu serverdaki maksimum oyuncu sayısıdır. Bunu istediğiniz başka bir değer ile değiştirebilirsiniz.
      port 7777 <-- Bu serverın portudur. Bu serverı açtıktan sonra host şirketine göre değişir.
      hostname SA-MP Server <-- Bu serverın ismidir. Bunu istediğiniz diğer bir isimle değiştirebilirsiniz.
      gamemode0 grandlarc 1 <-- Bu serverın kullandığı moddur. Kendi kodladığınız pawno dosyasının ismini buraya yazarak değiştirebilirsiniz.
      filterscripts <-- Burada normalde bir sürü filterscripts olması gerek ama kaldırmanızı tavsiye ederim çünkü gereksiz şeyler.
      announce 0
      query 1
      weburl www.sa-mp.com
      onfoot_rate 40
      incar_rate 40
      weapon_rate 40
      stream_distance 300.0
      stream_rate 1000
      maxnpc 0
      logtimeformat [%H:%M:%S]


      Burada gösterdiğim şeyler haricinde hiçbir şeye dokunmayın. Bu bilgileri kendinize göre düzenledikten sonra samp-server.exe tıklayarak serverı aktif edebilirsiniz. Siz servera girmek için şimdilik 127.0.0.1 bu IP'yi kullanacaksınız. Arkadaşlarınız ile serverınıza girmek istiyorsanız, port açmak zorundasınız. Port açmak için TIKLA. Şimdi geldik Pawno kodlama bölümüne.

      Pawno Nedir?

      Pawno, bir SA-MP sunucusunun temelidir. Yazdığınız kodları PWN formatından AMX formatına dönüştürüp serverınızda kullanmanıza yarar. Pawno olmadan bir SA-MP sunucusu olmaz. Bunun için Pawno kodlamak şarttır.

      İndirdiğimiz dosyalar içinde pawno adlı bir klasör olacak ona girip pawno uygulamasını açın. Karşımıza bir sürü kod geldi. Eğer modunuzun eklediğiniz herhangi bir kodda hata vermemesini istiyorsanız, 7. satırdaki #if defined FILTERSCRIPT'i silin ve yerine #define FILTERSCRIPT'i tanıtın. Daha sonra 22. satırdaki #else ve 31. satırdaki #endif'i silin ve üst kısımdaki Compline/Run butonuna tıklayın. Yaptığınız çalışmalar hiçbir şekilde hata vermeden kaydedildiyse şunu görmelisiniz;

      Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 


      Peki bunları neden sildik? Bunlar ne işe yarıyor? Hemen söyleyeyim, bu tanıtılan kodlar, filterscripts dosyasında kayıtlı olan komutları serverınıza taşımanıza yardımcı olur. Yani bu kodlar servera kendiliğinden gelir. Örnek olarak admin komutu olan /kick ve /ban komutunu gösterebilirim. Eğer #define FILTERSCRIPT ya da #if defined FILTERSCRIPT modun başında tanıtılmadıysa filterscripts klasörünün içindeki komutları serverınız tanımaz. Bunları silmemizin nedeni ise, bunları modun başında durduğu sürece moda renk falan tanıtamıyoruz, hata veriyor.

      Şimdi serverın isminin SA-MP'ta görünmesini istiyorsanız, 12. ve 27. satıra serverın ismini yazacaksınız. Serverın versiyonunu ise 36. satırdaki SetGameModeText("Buraya"); içine yazacaksınız. İşlem bu kadar yaptığınız çalışmaları kaydedebilirsiniz.

      Şimdi geldik karakter seçim ekranına skin eklemeye. Öncelikle 33. satıra gidin. Karşınıza şöyle bir şey gelecek;

      public OnGameModeInit() 
      {
      // Don't use these lines if it's a filterscript
      SetGameModeText("Blank Script");
      AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
      return 1;
      }


      AddPlayerClass'taki 0, skindir. Bu skini istediğiniz başka bir skin ile değiştirebilirsiniz. Peki skin IDler'ini nasıl öğrenebilirim? http://wiki.sa-mp.com/wiki/Category:Skins Adresinden bütün skinleri öğrenebilirsiniz.

      Skinin yanında gördüğünüz sayılar (1958.3783, 1343.1572, 15.3746, 269.1425) karakterin nerede doğacağıdır. Spawn seçeneğine tıkladığınızda belirlediğiniz koordinatlarda doğar. Peki bu koordinatları nasıl ayarlayabilirim? Çok basit bir işlem. Önce oyuna girin ve karakterin doğmasını istediğiniz yere gelip /save yazın. Yeriniz kaydedildi. Şimdi Belgelerim/San Andreas User Files/SAMP'ın içindeki savedpositions.txt'i açın. Kaydettiğiniz koordinatlar burada. Bununla geçerli koordinatları değiştirdiğiniz de karakteriniz sizin istediğiniz yerde doğar.

      Koordinatların yanındaki sayılar ise karakterde olmasını istediğiniz silahlardır. (0 (Bu 1. silahtır. Buraya silahın ID'sini yazacaksınız.) ,0 (Burası 1. silahta olmasını istediğiniz mermi miktarıdır.), 0, 0, 0, 0) diğerleri ise 2. ve 3. silahtır ve onların mermi miktarıdır. Buralara silahların ID'lerini yazabilirsiniz. Peki silah ID'lerini nereden bulabilirim? Sizin için aşağıya hepsini yazdım.

      0    Yumruk 
      1 Muşta
      2 Golf sopası
      3 Jop
      4 Bıçak
      5 Beyzbol sopası
      6 Kürek
      7 Bilardo sopası
      8 Katana
      9 Elektirikli Testere
      10 Mor Dildo
      11 Kücük Beyaz Vibratör
      12 Büyük Beyaz Vibratör
      13 Gümüş Vibratör
      14 Çicek
      15 Baston
      16 El Bombası
      17 Gaz Bombası
      18 Molotof Kokteyli
      22 9mm
      23 Susturuculu 9mm
      24 Desert Eagle
      25 Pompalı
      26 Sawnoff Pompalı
      27 Combat Pompalı
      28 Uzi
      29 SMG(MP5)
      30 AK47
      31 M4
      32 Tec9
      33 Tüfek
      34 Sniper
      35 Bazuka
      36 Isı Duyarlı Bazuka
      37 Alev Püskürtücü
      38 Minigun
      39 Remote Grenades
      40 Remote Grenades Patlatıcısı
      41 Spray
      42 Yangın Söndürücü
      43 Kamera
      44 Gece Görüş gözlüğü
      45 Isı Duyarlı Gözlük
      46 Paraşüt


      Karakter seçim ekranına skin eklemek bu kadar. Yeni bir tane skin eklemek için, AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); kopyalayıp alta geçirin ve istediğiniz bilgileri ayarlayın.

      Yeni eklediğiniz skinlerin garip bir koşuş stili var. Hepsinin koşuş stilini CJ gibi yapmak için OnGameModeInit publicinin başına UsePlayerPedAnims(); ekleyin ve kaydedin işlem tamam artık bütün karakterler CJ gibi koşacaktır.

      Şimdi geldik karakter seçim ekranını ayarlamaya. Bildiğiniz gibi karakter seçim ekranında karakterler görünmüyor. Şimdi 46. satıra gelin. Karşınıza şöyle bir şey çıkacak;

      public OnPlayerRequestClass(playerid, classid) 
      {
      SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
      SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
      SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
      return 1;
      }


      SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746); Karakterin durduğu yerdir.
      SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746); Kameranın durduğu yerdir.
      SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746); Kameranın karaktere bakış açısıdır.

      Şimdi bunları kendimize göre ayarlayacağız. Öncelikle karakterin durmasını istediğimiz yere gidip /save yazarak kaydediyoruz. Daha sonra onun karşısına geçip tekrar /save yazarak kaydediyoruz. Bu kaydettiğimiz kameranın duracağı yerdir. Şimdi geldik pawnoya geçirmeye. OnPlayerRequestClass publicine gidip, SetPlayerPos(playerid, yazdıktan sonra karakterin duracağı yerin koordinatlarının ilk üçünü yazıyoruz. Daha sonra altına geçiyoruz ve SetPlayerFacingAngle(playerid, yazdıktan sonra karakterin duracağı yerin koordinatlarından son bir koordinatı buraya yapıştırıyoruz. Bu karakterin kameraya bakış açısıdır. Sonra altına geçiyoruz ve SetPlayerCameraPos(playerid, yazdıktan sonra kameranın duracağı yerin koordinatlarından ilk üç koordinatı buraya yapıştırıyoruz. Son olarak SetPlayerCameraLookAt(playerid, yazdıktan sonra kameranın duracağı yerin koordinatlarının ilk üçünü buraya yapıştırıyoruz. İşlem tamam. Çalışmalarınızı kaydedin. Burada sorun yaşabilirsiniz onun için size örnek bir karakter seçim ekranı vereceğim. Bunu kullanabilirsiniz. Kullanmak istemiyorsanız sizin için istediğiniz yeri yapabilirim. Örnek karakter seçim ekranı, 4Dragons.

      Resim:


      Pawno Kodu:
      public OnPlayerRequestClass(playerid, classid) 
      {
      SetPlayerPos(playerid,2027.1962,1007.7031,10.8203);
      SetPlayerFacingAngle(playerid, 270.0);
      SetPlayerCameraPos(playerid,2034.6650,1007.8406,11.9078);
      SetPlayerCameraLookAt(playerid,2029.0746,1007.6553,10.8203);
      return 1;
      }


      Karakter seçim ekranını ister böyle bırakabilirsiniz, isterseniz de müzik ekleyebilir, karakterlere dans ettirebilirsiniz. Karakter seçim ekranında karakterlere dans ettirmek için, SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE1); kodunu OnPlayerRequestClass publicine ekleyin. Spawn olduktan sonra karakterini hala dans etmeye devam edecektir. Bunu durdurmak için, OnPlayerSpawn publicine SetPlayerSpecialAction(playerid,0); kodunu ekleyin. Eğer dans stilini beğenmediyseniz DANCE1 yazan yeri DANCE2 vs. yaparak değiştirebilirsiniz. Karakter seçim ekranına müzik eklemek için modun başına, new Float:X,Float:Y,Float:Z; ekleyin ve OnPlayerRequestClass'a PlayerPlaySound(playerid,muzikid, X, Y, Z); ekleyin. Muzikid yazan yere müziğin ID'sini yazacaksınız. Müzik IDler'ine http://wiki.sa-mp.com/wiki/SoundID sitesinden ulaşabilirsiniz. İşlem tamam ama spawn olduğunuzda müzik hala devam edecektir. Bunun için OnPlayerSpawn publicine PlayerPlaySound(playerid,0, X, Y, Z); ekleyin ve yaptığınız çalışmaları kaydedin. İşlem tamam.

      Şimdi geldik GameText olayına.

      GameText Nedir?

      GameText, ekranın çeşitli yerlerinde, bir süreliğine belirecek olan büyük yazılardır.

      Mesela herhangi bir oyuncu oyuna girdiğinde ekranda "Hoşgeldiniz" yazısının belirmesini istiyorsunuz. Öncelikle 54. satıra gidiyoruz ve karşımıza şöyle bir şey geliyor;

      public OnPlayerConnect(playerid) 
      {
      return 1;
      }


      Oraya ( return 1;'in üstüne.) GameTextForPlayer(playerid, "~y~Hosgeldiniz,~p~Iyi Oyunlar Dileriz", 5000, 5); kodunu ekliyoruz. Tırnak içinde belirttiğimiz yer ekranda görünecek mesajdır. ~y~ ve ~p~ ise GameText'in rengidir. 5000, yazının duracağı süredir. 5 ise GameText'in duracağı yerdir. GameText'in renklerine, yerlerine ulaşmak için http://wiki.sa-mp.com/wiki/GameTextStyle sitesine gidebilirsiniz. GameText olayı bu kadar. Yaptığınız çalışmaları kaydedebilirsiniz.

      Şimdi geldik bir oyuncu öldüğünde -1000$ kaybetmesi ve oyuncuyu öldürdüğünde +1 skor ve +1000$ kazanmasına.

      Öncelikle 69. satıra gidiyoruz ve karşımıza şöyle bir şey geliyor;

      public OnPlayerDeath(playerid, killerid, reason) 
      {
      return 1;
      }


      Ölen oyuncunun -1000$ kaybetmesini istiyorsanız, OnPlayerDeath publicine GivePlayerMoney(playerid, -1000); kodunu ekleyin. Öldüren oyuncunun +1 skor ve +1000$ kazanmasını istiyorsanız, yine OnPlayerDeath publicine GivePlayerMoney(killerid, 1000); ve SetPlayerScore(killerid, 1); kodlarını ekleyin. Bunları kendinize göre değiştirebilirsiniz. İşlem tamam yaptığınız çalışmaları kaydedebilirsiniz.

      Evet. Şimdi geldik adminlerin başında [GM], [ANM] ya da [RCON] yazmasına.

      RCON Nedir?

      RCON, serverın sahibidir. Server sahibi olan herkes adminliğe /rcon login şifre ile girer. Şifeyi nasıl değiştireceğinizi başta göstermiştim. Değiştirdiğiniz şifreyi kullanarak admin girişi yapabilirsiniz. Serverda bir çok RCON komutu bulunur. Bunları aşağıdan öğrenebilirsiniz.

      /rcon login [şifre]/rcon cmdlist - Tüm Rcon Komutlarını Gösterir 
      /rcon exit - Sunucuyu kapatır.
      /rcon hostname [Sunucu Adı] - Sunucu adını değiştirir.
      /rcon gamemodetext [GameMode İsmi] - GameMode ismini değiştirir..
      /rcon mapname [MapName] - MapName'yi değiştirir.
      /rcon kick <id> - <id>'yi sunucudan kickler.
      /rcon ban <id> - <id>'yi sunucudan banlar.
      /rcon changemode [Mod Adı] - Başka bir modu açar.
      /rcon reloadbans - Tüm banları siler.
      /rcon reloadlog - Logları temizler.
      /rcon banip [IP] - Belirtilen IP'ye ban atar.
      /rcon unbanip [IP] - Belirtilen IP'nin banını kaldırır.
      /rcon gravity [Değer] - Sunucunun yer çekimini ayarlar. (Standart 0.80)
      /rcon weather [Hava ID'si] - Hava durumunu değiştirir.
      /rcon loadfs [FS Adı] - Belirtilen FS'yi aktifleştirir.
      /rcon unloadfs [FS Adı] - Belirtilen FS'yi disaktif eder.
      /rcon reloadfs - Tüm FS'leri disaktif eder.
      /rcon modname [Mod Adı] - Gamemodetext ile aynı işlevi yapmaktadır.


      GM Nedir?

      GM'nin açılımı Game Master'dır. GM, oyundaki yetkili kişidir. RCON komutlarını leveli yeterliyse kullanabilir.

      ANM Nedir?

      ANM'in açılımı Animatördür. Animatörler, serverda çeşitli etkinlikler düzenler.

      Şimdi geldik asıl olaya. Çoğu kişi RCON girişi yaptığı halde isminin başında [RCON] tagı görünmediğinden şikayetçi. Şimdi bunu nasıl aktif hale getireceğimizi anlatacağım. Öncelikle IsPlayerLAdmin includeunu indiriyoruz. İndirmek için TIKLA. Sonra modun başına #include <IsPlayerLadmin> yazarak tanıtıyoruz. Daha sonra 84. satıra gidiyoruz. Karşımıza böyle bir şey geliyor.

      public OnPlayerText(playerid, text[]) 
      {
      return 1;
      }


      return 1; dahil olmak üzere oraya şu kodu yapıştırıyoruz;

      if(IsPlayerAdmin(playerid)) 
      {
      new string[300];
      new name[20];
      GetPlayerName(playerid, name, 20);
      format(string, sizeof(string), "{Renk}[{FFFFFF}RCON{Renk}] {Renk}%s {Renk}({FFFFFF}%i{Renk}) :{FFFFFF} %s", name,playerid, text);
      SendClientMessageToAll(playerid, string);
      return 0;
      }

      if(IsPlayerLAdmin(playerid))
      {
      new string[300];
      new name[20];
      GetPlayerName(playerid, name, 20);
      format(string, sizeof(string), "{Renk}[{FFFFFF}GM{Renk}] {Renk}%s {Renk}({FFFFFF}%i{Renk}) :{FFFFFF} %s", name,playerid, text);
      SendClientMessageToAll(playerid, string);
      return 0;
      }
      if(IsPlayerLAdmin(playerid))
      {
      new string[300];
      new name[20];
      GetPlayerName(playerid, name, 20);
      format(string, sizeof(string), "{Renk}[{FFFFFF}ANM{Renk}] {Renk}%s {Renk}({FFFFFF}%i{Renk}) :{FFFFFF} %s", name,playerid, text);
      SendClientMessageToAll(playerid, string);
      return 0;
      }
      else
      {

      new string[128];

      format(string, sizeof(string), "(%i): %s", playerid, text);
      SendPlayerMessageToAll(playerid, string);
      }
      return 0;
      }


      Renk yazdığım yerlere adminlerin nickinin hangi renk olmasını istiyorsanız onu yazacaksınız fakat HTML kodu halinde. HTML renk kodlarına erişebilmek için, http://www.beles.org/webmaster-hizmetleri/html-renk-kodlari.html sitesine gidebilirsiniz. İşlem bu kadar. Yaptığınız çalışmaları kaydedebilirsiniz.

      İşte asıl yere geldik. Servera komut eklemeye.

      Öncelikle 89. satıra gidin. Karşınıza şöyle bir şey gelecek;

      public OnPlayerCommandText(playerid, cmdtext[]) 
      {
      if (strcmp("/mycommand", cmdtext, true, 10) == 0)
      {
      // Do something here
      return 1;
      }
      return 0;
      }


      Komutunun isminin ne olacağını belirlemek için "/mycommand" yazan yere komutun ismini yazacaksınız fakat / işaretini silmeden. Ben size örnek olarak /can, /zirh, /slay, bir yere teleport olma ve silah alma komutlarını göstereceğim.

      Can Komutu:

      if (strcmp("/can", cmdtext, true, 10) == 0) 
      {
      if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xF6F6F6AA,"{F81414}HATA: {FFFFFF}Can almak için yeterli paranız yok! Yeterli para miktarı 1000$'dır!");
      SetPlayerHealth(playerid, 100);
      GivePlayerMoney(playerid, -1000);
      GameTextForPlayer(playerid, "~w~Caniniz Fullendi, ~r~-1000$", 5000,1);
      return 1;
      }


      Burada tanımadığımız 4 şey var. GetPlayerMoney, eğer oyuncunun parası 1000$'den az ise oyuncunun canını fullemez. Parayı daha az ya da daha çok yapmak istiyorsanız, GetPlayerMoney'den sonraki 1000 yazan yerin değerini istediğiniz bir değerle değiştirebilirsiniz. SendClientMessage, oyuncunun parasının olmadığını ya da 1000$'den az olduğunu belirtir. Bunu çeşitli komutlarda farklı amaçlarda kullanabilirsiniz. Oradaki 0xF6F6F6AA ise rengin kodudur. Renk kodlarını aşağıya yazdım hepsine oradan ulaşabilirsiniz. Bu terim ChatBox'un hizasında görünür. SetPlayerHealth, oyuncunun canının değerini ayarlar. (playerid, 100) kısmındaki 100'ü daha küçük bir değer yaparak değiştirebilirsiniz. GivePlayerMoney, oyuncuya kaç para vereceğini ya da kaç para alacağını belirler. -1000 yazan yere farklı bir değer girerek canın fiyatını değiştirebilirsiniz.

      Zırh Komutu:

      if (strcmp("/zirh", cmdtext, true, 10) == 0) 
      {
      if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xF6F6F6AA,"{F81414}HATA: {FFFFFF}Zırh almak için yeterli paranız yok! Yeterli para miktarı 1000$'dır!");
      SetPlayerArmour(playerid, 100);
      GivePlayerMoney(playerid, -1000);
      GameTextForPlayer(playerid, "~w~Zirhiniz Fullendi, ~r~-1000$", 5000,1);
      return 1;
      }


      Burada tanımadığımız tek şey SetPlayerArmour. Bu terim oyuncunun zırhını ayarlamaya yarar. 100 yazan yeri daha düşük bir değer ile değiştirebilirsiniz.

      Slay Komutu:

      if (strcmp("/slay", cmdtext, true, 10) == 0) 
      {
      SetPlayerHealth(playerid, 0);
      GameTextForPlayer(playerid, "~w~Geberdin, ~r~-1000$", 5000,1);
      return 1;
      }


      Herhangi bir oyuncu bu komutu kullandığında canı sıfırlanır ve ölür.

      Silah Alma Komutu:

      if(!strcmp(cmdtext,"/uzi",true)) { 
      if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, 0xF6F6F6AA,"{F81414}HATA: {FFFFFF}Zırh almak için yeterli paranız yok! Yeterli para miktarı 1000$'dır!");
      SendClientMessage(playerid, COLOR_GREEN, "Uzi satın aldın. Hesabından -1000$ kesildi.");
      GivePlayerWeapon(playerid,28,1000);
      GivePlayerMoney(playerid,-1000);
      return 1;
      }


      Burada tanımadığımız 2 şey var, COLOR_GREEN terimi renktir. Bu rengi modun başına #define COLOR_GREEN 0x33AA33AA olarak tanıtabilirsiniz. Hangi rengi tanıtmak istiyorsanız ismini ve rengin kodunu yazmanız yeterli. GivePlayerWeapon, oyuncuya vereceği silahtır. 28 silahın ID'si, 1000 ise silahın mermisidir. Bunu diğer silah komutlarında değiştirebilirsiniz.

      Teleport Olma Komutu:

      if (strcmp("/4dragons", cmdtext, true, 10) == 0) 
      {
      if(IsPlayerInAnyVehicle(playerid))
      {
      SetVehiclePos(GetPlayerVehicleID(playerid),2027.2133,1007.8761,10.8203);
      GameTextForPlayer(playerid, "~y~4 Dragons ~p~Casino", 5000,5);
      }
      else
      {
      SetPlayerPos(playerid,2027.2133,1007.8761,10.8203);
      GameTextForPlayer(playerid, "~y~4 Dragons ~p~Casino", 5000,5);
      }
      return 1;
      }


      Burada tanımadığımız 3 şey var. IsPlayerInAnyVehicle, oyuncunun araba ile birlikte oraya spawn olmasıdır. Eğer araç ile birlikte spawn olmasını istemiyorsanız, orayı silebilirsiniz. SetVehiclePos ve SetPlayerPos, oyuncunun spawn olacağı yerdir. Ben örnek olarak 4Dragons'un komutlarını yazdım. Sizde bundan yola çıkarak çeşitli yerleri komut haline getirebilirsiniz. Eklemek istediğiniz başka kodlar olursa konunun altına bildirin ben size yardımcı olurum.

      Pawno Renk Kodları:

      #define COLOR_GREY 0xAFAFAFAA 
      #define COLOR_GREEN 0x33AA33AA
      #define COLOR_RED 0xAA3333AA
      #define COLOR_YELLOW 0xFFFF00AA
      #define COLOR_WHITE 0xFFFFFFAA
      #define COLOR_GREY 0xAFAFAFAA
      #define COLOR_PURPLE 0xC2A2DAAA
      #define COLOR_WHITE 0xFFFFFFAA
      #define COLOR_DBLUE 0x2641FEAA
      #define COLOR_BLUE 0x33AAFFFF
      #define COLOR_GREEN 0x33AA33AA
      #define COLOR_ORANGE 0xFF9900AA
      #define COLOR_PINK 0xFF69B4FF
      #define COLOR_BGREEN 0x08FD04FF
      #define COLOR_CYAN 0x00FFFFAA
      #define COLOR_DGREEN 0x008000FF
      #define COLOR_DRED 0x800000FF
      #define COLOR_DARK 0x000000FF
      #define COLOR_GRED 0xF60000AA
      #define COLOR_LIGHTBLUE 0x33CCFFAA
      #define COLOR_GRAD2 0xBFC0C2FF
      #define COLOR_GRAD4 0xD8D8D8FF
      #define COLOR_GRAD6 0xF0F0F0FF
      #define COLOR_GRAD2 0xBFC0C2FF
      #define COLOR_GRAD3 0xCB***EFF
      #define COLOR_GRAD5 0xE3E3E3FF
      #define COLOR_GRAD1 0xB4B5B7FF
      #define COLOR_BROWN 0x993300AA
      #define COLOR_BLACK 0x00000000
      #define COLOR_NEUTRALGREEN 0x81CFAB00
      #define COLOR_DARKGREEN 0x12900BBF
      #define COLOR_LIGHTGREEN 0x24FF0AB9
      #define COLOR_DARKBLUE 0x300FFAAB
      #define COLOR_BLUEGREEN 0x46BBAA00
      #define COLOR_LIGHTBLUE 0x33CCFFAA
      #define COLOR_DARKRED 0x660000AA
      #define COLOR_ORANGE 0xFF9900AA
      #define COLOR_DARKRED 0x660000AA
      #define COLOR_ORANGE 0xFF9900AA
      #define COLOR_BRIGHTRED 0xFF0000AA
      #define COLOR_INDIGO 0x4B00B0AA
      #define COLOR_VIOLET 0x9955DEEE
      #define COLOR_LIGHTRED 0xFF99AADD
      #define COLOR_SEAGREEN 0x00EEADDF
      #define COLOR_GRAYWHITE 0xEEEEFFC4
      #define COLOR_LIGHTNEUTRALBLUE 0xabcdef66
      #define COLOR_GREENISHGOLD 0xCCFFDD56
      #define COLOR_LIGHTBLUEGREEN 0x0FFDD349
      #define COLOR_NEUTRALBLUE 0xABCDEF01
      #define COLOR_LIGHTCYAN 0xAAFFCC33
      #define COLOR_LEMON 0xDDDD2357
      #define COLOR_MEDIUMBLUE 0x63AFF00A
      #define COLOR_NEUTRAL 0xABCDEF97


      NOT!: Bütün komutlar return 0;'ın üstünde olmalıdır. Olmadığı takdirde pawno hata verir.

      Bildiğiniz gibi çoğu serverda 2'ye basınca aracı tamir etme ve 10x Nitro ekleme özelliği var. Bunu nasıl serverınıza ekleyeceğinizi öğreteceğim. Öncelikle 189. satıra gidiyoruz. Karşımıza şöyle bir şey geliyor;

      public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) 
      {
      return 1;
      }


      Oraya şu kodu return 1; dahil olmak üzere ekliyoruz;

      if(newkeys & KEY_LOOK_BEHIND && IsPlayerInAnyVehicle(playerid)) 
      {
      if(!IsNosVehicle(GetPlayerVehicleID(playerid))) return SendClientMessage(playerid, 0xFF0000AA, "Bulunduğunuz araca nos ve hidrolik takılamaz.");
      AddVehicleComponent(GetPlayerVehicleID(playerid), 1010);

      SetVehicleHealth(GetPlayerVehicleID(playerid), 1000);
      RepairVehicle(GetPlayerVehicleID(playerid));
      PlayerPlaySound(playerid, 1133 ,0, 0, 0);
      GameTextForPlayer(playerid,"~l~~g~10X ~n~~r~Nitro ~b~+ ~l~~p~Tamir",1000,3);
      }

      return 1;
      }
      IsNosVehicle(vehicleid)
      {
      #define NO_NOS_VEHICLES 29

      new InvalidNosVehicles[NO_NOS_VEHICLES] =
      {
      581,523,462,521,463,522,461,448,468,586,
      509,481,510,472,473,493,595,484,430,453,
      452,446,454,590,569,537,538,570,449
      };

      for(new i = 0; i < NO_NOS_VEHICLES; i++)
      {
      if(GetVehicleModel(vehicleid) == InvalidNosVehicles[i])
      {
      return false;
      }
      }
      return true;
      }


      İşlem tamam. Yaptığınız çalışmaları kaydedebilirsiniz.

      Yukarıdaki bilgiler alıntı değildir, kaynak gösterilerek kullanılabilir. Zaman buldukça yeni bilgiler ekleyeceğim.



      < Bu mesaj bu kişi tarafından değiştirildi Brutal Kill -- 23 Mayıs 2012; 18:33:49 >



      |
      |
      _____________________________

      ARKADAŞLAR FORUMU BIRAKTIM, ULAŞMAK İSTEYENLER STEAM ÜZERİNDEN BANA ULAŞABİLİRLER.




    • DH Yönetici
      12571 Mesaj
      23 Mayıs 2012 19:23:24
      Güzel konu olmuş. Tebrikler dostum. Okumaya üşendim ama.
      _____________________________

    • Yarbay
      2648 Mesaj
      23 Mayıs 2012 23:24:54 Konu Sahibi
      quote:

      Orijinalden alıntı: bkaakco

      Güzel konu olmuş. Tebrikler dostum. Okumaya üşendim ama.

      Kanka senin GTA Beta konusu daha fenaydı
      _____________________________

      ARKADAŞLAR FORUMU BIRAKTIM, ULAŞMAK İSTEYENLER STEAM ÜZERİNDEN BANA ULAŞABİLİRLER.
    • DH Yönetici
      12571 Mesaj
      24 Mayıs 2012 19:08:26
      quote:

      Orijinalden alıntı: Brutal Kill

      quote:

      Orijinalden alıntı: bkaakco

      Güzel konu olmuş. Tebrikler dostum. Okumaya üşendim ama.

      Kanka senin GTA Beta konusu daha fenaydı

      İki konu ayrı kulvarlarda.
      _____________________________

    • Yarbay
      2648 Mesaj
      24 Mayıs 2012 19:31:43 Konu Sahibi
      quote:

      Orijinalden alıntı: bkaakco

      quote:

      Orijinalden alıntı: Brutal Kill

      quote:

      Orijinalden alıntı: bkaakco

      Güzel konu olmuş. Tebrikler dostum. Okumaya üşendim ama.

      Kanka senin GTA Beta konusu daha fenaydı

      İki konu ayrı kulvarlarda.

      Olsun ama seninki uzunluk olarak daha çok
      |
      |
      _____________________________

      ARKADAŞLAR FORUMU BIRAKTIM, ULAŞMAK İSTEYENLER STEAM ÜZERİNDEN BANA ULAŞABİLİRLER.




    • Süresiz olarak uzaklaştırıldı.
      07 Eylül 2012 15:45:02
      Rcon komutunda
      C:\Users\***** PC\Desktop\Muhaha\pawno\new.pwn(111) : warning 217: loose indentation
      C:\Users\***** PC\Desktop\Muhaha\pawno\new.pwn(139) : error 010: invalid function or declaration

      böyle bir hata verdi (Server klasörünün adını değiştirsem mi acaba? :D )
      _____________________________

    • Yarbay
      2648 Mesaj
      21 Kasım 2012 19:03:46 Konu Sahibi
      quote:

      Orijinalden alıntı: JaraHouston

      Rcon komutunda
      C:\Users\***** PC\Desktop\Muhaha\pawno\new.pwn(111) : warning 217: loose indentation
      C:\Users\***** PC\Desktop\Muhaha\pawno\new.pwn(139) : error 010: invalid function or declaration

      böyle bir hata verdi (Server klasörünün adını değiştirsem mi acaba? :D )

      Onun için özel bir plugin istiyor, bana ulaşırsanız, size gönderebilirim. Ve satırı kaydırmışsınız, düzeltin.
      |
      |
      _____________________________

      ARKADAŞLAR FORUMU BIRAKTIM, ULAŞMAK İSTEYENLER STEAM ÜZERİNDEN BANA ULAŞABİLİRLER.
    • Süresiz olarak uzaklaştırıldı.
      29 Kasım 2012 09:00:03
      Birkaç aydır giremiyordum bilgilendirdiğiniz için teşekkürler :)
      _____________________________

    • Süresiz olarak uzaklaştırıldı.
      29 Kasım 2012 09:02:51
      Birkaç aydır giremiyordum bilgilendirdiğiniz için teşekkürler :)
      |
      |
      _____________________________

    • Yarbay
      2648 Mesaj
      29 Kasım 2012 19:21:45 Konu Sahibi
      quote:

      Orijinalden alıntı: Moe_Szyslak

      Birkaç aydır giremiyordum bilgilendirdiğiniz için teşekkürler :)

      Ne demek dostum.
      |
      |
      _____________________________

      ARKADAŞLAR FORUMU BIRAKTIM, ULAŞMAK İSTEYENLER STEAM ÜZERİNDEN BANA ULAŞABİLİRLER.
    • Er
      1 Mesaj
      02 Aralık 2012 15:41:52
      Herşeyi geçtim birtek şu Admin rcon ve komutları beceremedım o bölümü anlamadım kardeşim ya. Şu ata çıkıyor
      C:\Users\Toshiba\Desktop\GameFoRce\Grand Theft Auto Sanandreas\pawno\include\IsPlayerLAdmin.inc(11) : fatal error 100: cannot read from file: "lethaldudb2"

      LÜTFEN Bİ ÇÖZÜM SÖYLERSEN SEVİNİRİM MSN VEYA Bİ İLETİŞİM VERİRSEN EKLERİM MSN: flood_fly@hotmail.com

      2 Gündür çıldırdım resmen Oturmaktan Artık.



      < Bu mesaj bu kişi tarafından değiştirildi leon22c -- 2 Aralık 2012; 15:43:32 >
      |
      |
      _____________________________





    • Süresiz olarak uzaklaştırıldı.
      5 Not
      09 Aralık 2012 16:54:31
      Yememiş,içmemiş,sı*mamış bu konuyu yazmaya çalışmış.
      |
      |
      _____________________________

    • Yüzbaşı
      280 Mesaj
      26 Ocak 2013 16:25:11
      Herşeyi geçtim birtek şu Admin rcon ve komutları beceremedım o bölümü anlamadım kardeşim ya. Şu ata çıkıyor
      C:\Users\Toshiba\Desktop\GameFoRce\Grand Theft Auto Sanandreas\pawno\include\IsPlayerLAdmin.inc(11) : fatal error 100: cannot read from file: "lethaldudb2"

      LÜTFEN Bİ ÇÖZÜM SÖYLERSEN SEVİNİRİM MSN VEYA Bİ İLETİŞİM VERİRSEN EKLERİM MSN: flood_fly@hotmail.com

      2 Gündür çıldırdım resmen Oturmaktan Artık.

      aga aynısı bendede oluyo bendede bu hata veriyo çözüm lütfen yardım plssss

      D:\Program Files\Rockstar Games\GTA San Andreas\Server\pawno\include\IsPlayerLadmin.inc(11) : fatal error 100: cannot read from file: "lethaldudb2"
      _____________________________

    • Yüzbaşı
      280 Mesaj
      26 Ocak 2013 16:26:17
      |
      |
      _____________________________

    • Yarbay
      2648 Mesaj
      26 Ocak 2013 18:09:30 Konu Sahibi
      O hatayı alan arkadaşlar:http://www.solidfiles.com/d/3457/ <-- Bu dosyayı indirip pawno/includes'in içine atarlarsa sorun çözülecektir.

      quote:

      Orijinalden alıntı: İdam Cezası

      Yememiş,içmemiş,sı*mamış bu konuyu yazmaya çalışmış.


      1.5 saatimi aldı fazla bir şey değil.



      < Bu mesaj bu kişi tarafından değiştirildi Brutal Kill -- 26 Ocak 2013; 18:10:50 >
      |
      |
      _____________________________

      ARKADAŞLAR FORUMU BIRAKTIM, ULAŞMAK İSTEYENLER STEAM ÜZERİNDEN BANA ULAŞABİLİRLER.




    • Yüzbaşı
      341 Mesaj
      01 Şubat 2013 14:55:57
      quote:

      Orijinalden alıntı: lester1233



      Herşeyi geçtim birtek şu Admin rcon ve komutları beceremedım o bölümü anlamadım kardeşim ya. Şu ata çıkıyor
      C:\Users\Toshiba\Desktop\GameFoRce\Grand Theft Auto Sanandreas\pawno\include\IsPlayerLAdmin.inc(11) : fatal error 100: cannot read from file: "lethaldudb2"

      LÜTFEN Bİ ÇÖZÜM SÖYLERSEN SEVİNİRİM MSN VEYA Bİ İLETİŞİM VERİRSEN EKLERİM MSN: flood_fly@hotmail.com

      2 Gündür çıldırdım resmen Oturmaktan Artık.

      aga aynısı bendede oluyo bendede bu hata veriyo çözüm lütfen yardım plssss

      D:\Program Files\Rockstar Games\GTA San Andreas\Server\pawno\include\IsPlayerLadmin.inc(11) : fatal error 100: cannot read from file: "lethaldudb2"

      Öncelikle hort olmazsa arkadaşın hatsını düzeltmek istiyorum. Sorunu yaşayan arkadaş konuya bakmasa bile diğer arkadaşları bilgilendirmek için yazıyorum.

      lethaldudb2
      IsPlayerLAdmin

      adında iki adet inc. dosyamız var pawno/includes de bu iki içerik eksik olduğu için bu hatayı alıyorsunuz.

      C:\Users\***** PC\Desktop\Muhaha\pawno\new.pwn(111) : warning 217: loose indentation 
      C:\Users\***** PC\Desktop\Muhaha\pawno\new.pwn(139) : error 010: invalid function or declaration


      Burada ise 1 warning modun başına #include <a_samp> ın altına bir yere #pragma tabsize 0 yazarsanız sorun düzelir.
      2. hata da ise { veya } süslü parantezlerini hatalı girmiş olabilirsiniz. 139. satırı yazarsanız daha iyi olur.


      ''Silah Alma Komutu: '' nda ise public OnPlayerCommandText(playerid, cmdtext[]) den sonra { eklenmezse bu hata alınabilir.
      iyi forumlar..



      < Bu mesaj bu kişi tarafından değiştirildi carleone_16 -- 1 Şubat 2013; 14:59:27 >
      _____________________________





    • Yarbay
      2648 Mesaj
      01 Şubat 2013 17:18:35 Konu Sahibi
      quote:

      Orijinalden alıntı: carleone_16

      quote:

      Orijinalden alıntı: lester1233



      Herşeyi geçtim birtek şu Admin rcon ve komutları beceremedım o bölümü anlamadım kardeşim ya. Şu ata çıkıyor
      C:\Users\Toshiba\Desktop\GameFoRce\Grand Theft Auto Sanandreas\pawno\include\IsPlayerLAdmin.inc(11) : fatal error 100: cannot read from file: "lethaldudb2"

      LÜTFEN Bİ ÇÖZÜM SÖYLERSEN SEVİNİRİM MSN VEYA Bİ İLETİŞİM VERİRSEN EKLERİM MSN: flood_fly@hotmail.com

      2 Gündür çıldırdım resmen Oturmaktan Artık.

      aga aynısı bendede oluyo bendede bu hata veriyo çözüm lütfen yardım plssss

      D:\Program Files\Rockstar Games\GTA San Andreas\Server\pawno\include\IsPlayerLadmin.inc(11) : fatal error 100: cannot read from file: "lethaldudb2"

      Öncelikle hort olmazsa arkadaşın hatsını düzeltmek istiyorum. Sorunu yaşayan arkadaş konuya bakmasa bile diğer arkadaşları bilgilendirmek için yazıyorum.

      lethaldudb2
      IsPlayerLAdmin

      adında iki adet inc. dosyamız var pawno/includes de bu iki içerik eksik olduğu için bu hatayı alıyorsunuz.

      C:\Users\***** PC\Desktop\Muhaha\pawno\new.pwn(111) : warning 217: loose indentation 
      C:\Users\***** PC\Desktop\Muhaha\pawno\new.pwn(139) : error 010: invalid function or declaration


      Burada ise 1 warning modun başına #include <a_samp> ın altına bir yere #pragma tabsize 0 yazarsanız sorun düzelir.
      2. hata da ise { veya } süslü parantezlerini hatalı girmiş olabilirsiniz. 139. satırı yazarsanız daha iyi olur.


      ''Silah Alma Komutu: '' nda ise public OnPlayerCommandText(playerid, cmdtext[]) den sonra { eklenmezse bu hata alınabilir.
      iyi forumlar..

      Dostum sen bu konu hakkında bilgilisin bakıyorum. Bana özelden ulaşır mısın? Benim de aldığım bir kaç hata var ve düzeltemedim hevesim kursağımda kaldı. Onları düzeltmem de yardımcı olursan server açmamı sağlayabilirsin. Hem forumda serverı bekleyen arkadaşlar var. Hem de konuya yazarız ki aynı şeyi yaşamasınlar.
      |
      |
      _____________________________

      ARKADAŞLAR FORUMU BIRAKTIM, ULAŞMAK İSTEYENLER STEAM ÜZERİNDEN BANA ULAŞABİLİRLER.




    • Yüzbaşı
      341 Mesaj
      01 Şubat 2013 18:09:54
      Elbette. Özel mesaj ile iletişim adresimi atıyorum.
      _____________________________

    • Yarbay
      2648 Mesaj
      01 Şubat 2013 18:15:16 Konu Sahibi
      quote:

      Orijinalden alıntı: carleone_16

      Elbette. Özel mesaj ile iletişim adresimi atıyorum.

      Ekledim dostum kabul etmeni bekliyorum.
      |
      |
      _____________________________

      ARKADAŞLAR FORUMU BIRAKTIM, ULAŞMAK İSTEYENLER STEAM ÜZERİNDEN BANA ULAŞABİLİRLER.
    • Onbaşı
      21 Mesaj
      16 Haziran 2013 11:57:57
      kardeşm dediklerini yaptım daha denemedim bakacam birazdan özel msj atamıyorum özelden mail atarmısn soracaklarım varda ?
      _____________________________

    Hızlı Cevap




Reklamlar
son dakika
Kurumsal Web Tasarım Şirketi
Veri Merkezi;Metro Ethernet;Cloud Sunucu
Bu sayfanın
Mobil sürümü
Tablet sürümü
Mini Sürümü

DHBR1
0,422
1.2.165

Reklamlar
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.