probiers mal so:
ocmd:zoll(playerid,params[])
{
if(IsPlayerInRangeOfPoint(playerid,5.0, 1648.24, -17.61, 36.26))
{
if(GetPVarInt(playerid,"lvpass") == 1)
{
MoveObject(ztor[1],1648.24, -17.61, 33.26,3.0);
SetTimer("ztor1",5000,1);
GameTextForPlayer(playerid,"Zoll frei",3000,1);
SendClientMessage(playerid,COLOR_YELLOW,"Du bezahlst nichts für den Zoll, da du einen Pass besitzt!");
}
else
{
GivePlayerMoney(playerid,-200);
MoveObject(ztor[1],1648.24, -17.61, 33.26,3.0);
SetTimer("ztor1",5000,1);
GameTextForPlayer(playerid,"-200$",3000,1);
SendClientMessage(playerid,COLOR_YELLOW,"Du musst 200$ für den Zoll bezahlen!");
SendClientMessage(playerid,COLOR_YELLOW,"Kauf dir lieber einen Pass.");
}
}
if(IsPlayerInRangeOfPoint(playerid,5.0, 1628.13, -11.07, 36.26))
{
if(GetPVarInt(playerid,"lspass") == 1)
{
MoveObject(ztor[0],1628.13, -11.07, 33.26,3.0);
SetTimer("ztor0",5000,1);
GameTextForPlayer(playerid,"Zoll frei",3000,1);
SendClientMessage(playerid,COLOR_YELLOW,"Du bezahlst nichts für den Zoll, da du einen Pass besitzt!");
}
else
{
GivePlayerMoney(playerid,-200);
MoveObject(ztor[0],1628.13, -11.07, 33.26,3.0);
SetTimer("ztor0",5000,1);
GameTextForPlayer(playerid,"-200$",3000,1);
SendClientMessage(playerid,COLOR_YELLOW,"Du musst 200$ für den Zoll bezahlen!");
SendClientMessage(playerid,COLOR_YELLOW,"Kauf dir lieber einen Pass.");
}
}
return 1;
}
du hast nachdem du lspass abfragst 2x klammer zugemacht.
Beiträge von Tround
-
-
-
kanne daran liegen das ich dini noch nirgdns benutzt habe?
nope
-
vermutlich ist der fehler nicht in deinem gamemode sondern in einer include.
-
@ sonic
anscheinend kennst du diesen bug noch nicht -.-
@Sh12 aka Nrs
haste meinen vorschlag mal probiert?
hatte wie gesagt das gleiche problem und bei mir hats das gebracht. -
wenn du win 7 hast lass den server im kompatibilitäts modus win xp sp3 laufen. hat bei mir geholfen.
-
läuft der server zufällig auf deinem pc? oder auf root.
hatte neulich das problem bei meinem home server. lag irgendwie an windows 7. -
könnte daran liegen das du Playerid groß geschrieben hast.
ocmd:makemember(playerid,params[]) -
mach das if(dialogid==DIALOG_Vehicles) weg. du frägst 2 mal ab das macht kein sinn-.-
-
schonmal auf die idee gekommen auf "Help" zu drücken?
-
also bisher hab ich das hier:
public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
if(clickedid==autohaustext[4])
{
anfang:
autozahl[playerid]-=1;
if(autozahl[playerid]<400){autozahl[playerid]=611;}
if(autohausautos(autozahl[playerid],0)==0){goto anfang;}
DestroyVehicle(autohausauto[playerid]);
autohausauto[playerid]=CreateVehicle(autozahl[playerid],-1948.9185,263.9953,35.5769,180.0,-1,-1,-1);
SetVehicleVirtualWorld(autohausauto[playerid],playerid+1);
format(fahrzeugstring,sizeof(fahrzeugstring),"%s",FahrzeugName[autozahl[playerid]-400]);
TextDrawSetString(autohaustext[2],fahrzeugstring);
format(fahrzeugstring,sizeof(fahrzeugstring),"%i",FahrzeugPreis[autozahl[playerid]-400]);
TextDrawSetString(autohaustext[3],fahrzeugstring);
}
if(clickedid==autohaustext[5])
{
anfang2:
autozahl[playerid]+=1;
if(autozahl[playerid]>611){autozahl[playerid]=400;}
if(autohausautos(autozahl[playerid],0)==0){goto anfang2;}
DestroyVehicle(autohausauto[playerid]);
autohausauto[playerid]=CreateVehicle(autozahl[playerid],-1948.9185,263.9953,35.5769,180.0,-1,-1,-1);
SetVehicleVirtualWorld(autohausauto[playerid],playerid+1);
format(fahrzeugstring,sizeof(fahrzeugstring),"%s",FahrzeugName[autozahl[playerid]-400]);
TextDrawSetString(autohaustext[2],fahrzeugstring);
format(fahrzeugstring,sizeof(fahrzeugstring),"%i",FahrzeugPreis[autozahl[playerid]-400]);
TextDrawSetString(autohaustext[3],fahrzeugstring);
}
return 1;
}und der stock
stock autohausautos(veh,ah)
{
switch(ah)
{
case 0:{switch(veh){case 480,494,503,504,506,555,545,603,475,477,562,565,587,602,402,411,415,429,434,436,439,451,559,560,541,558,401,404,405,409,410,419,421,426,442,445,458,478,479,542,546,550,551,547,549,483,492,496,507,516,517,518,526,527,529,533,534,540,580,585,589,600,561,412,466,467,474,491,535,536,566,567,575,576: return 1;}return 0;}//autohaus
case 1:{switch(veh){case 448,461,462,463,468,471,481,509,510,521,522,581,586: return 1;}return 0;}//motorrad
case 2:{switch(veh){case 400,422,424,489,495,500,505,543,552,554,568,573,579,470,403,413,414,418,428,431,433,437,440,443,455,456,459,482,498,499,508,514,515,524,578,609: return 1;}return 0;}//lkw
case 3:{switch(veh){case 446,452,453,454,472,473,484,493,539,595: return 1;}return 0;}//boot
case 4:{switch(veh){case 417,469,487,511,512,513,519,548,553,563,577,592,593: return 1;}return 0;}//flug
}
return 0;
}theoretisch klappt auch alles
aber geht vlcht besser. ist auch das erste mal das ich mit goto rumprobiere.
-
aber wie soll ich bei einem continue ein weiteres +=1 einbauen? geht nicht.. deshalb goto.
oder wie würdest du es machen mit +1?
edit: und ich denke eine schleife zu machen würde mehr resourcen fressen als kurz 2 zeilen nach oben zu springen oder? -
hat sich erledigt habe den stock falsch eingesetzt. jetzt klappt alles wie ich will
trotzdem danke
-
hallo
habe vor ein autohaus zu scripten und ich will das autos die gesperrt sind übersprungen werden.
habe es so probiert aber leider führt er den befehl einfach weiter aus ohne wieder nach oben zu springen.
anfang:
autozahl[playerid]+=1;
if(autozahl[playerid]==Fahrzeugegesperrt(autozahl[playerid])){goto anfang;}
habe mir gedacht theoretisch wenn er wieder zum anfang springt macht er erneut +1 aber leider ist dies nicht der fall.
kennst sich damit jemand aus? was mach ich falsch -
mit senddeathmessage:
http://wiki.sa-mp.com/wiki/SendDeathMessage -
ich verstehe nicht was du dich bei dem beitrag so aufregst. das ist doch nicht wirklich überheblich geschrieben. er hat seinen eigenen code mitgebracht und will doch nur wissen wie das geht? is doch vollkommen ok. es gibt schlimmeres
-
-
string = dini_Get("/Reports/%s.txt",name);
format(string,sizeof(string),"Name: %s - Frage: %s", SpielerName(playerid),string);
du speicherst in der ersten zeile etwas in den string ein. aber in der nächsten formatierst du ihn wieder. erstell am besten einen zweiten string. -
du kannst aus dem string "name" auslesen und in den string "Besitzer[vehicleid]" einspeichern in dem du Strmid verwendest. oder du probierst es mal so aus wie ich vorher schon geschrieben habe.
-
ich versteh nicht was du machen willst.
du willst in die variable Besitzer[vehicleid] den namen einspeichern? oder was wird da eingespeichert