Transfer strcmp to zcmd+sscanf
#1

Can you please pass the command/warn on the zcmd + sscanf
Код:
mp(cmd, "/warn", true) == 0)
{
  if(IsPlayerConnected(playerid))
  {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
      SendClientMessage(playerid, COLOR_GRAD2, "{00FF00}Folosire:{FFFFFF} /warn [playerid/numejucator] [reason]");
      return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if (PlayerInfo[playerid][pAdmin] >= 1)
    {
      if(IsPlayerConnected(giveplayerid))
      {
        if(giveplayerid != INVALID_PLAYER_ID)
        {
          GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
          GetPlayerName(playerid, sendername, sizeof(sendername));
          new length = strlen(cmdtext);
          while ((idx < length) && (cmdtext[idx] <= ' '))
          {
            idx++;
          }
          new offset = idx;
          new result[128];
          while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
          {
            result[idx - offset] = cmdtext[idx];
            idx++;
          }
          result[idx - offset] = EOS;
          if(!strlen(result))
          {
              SendClientMessage(playerid, COLOR_GRAD2, "{00FF00}Folosire:{FFFFFF} /warn [playerid/numejucator] [reason]");
              return 1;
          }
          if (PlayerInfo[giveplayerid][pAdmin] > PlayerInfo[playerid][pAdmin]) return SendClientMessage(playerid, COLOR_GREY, "Nu poti da warn unui administrator cu rangul mai mare ca al tau.");
          PlayerInfo[giveplayerid][pWarns] += 1;
          Update(giveplayerid, pWarningsx);
          if(PlayerInfo[giveplayerid][pWarns] >= 3)
          {
              new year, month,day;
              getdate(year, month, day);
              format(string, sizeof(string), "AdmCmd: %s a primit ban de la %s(3 warns), motiv: %s (%d-%d-%d)", giveplayer, sendername, (result),month,day,year);
              format(string, sizeof(string), "{0066FF}Info: %s{a9c4e4} a primit ban de la %s (3 Warns), motiv: %s", giveplayer, sendername, (result));
              SendClientMessageToAll(COLOR_LIGHTRED, string);
              PlayerInfo[giveplayerid][pReg] = -999; Update(giveplayerid,pRegisteredx);
              PlayerInfo[giveplayerid][pWarns] = 0; Update(giveplayerid,pWarningsx);
              new playersip[256];
              GetPlayerIp(giveplayerid,playersip,sizeof(playersip));
              strmid(PlayerInfo[giveplayerid][pIP], playersip, 0, 100, 255);
              Update(giveplayerid, pIPx);
              Kick(giveplayerid);
              return 1;
            }
            format(string, sizeof(string), "I-ai dat warn lui %s, motiv: %s", giveplayer, (result));
            SendClientMessage(playerid, COLOR_LIGHTRED, string);
            format(string, sizeof(string), "Ai primit warn de la %s, motiv: %s", sendername, (result));
            SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
            format(string, sizeof(string), "{0066FF}Info: %s{a9c4e4} a primit warn de la %s , motiv: %s", giveplayer, sendername, (result));
            SendClientMessageToAll(COLOR_LIGHTRED, string);
            return 1;
          }
        }
        else
        {
          format(string, sizeof(string), "   %d nu este conectat.", giveplayerid);
          SendClientMessage(playerid, COLOR_GRAD1, string);
        }
      }
   }
   return 1;
}
Reply
#2

PHP код:
CMD:warn(playerid,params[])
{
    new 
giveplayerid,result[64],name[2][MAX_PLAYER_NAME];
    if(
sscanf(params,"us[64]",giveplayerid,result))return SendClientMessage(playeridCOLOR_GRAD2"{00FF00}Folosire:{FFFFFF} /warn [playerid/numejucator] [reason]");
    if(!
IsPlayerConnected(giveplayerid))return 1;
    if(
giveplayerid != INVALID_PLAYER_ID)
    {
        
GetPlayerName(giveplayerid,name[0],MAX_PLAYER_NAME);
        
GetPlayerName(playerid,name[1],MAX_PLAYER_NAME);
        if(
PlayerInfo[giveplayerid][pAdmin] > PlayerInfo[playerid][pAdmin])return SendClientMessage(playeridCOLOR_GREY"Nu poti da warn unui administrator cu rangul mai mare ca al tau.");
        
PlayerInfo[giveplayerid][pWarns] += 1;
        
Update(giveplayerid,pWarningsx);
        if(
PlayerInfo[giveplayerid][pWarns] >= 3)
        {
            new 
yearmonth,day;
             
getdate(yearmonthday);
              
format(stringsizeof(string), "AdmCmd: %s a primit ban de la %s(3 warns), motiv: %s (%d-%d-%d)"giveplayersendernameresult,month,day,year);
               
format(stringsizeof(string), "{0066FF}Info: %s{a9c4e4} a primit ban de la %s (3 Warns), motiv: %s"giveplayersendernameresult);
               
SendClientMessageToAll(COLOR_LIGHTREDstring);
            
PlayerInfo[giveplayerid][pReg] = -999;
            
Update(giveplayerid,pRegisteredx);
            
PlayerInfo[giveplayerid][pWarns] = 0;
            
Update(giveplayerid,pWarningsx);
            new 
playersip[256];
            
GetPlayerIp(giveplayerid,playersip,sizeof(playersip));
            
strmid(PlayerInfo[giveplayerid][pIP], playersip0100255);
            
Update(giveplayeridpIPx);
            
Kick(giveplayerid);
            return 
1;
        }
        else
        {
              
format(stringsizeof(string), "   %d nu este conectat."giveplayerid);
            
SendClientMessage(playeridCOLOR_GRAD1string);
        }
    }
    return 
1;

Reply
#3

You can move it please?
Код:
 	if(strcmp(cmd, "/unwarn", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
	    	tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "{00FF00}Folosire:{FFFFFF} /unwarn [playerid/numejucator] [reason]");
				return 1;
			}
			giveplayerid = ReturnUser(tmp);
			if (PlayerInfo[playerid][pAdmin] >= 3)
			{
			    if(IsPlayerConnected(giveplayerid))
			    {
			        if(giveplayerid != INVALID_PLAYER_ID)
			        {
					    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
						GetPlayerName(playerid, sendername, sizeof(sendername));
						new length = strlen(cmdtext);
						while ((idx < length) && (cmdtext[idx] <= ' '))
						{
							idx++;
						}
						new offset = idx;
						new result[128];
						while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
						{
							result[idx - offset] = cmdtext[idx];
							idx++;
						}
						result[idx - offset] = EOS;
						result[0] = toupper(result[0]);
						if(!strlen(result))
						{
							SendClientMessage(playerid, COLOR_GRAD2, "{00FF00}Folosire:{FFFFFF} /unwarn [playerid/numejucator] [reason]");
							return 1;
						}
						PlayerInfo[giveplayerid][pWarns] -= 1;
						Update(giveplayerid, pWarningsx);
						if(PlayerInfo[giveplayerid][pWarns] >= 0)
						{
		                    format(string, sizeof(string), "I-ai scos lui %s un warn, motiv: %s", giveplayer, (result));
				            SendClientMessage(playerid, COLOR_LIGHTRED, string);
					        format(string, sizeof(string), "%s ti-a scos un warn, motiv: %s", sendername, (result));
					        SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
							return 1;
						}

					}
				}//not connected
			}
			else
			{
				format(string, sizeof(string), "** %d nu este conectat.", giveplayerid);
				SendClientMessage(playerid, COLOR_GRAD1, string);
			}
		}
		return 1;
	}
