• Bem vindo à nossa comunidade - Quer se juntar ao resto dos nossos membros? Registre-se*Registros aprovados pela adminitração

[ Tutorial ] - Bonus em Golds, Semanal ou Mensal com TempoOnline

Shion

Legendário XPZ
Bom este tutorial lhe ensinará a criar uma job que premiará com um tipo de bonus em 'golds' para seu servidor.

Por favor, Entrar ou Registrar para ver o conteúdo das citações!
Crie uma Schedule para passar uma vez por semana para criar uma premiação semanal ou se preferir mensal.

Entendendo o codigo:

O codigo acima irá premiar o primeiro do Ranking do Devil Square, Resets e Tempo Online automaticamente com '5' Golds.

Sendo que TempoOnline é uma coluna na Character que marca as horas online dos personagens, aqui tem um trigger que faz este processo, podendo ser em minutos e horas, ,@tempoonline uma coluna virtual para ser passado o codigo, deve ser declarada acima.

Resets a coluna que determina o numero de resets é claro, @resets uma coluna virtual para ser passado o codigo, deve ser declarada acima.

Point a coluna onde marca o numero de pontos na Event_info do Devil Square, @ds a coluna virtual para ser passado o codigo.

Para adicionar mais uma premiação você precisará declarar acima uma coluna virtual e adicionar mais uma linha abaixo dando 'Select ...'.

Digamos que quero premiar o jogador que obtem mais level na determinada hora e dia da semana ou mes marcada pela schedule e claro, veja como ficará:

Por favor, Entrar ou Registrar para ver o conteúdo das citações!

CODIGO PARA CRIAR TRIGGER DE (TEMPO ONLINE)

Adicionando Coluna Tempoonline em character:

Por favor, Entrar ou Registrar para ver o conteúdo das citações!
Dropando caso sua DB ja tiver esta Trigger:

Por favor, Entrar ou Registrar para ver o conteúdo das citações!
 
Adicionando Trigger:

Por favor, Entrar ou Registrar para ver o conteúdo das citações!
 
Nota: a Trigger acima irá atualizar tempoonline a cada uma hora online, pois assim está determinado no codigo como 'hour', para converter para minutos para colocar onde marquei de vermelho para 'minute'

Se quizer doar GOLD 1 em 1 minuto use essa JOB e coloque para rodar 1 em 1 minuto:

Por favor, Entrar ou Registrar para ver o conteúdo das citações!
Quem usa Shop DT:

UPDATE TABELA SQL SET COLUNA NA TABELA = PEGA QUANTIDADE ATUAL SOMA COM:+1

FROM MEMB_INFO JOIN MEMB_STAT ON MEMB_INFO.memb___id = MEMB_STAT.memb___id COLLATE Latin1_general_CI_AI

WHERE (ConnectStat >= 1)

Por favor, Entrar ou Registrar para ver o conteúdo das citações!
 
Editado por um moderador:
Topo Bottom