error 035: argument type mismatch (argument 1)
#1

pawn Код:
CMD:makeadmin(playerid, params[])
{
  new targetid, level;

  if (PlayerInfo[playerid][AdminLevel] > 5) return SendClientMessage(playerid, COLOR_RED, "Error ~ You are not a administrator with the required level");
  if (sscanf(params, "ud", targetid, level)) return SendClientMessage(playerid, COLOR_RED, "Usage ~ /makeadmin [PlayerID/PartOfName] [Level]");
  if (!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, "Error ~ Player not Connected");
  if (level == PlayerInfo[playerid][AdminLevel]) return SendClientMessage(playerid, COLOR_RED, "Error ~ Player is already this Level");
  if (level > 5) return SendClientMessage(playerid, COLOR_RED, "Error ~ Invalid level");
  if (!IsNumeric(level)) return SendClientMessage(playerid, COLOR_RED, "Error ~ Invalid level"); // THE LINE !!!!
  else {
    print("Makeadmin command");
  }
  return 1;
}
And the error is:

Код:
C:\Users\Torran\Desktop\tRoleplay\filterscripts\tadmin.pwn(129) : error 035: argument type mismatch (argument 1)
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


1 Error.
Anyone know how to fix this, This is my first time using IsNumeric
Reply
#2

Look at what you are checking for being numeric, think about what the function does and it's argument.
Reply
#3

Missing " ?
Reply
#4

IsNumeric function requires a string input, and level is an integer.
Reply
#5

why not.

pawn Код:
CMD:makeadmin(playerid, params[])
{
  new targetid, level;

  if (PlayerInfo[playerid][AdminLevel] > 5) return SendClientMessage(playerid, COLOR_RED, "Error ~ You are not a administrator with the required level");
  if (sscanf(params, "ud", targetid, level)) return SendClientMessage(playerid, COLOR_RED, "Usage ~ /makeadmin [PlayerID/PartOfName] [Level]");
  if (!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, "Error ~ Player not Connected");
  if (level == PlayerInfo[playerid][AdminLevel]) return SendClientMessage(playerid, COLOR_RED, "Error ~ Player is already this Level");
  if (level > 5 || level < 0) return SendClientMessage(playerid, COLOR_RED, "Error ~ Invalid level");
  PlayerInfo[targetid][AdminLevel] = level;
// then put here some text to tell them they were made admin etc.
  else {
    print("Makeadmin command");
  }
  return 1;
}
Reply
#6

Quote:
Originally Posted by Shady91
why not.

CMD:makeadmin(playerid, params[])
{
new targetid, level;

if (PlayerInfo[playerid][AdminLevel] > 5) return SendClientMessage(playerid, COLOR_RED, "Error ~ You are not a administrator with the required level");
if (sscanf(params, "ud", targetid, level)) return SendClientMessage(playerid, COLOR_RED, "Usage ~ /makeadmin [PlayerID/PartOfName] [Level]");
if (!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, "Error ~ Player not Connected");
if (level == PlayerInfo[playerid][AdminLevel]) return SendClientMessage(playerid, COLOR_RED, "Error ~ Player is already this Level");
if (level > 5 || level < 0) return SendClientMessage(playerid, COLOR_RED, "Error ~ Invalid level");
PlayerInfo[targetid][AdminLevel] = level;
// then put here some text to tell them they were made admin etc.
else {
print("Makeadmin command");
}
return 1;
}

Not used IsPlayerConnected.
sscanf no connected player(targetid) return (value) INVALID_PLAYER_ID;


pawn Код:
CMD:makeadmin(playerid, params[])
{
  if(PlayerInfo[playerid][AdminLevel] < 5) return SendClientMessage(playerid, COLOR_RED, "Error ~ You are not a administrator with the required level");

  new
        targetid,
        level;
  if(sscanf(params, "ud", targetid, Adminlevel)) SendClientMessage(playerid, COLOR_RED, "Usage ~ /makeadmin [PlayerID/PartOfName] [Level]");
  else if(targetid == INVALID_PLAYER_ID) SendClientMessage(playerid, COLOR_RED, "Error ~ Player not Connected");
  else if(level > 5 || level < 0) SendClientMessage(playerid, COLOR_RED, "Error ~ Invalid level");
  else if(level == PlayerInfo[targetid][AdminLevel]) SendClientMessage(playerid, COLOR_RED, "Error ~ Player is already this Level");
  else
  {
        PlayerInfo[targetid][AdminLevel] = level;
        print("Makeadmin command");
  }
  return 1;
}
Reply
#7

Quote:
Originally Posted by Phento
Quote:
Originally Posted by Shady91
why not.

CMD:makeadmin(playerid, params[])
{
new targetid, level;

if (PlayerInfo[playerid][AdminLevel] > 5) return SendClientMessage(playerid, COLOR_RED, "Error ~ You are not a administrator with the required level");
if (sscanf(params, "ud", targetid, level)) return SendClientMessage(playerid, COLOR_RED, "Usage ~ /makeadmin [PlayerID/PartOfName] [Level]");
if (!IsPlayerConnected(targetid)) return SendClientMessage(playerid, COLOR_RED, "Error ~ Player not Connected");
if (level == PlayerInfo[playerid][AdminLevel]) return SendClientMessage(playerid, COLOR_RED, "Error ~ Player is already this Level");
if (level > 5 || level < 0) return SendClientMessage(playerid, COLOR_RED, "Error ~ Invalid level");
PlayerInfo[targetid][AdminLevel] = level;
// then put here some text to tell them they were made admin etc.
else {
print("Makeadmin command");
}
return 1;
}

Not used IsPlayerConnected.
sscanf no connected player(targetid) return (value) INVALID_PLAYER_ID;


pawn Код:
CMD:makeadmin(playerid, params[])
{
  if(PlayerInfo[playerid][AdminLevel] < 5) return SendClientMessage(playerid, COLOR_RED, "Error ~ You are not a administrator with the required level");

  new
        targetid,
        level;
  if(sscanf(params, "ud", targetid, Adminlevel)) SendClientMessage(playerid, COLOR_RED, "Usage ~ /makeadmin [PlayerID/PartOfName] [Level]");
  else if(targetid == INVALID_PLAYER_ID) SendClientMessage(playerid, COLOR_RED, "Error ~ Player not Connected");
  else if(level > 5 || level < 0) SendClientMessage(playerid, COLOR_RED, "Error ~ Invalid level");
  else if(level == PlayerInfo[targetid][AdminLevel]) SendClientMessage(playerid, COLOR_RED, "Error ~ Player is already this Level");
  else
  {
        PlayerInfo[targetid][AdminLevel] = level;
        print("Makeadmin command");
  }
  return 1;
}
I used to use INVALID_PLAYER_ID but lots of people told me not to.
And this command isent finished i know ive done alot of things wrong,
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)