Packets no NP Plus+ [Aula 2] 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.

Packets no NP Plus+ [Aula 2]

5 participantes

Página 1 de 2 1, 2  Seguinte

Ir para baixo

Packets no NP Plus+ [Aula 2] Empty Packets no NP Plus+ [Aula 2]

Mensagem por RD12 Sáb Jun 30, 2012 4:21 pm

Aula 1


A pedido do leon vou ensinar mais um pouco sobre os packets, e o que você pode fazer com eles.

Quem leu a primeira aula já deve saber que para enviar um packet global para todos online basta chamar o script:
Código:
Network::Main.socket.send("<23> função </23>\n")
No lugar de Função, você pode por print("mensagem"), por exemplo.(Leia aula1 para saber mais)

Você pode receber um pacote em um método, como é utlizado no script [ABS] Evento Global do Valentine.

Nessa aula faremos métodos globais que são executados no computador de todos jogando o jogo, adicionando o nome dos administradores online!

Primeiro, vamos criar o método:

Código:
def admin_on(nome)
$admins = [] if $admins.nil?#inicia a array, caso seja nula
#Verifica se o nome já foi adicionado, caso não, adiciona
 if $admins.include?(nome) == false
  $admins.push nome
 end
end
O método acima vai adicionar em uma variável o nome dos jogadores Admin, mas como vou fazer isso? Vou criar outro método que verifica se o jogador é Admin e envia um packet chamando o método acima, que adiciona o seu nome na variável.

Código:
def add_admin
 if Network::Main.group == 'admin'
  Network::Main.socket.send("<23> admin_on(#{$game_party.actors[0].name})</23>\n")
 end
end
Viram que eu posso chamar um método enviando um packet? Desse jeito que eu fiz minha lista de amigos, para o Netplay Master. E o método será executado no jogo de todos, com os parâmetros enviados, no caso o nome do administrador.

Agora basta chamar esse script: add_admin quando algum jogador entrar, para testar deixe em processo paralelo, e você verá que se for admin, irá adicionar na var $admins o seu nome, no jogo de todos.

Para verificar os jogadores admin apenas chame o script: print($admins), Você pode até mesmo criar uma window e escrever nela os nomes(como eu fiz na lista de amigos).

Mas agora, e se o admin sair do jogo? Ele continuará na array '-' então vamos resolver isso.
Criaremos um método para remover o admin da array.

Código:
def remove_admin(nome)
 if $admins.nil? == false #verifica se a var não é nil, para evitar erros
  $admins.delete(nome)
 end
end

Agora vamos por para chamar esse método quando o jogo for fechado, então vão no script Network, na linha 700 +/-, procure por esse código:

Código:
  def self.close_socket
    return if @socket == nil
    @socket.send("<9>#{self.id}</9>\n")

Pronto! Fizemos um sistema global, bem simples, mas com essa base vocês poderão fazer algo melhor, como lista de jogadores online, ou jogadores em um mapa só, jogadores Vip, Lista de amigos!
Dúvidas postem abaixo, eu fiz todos os código aqui mesmo e não testei, mas creio que está tudo certo.

Script Completo:



Código:
=begin
No script Network, na linha 700 +/-, procure por esse código:
 def self.close_socket
    return if @socket == nil

Em baixo cole esse, ele irá mandar deletar o nome da variável
quando o admin sair:

if Network::Main.group == 'admin'
  Network::Main.socket.send("<23> remove_admin(#{$game_party.actors[0].name})</23>\n")
end

=end

#Adiciona o nome do Admin na variável
def admin_on(nome)
$admins = [] if $admins.nil?#inicia a array, caso seja nula
#Verifica se o nome já foi adicionado, caso não, adiciona
 if $admins.include?(nome) == false
  $admins.push nome
 end
end

#Verifica se a pessoa é admin e chama o método para adicionar o nome na variável
def add_admin
if Network::Main.group == 'admin'
Network::Main.socket.send("<23> admin_on(#{$game_party.actors[0].name})\n")
end
end

