SA-MP Forums Archive
[Ajuda] Soluзхes para macro. - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Soluзхes para macro. (/showthread.php?tid=613043)



Soluзхes para macro. - Dayvison_ - 24.07.2016

Eu gostaria de fazer macros para substituir isto:
PHP код:
    playerid->Var0 4;
    
playerid->Var1[1] = 4;
    
playerid->Var2[1][2] = 4
por isto:
PHP код:
    User_Var0[playerid] = 4;
    
User_Var1[playerid][1] = 4;
    
User_Var2[playerid][1][2] = 4
Bom vamos ao que eu jб tentei:
Quote:
Mйtodo 1
Macro:
PHP код:
#define User.    User_
#define playerid->%0\32;        PLAYERVAR_<%0>|playerid|
#define PLAYERVAR_<%0>|%1|        User.%0[%1] 
Este nгo funciona com variaveis arrays

Mйtodo 2
Macro:
PHP код:
#define User.    User_
#define playerid->%0[            PLAYERVAR_<%0>|playerid|[
#define PLAYERVAR_<%0>|%1|        User.%0[%1] 
Este nгo funciona com variaveis comuns

Mйtodo 3
Macro:
PHP код:
#define User.    User_
#define playerid->%0\32;                            (PVAR@0:PVAR@1:X()PVAR@2:%0|playerid|
#define PVAR@1:X()PVAR@2:%0[%9|%1|                    X());PLAYERVAR_<%0>|%1|[%9
#define PVAR@2:%0|%1|                                 );PLAYERVAR_<%0>|%1|
#define PLAYERVAR_<%9>|%0|                            User.%9[%0] 
Output:
PHP код:
(PVAR@0:PVAR@1:X());User_Var0[playerid]= 4;
(
PVAR@0:X());User_Var1[playerid][1]= 4;
(
PVAR@0:X());User_Var2[playerid][1][2]= 4
Este funciona, porйm ultiliza do recurso de tags e nгo funcionaria se tivesse um caracter diferente de espaзo a frente da variavel, porйm й 60% mais lento comparado aos outros, o que nгo me agrada.
Alguйm tem uma idйia de como eu poderia fazer?