Ir para conteúdo

[MODULE] Extended Opcodes SEM SOURCES


david0703

Posts Recomendados

Será possível o uso de opcodes em servidores sem o código fonte?


Agora é sim com esse novo mod que eu fiz e disponibilizarei à vocês!


Conversação de servidor para client!

Muito fácil de usar e de instalar!


Sem mais delogas, vamos logo ao conteúdo!




1. Crie um arquivo com o nome ModOpcodes.lua na pasta lib do seu servidor;

2. Coloque o seguinte código dentro dele:




-- By Hopus --
function doPlayerSendModOpcode(cid, port, param)
	doPlayerSendCancel(cid, '#<=>#ModOpcode#<=>#'..port..'#<&>#'..param)
end 

3. Agora coloque a pasta mod_opcodes na pasta modules de seu client;

4. Abra o arquivo textmessage.lua, localizado na pasta modules/game_textmessage de seu client;

5. Procure esse código:




    elseif string.find(text, '12&,') then
           modules.cdBar.cdBar.toolTipChange(text)
           return
    end  

6. Adicione, logo abaixo, essa linha:




	if text:find('#<=>#ModOpcode#<=>#') then return end 

7. Opcodes instalados com sucesso!

Como usar? Simples!

[No servidor]



Basta usar a seguinte função:




doPlayerSendModOpcode(cid, porta, parametro)
  • cid: creature id do player;
  • porta: número (inteiro) de identificação do opcode;
  • parametro: Conteúdo que se deseja passar ao client;

 



[No client]



A parte do client também é simples, veja as funções disponíveis:

modules.game_opcodes.doConnectFunctionToModOpcode(port, funcao)
modules.game_opcodes.doDisconnectFunctionToModOpcode(port, funcao)

A função doConnectFunctionToModOpcode funciona para conectar uma função à receber o conteúdo de uma porta.

A função doDisconnectFunctionToModOpcode funciona para desconectar uma função já conectada em uma porta.

 

 

[Exemplo]

 

  • Servidor:
doPlayerSendModOpcode(cid, 80, 'say@Teste de Opcodes by Hopus') --Envia o conteúdo para a porta 80 de opcodes.
  • Client
function Say(param)
    param:exlode('@')
    if param[1] == 'say' then
        g_game.talk(param[2])
    end
end
modules.game_opcodes.doConnectFunctionToModOpcode(80, Say) --Conecta a função 'Say' à porta 80

No caso, ao receber o opcode na porta 80, o client acionará a função Say.
O resultado será o player dizendo "Teste de Opcodes by Hopus"

 

 



[Obs.: A função a ser conectada deve ter UM PARÂMETRO, seja ele nomeado como quiser.]

 

 

Bom, é isso...


Espero que seja de grande utilidade e ajude muita gente!

Abraços e até a próxima!

^^

Háá, pensou que eu havia me esquecido do download né? hehe

Download_button.png

virustotal.png

 

[Obs.: Seria legal criar uma área no site exclusiva para otclients!]

Editado por david0703
Link para o comentário
Compartilhar em outros sites

Amigo, eu não entendo quase nada de programação, porém fiquei extremamente curioso com esse seu code. Seria possivel dar um exemplo de uso? Ficaria muito satisfeito. De toda forma.

Obrigado pelo conteudo, Rep+ para você.

Link para o comentário
Compartilhar em outros sites

Seria possivel dar um exemplo de uso?

Claro que sim, farei um sistema de elevador usando esses opcodes... Quando terminar aviso aqui.

 

[EDIT]

 

O script de elevador foi comprado por um OtAdmin... Pensarei em outro exemplo!

Editado por david0703
Link para o comentário
Compartilhar em outros sites

@@david0703,

1º Você não precisa criar um novo post para citar uma parte do seu tópico, quando ele pediu exemplos, ele quis dizer algo que não está no tópico, porque realmente, para quem não entende, só lendo fica difícil de entender.

2º Não é permitido coisas do tipo "libero código após 20 likes",

3º Sua sugestão será levada em consideração, obrigado por compartilhar conosco.

Link para o comentário
Compartilhar em outros sites

@@david0703,

1º Você não precisa criar um novo post para citar uma parte do seu tópico, quando ele pediu exemplos, ele quis dizer algo que não está no tópico, porque realmente, para quem não entende, só lendo fica difícil de entender.

2º Não é permitido coisas do tipo "libero código após 20 likes",

3º Sua sugestão será levada em consideração, obrigado por compartilhar conosco.

 

1º Okay, é que está meio escondido, mas editei no tópico já pra ficar mais visível o exemplo;

2º Porque não? Mas enfim, sendo assim, vou tirar esse trecho; [Já retirou .-.]

3º Espero que façam mesmo uma área especializada em OTC, para não ficar bagunçado no fórum... happy.png

4º Poderia dar um rep+ pra incentivar né... rolleyes.gif

Editado por david0703
Link para o comentário
Compartilhar em outros sites

 

1º Okay, é que está meio escondido, mas editei no tópico já pra ficar mais visível o exemplo;

2º Porque não? Mas enfim, sendo assim, vou tirar esse trecho; [Já retirou .-.]

3º Espero que façam mesmo uma área especializada em OTC, para não ficar bagunçado no fórum... happy.png

4º Poderia dar um rep+ pra incentivar né... rolleyes.gif

Claro, concerteza man!

Mais eu ainda acho que você não precisaria chegar em 20 likes para disponibilizar o conteúdo, crio que você chegaria em 20 likes mais rápido se disponibilizasse, pois até onde eu vi seu conteúdo está obfuscado e não há como saber qual o verdadeiro conteúdo.

Link para o comentário
Compartilhar em outros sites

Interessante bem que não é um total fala entre OTclient e Servidor mais da pra levar :3.

 

Pois é, faz apenas a comunicação do servidor ao OTClient... o vice-versa pode ser feito através de talkactions :3

 

Estou fazendo uma pokedex semelhante a do PXG usando esse mod... facilita MUUUITO!

 

Fiz também um sistema de elevador com mod no otclient pra escolher o andar, só preciso de uma imagem de painel e uma imagem de botão de elevador pra postar aqui (seria um grande exemplo do uso desse mod_opcodes que eu desenvolvi happy.png)

Editado por david0703
Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...
  • 2 years later...
×
×
  • Criar Novo...