#Remove o nome do Admin da variável
def remove_admin(nome)
 if $admins.nil? == false #verifica se a var não é nil, para evitar erros
  $admins.delete(nome)
 end
end

Créditos: RD12


Última edição por RD12 em Dom Jul 01, 2012 12:36 pm, editado 1 vez(es)
RD12
RD12
Lenda
Lenda

Medalhas : Packets no NP Plus+ [Aula 2] 48080450Packets no NP Plus+ [Aula 2] Trophy11Packets no NP Plus+ [Aula 2] GIueZPackets no NP Plus+ [Aula 2] ZgLkiRU
Mensagens : 1946
Créditos : 745

Ir para o topo Ir para baixo

Packets no NP Plus+ [Aula 2] Empty Re: Packets no NP Plus+ [Aula 2]

Mensagem por Maverick ~ Sáb Jun 30, 2012 4:53 pm

Bem legal suas aulas..
Graças a outra que fiz o sistema de Mensagem Global.
Valeu,+1Cred
Aprendo muito com essas aulas,Breve poste mais,se poder!.

_________________
Alguma Duvida!? Me mande uma MP

Packets no NP Plus+ [Aula 2] BgIconeLivro                 Regras do Fórum


Packets no NP Plus+ [Aula 2] L4thF
Maverick ~
Maverick ~
Membro Ativo
Membro Ativo

Mensagens : 372
Créditos : 39

Ir para o topo Ir para baixo

Packets no NP Plus+ [Aula 2] Empty Re: Packets no NP Plus+ [Aula 2]

Mensagem por LeonM² Sáb Jun 30, 2012 4:57 pm

VLW VEI
Agr posso fazer meus sistemas o/
+Cred
Atenciosamente LMM
LeonM²
LeonM²
Lenda
Lenda

Mensagens : 1802
Créditos : 153

Ir para o topo Ir para baixo

Packets no NP Plus+ [Aula 2] Empty Re: Packets no NP Plus+ [Aula 2]

Mensagem por Paulo Soreto Sáb Jun 30, 2012 7:27 pm

Legal, gosto dos seus tutoriais porque ajudam muita gente, mas tenho uma dúvida: ao invéz de eu usar uma def "solta", eu não poderia coloca-la em um módulo ou em uma classe e chama-la não?
+1

_________________
Packets no NP Plus+ [Aula 2] FwYnoXI
Paulo Soreto
Paulo Soreto
Lenda
Lenda

Mensagens : 1980
Créditos : 367

Ficha do personagem
Nível: 1
Experiência:
Packets no NP Plus+ [Aula 2] Left_bar_bleue0/0Packets no NP Plus+ [Aula 2] Empty_bar_bleue  (0/0)
Vida:
Packets no NP Plus+ [Aula 2] Left_bar_bleue30/30Packets no NP Plus+ [Aula 2] Empty_bar_bleue  (30/30)

https://www.aldeiarpg.com/

Ir para o topo Ir para baixo

Packets no NP Plus+ [Aula 2] Empty Re: Packets no NP Plus+ [Aula 2]

Mensagem por RD12 Sáb Jun 30, 2012 7:33 pm

Obrigado a todos.
Erak: Sim, claro xD
RD12
RD12
Lenda
Lenda

Medalhas : Packets no NP Plus+ [Aula 2] 48080450Packets no NP Plus+ [Aula 2] Trophy11Packets no NP Plus+ [Aula 2] GIueZPackets no NP Plus+ [Aula 2] ZgLkiRU
Mensagens : 1946
Créditos : 745

Ir para o topo Ir para baixo

Packets no NP Plus+ [Aula 2] Empty Re: Packets no NP Plus+ [Aula 2]

Mensagem por Samuka_Maker Sáb Jun 30, 2012 11:09 pm

vou ver akie se consigo fazer o sistema q eu queria
Cara qnd eu chamo o script aparece assim:
Packets no NP Plus+ [Aula 2] Kkkllln


_________________

