SA-MP Forums Archive
[Ajuda] HOOK - 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] HOOK (/showthread.php?tid=585180)



HOOK - VeNuZ_ - 11.08.2015

Preciso de saber como usar hooks, jб pesquisei e atй agora nгo encontrei nada que me esclarece-se como usar.


Re: HOOK - Wellington1999 - 11.08.2015

tem esse do Bruno men.
https://sampforum.blast.hk/showthread.php?tid=466010


Re: HOOK - Artista - 11.08.2015

Esse mйtodo aqui й muito bom
https://sampforum.blast.hk/showthread.php?tid=466010


Re: HOOK - VeNuZ_ - 11.08.2015

Sim, mas esse sempre que crio um hook de uma callback terei de mexer na callback de origem, eu tenho da seguinte forma:

pawn Code:
public houses_OnGameModeInit()
{
    print("ola");
    return 1;
}

#if defined _ALS_OnGameModeInit
    #undef OnGameModeInit
#else
    #define _ALS_OnGameModeInit
#endif
 
#define OnGameModeInit houses_OnGameModeInit

forward houses_OnGameModeInit();
Mas dб-me este error, na linha onde tenho a callback original:
Code:
error 021: symbol already defined: "houses_OnGameModeInit"



Re: HOOK - ipsLuan - 11.08.2015

Eu uso programaзгo modular e nгo preciso de hook.


Re: HOOK - VeNuZ_ - 11.08.2015

Eu atй agora nгo tenho usado mas penso que seja mais fбcil...
Como fazes para ligar as callbacks?


Re: HOOK - Kimossab - 11.08.2015

O forward tem que ser antes do public, por isso cria o houses_OnGameModeInit como stock

EDIT: Bah esquece tou todo trocado -.-

Na public nao usas o "houses_" e fica apenas public OnGameModeInit. O resto fica igual. Pelo menos й assim que eu aqui tenho, mas tambem nunca percebi muito bem os hooks...

https://sampforum.blast.hk/showthread.php?tid=392061


Re: HOOK - VeNuZ_ - 11.08.2015

Bem coloquei da seguinte forma e atй agora tem funcionado:

PHP Code:
public OnGameModeInit()
{
    print(
"ONGAMEMODEINIT -HOUSES-");
    
CallLocalFunction("houses_OnGameModeInit""");
       return 
1;
}
#if defined _ALS_OnGameModeInit
  #undef OnGameModeInit
#else
    #define _ALS_OnGameModeInit
#endif
#define OnGameModeInit houses_OnGameModeInit
#if defined houses_OnGameModeInit
forward houses_OnGameModeInit();
#endif 



Re: HOOK - Bruno13 - 11.08.2015

Quote:
Originally Posted by ipsLuan
View Post
Eu uso programaзгo modular e nгo preciso de hook.



Re: HOOK - n0minal - 11.08.2015

Quote:
Originally Posted by ipsLuan
View Post
Eu uso programaзгo modular e nгo preciso de hook.
І

O que tem a ver uma coisa com a outra Luan? O hook se faz necessбrio muitas vezes pra filtragens diretas em inclusхes de scripts internos (exemplo: includes de proteзгo), e principalmente, pra fazer chain de funзхes nas quais vocк nгo teria acesso а chamada caso nгo existisse o hook.