Isto é uma pré-visualização de um tema em Hitskin.com
Instalar o tema • Voltar para a ficha do tema
[Tutorial] Novo chat livre de bugs! [NPV4]
4 participantes
Aldeia RPG :: RPG Maker :: Rpg Maker XP :: Tutoriais
Página 1 de 1
[Tutorial] Novo chat livre de bugs! [NPV4]
Estou criando um projeto para meu rpg online, e corrigi inúmeros bugs, incluindo os do chat, para ativá-lo com enter, não soltar skill quando digita, etc.
Resolvi postar aqui esse chat do Valentine modificado por mim, pois a comunidade sempre me ajudou.
Como usaremos a classe "box" em vários scripts, peço que antes de começarmos substitua todos os "@box" de seu projeto por "$box". É fácil, vá no editor de scripts, pressione Ctrl+Shift+F e digite @box. Feito isso, entre na primeira e pressione Ctrl+H, e substitua "@box" por "$box". Continue até substituir todos de seu projeto.
Feito isto, vamos começar a edição do chat. Vá para o script [SC1] New Chat e logo após de:
adicione o seguinte:
Isso fará com que ao teclar "Enter", a linha do chat onde o usuário digita suas mensagens vai ser ativada, e também fará que tal linha suma ao clicar fora do chat.
Agora, para fazer com que a linha do chat suma quando o usuário envia uma mensagem, ainda no mesmo script, logo abaixo de
você verá a linha:
Cole entre o @box.text = "" e o return o seguinte código:
Devendo ficar assim:
Está quase tudo pronto, porém ao usuário teclar enter com o chat ativo sem digitar mensagem alguma, o chat ainda não some. Para arrumar isto, basta fazer o seguinte:
Ainda no mesmo script, logo abaixo da linha:
Apague a linha:
E no lugar, cole:
Devendo ficar assim:
O chat está pronto, falta apenas corrigir o bug das Hotkeys, para não soltar skill enquanto digita. Para isso, façamos o seguinte:
No script [WIN]Window_Hotkey, abaixo da linha 50 onde está:
adicione:
ficando assim:
Isso fará que caso o chat esteja ativo, o script não executará o método usehotkey
Resolvi postar aqui esse chat do Valentine modificado por mim, pois a comunidade sempre me ajudou.
Como usaremos a classe "box" em vários scripts, peço que antes de começarmos substitua todos os "@box" de seu projeto por "$box". É fácil, vá no editor de scripts, pressione Ctrl+Shift+F e digite @box. Feito isso, entre na primeira e pressione Ctrl+H, e substitua "@box" por "$box". Continue até substituir todos de seu projeto.
Feito isto, vamos começar a edição do chat. Vá para o script [SC1] New Chat e logo após de:
- Código:
elsif Input.triggerd?(Input::Letters["Q"])
$quest_list.refresh
$quest_w.refresh
$quest_list.visible = !$quest_list.visible
$quest_list.active = !$quest_list.active
$quest_w.visible = false
$quest_w.active = false
adicione o seguinte:
- Código:
elsif Input.triggerd?(Input::Enter) and $box.active = !$box.active
$box.refresh
$box.active = $box.active
$box.visible = $box.visible
return
elsif $box.active == false
$box.text = ""
$box.visible = false
Isso fará com que ao teclar "Enter", a linha do chat onde o usuário digita suas mensagens vai ser ativada, e também fará que tal linha suma ao clicar fora do chat.
Agora, para fazer com que a linha do chat suma quando o usuário envia uma mensagem, ainda no mesmo script, logo abaixo de
- Código:
if $chat_id == 2 #Global
Network::Main.socket.send("<chat>/g #{name}: #{textss}</chat>\n")
end
você verá a linha:
- Código:
@box.text = ""
return
Cole entre o @box.text = "" e o return o seguinte código:
- Código:
$box.active = !$box.active
$box.visible = !$box.visible
Devendo ficar assim:
- Código:
$box.text = ""
$box.active = !$box.active
$box.visible = !$box.visible
return
Está quase tudo pronto, porém ao usuário teclar enter com o chat ativo sem digitar mensagem alguma, o chat ainda não some. Para arrumar isto, basta fazer o seguinte:
Ainda no mesmo script, logo abaixo da linha:
- Código:
def enviando_msg
Apague a linha:
- Código:
return if @box.text == ""
E no lugar, cole:
- Código:
if $box.text == "" and $box.active = $box.active
$box.active = !$box.active
$box.visible = !$box.visible
return
end
Devendo ficar assim:
- Código:
def enviando_msg
if $box.text == "" and $box.active = $box.active
$box.active = !$box.active
$box.visible = !$box.visible
return
end
name = $game_party.actors[0].name
level = $game_party.actors[0].level
textss = $box.text
id = Network::Main.id
O chat está pronto, falta apenas corrigir o bug das Hotkeys, para não soltar skill enquanto digita. Para isso, façamos o seguinte:
No script [WIN]Window_Hotkey, abaixo da linha 50 onde está:
- Código:
def usehotkey
adicione:
- Código:
if $box.active == true
return
end
ficando assim:
- Código:
def usehotkey
if $box.active == true
return
end
for i in 1..6
if Input.trigger?(48+i)
if $hotkey[i] != 0 and $hotkey[i] != nil
if $hotkey[i] >= 0
$ABS.player_skill($hotkey[i])
else
use_item($hotkey[i]* -1, i)
end
end
end
end
end
Isso fará que caso o chat esteja ativo, o script não executará o método usehotkey
Última edição por luucastadeu em Seg Abr 22, 2013 11:24 pm, editado 3 vez(es)
luucastadeu- Novato
- Mensagens : 15
Créditos : 4
Re: [Tutorial] Novo chat livre de bugs! [NPV4]
Nossa, muito bom. Mas queria saber se preciso de algo, ou um script antes de fazer essa modificação. Se sim, deixe disponível se não seu tutorial se torna ínutil. +1 Cred
_________________
É na noite a hora da verdadeira caçada. - Sentinela Das Trevas
SentinelaDasTrevas- Iniciante
- Mensagens : 58
Créditos : 7
Re: [Tutorial] Novo chat livre de bugs! [NPV4]
SentinelaDasTrevas escreveu:Nossa, muito bom. Mas queria saber se preciso de algo, ou um script antes de fazer essa modificação. Se sim, deixe disponível se não seu tutorial se torna ínutil. +1 Cred
Obrigado, editei o tópico e coloquei todas as modificações do chat.
luucastadeu- Novato
- Mensagens : 15
Créditos : 4
Re: [Tutorial] Novo chat livre de bugs! [NPV4]
legal essas modificações, c vc estudar rgss pode até fazer coisas complexas 1 CRED
Re: [Tutorial] Novo chat livre de bugs! [NPV4]
ótimo amigo... pena que não uso mais o rpgmaker!!
Mais mesmo assim +1 cred
Mais mesmo assim +1 cred
_________________
Se inscreva em meu Canal no YouTube:
https://www.youtube.com/localnerd
Faça uma doação para ajudar nos custos:
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3N8T2RJ977RCQ
Faça uma doação para ajudar nos custos:
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=3N8T2RJ977RCQ
Felix Blayder- Membro de Honra
- Mensagens : 1406
Créditos : 220
Ficha do personagem
Nível: 1
Experiência:
(0/0)
Vida:
(30/30)
Re: [Tutorial] Novo chat livre de bugs! [NPV4]
Obrigado, pretendo mesmo estudar e elaborar sistemas do zero.PedroMatoso escreveu:legal essas modificações, c vc estudar rgss pode até fazer coisas complexas 1 CRED
Obrigado pelo incentivo.Felix Blayder escreveu:ótimo amigo... pena que não uso mais o rpgmaker!!
Mais mesmo assim +1 cred
luucastadeu- Novato
- Mensagens : 15
Créditos : 4
Tópicos semelhantes
» Criar um novo chat
» Novo Chat para netplay
» [Tutorial/Aula] Sistema de minimizar/maximizar chat
» [EO] Tutorial Apertar ENTER para digitar no chat
» [Tutorial]Mudando de tecla para abrir e fechar chat
» Novo Chat para netplay
» [Tutorial/Aula] Sistema de minimizar/maximizar chat
» [EO] Tutorial Apertar ENTER para digitar no chat
» [Tutorial]Mudando de tecla para abrir e fechar chat
Aldeia RPG :: RPG Maker :: Rpg Maker XP :: Tutoriais
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos