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


2 participantes

    Salvar Variável no servidor versão ALPHA

    gladistony
    gladistony
    Membro Ativo
    Membro Ativo


    Mensagens : 336
    Créditos : 217

    Salvar Variável no servidor versão ALPHA Empty Salvar Variável no servidor versão ALPHA

    Mensagem por gladistony Seg Jan 21, 2013 3:40 pm

    Salvar Variável no servidor versão ALPHA

    LOG
    21/01/2013 --> Script postado

    Script
    Código:
    #================================================================
    #================================================================
    #================= Salvar Variável no serve =====================
    #================================================================
    #=======BY:Gladistony Silva======================================
    #=======Criada para o forum: Aldeiarpgbr ========================
    #=======NÃO POSTA EM OUTRO FORUM SEM AUTORIZAÇÃO=================
    #================================================================
    #================================================================
    class Scene_Map
      alias update_sw_vr_gladis update
      def update
        Sw_Vr.atualizar if Graphics.frame_count % (35) == 0
        update_sw_vr_gladis
      end
    end
    module Sw_Vr
      $swvr = []
      def self.receber(data)
        a = data
        a.delete!("<SWS>")
        a.delete!("</SWS>")
        b = a.split('][')
        b[0].delete!("[]")
        if b.size > 1
          b[b.size - 1].delete!("[]")
        end
        $swvr = b
      end
    def self.enviar
        data = ""
    for i in $swvr
    if "[#{i}]" == "[]"
      data += "[nill]"
      next
    end
      data += "[#{i}]"
    #data += "[#{i}]<==>#{a}||"
    end
        Network::Main.socket.send("<SWS> #{data} </SWS>\n")
      end
      def self.atualizar
        Network::Main.socket.send("<SWL> solicitar </SWL>\n")
      end
    end
    def swvr(x, var=nil)
      Sw_Vr.atualizar
      if var == nil
        return $swvr[x]
      end
      $swvr[x] = var
      Sw_Vr.enviar
    end
    module Network
    class Main
      def self.update_admmod(line)
        case line
        when /<SWL>(.*)<\/SWL>/
          Sw_Vr.receber($1.to_s)
          return true
        # Admin Command Recieval
        when /<18>(.*)<\/18>/
          # Kick All Command
          if $1.to_s == "kick_all"
            p LANGUAGE::ADMKICKALL
            self.close_socket
            $scene = nil
            return true
          # Kick Command
          elsif $1.to_s == "kicked"
            p LANGUAGE::ADMKICK
            self.close_socket
            $scene = nil
            return true
          end
        return false
        end
        return false
      end
    end
    end
    Script Sevidor
    Código:
    --------------------------------
    --    salvar SW(25)          --
    --------------------------------
      elseif cmd == "<SWS>" then
        do
          file = io.open("SWGlobais.txt", "w")
          file:write(data)
          file:close()
        end
    --------------------------------
    --    Ler SW(25)            --
    -------------------------------- 
      elseif cmd == "<SWL>" then
        do
          file = io.open("SWGlobais.txt", "r+")
          infor = file:read("*a")
          file:close()
          NP():SendToUser(user.id,"<SWL>"..infor.."</SWL>")
        end
    Instalação
    Cole o Script logo acima do Main, depois va no arquivo functions.lua da pasta script do seu sevidor e adicione o segundo script logo acima de
    Código:
    --------------------------------
    --    Trade Request(24d)    --
    --------------------------------

    Utilização
    use o comando:
    swvr(X) para consultar alguma informação
    ou use
    swvr(x, data)
    para gravar alguma coisa.
    De ante mão aviso que as informações são guardadas como um lista
    sendo assim, como eu queira dizer que o 1 membro vale 150 eu
    coloco:[nota se inicia do 0 e vai ate onde vc quiser]
    swvr(0, 150)
    se depois eu quiser consultar o valor do 1 termo eu digito
    apenas
    swvr(0)


    Notas
    >O sistema esta na sua versão ALPHA, isso que dizer que isso e so 1 previa para ser usada apenas enquanto a versão definitiva não aparece. É certo que haverão muitos bugs ainda.
    >Apesar de não haver um limite da quantidade de dados gravados, o sistema de comunicação netplay/servidor pode apresentar falhas caso a quantidade de variáveis ou seus valores sejam muito grandes.
    >Esse script eu fiz quando estava começando a aprender a mexer em ruby/lua, ele ainda precisa de melhorias, recomendo usa-lo apenas para criação de sistemas em testes, não lancem seu game usando esse script devido a alguns bugs presentes nele.
    >O sistema apenas e capaz de gravar valores inteiros e string.

    Bugs
    >Se vc coloca muita informação, alguns dados se perdem
    >A variável de id 0 esta bugada, não usem.

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


    _________________
    Salvar Variável no servidor versão ALPHA 252057
    DeaN
    DeaN
    Colaborador
    Colaborador


    Mensagens : 1243
    Créditos : 48

    Salvar Variável no servidor versão ALPHA Empty Re: Salvar Variável no servidor versão ALPHA

    Mensagem por DeaN Seg Jan 21, 2013 3:47 pm

    Bem legal cara seus Scripts gostando muito deles.


    _________________
    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

    Salvar Variável no servidor versão ALPHA MiB0H

      Data/hora atual: Qui Nov 21, 2024 10:25 pm