Resultados 1 a 10 de 10
  1. #1
    Iniciante xxdevilxx's Avatar
    Data de Ingresso
    Dec 2014
    Posts
    5
    Thanks Thanks Given 
    0
    Thanks Thanks Received 
    0
    Thanked in
    0 Posts
    Mencionado
    2 Post(s)

    Unhappy Recompensando player ao dar MasterReset

    Oi Pessoal tou com uma dúvida que nao consigo resolver....
    Bom, o problema é o seguinte:

    Eu tenho meu server de MuOnline, eu queria recompensar todo o player que dá o master reset com 1000 golds (meu server dá master reset auto, porque tenho uma job).

    Então é o seguinte eu tenho minha job assim:

    Código:
    UPDATE Character
    Set MasterReset=MasterReset+1, Resets=5 
    From Character Join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
    collate Latin1_general_CI_AS
    WHERE Resets=100 AND Memb_Stat.ConnectStat = 0 and CtlCode=0 and MasterReset=0
    Bom, toda vez que o player chega no level 400 e reset nº 100, ele reloga e tem 1 Master Reset automatico.

    O problema é que eu queria recompensar os players e a minha WebShop usa a table shop.gold dentro dela tenho o seguinte:

    Código:
    memb__id
    gold
    Eu queria pedir uma ajudinha porque eu nao percebo muito de MSSQL na parte relativa a Jobs e Triggers...

    Obrigado

  2. #2
    Fundador PerfectZone Mentor's Avatar


    Data de Ingresso
    Jun 2013
    Posts
    2,850
    Thanks Thanks Given 
    784
    Thanks Thanks Received 
    2,193
    Thanked in
    355 Posts
    Mencionado
    804 Post(s)
    MEU HUMOR
    Twisted
    País
    Brazil
    Bom peguei uma job que dar golds por reset e modifiquei para dar golds por MasterReset, coloca para rodar em 1 em 1 min e testa.

    Código:
    declare @AccountID varchar (10)
    declare @Name varchar(10)
    declare @MasterReset int
    declare @memb___id varchar (10)
    Select top 1 @AccountID=AccountID,@Name=Name,@MasterReset =MasterReset from character order by MasterReset desc, name desc
    Update memb_info set gold=gold+@MasterReset where memb___id=@AccountID 
    Select @memb___id=memb___id from memb_info where memb___id =@AccountID 
    update character set MasterReset = 0 where AccountID=@memb___id
    Perfect Zone Brasil



    Inscreva-se no meu canal clicando [Somente membros podem ver os links. ]

  3. #3
    Iniciante xxdevilxx's Avatar
    Data de Ingresso
    Dec 2014
    Posts
    5
    Thanks Thanks Given 
    0
    Thanks Thanks Received 
    0
    Thanked in
    0 Posts
    Mencionado
    2 Post(s)
    Mas mentor isso é para colocar golds na table memb_info
    A minha tabela dos golds é a shop.gold, eu nao posso alterar porque é a da webshop.

  4. #4
    Fundador PerfectZone Mentor's Avatar


    Data de Ingresso
    Jun 2013
    Posts
    2,850
    Thanks Thanks Given 
    784
    Thanks Thanks Received 
    2,193
    Thanked in
    355 Posts
    Mencionado
    804 Post(s)
    MEU HUMOR
    Twisted
    País
    Brazil
    @[Somente membros podem ver os links. ] ,entao altera a memb_info para a sua tabela.
    Perfect Zone Brasil



    Inscreva-se no meu canal clicando [Somente membros podem ver os links. ]

  5. #5
    Iniciante xxdevilxx's Avatar
    Data de Ingresso
    Dec 2014
    Posts
    5
    Thanks Thanks Given 
    0
    Thanks Thanks Received 
    0
    Thanked in
    0 Posts
    Mencionado
    2 Post(s)
    Na webshop ?

  6. #6
    Fundador PerfectZone Mentor's Avatar


    Data de Ingresso
    Jun 2013
    Posts
    2,850
    Thanks Thanks Given 
    784
    Thanks Thanks Received 
    2,193
    Thanked in
    355 Posts
    Mencionado
    804 Post(s)
    MEU HUMOR
    Twisted
    País
    Brazil
    Na JOB que postei.
    Perfect Zone Brasil



    Inscreva-se no meu canal clicando [Somente membros podem ver os links. ]

  7. #7
    Iniciante xxdevilxx's Avatar
    Data de Ingresso
    Dec 2014
    Posts
    5
    Thanks Thanks Given 
    0
    Thanks Thanks Received 
    0
    Thanked in
    0 Posts
    Mencionado
    2 Post(s)
    Uhmm okei... É que na minha job, o player chegando ao reset 100 ele ganha 1 MasterReset e os resets ficam a 5 .. como faço isso?

    Me desculpa é que nao percebo muito de SQL...

  8. #8
    Fundador PerfectZone Mentor's Avatar


    Data de Ingresso
    Jun 2013
    Posts
    2,850
    Thanks Thanks Given 
    784
    Thanks Thanks Received 
    2,193
    Thanked in
    355 Posts
    Mencionado
    804 Post(s)
    MEU HUMOR
    Twisted
    País
    Brazil
    @[Somente membros podem ver os links. ] Eu particulamente também sou leigo se tratando de jobs,inclusive dando uma pesquisada eu achei um tutorial que da uma explicação básica sobre ela e postei nesse [Somente membros podem ver os links. ] Espero que isso lhe ajude a compreender melhor
    Perfect Zone Brasil



    Inscreva-se no meu canal clicando [Somente membros podem ver os links. ]

  9. #9
    Iniciante xxdevilxx's Avatar
    Data de Ingresso
    Dec 2014
    Posts
    5
    Thanks Thanks Given 
    0
    Thanks Thanks Received 
    0
    Thanked in
    0 Posts
    Mencionado
    2 Post(s)
    Sim eu agradeço isso ...
    Eu vou tentando se alguem souber que poste ai pfv :S
    Vlw
    Last edited by xxdevilxx; 28/12/2014 at 06:42 PM.

  10. #10
    Lendário Christian Lima's Avatar
    Data de Ingresso
    Sep 2014
    Posts
    874
    Thanks Thanks Given 
    3
    Thanks Thanks Received 
    51
    Thanked in
    7 Posts
    Mencionado
    30 Post(s)
    MEU HUMOR
    Yeehaw
    País
    Brazil
    Nada que uma pesquisadinha no google não resolva!

    Primeiro essa sua job está errada, da forma que está, só vai dar golds para player com exatos 100 resets e que não tem nenhum master.

    Sendo assim, basta vc fazer seu shop ler a memb_info no lugar de shop.gold e usar a QUERY abaixo

    Código:
    UPDATE Character
    Set MasterReset = MasterReset + 1, Resets = 5	-- ganha 1 MasterReset a cada 100 resets e volta com 5 resets após dar 1 Master
    From Character Join Memb_Stat on Character.Accountid=Memb_Stat.memb___id
    collate Latin1_general_CI_AS
    WHERE Resets > 100				-- somente players com 100 ou mais resets
    AND Memb_Stat.ConnectStat = 0			-- precisa estar fora do server para resetar e receber o bonus
    AND CtlCode = 0					-- bonus apenas para char player, char GM e ADM não participam
    AND MasterReset > 0				-- qualquer player com MasterReset maior que 0

    Então crie a coluna gold na tabela MEMB_INFO e depois rode essa TRIGGER


    Código:
    CREATE TRIGGER [MuDaGold] ON dbo.[Character] 
    AFTER UPDATE 
    as 
    if update (MasterReset)
    begin 
    UPDATE [dbo].[MEMB_INFO] set gold = gold + 1000 from MEMB_INFO join inserted i on i.AccountID=MEMB_INFO.memb___id
    end

    O que isso faz?
    Toda vez que a query somar +1 na coluna MasterReset, a trigger atualizar a coluna gold com 1000 golds.

    Obs.: Visto que não criei a query nem a trigger, bem como não testei, recomendo que faça um backup de sua base de dados, pois não será de minha responsabilidade qualquer erro causado. Todavia, teoricamente, teria que funcionar - Coisas que encontramos pela internet para saber temos que correr o risco e testar sem medo.

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • You may not post Resposta(s)
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •  
Sobre nós
Somos uma comunidade em atividade a 8 anos que aborda assuntos relacionados a games em geral, principalmente games MMORPG. e que busca sempre ajudar os membros através de conteúdos, tutoriais e suporte...
Nossos anunciantes
Hinetworks
VelozHost
InovHost
Rede Sociais