Siga-nos em...
Follow us on Twitter Follow us on Facebook Watch us on YouTube
Registro


Alpha Servers
Resultados 1 a 4 de 4
  1. #1


    Avatar de Jeferson_Arlon
    Data de Ingresso
    Oct 2009
    Localização
    Curitiba - PR
    Idade
    24
    Posts
    103
    Agradecido
    3
    Agradeceu
    2
    Peso da Avaliação
    10

    Padrão Erro job cspoints por tempo Online

    Galera to tentando usar essa job para ganha CSPoints por tempo online....
    Código PHP:
    DECLARE @ConnectStat tinyint
    DECLARE @memb___id varchar (10)
    DECLARE @
    Vip int

    SELECT 
    @memb___id=memb___id,@ConnectStat=ConnectStat FROM memb_stat WHERE ConnectStat'1'
    SELECT @memb___id=memb___id,@Vip Vip FROM memb_info WHERE Vip'0'
    update memb_info set CSPoints CSPoints 1 where memb___id=@memb___id

    SELECT 
    @memb___id=memb___id,@ConnectStat=ConnectStat FROM memb_stat WHERE ConnectStat'1'
    SELECT @memb___id=memb___id,@Vip Vip FROM memb_info WHERE Vip'1'
    update memb_info set CSPoints CSPoints 2 where memb___id=@memb___id

    SELECT 
    @memb___id=memb___id,@ConnectStat=ConnectStat FROM memb_stat WHERE ConnectStat'1'
    SELECT @memb___id=memb___id,@Vip Vip FROM memb_info WHERE Vip '2'
    update memb_info set CSPoints CSPoints 3 where memb___id=@memb___id 
    Ganha certinho o CSPoints mais não salva na DB, depois que reloga o char volta pra 0 alguém pode me ajudar?
    ArcadeMu - Em Breve

  2. #2

    Avatar de King
    Data de Ingresso
    Sep 2009
    Localização
    ~~
    Posts
    165
    Agradecido
    20
    Agradeceu
    7
    Peso da Avaliação
    10

    Padrão

    Free:

    Update memb_info
    set CsPoints=CsPoints+1

    FROM CHARACTER
    JOIN MEMB_STAT ON Character.AccountID=MEMB_STAT.memb___id COLLATE Latin1_General_CS_AS
    JOIN MEMB_INFO ON Character.AccountID=MEMB_INFO.memb___id COLLATE Latin1_General_CS_AS

    AND MEMB_STAT.CONNECTSTAT = 1
    AND MEMB_INFO.Vip=1


    Vip:

    Update memb_info
    set CsPoints=CsPoints+3

    FROM CHARACTER
    JOIN MEMB_STAT ON Character.AccountID=MEMB_STAT.memb___id COLLATE Latin1_General_CS_AS
    JOIN MEMB_INFO ON Character.AccountID=MEMB_INFO.memb___id COLLATE Latin1_General_CS_AS

    AND MEMB_STAT.CONNECTSTAT = 1
    AND MEMB_INFO.Vip=2


    SuperVip:

    Update memb_info
    set CsPoints=CsPoints+5

    FROM CHARACTER
    JOIN MEMB_STAT ON Character.AccountID=MEMB_STAT.memb___id COLLATE Latin1_General_CS_AS
    JOIN MEMB_INFO ON Character.AccountID=MEMB_INFO.memb___id COLLATE Latin1_General_CS_AS

    AND MEMB_STAT.CONNECTSTAT = 1
    AND MEMB_INFO.Vip=3

  3. #3

    Avatar de yvescleuder
    Data de Ingresso
    Feb 2012
    Localização
    Imperatriz
    Idade
    21
    Posts
    80
    Agradecido
    5
    Agradeceu
    4
    Peso da Avaliação
    6

    Padrão

    Ele está premiando quando o char está conectado... tem que colocar para quando o char desconectar ele dá a premiação! Ja fiz isso um dia, só que não me lembro, lembrando que quando a conta no MEM_STAT estiver ConnectStat 1 é porque está conectada, quando tiver 0 é porque está desconectada, você tem que fazer algo que quando ConnectStat tiver 0 ele dá a premiação, caso eu ache como fazer posto para você!
    ---------------------
    Tente isso aqui
    Código PHP:
    DECLARE @ConnectStat tinyint 
    DECLARE @memb___id varchar (10
    DECLARE @
    Vip int 

    SELECT 
    @memb___id=memb___id,@ConnectStat=ConnectStat FROM memb_stat WHERE ConnectStat'1' 
    SELECT @memb___id=memb___id,@Vip Vip FROM memb_info WHERE Vip'0' 
    update memb_info set CSPoints CSPoints 1 where memb___id=@memb___id and MEMB_STAT.ConnectStat '0'

    SELECT @memb___id=memb___id,@ConnectStat=ConnectStat FROM memb_stat WHERE ConnectStat'1' 
    SELECT @memb___id=memb___id,@Vip Vip FROM memb_info WHERE Vip'1'
    update memb_info set CSPoints CSPoints 2 where memb___id=@memb___id and MEMB_STAT.ConnectStat '0'

    SELECT @memb___id=memb___id,@ConnectStat=ConnectStat FROM memb_stat WHERE ConnectStat'1' 
    SELECT @memb___id=memb___id,@Vip Vip FROM memb_info WHERE Vip '2' 
    update memb_info set CSPoints CSPoints 3 where memb___id=@memb___id and MEMB_STAT.ConnectStat '0' 
    Última edição por yvescleuder; 11-07-2012 às 01:18 AM.

  4. #4

    Avatar de DLLGames
    Data de Ingresso
    Jun 2012
    Localização
    fortaleza
    Posts
    58
    Agradecido
    2
    Agradeceu
    2
    Peso da Avaliação
    0

    Padrão

    eu to com uma ideia parecida, só que salvando por char, só que não sei criar querys perfeitamente
    em seguida a job que criei

    caso alguem queira adaptar elas pra mim agradeço muito

    Código:
    Declare @Account Varchar (10)
    Declare@Character Varchar (10)
    select @Account=memb___id from MEMB_STAT WHERE ConnectStat=1
    select @Character=GameIDC from AccountCharacter WHERE Id=@Account
    Update Character SET Minutos_Online=Minutos_Online+1, Tempo_Online=Tempo_Online+1 WHERE Name=@Character

    query execudada de 1 em 1 minuto

    ela adciona os pontos perfeitamente, mas apenas pra um usuario conectado

    em seguida criei essa job para ransformar cada 60 Minutos_Online em 1 tempo_on ,ou seja, 1 hora na memb_info
    só que como na job de cima, só fuciona para um player

    Código:
    Declare @Account Varchar (10)
    select @Account=AccountID from Character WHERE Minutos_Online>60
    Update MEMB_INFO SET tempo_on=tempo_on+1 WHERE memb___id=@Account
    Update Character SET Minutos_Online=Minutos_Online-60 WHERE AccountID=@Account


    e por fim, o ranking do site é gerado pela tabela Tempo_Online da character e zerada ao final de cada mes, premiando o top mensal

    e o tempo_on da MEMB_INFO criei uma função do site para a troca de horas online por WCoin

    e creio que por ser uma tabela nativa do GS, axo que isso q da o problema do amigo acima, por não salvar os CSPoints quando ta online
    ex:vc tem "10 CSPoints" e loga no server, o GS salva essa informação em sua memoria, e caso vc compre algo ele ira fazendo o update da informação
    digamos que vc ficou online 30 minutos, foi feito o update de 30 CSPoints na database ela vai ficar la bonitinha, mas quando vc deslogar o Gameserver faz um novo update na db mas com os CSPoints que ele salvou na memoria, assim sendo, ele não irá somar um com o outro, ele irá interpretar apenas seu valor o correto sendo assim não contara seu tempo online

    por isso criei a função direto do site, pra trocar as horas online quando o player estiver deslogado, sendo muito mais seguro.


    Muito Obrigado
    Última edição por DLLGames; 12-07-2012 às 03:29 PM.

 

 

Informações de Tópico

Usuários Navegando neste Tópico

Há 1 usuários navegando neste tópico. (0 registrados e 1 visitantes)

Tópicos Similares

  1. |Pedido| Ranking Top Tempo Online
    Por juniorpk22 no fórum Sites
    Respostas: 11
    Último Post: 22-11-2014, 07:32 PM
  2. |Pedido| Script Tempo Online
    Por FlavioBarreto no fórum Dúvidas|Pedidos
    Respostas: 2
    Último Post: 29-06-2014, 11:27 PM
  3. |Resolvido| Gold Por Tempo Online MU S4.
    Por FlavioBarreto no fórum Tópicos Resolvidos
    Respostas: 3
    Último Post: 30-01-2013, 08:55 AM
  4. |Resolvido| Tigger de Tempo Online
    Por -HeLLus- no fórum Tópicos resolvidos
    Respostas: 7
    Último Post: 03-04-2012, 04:59 PM
  5. |Pedido| Golds por tempo Online
    Por Marceliin no fórum Arquivos MuOnline
    Respostas: 1
    Último Post: 08-12-2011, 04:05 PM

Marcadores

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • Você não pode enviar respostas
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •