Hey!
Ich hab ein kleines Problem bei der Ingame Auswahl meiner Objekte. Ich klicke mit der Maus ein Objekt an und lasse mir die ID anzeigen. Dann will ich per Textdraw die Position dieses Objektes verändern und lasse mir dabei erneut die Pbjektid anzeigen. Aber leider wird ein ganz anderes Objekt bewegt und das obwohl die beiden Objektids übereinstimmen. Ich hab keinerlei Ahnung warum das so ist.
Hier der Code:
Code
public OnPlayerSelectObject(playerid, type, objectid, modelid, Float:fX, Float:fY, Float:fZ)
{
new string[132];
new Float: frX,Float: frY,Float: frZ;
ChoosenObject[playerid] = objectid;
if(ObjectErfasst[ChoosenObject[playerid]] != 1)
{
ObjectErfasst[ChoosenObject[playerid]] = 1;
oX[ChoosenObject[playerid]] = fX,oY[ChoosenObject[playerid]] = fY,oZ[ChoosenObject[playerid]] = fZ;
GetObjectRot(ChoosenObject[playerid],frX,frY,frZ);
oRX[ChoosenObject[playerid]] = frX,oRY[ChoosenObject[playerid]] = frY,oRZ[ChoosenObject[playerid]] = frZ;
ObjectModel[ChoosenObject[playerid]] = modelid;
}
KoordsEinsetzen(playerid);
format(string,sizeof(string),"%Object: %d selected!",objectid);
SendClientMessage(playerid,0xFFFFFFFF,string);
return 1;
}
if(playertextid == XWenigerSchalter[playerid])//____________________________Weniger Schalter
{
if(IsValidDynamicObject(ChoosenObject[playerid]) || IsValidObject(ChoosenObject[playerid]))
{
oX[ChoosenObject[playerid]] -= Movesize[playerid];
SetDynamicObjectPos(ChoosenObject[playerid],oX[ChoosenObject[playerid]],oY[ChoosenObject[playerid]],oZ[ChoosenObject[playerid]]);
KoordsEinsetzen(playerid);
new string[132];
format(string,sizeof(string),"Object moved: %d",ChoosenObject[playerid]);
SendClientMessage(playerid,0xFFFFFFFF,string);
return 1;
}
else
{
new string[132];
format(string,sizeof(string),"Object doesnßt exist: %d",ChoosenObject[playerid]);
SendClientMessage(playerid,0xFFFFFFFF,string);
}
return 1;
}
Alles anzeigen