GTA San Andreas Multi Player
Forumdan Daha İyi Bir Şekilde Faydalanmak İçin Lütfen Üye Olunuz
Üye İseniz Üye Girişi Yapınız !
GTA San Andreas Multi Player
Forumdan Daha İyi Bir Şekilde Faydalanmak İçin Lütfen Üye Olunuz
Üye İseniz Üye Girişi Yapınız !
GTA San Andreas Multi Player
Would you like to react to this message? Create an account in a few clicks or log in to continue.

GTA San Andreas Multi Player


 
AnasayfaLatest imagesAramaKayıt OlGiriş yap

 

 Satılık Araç Ekleme Editörü + [ Araç Ekleme Bilgisi ]

Aşağa gitmek 
2 posters
YazarMesaj
LeoNManiA

LeoNManiA


Mesaj Sayısı : 69
Kayıt tarihi : 02/02/10

Satılık Araç Ekleme Editörü + [ Araç Ekleme Bilgisi ] Empty
MesajKonu: Satılık Araç Ekleme Editörü + [ Araç Ekleme Bilgisi ]   Satılık Araç Ekleme Editörü + [ Araç Ekleme Bilgisi ] Icon_minitimeSalı Şub. 02, 2010 7:41 pm

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:
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..
Sayfa başına dön Aşağa gitmek
https://samplilar.yetkin-forum.com
sampcibebeq




Mesaj Sayısı : 3
Kayıt tarihi : 02/02/10

Satılık Araç Ekleme Editörü + [ Araç Ekleme Bilgisi ] Empty
MesajKonu: Geri: Satılık Araç Ekleme Editörü + [ Araç Ekleme Bilgisi ]   Satılık Araç Ekleme Editörü + [ Araç Ekleme Bilgisi ] Icon_minitimeSalı Şub. 02, 2010 7:55 pm

Harbiden İşime Yaradı Saolun Cool
Sayfa başına dön Aşağa gitmek
LeoNManiA

LeoNManiA


Mesaj Sayısı : 69
Kayıt tarihi : 02/02/10

Satılık Araç Ekleme Editörü + [ Araç Ekleme Bilgisi ] Empty
MesajKonu: Geri: Satılık Araç Ekleme Editörü + [ Araç Ekleme Bilgisi ]   Satılık Araç Ekleme Editörü + [ Araç Ekleme Bilgisi ] Icon_minitimeSalı Şub. 02, 2010 8:04 pm

Saol
Sayfa başına dön Aşağa gitmek
https://samplilar.yetkin-forum.com
 
Satılık Araç Ekleme Editörü + [ Araç Ekleme Bilgisi ]
Sayfa başına dön 
1 sayfadaki 1 sayfası
 Similar topics
-
» Mod ' a Nos Ekleme
» Samp 0.3a NPC Ekleme ( Bot )
» [FS-#]Benzin + Araç İsim + Devir [MP/H] + KM/H
» Samp Server Arac Adlari Ve Programi

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
GTA San Andreas Multi Player :: Pawno Kodlama-
Buraya geçin: