Hallo,
ich habe seit geraumer zeit ein Problem mit meinem Tankscript.....
Immer, wenn ich eine Tankstelle beliefern will (mit /abtanken [KrafstoffID])
new Abtanktimer;
if(strcmp(strget(cmdtext,0), "/abtanken", true) == 0)
{
if(!strlen(strget(cmdtext, 1))) return SendClientMessage(playerid,Wei,"/abtanken [KraftstoffID]");
{
if(dini_Int(Spielerdatei,"Fraktion")==15)
{
new krid = strval(strget(cmdtext,1));
if(IsPlayerInAnyVehicle(playerid))
{
if (GetPlayerState (playerid) == PLAYER_STATE_DRIVER)
{
if(IsPlayerAtGasStation(playerid))
{
if(krid<=0 || krid>=7)
{
SendClientMessage(playerid,Rot,"Deisen Krafstoff gibt es nicht!");
}
else
{
new Tanke;
new vtrail = GetVehicleTrailer(vehid);
for(new i = 0; i < sizeof (Tankstellen); i++)
{
if(IsPlayerInRangeOfPoint(playerid,10.0,Tankstellen[i][x],Tankstellen[i][y],Tankstellen[i][z]))
{
Tanke = Tankstellen[i][ID];
}
Abtanktimer = SetTimerEx("Abtanken",100,1,"iiidd",playerid,vehid,vtrail,krid,Tanke);//Timer wird gesetzt!!!!
}
}
}
}
}
}
else
{
SendClientMessage(playerid,Rot,"Du bist kein Trucker!");
}
}
return 1;
}
dann wird ein Timer gesetzt! Abtanktimer
Und unten im Public Abtanken:
if(IsPlayerInRangeOfPoint(playerid,10.0,Tankstellen[Tanke-1][x],Tankstellen[Tanke-1][y],Tankstellen[Tanke-1][z]))
{
if(IsPlayerInAnyVehicle(playerid))
{
if(IsTrailerAttachedToVehicle(vehid))
{
new Tankdatei[64];
format(Tankdatei,64,"/Biz/Tankstellen/%d.pwn",Tanke-1);
new Truckerdatei[64];
format(Truckerdatei,64,"/Biz/Fraktionen/%s.pwn","Trucker");
if(KID[vtrail]!=krid)
{
SendClientMessage(playerid,Rot,"Du hast diesen Sprit nicht geladen!");
KillTimer(Abtanktimer);
}
else
{
switch (KID[vtrail])
{
case 1:
{
if(dini_Int(Tankdatei,"Tank1")>=20000 || Tanktrail[vtrail]<=0)
{
SendClientMessage(playerid,Gelb,"Tankvoll oder Trailer leer!");
KillTimer(Abtanktimer);
}
else
{
dini_IntSet(Tankdatei,"Tank1",dini_Int(Tankdatei,"Tank1")+1);
Tanktrail[vtrail]= Tanktrail[vtrail]-1;
dini_IntSet(Truckerdatei,"Kasse",dini_Int(Truckerdatei,"Kasse")+dini_Int(Tankdatei,"Tank1Preis"));
dini_IntSet(Tankdatei,"Kasse",dini_Int(Tankdatei,"Kasse")-dini_Int(Tankdatei,"Tank1Preis"));
}
}
case 2:
{
if(dini_Int(Tankdatei,"Tank2")>=20000 || Tanktrail[vtrail]<=0)
{
SendClientMessage(playerid,Gelb,"Tankvoll oder Trailer leer!");
KillTimer(Abtanktimer);
}
else
{
dini_IntSet(Tankdatei,"Tank2",dini_Int(Tankdatei,"Tank2")+1);
Tanktrail[vtrail]= Tanktrail[vtrail]-1;
dini_IntSet(Truckerdatei,"Kasse",dini_Int(Truckerdatei,"Kasse")+dini_Int(Tankdatei,"Tank2Preis"));
dini_IntSet(Tankdatei,"Kasse",dini_Int(Tankdatei,"Kasse")-dini_Int(Tankdatei,"Tank2Preis"));
}
}
case 3:
{
if(dini_Int(Tankdatei,"Tank3")>=20000 || Tanktrail[vtrail]<=0)
{
SendClientMessage(playerid,Gelb,"Tankvoll oder Trailer leer!");
KillTimer(Abtanktimer);
}
else
{
dini_IntSet(Tankdatei,"Tank3",dini_Int(Tankdatei,"Tank3")+1);
Tanktrail[vtrail]= Tanktrail[vtrail]-1;
dini_IntSet(Truckerdatei,"Kasse",dini_Int(Truckerdatei,"Kasse")+dini_Int(Tankdatei,"Tank3Preis"));
dini_IntSet(Tankdatei,"Kasse",dini_Int(Tankdatei,"Kasse")-dini_Int(Tankdatei,"Tank3Preis"));
}
}
case 4:
{
if(dini_Int(Tankdatei,"Tank4")>=20000 || Tanktrail[vtrail]<=0)
{
SendClientMessage(playerid,Gelb,"Tankvoll oder Trailer leer!");
KillTimer(Abtanktimer);
}
else
{
dini_IntSet(Tankdatei,"Tank4",dini_Int(Tankdatei,"Tank4")+1);
Tanktrail[vtrail]= Tanktrail[vtrail]-1;
dini_IntSet(Truckerdatei,"Kasse",dini_Int(Truckerdatei,"Kasse")+dini_Int(Tankdatei,"Tank4Preis"));
dini_IntSet(Tankdatei,"Kasse",dini_Int(Tankdatei,"Kasse")-dini_Int(Tankdatei,"Tank4Preis"));
}
}
case 5:
{
if(dini_Int(Tankdatei,"Tank5")>=20000 || Tanktrail[vtrail]<=0)
{
SendClientMessage(playerid,Gelb,"Tankvoll oder Trailer leer!");
KillTimer(Abtanktimer);
}
else
{
dini_IntSet(Tankdatei,"Tank5",dini_Int(Tankdatei,"Tank5")+1);
Tanktrail[vtrail]= Tanktrail[vtrail]-1;
dini_IntSet(Truckerdatei,"Kasse",dini_Int(Truckerdatei,"Kasse")+dini_Int(Tankdatei,"Tank5Preis"));
dini_IntSet(Tankdatei,"Kasse",dini_Int(Tankdatei,"Kasse")-dini_Int(Tankdatei,"Tank5Preis"));
}
}
case 6:
{
if(dini_Int(Tankdatei,"Tank6")>=20000 || Tanktrail[vtrail]<=0)
{
SendClientMessage(playerid,Gelb,"Tankvoll oder Trailer leer!");
KillTimer(Abtanktimer);
}
else
{
dini_IntSet(Tankdatei,"Tank6",dini_Int(Tankdatei,"Tank6")+1);
Tanktrail[vtrail]= Tanktrail[vtrail]-1;
dini_IntSet(Truckerdatei,"Kasse",dini_Int(Truckerdatei,"Kasse")+dini_Int(Tankdatei,"Tank6Preis"));
dini_IntSet(Tankdatei,"Kasse",dini_Int(Tankdatei,"Kasse")-dini_Int(Tankdatei,"Tank6Preis"));
}
}
}
}
}
else
{
SendClientMessage(playerid,Rot,"Du hast keinen Trailer!");
KillTimer(Abtanktimer);
}
}
else
{
print("Test3");
KillTimer(Abtanktimer);
}
}
else
{
print("Test2");
KillTimer(Abtanktimer);
}
return 1;
}
werden alle KillTimer(Abtanktimer) nicht beachtet und der Timer ist nur dann weg wenn ich den Server neustarte!!!!!!!!
Kann mir jemand helfen????
Danke im Vorraus.
MfG Jimmy
Edit===> Is schon gut keiner braucht sich mehr Mühe zu machen ich habs raus und jeder andere wird's auch ganz einfach rausfinden, weil es ein so dämlicher Fehler ist...