open.mp forum
[Pawn] HELP! How to use #emit and while? Basic to do with the function? - Printable Version

+ open.mp forum (https://forum.open.mp)
-- Forum: SA-MP (https://forum.open.mp/forumdisplay.php?fid=3)
--- Forum: Pawn Scripting (https://forum.open.mp/forumdisplay.php?fid=10)
--- Thread: [Pawn] HELP! How to use #emit and while? Basic to do with the function? (/showthread.php?tid=2046)



HELP! How to use #emit and while? Basic to do with the function? - PutuSuhartawan - 2021-05-24

Code:
stock SendClientMessageEx(playerid, color, const text[], {Float, _}:...)

{

? static

? ? ? args,

? ? ? str[144];



? /*

? ? *? Custom function that uses #emit to format variables into a string.

? ? *? This code is very fragile; touching any code here will cause crashing!

? */

? if ((args = numargs()) == 3)

? {

? ? ? SendClientMessage(playerid, color, text);

? }

? else

? {

? ? while (--args >= 3)

? ? {

? ? ? #emit LCTRL 5

? ? ? #emit LOAD.alt args

? ? ? #emit SHL.C.alt 2

? ? ? #emit ADD.C 12

? ? ? #emit ADD

? ? ? #emit LOAD.I

? ? ? #emit PUSH.pri

? ? }

? ? #emit PUSH.S text

? ? #emit PUSH.C 144

? ? #emit PUSH.C str

? ? #emit PUSH.S 8

? ? #emit SYSREQ.C format

? ? #emit LCTRL 5

? ? #emit SCTRL 4



? ? SendClientMessage(playerid, color, str);



? ? #emit RETN

? }

? return 1;

}





Sir i don't know what does means in this function? i need to translate to learn what is meaning of this code.


RE: HELP! How to use #emmit and while? for what? - Kwarde - 2021-05-25

https://github.com/YashasSamaga/AMX-Assembly-Docs/blob/master/DOCUMENT.md


RE: HELP! How to use #emmit and while? for what? - Y_Less - 2021-05-28

Don't. You make about 10 topics per day on incredibly simple things. While there's nothing wrong with that per-se, it does mean you are several years off even thinking about `#emit`. There is nothing you can't do in normal code that you should be trying to do.