enum Tore
{
Float:TorX,
Float:TorY,
Float:TorZ,
TorStellung,
Fraktion,
ModelID,
ObjID
}
new Tor[MAX_TORE][Tore] = {
{1917.3494873047,2339.4455566406,12.593704223633,0,9,980},
{2517.41796875,1822.943359375,13.413106918335,0,8,971},
{2557.9184570313,1692.5526123047,13.306018829346,0,8,8210}
};
Unter OnGamemOdeInit:
for(new i = 0; i<sizeof(Tor); i++)
{
Tor[i][ObjID] = CreateObject(Tor[i][ModelID], Tor[i][TorX], Tor[i][TorY], Tor[i][TorZ], 0, 0, 0, 300); // Ich geh mal davon aus, dass RotX, RotY und RotZ 0 sind, da du sie nicht festgelegt hast.
}
ocmd:tor(playerid,params[])
{
for(new i=0;i<MAX_TORE;i++)
{
if(IsPlayerInRangeOfPoint(playerid,15.0,Tor[i][TorX],Tor[i][TorY],Tor[i][TorZ]))
{
if(GetPVarInt(playerid,"Fraktion")== Tor[i][Fraktion])
{
if(Tor[i][TorStellung]==0)
{
MoveObject(Tor[i][ObjID],Tor[i][TorX],Tor[i][TorY],Tor[i][TorZ]-10,5);
Tor[i][TorStellung] = 1;
}
else if(Tor[i][TorStellung]==1)
{
MoveObject(Tor[i][ObjID],Tor[i][TorX],Tor[i][TorY],Tor[i][TorZ],5);
Tor[i][TorStellung] = 0;
}
}
}//,Tore[i][2],Tore[i][3]))
}
return 1;
}
So sollte es funktionieren.