21.01.2013, 03:08
(
Последний раз редактировалось tonisantolia; 21.01.2013 в 15:03.
)
Introduзгo
Bom, nгo sou muito bom com explicaзхes mas vou tentar ensinar como usar macros pois vejo que muitas pessoas aqui no forъm nгo sabem usar.
Mгos na Massa
Usar macros й uma maneira de criar funзхes mais otimizadas para seu script. Veja um exemplo de como formatar uma mensagem e envia-la usando format e SendClientMessage em um macro.
Parametros:
Modo de uso:
Jб a SendClientMessage normal os parametros seriam:
Bom, estudando as funзхes que eu estou ensinando a fazer em macros jб da para vocкs terem uma ideia que %0 %1 %2.. sгo como mascaras de formataзгo para uma certa string.
Agora, o DirectHit me pediu para falar de como usar macros para retirar a necessidade de por as forwards no gamemode, entгo o macro seria mais ou menos assim:
Parametros:
Й um tutorial й basico.. Espero que gostem e nгo falem merdas no topicos ou seram reportados '-'Bom, nгo sou muito bom com explicaзхes mas vou tentar ensinar como usar macros pois vejo que muitas pessoas aqui no forъm nгo sabem usar.
Mгos na Massa
Usar macros й uma maneira de criar funзхes mais otimizadas para seu script. Veja um exemplo de como formatar uma mensagem e envia-la usando format e SendClientMessage em um macro.
pawn Код:
#define MSGFormatada(%0,%1,%2,%3) new string[128];format(string, sizeof string, %2, %3) && SendClientMessage(%0,%1,string)
Код:
%0 = playerid. %1 = Cor. %2 = Mensagem. %3 = String.
pawn Код:
MSGFormatada(playerid, COR, MSG, STRING);
pawn Код:
SendClientMessage(playerid, COR, MSG);
Agora, o DirectHit me pediu para falar de como usar macros para retirar a necessidade de por as forwards no gamemode, entгo o macro seria mais ou menos assim:
pawn Код:
#define callback %0(%1) forward %0(%1);public %0(%1)
Parametros:
Код:
%0 = Nome da Callback. %1 = Funзхes da callback. Exemplo: #define MSGALLFormatada(%0,%1,%2) new string[128];format(string,sizeof string,%1,%2) && SendClientMessageToAll(%0,string) callback tuegay(playerid) { new snd[MAX_PLAYER_NAME]; GetPlayerName(playerid,snd,sizeof snd); MSGALLFormatada(-1,"%s й gay kkkk!",snd); return 1; }
Depois irei postar mais atualizaзхes atй que fique um tutorial completo, se hб algum erro nos scripts falados acima me fale pois acabei de acordar e estou quase caindo da cadeira
Abraзos.