Big GooD HELP ThANx
#10

pawn Code:
/* SA:MP /god and /me commands
 * Made by My_Waffles_Bitch
*/

//==============================================================================

#include <a_samp>

#define CMDS true

#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1

//==============================================================================

public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(me, 2, cmdtext);
dcmd(god, 3, cmdtext);
}
dcmd_me(playerid, params[] ) {
    new
        msg[128];
    if (sscanf(params, "s",msg)) {
        format(s,sizeof(s),"%s:[USAGE]: /me <MESSAGE>",icommands);
        return SendClientMessage(playerid,COLOR_SYSTEM,s);
    }
    if(PlayerInfo[playerid][mute]) {
        return 0;
  }
    else {
        format(s,sizeof(s),"%s %s",PlayerName(playerid),msg);
        SendClientMessageToAll(COLOR_WHITE,s);
        WriteLog(clearlog,s);
    }
    return true;
}

dcmd_god(playerid, params[] ) {
  if(God[playerid] == 0)
  {
  God[playerid] = 1;
  new pName[MAX_PLAYER_NAME];
  new string[48];
  GetPlayerName(playerid, pName, sizeof(pName));
  SendClientMessageToAll(0xAAAAAAAA,"%s has turned Godmode on.",pName);
  }
  else
  {
  God[playerid] = 0;
  new pName[MAX_PLAYER_NAME];
  new string[48];
  GetPlayerName(playerid, pName, sizeof(pName));
  SendClientMessageToAll(0xAAAAAAAA,"%s has turned godmode off.",pName);
  SetPlayerHealth(playerid, 100);
  }
  return true;
}
//=======================================================================
stock sscanf(string[], format[], {Float,_}:...) {
    new formatPos = 0, stringPos = 0, paramPos = 2, paramCount = numargs();
    while (paramPos < paramCount && string[stringPos]){
        switch (format[formatPos++]){
            case '\0':{
                return 0;
            }case 'i', 'd':{
                new
                    neg = 1,
                    num = 0,
                    ch = string[stringPos];
                if (ch == '-'){
                    neg = -1;
                    ch = string[++stringPos];
                }do{
                    stringPos++;
                    if (ch >= '0' && ch <= '9'){
                        num = (num * 10) + (ch - '0');
                    }else{
                        return 1;
                    }
                }while ((ch = string[stringPos]) && ch != ' ');
                setarg(paramPos, 0, num * neg);
            }case 'h', 'x':{
                new ch, num = 0;
                while ((ch = string[stringPos++])){
                    switch (ch){
                        case 'x', 'X':{
                            num = 0;
                            continue;
                        }case '0' .. '9':{
                            num = (num << 4) | (ch - '0');
                        }case 'a' .. 'f':{
                            num = (num << 4) | (ch - ('a' - 10));
                        }case 'A' .. 'F':{
                            num = (num << 4) | (ch - ('A' - 10));
                        }case ' ':{
                            break;
                        }default:{
                            return 1;
                        }
                    }
                }setarg(paramPos, 0, num);
            }case 'c':{
                setarg(paramPos, 0, string[stringPos++]);
            }case 'f':{
                new tmp[25];
                strmid(tmp, string, stringPos, stringPos+sizeof(tmp)-2);
                setarg(paramPos, 0, _:floatstr(tmp));
            }case 's', 'z':{
                new i = 0, ch;
                if (format[formatPos]){
                    while ((ch = string[stringPos++]) && ch != ' '){
                        setarg(paramPos, i++, ch);
                    }if (!i) return 1;
                }else{
                    while ((ch = string[stringPos++])){
                        setarg(paramPos, i++, ch);
                    }
                }stringPos--;
                setarg(paramPos, i, '\0');
            }default:{
                continue;
            }
        }while (string[stringPos] && string[stringPos] != ' '){
            stringPos++;
        }while (string[stringPos] == ' '){
            stringPos++;
        }paramPos++;
    }while (format[formatPos] == 'z') formatPos++;
    return format[formatPos];
}
Try that..You didnt put sscanf code, but you used it
Reply


Messages In This Thread
Big GooD HELP ThANx - by My_Waffles_Bitch_L0L - 16.01.2009, 13:24
Re: Big GooD HELP ThANx - by Nero_3D - 16.01.2009, 13:27
Re: Big GooD HELP ThANx - by My_Waffles_Bitch_L0L - 16.01.2009, 13:28
Re: Big GooD HELP ThANx - by Snyper18 - 16.01.2009, 13:29
Re: Big GooD HELP ThANx - by My_Waffles_Bitch_L0L - 16.01.2009, 13:33
Re: Big GooD HELP ThANx - by Snyper18 - 16.01.2009, 13:34
Re: Big GooD HELP ThANx - by SilentMouse - 16.01.2009, 13:35
Re: Big GooD HELP ThANx - by My_Waffles_Bitch_L0L - 16.01.2009, 13:39
Re: Big GooD HELP ThANx - by My_Waffles_Bitch_L0L - 16.01.2009, 13:52
Re: Big GooD HELP ThANx - by Hypo - 16.01.2009, 13:53

Forum Jump:


Users browsing this thread: 1 Guest(s)