Resultados 1 a 10 de 15

Threaded View

  1. #9
    Membro vinybronks's Avatar
    Data de Ingresso
    Sep 2017
    Posts
    157
    Thanks Thanks Given 
    2
    Thanks Thanks Received 
    2
    Thanked in
    1 Post
    Mencionado
    9 Post(s)
    MEU HUMOR
    Bitchy
    País
    Brazil
    Citação Originally Posted by maniacoo Ver Post
    Deixa eu entender, voce quer Golds por Hora Online
    ou quer o Ranking de HorasOnline?
    Premiar por horas online

    39 minutes:------- Atualizado -------

    Citação Originally Posted by Arcade Ver Post
    Aparece algum erro na hora que você tenta executar? Qual seria o erro?

    Eu tenho uma query que trabalha diretamente na WZ_DISCONNECTMEMB, ela pagará os golds somente após o player desconctar. Essa Query realiza o cálculo através de um tempo base definido pelo administrador para pagar o bonus online.

    OBS: ELA PODE SER RODADA DIRETAMENTE, NÃO É NECESSÁRIO CRIAR JOB COM ELA.

    Código:
    USE [MuOnline]
    GO
    /****** Object:  StoredProcedure [dbo].[WZ_DISCONNECT_MEMB]    Script Date: 05/05/2013 10:42:49 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    
    
    ALTER PROCEDURE [dbo].[WZ_DISCONNECT_MEMB]
    @memb___id varchar(10)
     AS
    Begin    
    set nocount on
        Declare @find_id varchar(10)    
        Declare @ConnectStat tinyint
        Declare @con_tm DATETIME
        Declare @Minutos tinyint
        Declare @TempoAtual int
        Declare @NovoTempo int
        Declare @Bonus int
        Set @ConnectStat = 0
        Set @find_id = 'NOT'
        
        --Ganhar 1 mu$ a cada 10 minutos
        Set @Minutos = 10  -- Altere aqui o tempo online para ganhar 1 Gold
        --------------------------------
    
    
        select @find_id = S.memb___id,
               @con_tm = S.ConnectTM
               from MEMB_STAT S INNER JOIN MEMB_INFO I ON S.memb___id = I.memb___id 
               where I.memb___id = @memb___id
    
    
        if( @find_id <> 'NOT' )
        begin        
            
            --ATUALIZA status da conta
            UPDATE MEMB_STAT
            SET ConnectStat = @ConnectStat,
            DisconnectTM = getdate(),
            @TempoAtual = OnlineTime = OnlineTime+(DATEDIFF(mi,@con_tm,getdate()))
            WHERE memb___id = @memb___id
    
    
            --ATUALIZA minutos online do char
            UPDATE Character
            SET OnlineTime = OnlineTime+(DATEDIFF(mi,@con_tm,getdate())) 
            FROM Character as c INNER JOIN AccountCharacter as ac ON 
            c.Name = ac.GameIDC WHERE c.accountid = @memb___id
    
    
            --Mu$ por tempo online--------------------------------
            SELECT @Bonus = @TempoAtual / @Minutos
            SELECT @NovoTempo = @TempoAtual % @Minutos
            
            set @find_id = 'NOT'
    
    
            IF (@Bonus IS NOT NULL)
            BEGIN
                SELECT @find_id = memb___id FROM MEMB_INFO
                WHERE memb___id = @memb___id
                if( @find_id <> 'NOT' )
                begin    
                    UPDATE MEMB_INFO SET Golds = Golds + @Bonus WHERE memb___id = @memb___id
                end
                else
                begin
                    INSERT INTO MEMB_INFO (memb___id,Golds)
                    VALUES (@memb___id,@Bonus)
                end
                UPDATE MEMB_STAT SET Tempo = @NovoTempo WHERE memb___id = @memb___id
            END
        end
    end
    Aparece que algumas linhas foi afetada .. quanto a essa nova que vc disponibilizou esta dando esse erro :

    Mensagem 207, Nível 16, Estado 1, Procedimento WZ_DISCONNECT_MEMB, Linha 42
    Nome de coluna 'OnlineTime' inválido.
    Last edited by vinybronks; 22/04/2018 at 04:57 AM.


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