Olá, já que a conversa alternou para esse assunto, gostaria de acrescentar se existe algum modo de esconder esse sendCancel?
Rapaz, comece com coisas menores como por exemplo uma tela e tente fazer aparecer seu nome nela, utilizando as funções Locais do OtClient, e dps que vc ja estiver manjando das identações ai vc começa a partir para o OpCode/sendCancel












info
Grupo: Cavaleiro
Registrado: 24/09/13
Posts: 199
Reputação: +25
Desculpe pelo atraso,é que perdi um ente querido domingo agora,bom mas vamos lá.
Existe também outras ancoras que pode ser empregadas.
Isso faria sua Label pontos2 ficar na parte inferior esquerda da janela sem precisar todo aquele margin-top 290.
Vamos ajeitar a Label pontos para que fique próxima a Label attri,para isso trocamos o anchors.right: parent.right por anchors.left: prev.right ,o prev significa que voce quer o lado esquerdo da sua Label colada no lado direito no código anterior(no caso a label attri).
Precisamos fazer isso para que ali onde está a label pontos,fique os botões de adicionar.
Feito isso,façamos agora a label que irá conter os pontos que o player tem para ser gasto.
Então adicionamos outra label,colada a label pontos2 e damos um ID a ela,coloque o ID: "pontostorage",não coloque texto,pois todo valor dado a essa label,virá do servidor,através do .lua
Agora faça conforme postei no post acima.
No Servidor:
No talkactions.xml adicione a tag:
Quote
<talkaction words="#getPoints#" event="script" value="points.lua"/>
Na talkactions/script,copie e cole um arquivo e renomeie para points.lua,apague tudo e cole. modifique ali o
Quote
local storagepoint = numero da storage -- edit aqui o storage
function onSay(cid, words, param)
No Client:
No arquivo .lua ,na função init(), troque o connect(g_game, seu por este.
Quote
Agora abaixo de tudo cole,e modifique o AttributesWindow para o nome de sua janela.
Quote
Caso o Attributes Points fique -1,é porque no login.lua voce precisa setar para 0 ,ao logar pela primeira vez.
Caso nao saiba fazer isso me avise.
Como voce pode ver o servidor manda um sendCancel com um código e logo após o valor que queremos pegar,no caso a storage.
No Client,fazemos um script que quando ele receber uma mensagem que falhou(sendcancel) com tal código,então ele pega o 2° valor,que seria a storage,e seta um texto na nossa label,com o valor da storage.
Se voce tiver feito tudo corretamente vai aparecer a quantidade de pontos que o player tem,caso ocorra erros,poste imagens,caso nao dê erros mas nao aparece os pontos,verifique o código novamente,e no servidor,cole no arquivo login.lua para que envie um sendcancel ao logar,com o mesmo sendcancel da talkactions,só para que atualize logo ao logar,mas lembrando que isso nao é necessário.
Sua tarefa agora é:
-Conseguir mudar o .otui para que ajeite do melhor possivel sem dar margins enormes.
-Adicionar os pontos na label conforme foi passado.
-Adicionar as labels com todos nomes dos atributos(nao precisa dar id para essas) e adicionar as labels que ficarão os pontos de cada uma,da mesma forma que ensinei acima.
Caso consiga ou não fazer a tarefa me avise.
Abraço e boa sorte.