Aldeia RPG

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Suporte ao desenvolvimento de jogos


+4
DeaN
lovins
Paulo Soreto
gladistony
8 participantes

    Receber Hora do Servidor

    gladistony
    gladistony
    Membro Ativo
    Membro Ativo


    Mensagens : 336
    Créditos : 217

    Receber Hora do Servidor Empty Receber Hora do Servidor

    Mensagem por gladistony Sex maio 10, 2013 8:17 pm

    Hora do Servidor

    LOG
    10/05/2013 --> Script postado

    Script
    Script Do NetPlay
    Código:
    #================================================================
    #================================================================
    #===================== Hora do Servidor =========================
    #================================================================
    #=======BY:Gladistony Silva======================================
    #======= Small Edit by: Darkmel ===================================
    #=======Criada para o forum: Aldeiarpgbr ========================
    #=======NÃO POSTA EM OUTRO FORUM SEM AUTORIZAÇÃO=================
    #================================================================
    #================================================================
    module User_Time
      AUTO_INSTAL = true
      SEMANA_PORT = true
    end
    #======================Não Edite================================
    module Hora_Serve
      $data = "00/00/0000"
      $dia = ""
      $hora = ""
      $minuto = ""
      $atualhora = false
      def self.data(op=0)
        return 0 unless $atualhora
        b = $data.split('/')
        return b[op].to_i
      end
      def self.receber(data)
        a = data.split(' ')
        $hora = a[0]
        $minuto = a[1]
        $data = a[2]
        $dia = a[3]
        $atualhora = true
        if User_Time::SEMANA_PORT
          case $dia
          when 'Mon'
            $dia = 'Segunda'
          when 'Tue'
            $dia = 'Terça'
          when 'Wed'
            $dia = 'Quarta'
          when 'Thu'
            $dia = 'Quinta'
          when 'Fri'
            $dia = 'Sexta'
          when 'Sat'
            $dia = 'Sabado'
          when 'Sun'
            $dia = 'Domingo'
          end
          b = $data.split('/')
          $data = b[1].to_s+'/'+b[0].to_s+'/'+b[2].to_s
        end
      end
    end
    class Scene_Map
      alias update_hora_gladis update
      def update
        Network::Main.socket.send("<00> Solicitar hora </00>\n") if Graphics.frame_count % (200) == 0
        update_hora_gladis
      end
    end
    if User_Time::AUTO_INSTAL
    module Network
      class Main
      def self.update
        return unless @socket.ready?
        for line in @socket.recv(0xfff).split("\n")
          @nooprec += 1 if line.include?("\000\000\000\000")
          return if line.include?("\000\000\000\000")
          p "#{line}" unless line.include?("<5>") or line.include?("<6>")or not $DEBUG or not User_Edit::PRINTLINES
          updatebool = false
          case line when /<00>(.*)<\/00>/
          Hora_Serve.receber($1.to_s)
          updatebool = false
          return
          end
          updatebool = self.update_walking(line) if @login and $game_map != nil
          updatebool = self.update_ingame(line)  if updatebool == false and @login and $game_map != nil
          updatebool = self.update_system(line)  if updatebool == false
          updatebool = self.update_admmod(line)  if updatebool == false
          updatebool = self.update_outgame(line) if updatebool == false
        end
      end
      end
    end
    end
    Script Do Servidor
    Código:
    --------------------------------
    -- Data e hora do serve(25)  --
    --------------------------------
      elseif cmd == "<00>" then
        do NP():SendToUser(user.id,"<00> "..os.date("%H %M %x %a").." </00>") end
    Instalação
    Coloquem o script para o NetPlay acima do main, depois va no servidor e dentro da pasta Scripts, insira o Script do Servidor dentro do arquivo functions.lua antes do penúltimo end
    Caso prefira, baixe o arquivo functions.lua pelo link abaixo e substitua.
    http://www.4shared.com/file/ceFZuNT_/functions.html
    Ou vc pode utilizar esse servidor aki que ja foi editado
    http://www.4shared.com/rar/neqEExic/Servidor.html
    Para quem quiser abaixo também segue o netplay master ja editado
    http://www.4shared.com/rar/gTLk4yJy/netplay_master_v407data_e_hora.html

    Configuração
    O script não precisa de configuração porem, se vc quiser que a data e os dias da semana fiquem em ingles, mude o SEMANA_PORT para false.
    A outra opção é para caso vc queira inseri a edição no network manualmente.

    Notas
    O script cria 5 variáveis que podem ser utilizadas em qualquer parte do jogo, as variáveis criadas são:
    Código:
      $data = (Informa a Data atual)
      $dia = (Informa o dia da semana)
      $hora = (Informa a Hora)
      $minuto = (Informa os minutos)
      $atualhora = (Informa se os demais atributos estão atualizados)

    Usando o Sistema em Eventos:

    Evitando Bug inicial:

    Exemplo de Codigos:

    Trabalhando com a data:

    Bugs
    >Nenhum ate o momento

    Compatibilidade
    >Esse script apenas funciona no no NPM 3 e 4.

    Créditos
    >Gladistony [Criador do script]
    >Darkmel [Correção de bugs]


    Última edição por gladistony em Seg maio 13, 2013 3:46 pm, editado 4 vez(es)


    _________________
    Receber Hora do Servidor 252057
    Paulo Soreto
    Paulo Soreto
    Lenda
    Lenda


    Mensagens : 1980
    Créditos : 367

    Ficha do personagem
    Nível: 1
    Experiência:
    Receber Hora do Servidor Left_bar_bleue0/0Receber Hora do Servidor Empty_bar_bleue  (0/0)
    Vida:
    Receber Hora do Servidor Left_bar_bleue30/30Receber Hora do Servidor Empty_bar_bleue  (30/30)

    Receber Hora do Servidor Empty Re: Receber Hora do Servidor

    Mensagem por Paulo Soreto Sex maio 10, 2013 11:08 pm

    Bacan Glad, gostei das edições.


    _________________
    Receber Hora do Servidor FwYnoXI
    lovins
    lovins
    Membro Ativo
    Membro Ativo


    Mensagens : 340
    Créditos : 68

    Receber Hora do Servidor Empty Re: Receber Hora do Servidor

    Mensagem por lovins Dom maio 12, 2013 5:02 pm

    Só tem um bug, por exemplo se a hora for 17:05 ele mostra assim:
    17:5, nos minutos quando é apenas um algarismo ele nao colcoa o 0 na frente, mas fora isso ta bom demais +1.

    Como está para ".to_i" no $minuto então como está integer o zero a esquerda nao vale nada, temos de transformar o "$minuto = a[1].to_i" em "$minuto = a[1].to_s" para que o zero a esquerda passe a ser reconhecido.

    script já editado:
    Código:
    #================================================================
    #================================================================
    #===================== Hora do Servidor =========================
    #================================================================
    #=======BY:Gladistony Silva======================================
    #======= Small Edit by: Darkmel ===================================
    #=======Criada para o forum: Aldeiarpgbr ========================
    #=======NÃO POSTA EM OUTRO FORUM SEM AUTORIZAÇÃO=================
    #================================================================
    #================================================================
    module User_Time
      AUTO_INSTAL = true
      SEMANA_PORT = true
    end
    #======================Não Edite================================
    module Hora_Serve
      $data = "00/00/0000"
      $dia = ""
      $hora = 12
      $minuto = 0
      $atualhora = false
      def self.data(op=0)
        return 0 unless $atualhora
        b = $data.split('/')
        return b[op].to_i
      end
      def self.receber(data)
        a = data.split(' ')
        $hora = a[0].to_i
        $minuto = a[1].to_s
        $data = a[2]
        $dia = a[3]
        $atualhora = true
        if User_Time::SEMANA_PORT
          case $dia
          when 'Mon'
            $dia = 'Segunda'
          when 'Tue'
            $dia = 'Terça'
          when 'Wed'
            $dia = 'Quarta'
          when 'Thu'
            $dia = 'Quinta'
          when 'Fri'
            $dia = 'Sexta'
          when 'Sat'
            $dia = 'Sabado'
          when 'Sun'
            $dia = 'Domingo'
          end
          b = $data.split('/')
          $data = b[1].to_s+'/'+b[0].to_s+'/'+b[2].to_s
        end
      end
    end
    class Scene_Map
      alias update_hora_gladis update
      def update
        Network::Main.socket.send("<00> Solicitar hora </00>\n") if Graphics.frame_count % (200) == 0
        update_hora_gladis
      end
    end
    if User_Time::AUTO_INSTAL
    module Network
      class Main
      def self.update
        return unless @socket.ready?
        for line in @socket.recv(0xfff).split("\n")
          @nooprec += 1 if line.include?("\000\000\000\000")
          return if line.include?("\000\000\000\000")
          p "#{line}" unless line.include?("<5>") or line.include?("<6>")or not $DEBUG or not User_Edit::PRINTLINES
          updatebool = false
          case line when /<00>(.*)<\/00>/
          Hora_Serve.receber($1.to_s)
          updatebool = false
          return
          end
          updatebool = self.update_walking(line) if @login and $game_map != nil
          updatebool = self.update_ingame(line)  if updatebool == false and @login and $game_map != nil
          updatebool = self.update_system(line)  if updatebool == false
          updatebool = self.update_admmod(line)  if updatebool == false
          updatebool = self.update_outgame(line) if updatebool == false
        end
      end
      end
    end
    end


    _________________
    Receber Hora do Servidor 616s9EW
    gladistony
    gladistony
    Membro Ativo
    Membro Ativo


    Mensagens : 336
    Créditos : 217

    Receber Hora do Servidor Empty Re: Receber Hora do Servidor

    Mensagem por gladistony Seg maio 13, 2013 10:20 am

    Obg Darkmel pela edição, mudei o script original pelo que vc fez e vo te add na parte de créditos


    _________________
    Receber Hora do Servidor 252057
    DeaN
    DeaN
    Colaborador
    Colaborador


    Mensagens : 1243
    Créditos : 48

    Receber Hora do Servidor Empty Re: Receber Hora do Servidor

    Mensagem por DeaN Seg maio 13, 2013 11:50 am

    Muito bom Man. '-'
    1+


    _________________
    Dean, Programador Geral :)

    Contato: Skype:matucarvalho e Facebook
    The Enze - Vulzt

    Shield Block
    Anti-Cheat para jogos de FPS, agora vou adaptar para jogos de RPG principalmente para o RMXP.
    www.shieldblock.net
    fb.com/shieldblockoficial

    Receber Hora do Servidor MiB0H
    lovins
    lovins
    Membro Ativo
    Membro Ativo


    Mensagens : 340
    Créditos : 68

    Receber Hora do Servidor Empty Re: Receber Hora do Servidor

    Mensagem por lovins Seg maio 13, 2013 2:58 pm

    Outra coisa, quando você for mostrar a hora com "$hora" ele tambem não mostra o 0, então no momento que for colocar esse código, coloque assim:
    $hora.to_s
    Exemplo:
    self.contents.draw_text(1, 11, 200, 32, $hora.to_s + ":" + $minuto.to_s)

    Também fiz um script de relogio baseado nesse ai.
    http://pastebin.com/fwN9KBrV
    Código:

          
          
    [list=1]
    # Sistema de relogio criado por Darkmel
    # Baseado no script de horas on server do Gladistony
    module Relogio
    #Mostrar dia/mes/ano?
    Dia = false
    #Posicao x
    X = 350
    #Posicao y
    Y = 8
    #Mostrar Windowskin?
    Window = true
    end
     
    class Window_Relogio < Window_Base
      def initialize
        super(Relogio::X,Relogio::Y,100,65)
        self.contents = Bitmap.new(width - 32, height - 32)
        self.z = 99999999
        self.opacity = 200
        if Relogio::Window = true
        self.windowskin = RPG::Cache.windowskin("WindskinA")
        else
        self.windowskin = RPG::Cache.windowskin("")
        end
        refresh
      end
      def refresh
        self.contents.clear
        self.contents.font.name = "Segoe UI"
        self.contents.font.color = Color.new(0, 0, 0)
        if Relogio::Dia = true
        self.contents.draw_text(1, -11, 200, 32, $data.to_s)
        end
        self.contents.draw_text(1, 11, 200, 32, $hora.to_s + ":" + $minuto.to_s)
        #Sombras
        self.contents.font.color = Color.new(255, 255, 255)
        if Relogio::Dia = true
        self.contents.draw_text(0, -12, 200, 32, $data.to_s)
        end
        self.contents.draw_text(0, 10, 200, 32, $hora.to_s + ":" + $minuto.to_s)
      end
      def update
        super
        return if Graphics.frame_count % (10 * 10) != 0
        $relogio.refresh
      end
    end
    [/list]
          


    _________________
    Receber Hora do Servidor 616s9EW
    Jonny
    Jonny
    Aldeia Friend
    Aldeia Friend


    Medalhas : Receber Hora do Servidor Trophy11Receber Hora do Servidor 9P5Gx
    Mensagens : 1936
    Créditos : 327

    Receber Hora do Servidor Empty Re: Receber Hora do Servidor

    Mensagem por Jonny Dom Fev 09, 2014 8:46 pm

    Obrigado por este scritp Very Happy


    _________________
    Spoiler:


    Receber Hora do Servidor KVIdx
    avatar
    bielmegatrinf
    Iniciante
    Iniciante


    Mensagens : 75
    Créditos : 3

    Receber Hora do Servidor Empty Re: Receber Hora do Servidor

    Mensagem por bielmegatrinf Qua Dez 17, 2014 10:32 pm

    maninho o script é ótimo , porém está com erro! não sei se você testou não sei se foi o lek que tirou o '' bug '' mais ele da ERROR na linha 71 eu to tentando usa-lo para NETPLAY 4.9 , ok se não funcionar porfavor atualize para que funcione pois esse script é MT MAIS MMMT Útil para mim e creio que para outros também , esse são um dos script que necessito muito e nunca consigo! =/
    Jonny
    Jonny
    Aldeia Friend
    Aldeia Friend


    Medalhas : Receber Hora do Servidor Trophy11Receber Hora do Servidor 9P5Gx
    Mensagens : 1936
    Créditos : 327

    Receber Hora do Servidor Empty Re: Receber Hora do Servidor

    Mensagem por Jonny Qui Dez 18, 2014 12:33 pm

    aqui esta el script sin bugs :
    Código:
    #================================================================
    #================================================================
    #===================== Hora do Servidor =========================
    #================================================================
    #=======BY:Gladistony Silva======================================
    #======= Small Edit by: Darkmel ===================================
    #=======Criada para o forum: Aldeiarpgbr ========================
    #=======NÃO POSTA EM OUTRO FORUM SEM AUTORIZAÇÃO=================
    #================================================================
    #================================================================
    module User_Time
      AUTO_INSTAL = true
      SEMANA_PORT = true
    end
    #======================Não Edite================================
    module Hora_Serve
      $data = "00/00/0000"
      $dia = ""
      $hora = ""
      $minuto = ""
      $atualhora = false
      def self.data(op=0)
        return 0 unless $atualhora
        b = $data.split('/')
        return b[op].to_i
      end
      def self.receber(data)
        a = data.split(' ')
        $hora = a[0]
        $minuto = a[1]
        $data = a[2]
        $dia = a[3]
        $atualhora = true
        if User_Time::SEMANA_PORT
          case $dia
          when 'Mon'
            $dia = 'Segunda'
          when 'Tue'
            $dia = 'Terça'
          when 'Wed'
            $dia = 'Quarta'
          when 'Thu'
            $dia = 'Quinta'
          when 'Fri'
            $dia = 'Sexta'
          when 'Sat'
            $dia = 'Sabado'
          when 'Sun'
            $dia = 'Domingo'
          end
          b = $data.split('/')
          $data = b[1].to_s+'/'+b[0].to_s+'/'+b[2].to_s
        end
      end
    end
    class Scene_Map
      alias update_hora_gladis update
      def update
        Network::Main.socket.send("<00> Solicitar hora </00>\n") if Graphics.frame_count % (200) == 0
        update_hora_gladis
      end
    end
    if User_Time::AUTO_INSTAL
    module Network
      class Main
      def self.update
        return unless @socket.ready?
        for line in @socket.recv(0xfff).split("\n")
          @nooprec += 1 if line.include?("\000\000\000\000")
          return if line.include?("\000\000\000\000")
          p "#{line}" unless line.include?("<5>") or line.include?("<6>")or not $DEBUG or not Config::PRINTLINES
          updatebool = false
          case line when /<00>(.*)<\/00>/
          Hora_Serve.receber($1.to_s)
          updatebool = false
          return
          end
          updatebool = self.update_walking(line) if @login and $game_map != nil
          updatebool = self.update_ingame(line)  if updatebool == false and @login and $game_map != nil
          updatebool = self.update_system(line)  if updatebool == false
          updatebool = self.update_outgame(line) if updatebool == false
        end
      end
      end
    end
    end


    _________________
    Spoiler:


    Receber Hora do Servidor KVIdx
    avatar
    bielmegatrinf
    Iniciante
    Iniciante


    Mensagens : 75
    Créditos : 3

    Receber Hora do Servidor Empty Re: Receber Hora do Servidor

    Mensagem por bielmegatrinf Sex Dez 19, 2014 9:42 am

    valew vou testar!

    Conteúdo patrocinado


    Receber Hora do Servidor Empty Re: Receber Hora do Servidor

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Qui Mar 28, 2024 2:01 pm