GTATurk.com Reklam Hizmetleri

Haberler:

Gönderen Konu: Satılık Araç Ekleme Editörü + [Araç Ekleme Bilgisi]  (Okunma sayısı 1802 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı  Pwn? 

  • North Holland Hustlers
  • *
  • İleti: 287
Rol modlarındaki, cfg zorluğunu ortadan kaldırmak için böyle birşeye kalkıştım, çoğu kişi cfg'nin daha ne olduğunu hatta ne işe yaradığını anlamış değil, bu sebeple onlar için araç eklemek zormuş gibi geliyor, şimdi biraz komuttan bahsedelim.

- Öncelikle komut yanlızca rol modları içindir.

- Orjinal LA-RP'deki araç sistemi ile aynıdır, plaka vesaire eklentisi yoktur ek olarak ekletmek isteyen olursa bana ulaşsınlar.

- Komutumuzu OnPlayerCommandText publiğine ekliyoruz, modumuzu compile ediyoruz.

- Oyuna giriyoruz ve bir araç indirip aracı düzgünce park ediyoruz ardından, aracın kordinatlarını cfg haline getirmek için /aekle komutunu yazıyoruz, ve şu şekilde kullanıyoruz ;

/aekle Renk1 Renk2 Fiyat AraçModelininIsmi

Aracımız scriptfiles dizinine satilikaraclar.cfg olarak kayıt oluyor, daha sonra içerisindeki bilgileri kendi cfgmize geçirebiliriz..


Kod: [Seç]
if(strcmp(cmd, "/aekle", true) == 0)
{
if(!IsPlayerInAnyVehicle(playerid))
{
SendClientMessage(playerid, 0xF6F6F6AA, "{ Arac eklemek icin arac icerisinde olmalisiniz ! }");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, 0xF6F6F6AA, "{ /aekle [Renk1] [Renk2] [Fiyat] [Arac Model Ismi] }");
return 1;
}
new Renk1 = strval(tmp);
    if(Renk1 < 0 || Renk1 > 120) { SendClientMessage(playerid, COLOR_GREY, "{ Hatali Renk Kodu ! [En Dusuk 0 - En Buyuk 120] }"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, 0xF6F6F6AA, "{ /aekle [Renk1] [Renk2] [Fiyat] [Arac Model Ismi] }");
return 1;
}
new Renk2 = strval(tmp);
    if(Renk2 < 0 || Renk2 > 120) { SendClientMessage(playerid, COLOR_GREY, "{ Hatali Renk Kodu ! [En Dusuk 0 - En Buyuk 120] }"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, 0xF6F6F6AA, "{ /aekle [Renk1] [Renk2] [Fiyat] [Arac Model Ismi] }");
return 1;
}
new Fiyat = strval(tmp);
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new AracIsmi[64];
while ((idx < length) && ((idx - offset) < (sizeof(AracIsmi) - 1)))
{
AracIsmi[idx - offset] = cmdtext[idx];
idx++;
}
AracIsmi[idx - offset] = EOS;
if(!strlen(AracIsmi))
{
SendClientMessage(playerid, 0xF6F6F6AA, "{ /aekle [Renk1] [Renk2] [Fiyat] [Arac Model Ismi] }");
return 1;
}
new File:hFile;
    new entry[252];
new Model = GetVehicleModel(GetPlayerVehicleID(playerid));
new Float:X, Float:Y, Float:Z, Float:Aci;
GetVehicleZAngle(GetPlayerVehicleID(playerid), Aci);
GetVehiclePos(GetPlayerVehicleID(playerid), X, Y, Z);
    format(entry, 250, "%d,%f,%f,%f,%f,%d,%d,Satilik,%d,%s,,0,0\n ", Model, X, Y, Z, Aci, Renk1, Renk2, Fiyat, AracIsmi);
hFile = fopen("satilikaraclar.cfg", io_append);
fwrite(hFile, entry);
    fclose(hFile);
format(string, sizeof(string), "Renk1: %d ~n~ Renk2: %d ~n~ Fiyat: %d ~n~ AracIsmi: %s",Renk1, Renk2, Fiyat, AracIsmi);
GameTextForPlayer(playerid, string, 2500, 3);
format(string, sizeof(string), "Renk1: %d | Renk2: %d | Fiyat: %d | AracIsmi: %s",Renk1, Renk2, Fiyat, AracIsmi);
SendClientMessage(playerid, 0xF6F6F6AA, string);
}

