Falaaaa galeraa...
Dando continuidade aos meus tutoriais de programação SEM TIBIAAPI, vou postar agora mais uma função que pode ser util a vocês x.x
Ela trabalha de uma forma simples, só ve qual o texto que foi inserido na função, e trabalha a partir disso (se digitei F1 ele vai usar F1 na janela do tibia)...
Um exemplo de utilização é pra healer... por exemplo (em pseucodes ):
se player.vida <= vida.paraHealar então
Hotkey('F1');
Vamos la:
A função é a seguinte:
function hotkey(x :string): string;
var
h: HWND;
i : integer;
begin
if x ='F1' then
i := 112;
if x ='F2' then
i := 113;
if x ='F3' then
i := 114;
if x ='F4' then
i := 115;
if x ='F5' then
i := 116;
if x ='F6' then
i := 117;
if x ='F7' then
i := 118;
if x ='F8' then
i := 119;
if x ='F9' then
i := 120;
if x ='F10' then
i := 121;
if x ='F11' then
i := 122;
if x ='F12' then
i := 123;
h := FindWindow(nil, 'Tibia'); // acha a janela do tibia
SendMessage(h, WM_KEYdown, i, 0); //pressiona a tecla
SendMessage(h, WM_KEYUP, i, 0); //solta tecla
end;
Obs: coloque a função abaixo do Implementation, e você pode usa-la no decorrer do programa.
Analisando a função ( como sempre x.X ):
Ou seja, vamos usar ela assim:
Lembrando que o code é bem simples, e só funciona com hotkeys do F1 ao F12 (é só ver o code...mas é fácil adaptar para usar ctrl + F's )
Você pode usar também a função com um edit ou outra coisa do tipo (que seja string)... ou seja:
Se no edit1.text tiver escrito F1, ele pressiona essa hotkey no tibia.
=]
Um code simples, mas, espero que seja util, e que dê ideias de como vocês podem fazer outros sistemas "indetectáveis" pro tibia.
flw, abraços galera
#Edit
Seguindo a sugestão do Flamer para um menor consumo de processamento, fiz uma versão com else if... a função não altera muito (acredito que só seu consumo de processador), ou seja, a utilização fica da mesma forma, se alguém quiser testar a nova função para ver se há mudanças... é a seguinte (só troque a função por essa) :
function hotkey(x :string): string;
var
h: HWND;
i : integer;
begin
if x ='F1' then
i := 112
else if x ='F2' then
i := 113
else if x ='F3' then
i := 114
else if x ='F4' then
i := 115
else if x ='F5' then
i := 116
else if x ='F6' then
i := 117
else if x ='F7' then
i := 118
else if x ='F8' then
i := 119
else if x ='F9' then
i := 120
else if x ='F10' then
i := 121
else if x ='F11' then
i := 122
else if x ='F12' then
i := 123;
h := FindWindow(nil, 'Tibia'); // acha a janela do tibia
SendMessage(h, WM_KEYdown, i, 0); //pressiona a tecla
SendMessage(h, WM_KEYUP, i, 0); //solta tecla
end;
Flw², Abraços²