
Comotodos sabem, versões mais novas, fazem a função de salvar o tempo online em horas de cada conta.
Mas somente por conta, então foi alterado a Tigger original que fica no MSSQL, e fazer que o SQL salve o tempo online por personagem.
1º Passo:
- Crie uma coluna na Table "Character" com os dados:
Nome da coluna: TempoOnline
Tipo da coluna: int
Default Value: 0
- Ou simplesmente use o seguinte código no Query Analizer:
USE MuOnline ALTER TABLE Character ADD TempoOnline int DEFAULT (0) |
2º Passo:
- Vá no Query Analizer e utilize o seguinte código:
| DROP TRIGGER MembStat_RecordOnlineHours |
- Logo após usar a query acima, limpe o query analizer e utilize a seguinte query:
| CREATE TRIGGER [MembStat_RecordOnlineHours] ON dbo.MEMB_STAT AFTER UPDATE AS declare @memb___id varchar(10) declare @connectstat tinyint SELECT @memb___id=memb___id,@connectstat=connectstat FROM INSERTED IF (@connectstat = 0) BEGIN UPDATE [dbo].[Character] SET TempoOnline = TempoOnline + datediff(minute, (SELECT ConnectTM FROM MEMB_STAT WHERE memb___id= @memb___id), getdate()) WHERE Name = (SELECT GameIDC FROM AccountCharacter WHERE Id=@memb___id) END |
- Legenda:
minute = Altere esse valor pelo o que você quizer, se você quer que salve por horas altere esse valor em vermelho para hour
PHP:
Foi criado uma função que converte o tempo de Minutos para Horas, você deverá adicionar esse codigo no começo da sua pagina:
|
<?php <?php |
Onde Tempo = Tempo em minutos que será convertido. (A variavel que seleciona o tempo).
