GTAMulti - GTA Türkiye

San Andreas Multiplayer => PAWN Kodlama => Anlatımlar => Konuyu başlatan: Kraus - 14 Eylül 2017, 18:44:57

Başlık: Rastgele TR Plaka ve Kullanımı
Gönderen: Kraus - 14 Eylül 2017, 18:44:57
Rastgele TR Plaka ve Kullanımı







Merhabalar Arkadaşlar.


Kullanmakta olduğum rastgele TR plaka oluşturma fonksiyonunu paylaşıp, nasıl kullanacağınızı göstereceğim. Umarım faydalı olur.

3 Farklı şekilde plaka oluşturabilir.
34 X 0000
34 XX 000
34 XXX 00





stock PlakaYap(ilkodu)
{
new rastDizayn = random(3);
new Plaka[32];
new RastHarf[22][] = {"A","B","C","D","E","F","G","H","I","K","L","M","N","O","P","R","S","T","U","V","Y","Z"};
new RastRakam[10][] = {0,1,2,3,4,5,6,7,8,9};
new Rast1 = random(sizeof(RastHarf));
new Rast2 = random(sizeof(RastHarf));
new Rast3 = random(sizeof(RastHarf));
new RastS1 = random(sizeof(RastRakam));
new RastS2 = random(sizeof(RastRakam));
new RastS3 = random(sizeof(RastRakam));
new RastS4 = random(sizeof(RastRakam));
if(rastDizayn == 0)
{
format(Plaka, sizeof(Plaka), "%d %s %d%d%d%d", ilkodu, RastHarf[Rast1], RastRakam[RastS1], RastRakam[RastS2], RastRakam[RastS3], RastRakam[RastS4]);
}
else if(rastDizayn == 1)
{
format(Plaka, sizeof(Plaka), "%d %s%s %d%d%d", ilkodu, RastHarf[Rast1], RastHarf[Rast2], RastRakam[RastS1], RastRakam[RastS2], RastRakam[RastS3]);
}
else if(rastDizayn == 2)
{
format(Plaka, sizeof(Plaka), "%d %s%s%s %d%d", ilkodu, RastHarf[Rast1], RastHarf[Rast2], RastHarf[Rast3], RastRakam[RastS2], RastRakam[RastS3]);
}
else
{
format(Plaka, sizeof(Plaka), "%d %s%s %d%d%d", ilkodu, RastHarf[Rast1], RastHarf[Rast2], RastRakam[RastS1], RastRakam[RastS2], RastRakam[RastS3]);
}
if(ilkodu < 10 && ilkodu > 0)
{
format(Plaka, sizeof(Plaka), "0%s", Plaka);
}
return Plaka;
}





Aşama 1 - Aracı Oluşturulım (Plaka eklenecek aracı oluşturmuşsanız 2. aşamaya geçin)

new PlakaTestVeh = INVALID_VEHICLE_ID;

PlakaTestVeh = AddStaticVehicleEx(560, 0.00000, 0.00000, 0.00000, 0.00000, 0, 0, 2000);


Aşama 2 - Oluşturulmuş Araca Rastgele Plaka Ekleyelim

new PlakaStr[32];
format(PlakaStr, sizeof PlakaStr, "%s", PlakaYap(34));
SetVehicleNumberPlate(PlakaTestVeh, PlakaStr);


Bu şekilde 34 İl Plaka kodlu rastgele (random) plaka oluşturduk. Deneyin şansınıza ne çıkarsa artık :)




Saygılarımla, Kraus
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Lé Spîke - 14 Eylül 2017, 19:18:51
Adminim. Serveri paylaşacaksınız diye korkuyorum :) Ekliyorum yardım konuma.
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Kraus - 14 Eylül 2017, 19:20:58
Alıntı yapılan: DeliOqlan - 14 Eylül 2017, 19:18:51

Adminim. Serveri paylaşacaksınız diye korkuyorum :) Ekliyorum yardım konuma.

:) Bu en basit örneği. Serverdeki bu şekilde değil.
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Dyternal - 14 Eylül 2017, 19:43:29
Ellerine sağlık.  :helal:
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: FrankTR - 15 Eylül 2017, 19:43:33
Eline emeğine sağlık. Şu satırdaki INVALID_VEHICLE_ID ne işe yarıyor?


new PlakaTestVeh = INVALID_VEHICLE_ID;
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Kraus - 15 Eylül 2017, 20:00:10
Alıntı yapılan: FrankTR - 15 Eylül 2017, 19:43:33

