|
|
#1 |
|
Little Clucker
![]() Join Date: Jul 2009
Location: Hungary
Posts: 20
Reputation: 0
|
Valaki nem tudja, hogy ennél mi lehet a hiba?
public OnPlayerStateChange(playerid, newstate, oldstate) { for(new i = 0; i < MAX_VEHICLES; i++) { if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER && JarmuInfo[i][JarmuSzam] > 0) { ShowPlayerDialog(playerid,JarmuDialog1,DIALOG_STYL E_LIST,"Jármű","Elindít\nMegvesz\nElad\nJármű Száma\nKiszáll/Leszáll","OK", "BEZÁR"); } } return 1; } Azt szeretném megcsinálni, hogy csak akkor listázza ki a dialogot, ha a bescriptelt (megvehető) járművekbe ülök be. Mert akármelyik járműbe ülök be mindegyiknél kilistázza. A Jármű többi adatai: stock JarmuBetoltes() { new str[256]; for(new i = 0; i < MAX_VEHICLES; i++) { format(str, sizeof str, "/Jarmuvek/Jarmu%d.ini", i); if(!dini_Exists(str)) { } else { //CarBetolt(i); printf("kocsi %d betöltve", i); new Float , Float:y, Float:z, Float:face;new Model = dini_Int(str, "Model"); x = dini_Float(str, "PosX"); y = dini_Float(str, "PosY"); z = dini_Float(str, "PosZ"); face = dini_Float(str, "PosFace"); new Color1 = dini_Int(str, "Color1"); new Color2 = dini_Int(str, "Color2"); JarmuInfo[i][JarmuSzam] = dini_Int(str, "JarmuSzam"); JarmuInfo[i][JarmuAr] = dini_Int(str, "JarmuAr"); CreateVehicle(Model,x,y,z,face,Color1,Color2, 60); } } return 1; } |
|
|
|
|
#2 |
|
Huge Clucker
![]() ![]() ![]() Join Date: Jun 2009
Location: Hungary
Posts: 319
Reputation: 18
|
A megvehető járműveket tároló tömb és lekérdezés hozzá:
pawn Code:
pawn Code:
pawn Code:
|
|
|
|
|
#3 |
|
Little Clucker
![]() Join Date: Jul 2009
Location: Hungary
Posts: 20
Reputation: 0
|
Oks kösz
![]() Lehetne még 1 kérdésem? Azt hogy tudom megcsinálni, hogy ellenőrizze a jármű árát és ha abban a járműben ülök, akkor azt vegye meg? public JarmuRendszer(playerid, dialogid, response, listitem) { //----------------------------------------------------------------------------------------------// //--------------------------------------[Jármű Rendszer]----------------------------------------// if(dialogid == JarmuDialog1) { for(new i = 0; i < MAX_VEHICLES; i++) { new jarmufile[256]; format(jarmufile, sizeof jarmufile, "/Jarmuvek/Jarmu%d.ini", i); new jarmuszam[512]; if(response) { if(listitem == 0) { if(IsBuyableVehicle(GetPlayerVehicleID(playerid)) == JarmuID[playerid]) //Ha a jármű ID-je megegyezik a felhasználó fájljában lévő jármű id-vel { ShowPlayerDialog(playerid,HELPDIALOG,DIALOG_STYLE_ MSGBOX,"Infó","Elindítottad a járművet.","OK","BEZÁR"); } else { ShowPlayerDialog(playerid,HELPDIALOG,DIALOG_STYLE_ MSGBOX,"Infó","Ez nem a te járműved! Nem bírod elindítani!","OK","BEZÁR"); RemovePlayerFromVehicle(playerid); } } if(listitem == 1) { if(Jarmu[playerid] == 0) { if(JarmuInfo[i][JarmuMegveve] <= 0) //ha a jármű nincs megvéve { if(Penz[playerid] >= JarmuInfo[i][JarmuAr]) { Penz[playerid] -= JarmuInfo[i][JarmuAr]; JarmuID[playerid] = IsBuyableVehicle(GetPlayerVehicleID(playerid)); Jarmu[playerid] = 1; dUserSetINT(PlayerName(playerid)).("Jarmu",Jarmu[playerid]); dUserSetINT(PlayerName(playerid)).("JarmuID",Jarmu ID[playerid]); ShowPlayerDialog(playerid,HELPDIALOG,DIALOG_STYLE_ MSGBOX,"Infó","Sikeresen megvetted a járművedet!","OK","KILÉP"); } else { ShowPlayerDialog(playerid,HELPDIALOG,DIALOG_STYLE_ MSGBOX,"Infó","Nincs elég pénzed megvenni ezt a járművet!","OK","KILÉP"); RemovePlayerFromVehicle(playerid); } } else { ShowPlayerDialog(playerid,HELPDIALOG,DIALOG_STYLE_ MSGBOX,"Infó","Ezt a járművet már megvették!","OK","KILÉP"); RemovePlayerFromVehicle(playerid); } } else { ShowPlayerDialog(playerid,HELPDIALOG,DIALOG_STYLE_ MSGBOX,"Infó","Már van járműved!","OK","KILÉP"); RemovePlayerFromVehicle(playerid); } } if(listitem == 2) { if(Jarmu[playerid] == 1) { if(JarmuID[playerid] == IsBuyableVehicle(GetPlayerVehicleID(playerid))) { ShowPlayerDialog(playerid,HELPDIALOG,DIALOG_STYLE_ MSGBOX,"Infó","Sikeresen eladtad a járművedet! Megkaptad a jármű összegét!","OK","KILÉP"); Penz[playerid] += JarmuInfo[i][JarmuAr]; JarmuID[playerid] = 0; Jarmu[playerid] = 0; dUserSetINT(PlayerName(playerid)).("Jarmu",Jarmu[playerid]); dUserSetINT(PlayerName(playerid)).("JarmuID",Jarmu ID[playerid]); RemovePlayerFromVehicle(playerid); } else { ShowPlayerDialog(playerid,HELPDIALOG,DIALOG_STYLE_ MSGBOX,"Infó","Nem adhatod el ezt a járművet, mert nem a tiéd!","OK","KILÉP"); RemovePlayerFromVehicle(playerid); } } else { ShowPlayerDialog(playerid,HELPDIALOG,DIALOG_STYLE_ MSGBOX,"Infó","Nincs járműved, amit eladhatnál!","OK","KILÉP"); RemovePlayerFromVehicle(playerid); } } if(listitem == 3) { if(JarmuID[playerid] == IsBuyableVehicle(GetPlayerVehicleID(playerid))) { format(jarmuszam, sizeof(jarmuszam), "Jármű Száma: %i", IsBuyableVehicle(GetPlayerVehicleID(playerid))); ShowPlayerDialog(playerid,841,DIALOG_STYLE_MSGBOX, "Infó",jarmuszam,"Oké","Kilép"); } else { format(jarmuszam, sizeof(jarmuszam), "Jármű Száma: %i", IsBuyableVehicle(GetPlayerVehicleID(playerid))); ShowPlayerDialog(playerid,841,DIALOG_STYLE_MSGBOX, "Infó",jarmuszam,"Oké","Kilép"); RemovePlayerFromVehicle(playerid); } } if(listitem == 4) { RemovePlayerFromVehicle(playerid); } } else { ShowPlayerDialog(playerid,JarmuDialog1,DIALOG_STYL E_LIST,"Jármű","Elindít\nMegvesz\nElad\nJármű Száma\nKiszáll/Leszáll","OK", "BEZÁR"); } } return 1; } return 1; } |
|
|
|
|
#4 |
|
Huge Clucker
![]() ![]() ![]() Join Date: Jun 2009
Location: Hungary
Posts: 319
Reputation: 18
|
Ezt kérlek töltsd fel a http://pastebin.com/ -ra, mert így átláthatatlan.
|
|
|
|
|
#5 |
|
Little Clucker
![]() Join Date: Jul 2009
Location: Hungary
Posts: 20
Reputation: 0
|
|
|
|
|
|
#6 |
|
Huge Clucker
![]() ![]() ![]() Join Date: Jun 2009
Location: Hungary
Posts: 319
Reputation: 18
|
Huh, itt nagy kavarodás van. Nem igazán látom át hogy milyen változót mire és hogyan használsz, csak azt tudom, hogy sokat feleslegesen deklarálsz. Az IsBuyableVehicle() funkciót arra használd, hogy megtudd melyik jármű megvehető, ne arra, hogy a jármű ID-jét kapd vissza.
Egyébként jó úton haladsz, mikor a játékos kiválasztja a jármű vásárlása menüpontot, a response részben vedd fel a jármű azonosítóját, tehát: pawn Code:
A for ciklust pedig szedd ki az egész JarmuRendszer funkcióból, nem kell külön keresgélned a jármű azonosítóját, ha egyszerűen csak azt keresed, amiben a játékos ül. Arra ott van az előbb említett deklaráció. |
|
|
|
|
#7 |
|
Little Clucker
![]() Join Date: Jul 2009
Location: Hungary
Posts: 20
Reputation: 0
|
Kösz, most már működik
|
|
|
|
|
#8 |
|
Huge Clucker
![]() ![]() ![]() Join Date: Jun 2009
Location: Hungary
Posts: 319
Reputation: 18
|
Örülök hogy segíthettem, remélem érted mit miért kellett változtatni.
|
|
|
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| [FilterScript] [FS] Vehicle Spawner || Jármű Spawnoló (ENG / HUN) | antus | Filterscripts | 6 | 17/10/2012 10:24 AM |
| Mysql reg rendszer | Game94 | Archive | 1 | 06/06/2012 08:44 AM |
| [FS]Laptop Rendszer | [DrM]spatrik | Archive | 8 | 20/07/2011 04:26 PM |
| Pár kérdés:D | azzeroth | Archive | 1 | 15/01/2011 06:45 AM |
| [SEGÍTSÉG] Ház rendszer | antus | Archive | 7 | 02/03/2010 11:00 AM |