Hab jetzt aber nicht auf Optimierung geachtet
Aber wenigstens schauen was man schreibt 
Das IsPlayerConnected macht da mal gar keinen Sinn 
Macht das mal so:
ocmd:seth(playerid,params[])
{
new pID, Float:leben, health;
if(sscanf(params,"ui",pID,health))return SendClientMessage(playerid,ROT,"INFO: /sh [PlayerID] [Energie]");
if(!IsPlayerConnected(pID))return SendClientMessage(playerid,GELB,"Der angegebene Spieler ist nicht connected!");
GetPlayerHealth(pID,leben);
if((floatround(leben)+health)>=100)return SCM(playerid,ROT,"Die Energie ist maximal 100!";
if(!pInfo[playerid][Rang]) return SendClientMessage(playerid,ROT,"Du bist leider kein Admin!");
SetPlayerHealth(pID,float(health));
return 1;
}
mfg. 