Eline emeğine sağlık. Şu satırdaki INVALID_VEHICLE_ID ne işe yarıyor?


new PlakaTestVeh = INVALID_VEHICLE_ID;


O benim bi alışkanlıktan dolayı genel olarak araçları tanımlama şeklim. Örneğin çoklu tanımlamalarda araç değişkenine 0 yazılırsa if(Arac != INVALID_VEHICLE_ID) kullanımı yanlış olur ve belki araç fonksiyonlarında hatalara yol açabilir. Araç ID'leri 1 ile MAX_VEHICLES arasındadır, onu kullanmamdaki amaç Streamer'dan kalan bir alışkanlık diyelim, geçersiz ID tanımlanmazsa ve 0 tanımlanırsa yanlış şeyler silinebiliyor ve bu en çok streamerda karşılaşılan bi problem. Araçlarda da bu şekilde kullanıyorum, garanti olsun diye.
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: pag - 20 Eylül 2017, 15:02:18
Türkiye Konseptli sunucular için yararlı,tebrikler.  :helal: :helal: :helal:
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Kraus - 21 Eylül 2017, 07:35:18
Alıntı yapılan: FeelsBadMan - 20 Eylül 2017, 15:02:18

Türkiye Konseptli sunucular için yararlı,tebrikler.  :helal: :helal: :helal:

Yorumun için teşekkürler  :)
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: ebuaga - 08 Ekim 2017, 21:31:54
teşekkürler

Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Jizzy - 09 Ocak 2018, 11:34:10
Güzel anlatım,eline sağlık.
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: iZombie - 09 Ocak 2018, 19:00:19
Türk konseptler için iyi bir sistem. :helal:
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Kraus - 10 Ocak 2018, 22:13:58
Alıntı yapılan: ebuaga - 08 Ekim 2017, 21:31:54

teşekkürler


Alıntı yapılan: OmerReis - 09 Ocak 2018, 11:34:10

Güzel anlatım,eline sağlık.
Alıntı yapılan: epic - 09 Ocak 2018, 19:00:19

Türk konseptler için iyi bir sistem. :helal:

Yorumlar için Teşekkürler.
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Ozy - 12 Ocak 2018, 00:45:41
Eline Sağlık çok kaliteli Teşekkürler.  :helal:
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Pablo - 07 Şubat 2018, 21:09:05
Alıntı yapılan: Ozy - 12 Ocak 2018, 00:45:41

Eline Sağlık çok kaliteli Teşekkürler.  :helal:
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: FelleR - 27 Haziran 2019, 01:33:13
Yararlı.
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: maXpoWer - 30 Nisan 2020, 20:48:56
Teşekkürler.
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: squarepants - 30 Nisan 2020, 23:15:50
Konuyu tesadüfen görüyorum , güzel konu ancak gözüme çarpan birkaç şey oldu.
Örneğin neden iki boyutlu dizi kullandığınız :
new Dizi[10] = {0,1,2,3,4,5,6,7,8,9};veya
new Dizi[11] = {'B', 'i', 'l', 'g', 'i', 's', 'a', 'y', 'a', 'r'};olarak kullanmak verimlilik açısından daha iyi olacaktır.
Ya da string bir ifadenin neden string bir ifade ile elde edilmeye çalışılması :
new PlakaStr[32];
format(PlakaStr, sizeof PlakaStr, "%s", PlakaYap(34));
SetVehicleNumberPlate(PlakaTestVeh, PlakaStr);
yerine
SetVehicleNumberPlate(PlakaTestVeh, PlakaYap(34)); yapmak kod verimliliği açısından daha iyi olacaktır , saygılarımla. Güzel Anlatım
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Bojnâ - 01 Mayıs 2020, 16:24:11
Yararlı, eline sağlık.
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Under Armour - 03 Mayıs 2020, 18:09:27
Peki bu sabit kalacak mı? (Rastgele atadığı plakaları)
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Radless - 03 Mayıs 2020, 18:25:15
Alıntı yapılan: Under Armour - 03 Mayıs 2020, 18:09:27
Peki bu sabit kalacak mı? (Rastgele atadığı plakaları)
Bir veride tutabilirsin sabit kalması için
Başlık: Ynt: Rastgele TR Plaka ve Kullanımı
Gönderen: Rodeiun - 22 Mayıs 2020, 14:15:03
ufak birkaç editle yabancı konsept sunuculara entegre edilebilir, eline sağlık teşekkürler :)