dcmd_heal(playerid, params[]) { new id; if (!strlen(params)) return SendClientMessage(playerid, 0xFF0000AA, "Usage: \"/heal <playerid>\""); id = strval(params); if (!IsPlayerConnected(id))SendClientMessage(playerid, 0xFF0000AA, "Player not found"); SetPlayerHealth(id, 100.0); SendClientMessage(id, 0x00FF00AA, "You have been healed"); SendClientMessage(playerid, 0x00FF00AA, "Player healed"); return 1; }
#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
return SendClientMessage(playerid, COLOR_WHITE, "{FFA500}Info: {FFFFFF}Unavailable command! Use /help!"); }
I know that zcmd is much easier and faster, but my filterscript is in DCMD and i want to put it in gamemode.
![]() @ Do you know a converter? |
CMD:buycar(playerid, params[]) { if(IsPlayerConnected(playerid)) { else return SendClientMessage(playerid, -1, "TEST"); } return 1; }
public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(heal, 4, cmdtext);
So easy. I try to add this command (for testing):
Код:
CMD:buycar(playerid, params[]) { if(IsPlayerConnected(playerid)) { else return SendClientMessage(playerid, -1, "TEST"); } return 1; } symbol "buycar" is never used |
G:\PROFEG RPG\PROFEG RPG\PROFEG RPG\gamemodes\gf.pwn(26071) : warning 217: loose indentation G:\PROFEG RPG\PROFEG RPG\PROFEG RPG\gamemodes\gf.pwn(26071) : error 029: invalid expression, assumed zero G:\PROFEG RPG\PROFEG RPG\PROFEG RPG\gamemodes\gf.pwn(26071) : error 017: undefined symbol "cmd_buycar" G:\PROFEG RPG\PROFEG RPG\PROFEG RPG\gamemodes\gf.pwn(26071) : error 029: invalid expression, assumed zero G:\PROFEG RPG\PROFEG RPG\PROFEG RPG\gamemodes\gf.pwn(26071) : fatal error 107: too many error messages on one line