Komutla ilgili problem yaşarsanız, başlık altından problemi yazarsanız sevinirim..



Gelelim satılık araç eklemenin ince detaylarına..

Örneklerle başlıyorum, modunuzda static olarak eklediğiniz 80 tane aracınız var satılık olarak cfg'de kayıtlı olan araç sayısı ise 90
öncelikle yapmanız gereken, "CarInfo"yu aratmak modun en üst kısmında çıkıcaktır orada ;

new CarInfo[0][cInfo]; şöyle bir kod göreceksiniz, şimdi static araçlarımız 80 adet ise satılık araçlarımızda 90 adet ise kırmızı ile işaretlediğim 0 kaç olmalıdır, hemen aklımızı çalıştırıyoruz ve sayıları topluyoruz 80 + 90 = 170 +1 şimdi 0 değerini alacak sayı 171'dir, sizde kendi modunuzdaki araçların sayısını toplayıp oraya yazarsınız. +1 ekledim çünkü örneğimiz cfg'deki araçları 81'den itibaren okumaya başlıyor, +90 yaparsak 171 sayısı tekrar karşımıza çıkıyor :)

Diğer bir ayrıntıya geçiyorum, araçları satılık olarak ayarlama kısmına, ne demiştik modumuzda 80 tane static aracımız var 90 tanede cfg içerisinde kayıtlı olan satılık aracımız var, static araçlar, cfgden önce eklenmiş ise ;

public IsAnOwnableCar(vehicleid)
{
   if(vehicleid >= 81 && vehicleid <= 171) { return 1; }
   return 0;
}

şuda OnGameModeInitteki bir örneği,

AddStaticVehicleEx(Model, X, Y, Z, Açı, Renk1, Renk2, Spawn Süresi); // 1. Arabamız
AddStaticVehicleEx(Model, X, Y, Z, Açı, Renk1, Renk2, Spawn Süresi); // 80. Arabamız

for(new h = 81; h < sizeof(CarInfo); h++)
{
AddStaticVehicleEx(CarInfo[h][cModel],CarInfo[h][cLocationx],CarInfo[h][cLocationy],CarInfo[h][cLocationz]+1.0,CarInfo[h][cAngle],CarInfo[h][cColorOne],CarInfo[h][cColorTwo],60000);
}

Kırmızı ile işaretlediğim 81 numarası, modun cfg'de ilk okuyacağı araç numarasıdır, gördüğünüz gibi önce modda ekli araçlar okunuyor sonrada cfg'nin içeriği okunuyor ve CarInfo'da kaç araç varsa ona göre tüm araçlar spawn ediliyor...

ee Tabikide OnPropUpdate publiğindeki, yenileme kodlarınıda unutmuyoruz ;

idx = 81;
while (idx < sizeof(CarInfo))

Bu kısmada 81'den başlayıp yenilemesini vurguluyoruz, olmazsa olmaz yoksa karışır :)

Şimdi geçelim diğer önemli kısıma, OnPlayerStateChange publiğindeki PLAYER_STATE_DRIVER bölümüne, eğerki satılık araçlarınızda bir problem yaşamak istemiyor iseniz, kesinlikle ve kesinlikle modda satılık araçlara id eklmemelisiniz, örneğin satılık araçlarımızdan birtanesini ele alalım, aracımızın örnekteki id numarası 105 diyelim, 105 numaralı aracı factiona eklemeye kalkarsanız, araç sahibi dahi olsa araca binemez araçtan atılmasına sebep olur, ve bunun gibi problemler başınızı çok ağrıtır araçlara id verme işi biraz zahmetlidir sizlerinde bildiği gibi :)

Biraz çorba oldu herşey ama takıldığınız yer olursa yardım ederim tabikide, iyi geceler...

Not: Yanlış bilgi vermiş olmak istemiyorum, eğer yanlışım varsa düzeltin..
« Son Düzenleme: 18 Ocak 2010 ; 13:20:30 Gönderen: Pwn? »


Reklamlar

Tüm oyun fırsatları için tıklayın !

  Reklamlar


Çevrimdışı  Sepulchure 

  • North Holland Hustlers
  • *
  • İleti: 266
  • sepulchure
    • Sepulchure Kişisel Web Sitesi - EmreKLC