Reply
#4

PHP код:
CMD:unwarn(playerid,params[])
{
    new 
giveplayerid,reason[64],name[2][MAX_PLAYER_NAME];
    if(
sscanf(params,"us[64]",giveplayerid,reason))return SendClientMessage(playeridCOLOR_GRAD2"{00FF00}Folosire:{FFFFFF} /unwarn [playerid/numejucator] [reason]");
    if(
PlayerInfo[playerid][pAdmin] >= 3)
    {
        if(!
IsPlayerConnected(giveplayerid))
        {
            
format(stringsizeof(string), "** %d nu este conectat."giveplayerid);
            
SendClientMessage(playeridCOLOR_GRAD1string);
            return 
1;
        }
        if(
giveplayerid != INVALID_PLAYER_ID)
        {
            
GetPlayerName(giveplayerid,name[0],MAX_PLAYER_NAME);
            
GetPlayerName(playerid,name[1],MAX_PLAYER_NAME);
            
PlayerInfo[giveplayerid][pWarns] -= 1;
            
Update(giveplayeridpWarningsx);
            if(
PlayerInfo[giveplayerid][pWarns] >= 0)
            {
                   
format(stringsizeof(string), "I-ai scos lui %s un warn, motiv: %s"giveplayer, (result));
                   
SendClientMessage(playeridCOLOR_LIGHTREDstring);
                
format(stringsizeof(string), "%s ti-a scos un warn, motiv: %s"sendername, (result));
                
SendClientMessage(giveplayeridCOLOR_LIGHTREDstring);
                return 
1;
            }
        }
    }
    return 
1;

Reply
#5

Just learn the syntax, it's easy enough: https://sampforum.blast.hk/showthread.php?tid=91354
Reply
#6

Quote:
Originally Posted by MarvinPWN
Посмотреть сообщение
PHP код:
CMD:unwarn(playerid,params[])
{
    new 
giveplayerid,reason[64],name[2][MAX_PLAYER_NAME];
    if(
sscanf(params,"us[64]",giveplayerid,reason))return SendClientMessage(playeridCOLOR_GRAD2"{00FF00}Folosire:{FFFFFF} /unwarn [playerid/numejucator] [reason]");
    if(
PlayerInfo[playerid][pAdmin] >= 3)
    {
        if(!
IsPlayerConnected(giveplayerid))
        {
            
format(stringsizeof(string), "** %d nu este conectat."giveplayerid);
            
SendClientMessage(playeridCOLOR_GRAD1string);
            return 
1;
        }
        if(
giveplayerid != INVALID_PLAYER_ID)
        {
            
GetPlayerName(giveplayerid,name[0],MAX_PLAYER_NAME);
            
GetPlayerName(playerid,name[1],MAX_PLAYER_NAME);
            
PlayerInfo[giveplayerid][pWarns] -= 1;
            
Update(giveplayeridpWarningsx);
            if(
PlayerInfo[giveplayerid][pWarns] >= 0)
            {
                   
format(stringsizeof(string), "I-ai scos lui %s un warn, motiv: %s"giveplayer, (result));
                   
SendClientMessage(playeridCOLOR_LIGHTREDstring);
                
format(stringsizeof(string), "%s ti-a scos un warn, motiv: %s"sendername, (result));
                
SendClientMessage(giveplayeridCOLOR_LIGHTREDstring);
                return 
1;
            }
        }
    }
    return 
1;

rep.Thanks
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)