16.08.2017, 19:45
Ahorrate eso y usa defines, que es mas practico y rapido que un stock:
O puedes usar esta funcion que hace que puedas enviar mensajes con parametros sin usar format:
Ejemplo:
PHP код:
#define prueba SendClientMessage
PHP код:
stock Mensaje(playerid,color,fstring[],{Float, _}:...)
{
new n=(numargs()-3)*4;
if(n)
{
new message[128],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-=4;
#emit LOAD.S.pri arg_end
}
while(arg_end>arg_start);
#emit PUSH.S fstring
#emit PUSH.C 255
#emit PUSH.ADR message
n+=4*3;
#emit PUSH.S n
#emit SYSREQ.C format
n+=4;
#emit LCTRL 4
#emit LOAD.S.alt n
#emit ADD
#emit SCTRL 4
return SCM(playerid,color,message);
}
else return SCM(playerid,color,fstring);
}
//------------------------------------------------------------------------------------------------
stock SCM(playerid, color, msg[])
{
return SendClientMessage(playerid, color, msg);
}
PHP код:
Mensaje(playerid, -1, "Wea parametro %d %d", 1, 2);