Szerző Téma: Loot rendszer  (Megtekintve 647 alkalommal)

Loot rendszer
« Dátum: 2017. Június 24. - 00:18:59 »
0 Show voters
Sziasztok elég régóta nem foglalkoztam a samp-al.
 
Viszont most a segítségeteket szeretném kérni.
Elkezdtem egy loot rendszeren dolgozni, úgy csináltam hogy random tárgyakat írkál be a script egy list dialogba (mintha az egy doboz lenne), hogy tudom az megcsinálni, hogy dialog responsenál ugyan azt a random tárgyat adja oda? Tehát ha a dialogba AK-47 van akkor mikor kiválasztom azt azt is kapjam meg.
 
Előre is köszönöm mindenkinek, ha kell mutatok kódot is. :)
 
Ricsi

Loot rendszer
« Válasz #1 Dátum: 2017. Június 24. - 13:36:00 »
+1 Show voters
Szia ! Remélem tudtam segíteni.
 

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == Dialog_Loot[playerid])
{
   if(!response) return 1;
   // Így elküldi, az adott sorra kattintott értéket, pl.: AK47\\nM4A1\\nDeagle
   // Akkor ha rákattint az AK47-re akkor kifogja írni, hogy mire kattintot, azaz -> Kiválaszott tárgy: AK47.
   // A dialog list-nél, az inputtext, azaz a \"beírt érték\", megfog egyezni, a sor értékével lásd fentebb leírtam.
   new string[64]; format(string,sizeof(string),\"Kiválasztott tárgy: %s\",inputtext);
   SendClientMessage(playerid,-1,string);
   // Ezt mondjuk széttudod válogatni, a következő módon.
   if(!strcmp(inputtext,\"AK47\")) GivePlayerWeapon(playerid,30,100);
   else if(!strcmp(inputtext,\"M4A1\")) GivePlayerWeapon(playerid,31,100);
   else if(!strcmp(inputtext,\"Deagle\")) GivePlayerWeapon(playerid,24,50);
   // Vagy mondjuk tárgyaknál, ha van inventory rendszered.
   if(!strcmp(inputtext,\"Kenyér\")) GivePlayerItem(playerid,inputtext,2);
   // GivePlayerItem(playerid,\"Kenyér\",2); | mindegy melyiket írod, mivel az érték ugyanaz max átláthatóbb.
   
   // De ha már úgy akarod megcsinálni, hogy menőbb legyen, akkor mondjuk használhatsz ID-ket is.
   new loot_id = GetItemID(inputtext);
   if(loot_id == GetItemID(\"Kenyér\")) GivePlayerItem(playerid,loot_id,2);
   // Ez csak egy kis plussz, mivel én az Inventory rendszeremben, ID-k alapján különböztetem meg őket.
   // String alapot nem szeretem, mert ha átnevezem, akkor azt is átkell, az ID meg nem változik.
}
return 1;
}

 
 

Loot rendszer
« Válasz #2 Dátum: 2017. Június 24. - 18:15:46 »
0 Show voters
Köszönöm ez működik! :)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal