Guten Abend,
Ich scripte grade ein Zoll system aber wenn ich /zoll eine gebe geht es nur beim Object mit der ID 0
hier das enum:
enum Zoll_Enum
{
zObID,
Float:zX,
Float:zY,
Float:zZ,
Float:zR,
Float:zMinX,
Float:zMinY,
Float:zMaxX,
Float:zMaxY,
zStatus
};
new zInfo[2][Zoll_Enum] = {
//ID,X ,Y ,Z ,R ,MinX ,MinY ,MaxX ,MaxY ,Status
{-1,51.03450, -1536.22937, 5.00100,82.92000,40.8968,-1538.1244,50.6050,-1533.0997,0},
{-1,52.23680, -1527.26160, 5.00100, 262.00000,52.5167,-1530.1376,62.7937,-1525.9354,0}
};
//ID,X ,Y ,Z ,R ,MinX ,MinY ,MaxX ,MaxY ,Status
{-1,51.03450, -1536.22937, 5.00100,82.92000,40.8968,-1538.1244,50.6050,-1533.0997,0},
{-1,52.23680, -1527.26160, 5.00100, 262.00000,52.5167,-1530.1376,62.7937,-1525.9354,0}
};
hier mein code vom /zoll befehl:
if(strcmp(cmd, "/zoll",true) == 0)
{
if(!IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendError(playerid,"Info:"HTML_GREY" Du musst in einem Fahrzeug sitzten und der Fahrer sein.");
new ZollPassed = 0;
for(new i = 0; i < sizeof zInfo; i++) {
if(!zInfo[i][zStatus])
{
if(PlayerInfo[playerid][pZollPass] == 0) {
if(IsPlayerInArea(playerid,zInfo[i][zMinX],zInfo[i][zMinY],zInfo[i][zMaxX],zInfo[i][zMaxY]))
{
MoveDynamicObject(zInfo[i][zObID], zInfo[i][zX], zInfo[i][zY], zInfo[i][zZ]-2, 5.0);
SetTimerEx("ZollClose", 5000, 0, "i", i);
ZollPassed = 1;
SetPlayerMoney(playerid,1,500);
format(string,sizeof string,"[Zöllner]: Gute Weiterfahrt. Tipp: Im 24-7 gibts einen Zollpass. Mit diesem ist der Zoll kostenlos. (Zollstation %d)",i+1);
SendClientMessage(playerid, COLOR_GREEN, string);
}
} else {
if(IsPlayerInArea(playerid,zInfo[i][zMinX],zInfo[i][zMinY],zInfo[i][zMaxX],zInfo[i][zMaxY]))
{
MoveDynamicObject(zInfo[i][zObID], zInfo[i][zX], zInfo[i][zY], zInfo[i][zZ]-2, 5.0);
SetTimerEx("ZollClose", 5000, 0, "i", i);
format(string,sizeof string,"[Zöllner]: Gute Weiterfahrt. (Zollstation %d)",i+1);
SendClientMessage(playerid, COLOR_GREEN, string);
ZollPassed = 1;
SetPlayerMoney(playerid,1,500);
}
}
break;
}
else
{
if(PlayerInfo[playerid][pFraktion] == 1)
{
if(IsPlayerInArea(playerid,zInfo[i][zMinX],zInfo[i][zMinY],zInfo[i][zMaxX],zInfo[i][zMaxY])) {
MoveDynamicObject(zInfo[i][zObID], zInfo[i][zX], zInfo[i][zY], zInfo[i][zZ]-2, 5.0);
SetTimerEx("ZollClose", 5000, 0, "i",i);
SendClientMessage(playerid, COLOR_RED, " Diese Zollstation ist geschlossen, aber da du ein Staatsdiener bist darfst du passieren!");
SendClientMessage(playerid, COLOR_GREEN, "[Zöllner]Gute Weiterfahrt! Du kannst dir einen Zollpass in einem 24-7 zulegen!");
ZollPassed = 1;
}
break;
}
else
{
SendClientMessage(playerid, COLOR_RED, " Diese Zollstation ist geschlossen!");
ZollPassed = 1;
break;
}
}
}
if(ZollPassed == 0)
{
SendClientMessage(playerid, COLOR_RED, " Du bist an keiner Zollstation!");
return 1;
}
return 1;
}
Mit Freundlichen Grüßen YoSohai