#include #define COLOR_GREEN 0x33AA33AA #define COLOR_RED 0xAA3333AA #define dcmd(%1,%2,%3) if ((strcmp(%3, "/%1", true, %2+1) == 0)&&(((%3[%2+1]==0)&&(dcmd_%1(playerid,"")))||((%3[%2+1]==32)&&(dcmd_%1(playerid,%3[%2+2]))))) return 1 dcmd_goto(playerid, target[]) { new targetid = strval(target); if (!VIP[playerid]) { SendClientMessage(playerid,COLOR_RED,"Only logged users can use this command"); } else if (!strlen(target)) { SendClientMessage(playerid,COLOR_RED,"Usage: /goto [playerid]"); } else if(!IsPlayerConnected(targetid) || targetid < 0 || targetid > 99) { SendClientMessage(playerid,COLOR_RED,"Invalid playerid"); } else { new Float:Pos[3],str[50]; GetPlayerPos(targetid,Pos[0],Pos[1],Pos[2]); SetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]+0.5); new targetname = GetPlayerName(targetid,str,sizeof(str)); format(str,sizeof(str),"You have been teleported near %s",targetname); SendClientMessage(playerid,COLOR_GREEN,str); } return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { dcmd(goto,4,cmdtext); return 0; } main() { print("\n +---------------+"); print(" | /goto command |"); print(" +---------------+\n"); } public OnGameModeInit() { SetGameModeText("/goto command"); AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); return 1; } public OnPlayerRequestClass(playerid, classid) { SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746); SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746); SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746); return 1; }