Help here!
#6

pawn Код:
#define BYTES_PER_CELL              4
stock SendFormattedMessage(playerid, color, fstring[], {Float, _}:...)
{
    static const STATIC_ARGS = 3;
    new n = (numargs() - STATIC_ARGS) * BYTES_PER_CELL;
    if(n)
    {
        new message[144],arg_start,arg_end;
        #emit CONST.alt        fstring
        #emit LCTRL          5
        #emit ADD
        #emit STOR.S.pri        arg_start

        #emit LOAD.S.alt        n
        #emit ADD
        #emit STOR.S.pri        arg_end
        do
        {
            #emit LOAD.I
            #emit PUSH.pri
            arg_end -= BYTES_PER_CELL;
            #emit LOAD.S.pri      arg_end
        }
        while(arg_end > arg_start);

        #emit PUSH.S          fstring
        #emit PUSH.C          144
        #emit PUSH.ADR         message

        n += BYTES_PER_CELL * 3;
        #emit PUSH.S          n
        #emit SYSREQ.C         format

        n += BYTES_PER_CELL;
        #emit LCTRL          4
        #emit LOAD.S.alt        n
        #emit ADD
        #emit SCTRL          4

        if(playerid == INVALID_PLAYER_ID)
        {
            #pragma unused playerid
            return SendClientMessageToAll(color, message);
        } else {
            return SendClientMessage(playerid, color, message);
        }
    } else {
        if(playerid == INVALID_PLAYER_ID)
        {
            #pragma unused playerid
            return SendClientMessageToAll(color, fstring);
        } else {
            return SendClientMessage(playerid, color, fstring);
        }
    }
}
try this. this is more optimized code by ****** and Zee (Creator of zcmd Fastest Command Proceesor)

COMMENT THESE LINES IN ORDER TO GET ABOVE CODE WORKING

pawn Код:
//new FALSE = false;
//#define SendFormattedMessage(%0,%1,%2) do{new _str[128]; format(_str,128,%2); SendClientMessageEx(%0,%1,_str);}while(FALSE)
Reply


Messages In This Thread
Help here! - by edgargreat - 05.10.2012, 04:15
Re: Help here! - by Danyal - 05.10.2012, 04:24
Re: Help here! - by edgargreat - 05.10.2012, 04:26
Re: Help here! - by Danyal - 05.10.2012, 04:27
Re: Help here! - by edgargreat - 05.10.2012, 04:32
Re: Help here! - by Danyal - 05.10.2012, 04:39
Re: Help here! - by edgargreat - 05.10.2012, 05:49
Re: Help here! - by Danyal - 05.10.2012, 06:14

Forum Jump:


Users browsing this thread: 1 Guest(s)