Life rpg maker, suporte para criacao de jgoos online eoffline, link do forum:(v2.0)
http://liferpgmakerv2.forumais.com/

Packets no NP Plus+ [Aula 2] 6f4EA

Packets no NP Plus+ [Aula 2] Bxvno
Tópico original/Tópico de Recrutamento
Samuka_Maker
Samuka_Maker
Aldeia Friend
Aldeia Friend

Medalhas : Packets no NP Plus+ [Aula 2] WBLhI
Mensagens : 1204
Créditos : 127

http://liferpgmaker.forumfacil.net

Ir para o topo Ir para baixo

Packets no NP Plus+ [Aula 2] Empty Re: Packets no NP Plus+ [Aula 2]

Mensagem por Maverick ~ Sáb Jun 30, 2012 11:47 pm

Samuka_Maker escreveu:vou ver akie se consigo fazer o sistema q eu queria
Cara qnd eu chamo o script aparece assim:
Packets no NP Plus+ [Aula 2] Kkkllln

Não me lembro,mas parece que não lê os caracteres especiais como "ç" ou "ã"
não use acentos..

_________________
Alguma Duvida!? Me mande uma MP

Packets no NP Plus+ [Aula 2] BgIconeLivro                 Regras do Fórum


Packets no NP Plus+ [Aula 2] L4thF
Maverick ~
Maverick ~
Membro Ativo
Membro Ativo

Mensagens : 372
Créditos : 39

Ir para o topo Ir para baixo

Packets no NP Plus+ [Aula 2] Empty Re: Packets no NP Plus+ [Aula 2]

Mensagem por Samuka_Maker Dom Jul 01, 2012 12:15 am

Eu não adicionei nenhum Character Mais eu vejo akie depois qual o erro / Bom tuto RD

_________________

Life rpg maker, suporte para criacao de jgoos online eoffline, link do forum:(v2.0)
http://liferpgmakerv2.forumais.com/

Packets no NP Plus+ [Aula 2] 6f4EA

Packets no NP Plus+ [Aula 2] Bxvno
Tópico original/Tópico de Recrutamento
Samuka_Maker
Samuka_Maker
Aldeia Friend
Aldeia Friend

Medalhas : Packets no NP Plus+ [Aula 2] WBLhI
Mensagens : 1204
Créditos : 127

http://liferpgmaker.forumfacil.net

Ir para o topo Ir para baixo

Packets no NP Plus+ [Aula 2] Empty Re: Packets no NP Plus+ [Aula 2]

Mensagem por Maverick ~ Dom Jul 01, 2012 12:21 am

Pela screen tem algo chamado função..
deixe só funcao e teste!

_________________
Alguma Duvida!? Me mande uma MP

Packets no NP Plus+ [Aula 2] BgIconeLivro                 Regras do Fórum


Packets no NP Plus+ [Aula 2] L4thF
Maverick ~
Maverick ~
Membro Ativo
Membro Ativo

Mensagens : 372
Créditos : 39

Ir para o topo Ir para baixo

Packets no NP Plus+ [Aula 2] Empty Re: Packets no NP Plus+ [Aula 2]

Mensagem por Samuka_Maker Dom Jul 01, 2012 12:36 am

continua dando erro

_________________

Life rpg maker, suporte para criacao de jgoos online eoffline, link do forum:(v2.0)
http://liferpgmakerv2.forumais.com/

Packets no NP Plus+ [Aula 2] 6f4EA

Packets no NP Plus+ [Aula 2] Bxvno
Tópico original/Tópico de Recrutamento
Samuka_Maker
Samuka_Maker
Aldeia Friend
Aldeia Friend

Medalhas : Packets no NP Plus+ [Aula 2] WBLhI
Mensagens : 1204
Créditos : 127

http://liferpgmaker.forumfacil.net

Ir para o topo Ir para baixo

Packets no NP Plus+ [Aula 2] Empty Re: Packets no NP Plus+ [Aula 2]

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Página 1 de 2 1, 2  Seguinte

Ir para o topo

- Tópicos semelhantes

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