18.01.2011, 15:49
Your coding syntax is a little strange. Those brackets for example after the else if check do absolutely nothing except make it look pretty, they aren't part of any statement. Here is how I would code it:
pawn Code:
dcmd_setplayerhealth(playerid, params[])
{
new targetid, Float:amount;
if(sscanf(params, "uf", targetid, amount)) return SendClientMessage(playerid, 0xFF0000AA, "Usage: \"/setplayerhealth <playerid> <amount>\"");
if(targetid == INVALID_PLAYER_ID) return SendClientMessage(playerid, 0xFF0000AA, "Player not found");
if(amount > 1 && amount < 101)
{
new playername[MAX_PLAYER_NAME], targetname[MAX_PLAYER_NAME], string[256];
GetPlayerName(playerid, playername, sizeof(playername));
GetPlayerName(targetid, targetname, sizeof(targetname));
format(string, sizeof(string), "%s(%d) set %s(%d)'s health to %.0f", targetname, targetid, playername, playerid, amount);
SendClientMessageToAll(0x50FF05FF, string);
SetPlayerHealth(playerid, amount);
}
else SendClientMessage(playerid, 0xFFFFFFFF,"Error: Please use |Max|: 100, |Min|: 1");
return 1;
}