Salvar Variável no servidor versão ALPHA Hitskin_logo Hitskin.com

Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o temaVoltar para a ficha do tema

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

Salvar Variável no servidor versão ALPHA

2 participantes

Ir para baixo

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
gladistony
gladistony
Membro Ativo
Membro Ativo

Mensagens : 336
Créditos : 217

http://gladistony.blogspot.com

Ir para o topo Ir para baixo

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
DeaN
DeaN
Colaborador
Colaborador

Mensagens : 1243
Créditos : 48

http://www.shieldblock.net

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos