31.08.2011, 01:21
Quote:
That's pretty simple, because you're checking if the cmdtext array is equal to "/up" and if it is, you run that section of code and then return 1, which means any of the other code in that callback won't be run. Instead, why don't you have different command checks for each gate? Or if you want them all to happen at the same time, why don't you have all of the MoveObject code under one of the if statements?
|
do like /up to gate 1,up2 to gate 2 and up3 to gate 3.
Thats why its not working -.-' you have the same command to 3 different functions
Quote:
public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp(cmdtext, "/up", true) == 0) { MoveObject(ufo, 268.65, 1883.09, 774.00, 3); SendClientMessage(playerid, 0xDEEE20FF, "To the moon!"); return 1; } if (strcmp(cmdtext, "/down", true) == 0) { MoveObject(ufo, 268.6500, 1883.0900, -35.0000, 5); SendClientMessage(playerid, 0xDEEE20FF, "Back to Earth!"); return 1; } if (strcmp(cmdtext, "/up2", true) == 0) { MoveObject(ufo1, 268.65, 1883.09, 774.00, 3); SendClientMessage(playerid, 0xDEEE20FF, "To the moon!"); return 1; } if (strcmp(cmdtext, "/down2", true) == 0) { MoveObject(ufo1, 268.6500, 1883.0900, -2.9000, 5); SendClientMessage(playerid, 0xDEEE20FF, "Back to Earth!"); return 1; } if (strcmp(cmdtext, "/up3", true) == 0) { MoveObject(ufo2, 268.7174, 1883.0188, 832.4000, 3); SendClientMessage(playerid, 0xDEEE20FF, "To the moon!"); return 1; } if (strcmp(cmdtext, "/down3", true) == 0) { MoveObject(ufo2, 268.7200, 1883.0200, 23.5000, 5); SendClientMessage(playerid, 0xDEEE20FF, "Back to Earth!"); return 1; } return 0; } |