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

Pedido [ajuda] Query on

vinteeum

Novato XPZ
Oi preocurei ma não achei algo que funcione
queria sabe se alguem a job para por exemplo a cada 1 hora on a pessoa ganhe 1 cash e 3 gold
 

CronusMakerchanel

MAPSMAKER,3DMaker,MuHelper
Moderador
Super Moderador

vinteeum

Novato XPZ
@CronusMakerchanel você que entende mais ve se ta certo pelo oque eu vi no topico .
eu ireia fazer a OnlineHours na MENB_INFO depois disso eu resetava ela pra ninguem ter o tempo ja com a query:

UPDATE MEMB_INFO SET OnlineHours=0

Depois eu criava a job para roda de 1 em 1 minuto com o código:

UPDATE Memb_Info SET

Gold = Gold + 1,

OnlineHours = OnlineHours - 1 FROM Memb_Info JOIN Memb_Stat ON Memb_Info.memb___id = Memb_Stat.memb___id WHERE Memb_Stat.OnlineHours >= 1;

ele daria 1 de gold a cada 1 hora online isso ? ele acumularia o tempo do player on e não daria toda a 1 hora do server isso ?
 

CronusMakerchanel

MAPSMAKER,3DMaker,MuHelper
Moderador
Super Moderador

vinteeum

Novato XPZ
@CronusMakerchanel desculpa mas eu o muito ruim em query.
Tipo eu rodaria essa query para criar as 2 colunas tempoon e horaon:

ALTER TABLE CHARACTER ADD tempoon INT NOT NULL DEFAULT (0)
ALTER TABLE CHARACTER ADD horaon INT NOT NULL DEFAULT (0)

depois eu faria 2 job ?
uma com a query
Update Character
Set tempoon=1 WHERE tempoon=61
Update Character
Set horaon=horaon+1 WHERE tempoon=60

e a outra com:

USE [MuOnline]
UPDATE Character SET tempoon=tempoon+1 FROM Character INNER JOIN
AccountCharacter ON Character.Name = AccountCharacter.GameIDC INNER JOIN
MEMB_STAT ON MEMB_STAT.memb___id = AccountCharacter.ID
WHERE ConnectStat=1

mas aonde eu coloco a premiação por exemplo ?
 

vinteeum

Novato XPZ
eu quero por exemplo se o char fique 1 hora on ele ganhe 1 cash e se ele ficar 3 horas ele ganhe 1 gold
porem eu queria que as horas acumulassem e não que ela desce a premiação a cada 1 hora de servidor ai ele entraria 2 minutos antes e ganharia.
Só que eu não sei muito de query por isso pedi ajuda de vocês =/
Não sei se preciso cria 1 ou 2 job etc
 

CronusMakerchanel

MAPSMAKER,3DMaker,MuHelper
Moderador
Super Moderador
na verdade pode fazer uma multi job no caso ai seria melhor trabalhar com o sistema de segundos
o sistema por contas ele não da pra fazer ranking ja o por player da pra fazer
ai se tem de fazer uma query para verificar o valor que eo metodo que uso para converter para 1 hora

// remover e essa parte
Update Character
Set tempoon=1 WHERE tempoon=61
// ao inves de hora on você pode inserir a tabela que quer enviar vou instalar o sql la em casa e faço isso dps mais tecnicamente essa seria a baseou seja seria bem mais querys mais do mesmo jeito se pode criar uma sub para pegar e puxar o valor e somar com oque ja tem por isso uso o hora on pq ai essa pode ser fixa ja o tempo e contado em minutos então assim zerando
Update Character
Set horaon=horaon+1 WHERE tempoon=60
Set horaon=horaon+2 WHERE tempoon=120
Set horaon=horaon+3 WHERE tempoon=180
Set horaon=horaon+4 WHERE tempoon=240
Set horaon=horaon+5 WHERE tempoon=300
Set horaon=horaon+6 WHERE tempoon=360
Set horaon=horaon+7 WHERE tempoon=420
Set horaon=horaon+8 WHERE tempoon=480
Set horaon=horaon+9 WHERE tempoon=540
Set horaon=horaon+10 WHERE tempoon=600
Set horaon=horaon+11 WHERE tempoon=660
Set horaon=horaon+12 WHERE tempoon=720


60
120
180
240
300
360
420
480
540
600
660
720
780
840
900
960
1020
1080
1140
1200
1260
1320
1380
1440
1500
 
Topo Bottom