Ynt: Satılık Araç Ekleme Editörü + [Araç Ekleme Bilgisi]
« Yanıtla #1 : 15 Ocak 2010 ; 12:46:06 »
Bütün istediğim şeyleri paylaşıyorsun dostum , gerçekten eline sağlık müthiş bir kod.Kolaylık sağlıyor , pos al , yerleştir gerçekten uzun işti :P


Çevrimdışı [CGC]KillJoy

  • Albanians
  • İleti: 171
  • KillJoyJ®
Ynt: Satılık Araç Ekleme Editörü + [Araç Ekleme Bilgisi]
« Yanıtla #2 : 15 Ocak 2010 ; 13:16:43 »
Kardeşim Sen Benim Msnimi eklesende orda bana anlatsan pawno bilgim çok iyi değil biliyorum ama biraz kafam karıştı (msn im adımın altında var :))
[FLASH]http://s10.directupload.net/images/100804/h4eqwsim.swf[/FLASH]

Çevrimdışı [CGC]KillJoy

  • Albanians
  • İleti: 171
  • KillJoyJ®
Ynt: Satılık Araç Ekleme Editörü + [Araç Ekleme Bilgisi]
« Yanıtla #3 : 15 Ocak 2010 ; 13:26:12 »
Hata var komutları bozuyor /giris yazıyorum girmiyor araç içinde olmalısın diyor
[FLASH]http://s10.directupload.net/images/100804/h4eqwsim.swf[/FLASH]

Çevrimdışı  Pwn? 

  • North Holland Hustlers
  • *
  • İleti: 287
Ynt: Satılık Araç Ekleme Editörü + [Araç Ekleme Bilgisi]
« Yanıtla #4 : 18 Ocak 2010 ; 10:21:17 »
Hata var komutları bozuyor /giris yazıyorum girmiyor araç içinde olmalısın diyor

   if(!IsPlayerInAnyVehicle(playerid))
   {
   SendClientMessage(playerid, 0xF6F6F6AA, "{ Arac eklemek icin arac icerisinde olmalisiniz ! }");
   return 1;
   }

Kısmını sil, ama araç içinde komutu kullanmalısın yoksa cfg'ye abuk subuk kodlar gelir.


Edit : Konu güncel.

Çevrimdışı Escapé

  • The Lost Brotherhood
  • **
  • İleti: 1703
    • Call Of Duty - Türkiye
Ynt: Satılık Araç Ekleme Editörü + [Araç Ekleme Bilgisi]
« Yanıtla #5 : 18 Ocak 2010 ; 12:45:32 »
Harikasın kardeş.
Bana yapacağın yardımalr için de teşekkürler. :)
« Son Düzenleme: 18 Ocak 2010 ; 12:45:41 Gönderen: _SaVaGe_ »

Çevrimdışı Sheron

  • McReary Mob
  • ***
  • İleti: 945
  • Yunus Emre Yaroğlu
    • GTATürk
Ynt: Satılık Araç Ekleme Editörü + [Araç Ekleme Bilgisi]
« Yanıtla #6 : 18 Ocak 2010 ; 12:47:16 »
İşe yarar bir paylaşım eline sağlık.

Çevrimdışı VKT

  • Albanians
  • İleti: 192
  • Mixed Rpg - Yönetim Ekibi
Ynt: Satılık Araç Ekleme Editörü + [Araç Ekleme Bilgisi]
« Yanıtla #7 : 18 Ocak 2010 ; 13:20:01 »
Gerçekten işe yarar bir paylaşım yeni modumda kullanmayı düşünüyorum

Çevrimdışı BiqLesh

  • North Holland Hustlers
  • *
  • İleti: 388
  • Berat
Ynt: Satılık Araç Ekleme Editörü + [Araç Ekleme Bilgisi]
« Yanıtla #8 : 26 Ocak 2011 ; 17:50:09 »
Teşekkürler İşime Yaradı.. :)

Çevrimdışı [CGC]KillJoy

  • Albanians
  • İleti: 171
  • KillJoyJ®
Ynt: Satılık Araç Ekleme Editörü + [Araç Ekleme Bilgisi]
« Yanıtla #9 : 16 Mart 2011 ; 17:09:57 »
Teşekkürler İşime Yaradı.. :)

Kardeş 1 yıl sonra cevap vermişsin  :alala: Hort olmuş.Ama bende bunu yazıyorsam 1 aylık bir hort oluyor  :D
[FLASH]http://s10.directupload.net/images/100804/h4eqwsim.swf[/FLASH]