DECLARE
@Acc varchar(10),
@nome varchar(10)
set @nome = (select top 1 name from RankingDevilSquare order by Score desc)
set @Acc = (select top 1 AccountID from character where Name = @nome)
if exists (select name from MK_MEDALHAS where Name = @nome)
update MK_MEDALHAS set medal_ds = 1 where Name = @nome and medal_ds=0
else
INSERT INTO MK_MEDALHAS (login,Name,medal_ds) VALUES (@Acc, @nome, 1)
set @nome = (select top 1 name from RankingBloodCastle order by Score desc)
set @Acc = (select top 1 AccountID from character where Name = @nome)
if exists (select name from MK_MEDALHAS where Name = @nome)
update MK_MEDALHAS set medal_bc = 1 where Name = @nome and medal_bc=0
else
INSERT INTO MK_MEDALHAS (login,Name,medal_bc) VALUES (@Acc, @nome, 1)
--update mk_medalhas set medal_duel=1 where name = (select top 1 name from character order by duel desc,resetcount desc) and medal_duel=0
DECLARE LISTA CURSOR LOCAL FOR
select memb___id from memb_info where missoes > 34
OPEN LISTA
FETCH NEXT FROM LISTA INTO @Acc
WHILE @@FETCH_STATUS = 0
begin
if exists (select login from MK_MEDALHAS where login = @Acc)
begin
update MK_MEDALHAS set medal_missao = 1 where login = @Acc and medal_missao=0
end
else
begin
set @nome = (select top 1 name from Character where accountid = @Acc order by exp_war desc, MasterResetCount desc, ResetCount desc, cLevel desc)
IF @nome is not null
INSERT INTO MK_MEDALHAS (login,Name,medal_missao) VALUES (@Acc, @nome, 1)
end
FETCH NEXT FROM LISTA INTO @Acc
end
CLOSE LISTA
DEALLOCATE LISTA
DECLARE LISTA CURSOR LOCAL FOR
SELECT login_r FROM mk_reputacao GROUP BY login_r HAVING (COUNT(*) > 49)
OPEN LISTA
FETCH NEXT FROM LISTA INTO @Acc
WHILE @@FETCH_STATUS = 0
begin
if exists (select login from MK_MEDALHAS where login = @Acc)
begin
update MK_MEDALHAS set medal_reputacao = 1 where login = @Acc and medal_reputacao=0
end
else
begin
set @nome = (select top 1 name from Character where accountid = @Acc order by exp_war desc, MasterResetCount desc, ResetCount desc, cLevel desc)
IF @nome is not null
INSERT INTO MK_MEDALHAS (login,Name,medal_reputacao) VALUES (@Acc, @nome, 1)
end
FETCH NEXT FROM LISTA INTO @Acc
end
CLOSE LISTA
DEALLOCATE LISTA
DECLARE LISTA CURSOR LOCAL FOR
SELECT accountid,name FROM character where resetcount>999
OPEN LISTA
FETCH NEXT FROM LISTA INTO @Acc, @nome
WHILE @@FETCH_STATUS = 0
begin
if exists (select name from MK_MEDALHAS where name = @nome)
begin
update MK_MEDALHAS set medal_resets = 1 where name = @nome and medal_resets=0
end
else
begin
INSERT INTO MK_MEDALHAS (login,Name,medal_resets) VALUES (@Acc, @nome, 1)
end
FETCH NEXT FROM LISTA INTO @Acc, @nome
end
CLOSE LISTA
DEALLOCATE LISTA
DECLARE LISTA CURSOR LOCAL FOR
SELECT accountid,name FROM character where masterresetcount>499
OPEN LISTA
FETCH NEXT FROM LISTA INTO @Acc, @nome
WHILE @@FETCH_STATUS = 0
begin
if exists (select name from MK_MEDALHAS where name = @nome)
begin
update MK_MEDALHAS set medal_mresets = 1 where name = @nome and medal_mresets=0
end
else
begin
INSERT INTO MK_MEDALHAS (login,Name,medal_mresets) VALUES (@Acc, @nome, 1)
end
FETCH NEXT FROM LISTA INTO @Acc, @nome
end
CLOSE LISTA
DEALLOCATE LISTA
DECLARE LISTA CURSOR LOCAL FOR
SELECT accountid,name FROM character where exp_war>149999
OPEN LISTA
FETCH NEXT FROM LISTA INTO @Acc, @nome
WHILE @@FETCH_STATUS = 0
begin
if exists (select name from MK_MEDALHAS where name = @nome)
begin
update MK_MEDALHAS set medal_exp = 1 where name = @nome and medal_exp=0
end
else
begin
INSERT INTO MK_MEDALHAS (login,Name,medal_exp) VALUES (@Acc, @nome, 1)
end
FETCH NEXT FROM LISTA INTO @Acc, @nome
end
CLOSE LISTA
DEALLOCATE LISTA
DECLARE LISTA CURSOR LOCAL FOR
SELECT name FROM Log_custom_arena group by name HAVING SUM(valor) > 49999
OPEN LISTA
FETCH NEXT FROM LISTA INTO @nome
WHILE @@FETCH_STATUS = 0
begin
if exists (select name from MK_MEDALHAS where name = @nome)
begin
update MK_MEDALHAS set medal_rei_conquistas = 1 where name = @nome and medal_rei_conquistas=0
end
else
begin
set @acc = (select top 1 AccountID from Character where Name=@nome)
INSERT INTO MK_MEDALHAS (login,Name,medal_rei_conquistas) VALUES (@Acc, @nome, 1)
end
FETCH NEXT FROM LISTA INTO @nome
end
CLOSE LISTA
DEALLOCATE LISTA
DECLARE LISTA CURSOR LOCAL FOR
SELECT memb___id from MEMB_INFO where AccountExpireDate > GETDATE() + 150
OPEN LISTA
FETCH NEXT FROM LISTA INTO @Acc
WHILE @@FETCH_STATUS = 0
begin
if exists (select login from MK_MEDALHAS where login = @Acc)
begin
update MK_MEDALHAS set medal_vip = 1 where login = @Acc and medal_vip=0
end
else
begin
set @nome = (select top 1 name from Character where accountid = @Acc order by exp_war desc, MasterResetCount desc, ResetCount desc, cLevel desc)
IF @nome is not null
INSERT INTO MK_MEDALHAS (login,Name,medal_vip) VALUES (@Acc, @nome, 1)
end
FETCH NEXT FROM LISTA INTO @Acc
end
CLOSE LISTA
DEALLOCATE LISTA
DECLARE LISTA CURSOR LOCAL FOR
SELECT name FROM rankingduel group by name HAVING SUM(winscore) > 99
OPEN LISTA
FETCH NEXT FROM LISTA INTO @nome
WHILE @@FETCH_STATUS = 0
begin
if exists (select name from MK_MEDALHAS where name = @nome)
begin
update MK_MEDALHAS set medal_duel = 1 where name = @nome and medal_duel=0
end
else
begin
set @acc = (select top 1 AccountID from Character where Name=@nome)
INSERT INTO MK_MEDALHAS (login,Name,medal_duel) VALUES (@Acc, @nome, 1)
end
FETCH NEXT FROM LISTA INTO @nome
end
CLOSE LISTA
DEALLOCATE LISTA