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

Esqueci-me da senha

Últimos assuntos
» Problemas com a caixa de diálogo, ela é pequena e as letras não cabem dentro
por Rukasu777 Ontem à(s) 18:10

» Problemas com particulas
por RastaMaan Dom 12 maio 2024, 17:03

» Problema ao entrar por uma porta e voltar por ela
por aminaro Seg 06 maio 2024, 10:08

» Alguém aqui já ganha dinheiro com seus games?
por theguitarmester Ter 30 Abr 2024, 11:43

» Colisões não funcionando
por theguitarmester Ter 30 Abr 2024, 10:16

» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Sex 26 Abr 2024, 16:45

» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18

» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42


GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte

+4
reddragon
xxxAKIRAxxx
vinians
joaoneto
8 participantes

Ir para baixo

GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte

Mensagem por joaoneto Ter 17 Fev 2009, 00:43

Lá venho eu com mais uma lição de GM RPG. Sei que muitos tem lido, mas não sei estou agradando, afinal todos sabemos que fazer um jogo em GM é complexo, demorado, e na maioria das vezes apanhamos pra cacete pra fazer algo parecido com o que queremos.
Eu peço aos leitores que testem, tentem, achem erros, jeitos mais fáceis de fazer. Estou na ponta do Iceberg sobre o assunto, ainda há muito o que escrever e falar e, seria fácil postar aqui uma "engine" de jogo RPG, mas dessa forma se acaba copiando muito e aprendendo nada. Chega de enrolação e vamos começar.

Uma das coisas que você deve saber e, se ainda não sabe, é que o evento Draw com certeza é e sempre será o evento mais usado quando falamos de mostrar informações na tela.
Hoje, você aprenderá a fazer uma janela, onde poderá mostrar o que quiser, criar várias delas com informações diferentes, etc. A vantagem é que, usando scripts, basta mudar alguns parãmetros e temos janelas completamente distintas em conteúdo, mas no mesmo padrão de desenho, como devem ser.
Para que você se familiarize com o evento Draw, não iremos usar imagens para desenhar nossa janela, usaremos apenas GML, e o resultado final será esse:
GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte 60868700te8
Com o código que você aprenderá aqui, você fará uma janela que, além de flutuante, podendo ser movida com o arrastar/soltar do mouse, ela será retrátil(palavra difícil), ou seja, ao se dar um duplo clque ela se abre e se fecha. Mãos à obra.

Antes de mais nada precisamos de 2 resources do GM: um sprite e uma Fonte. Nosso sprite será a máscara que o objeto janela usará para ser arrastado, e a fonte para ser desenhada na janela. A sprite deve seguir as configurações da figura abaixo:
GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte 23561357ml8
e a fonte assim:
GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte 18274577ey9
Agora, criaremos uma pancada de scripts, que serão explicados passo a passo depois. Crie os scripts abaixo usando o nome em negrito.
mouseover
Código:

x1 = argument0 //posição x inicial
x2 = argument1 //posição x final
x3 = argument2 //posição y inicial
x4 = argument3 //posição y final
if mouse_x >= x1 && mouse_x <= x2 && mouse_y >= x3 && mouse_y <= x4{return true;}
else{return false;}
janela
Código:

x1 = argument0;
x2 = argument1;
x3 = argument2;
x4 = argument3;
cor = argument4;
aberta = argument5;
txtAberta = argument6;
txtFechada = argument7;
tela(x1,x2,x3,17,cor);
if aberta {
    textoJanela(x1,x2,txtAberta);
    tela(x1,x2+16,x3,x4+16,cor);
}
else {
    textoJanela(x1,x2,txtFechada);
    tela(x1,x2+16,x3,17,cor);

tela
Código:

x1 = argument0
x2 = argument1
x3 = argument2
x4 = argument3
cor = argument4
if cor == 0 then cor = c_white;
//Desenha o fundo
draw_set_color(make_color_rgb(74,74,132))
draw_set_alpha(0.7)
draw_rectangle(x1,x2,x1 + x3,x2 + x4,false)
draw_set_color(cor)
draw_set_alpha(1)
//desenha as bordas
draw_rectangle(x1,x2,x1 + x3,x2 + x4,true)
draw_rectangle(x1 + 1,x2 + 1,x1 + (x3 - 1),x2 + (x4 - 1),true)
return true;
LPress
Código:

if move == false{
    move = true;
    d_x = x - mouse_x;
    d_y = y - mouse_y;
}
timer += 1
alarm[0] = 20
if timer > 1{
    if opened == true{
        opened = false;
        timer = 0;
        break;
    }
    else{
        opened = true;
        timer = 0;
        break;
    }
}
textoJanela
Código:

draw_set_color(c_white);
draw_set_font(menubarra);
draw_text(argument0+5,argument1+1,argument2);
janelaDraw
Código:

if mouseover(x,x+largura,y,y+15){
    if mouse_check_button_pressed(mb_left){
        LPress();}
}
if mouse_check_button_released(mb_left){
        move = false;}
if move = true{
    valor_x = abs(view_xview - (mouse_x + d_x));
    valor_y = abs(view_yview - (mouse_y + d_y));
}
x = view_xview + valor_x;
y = view_yview + valor_y;
janela(x,y,largura,altura,cor,opened,argument0,argument1);
Se você observar, praticamente o que é necessário para se fazer a janela já foi escrito nos scripts. Agora só organizar algumas variáveis e fazer algumas chamadas em um evento draw e pronto. E ainda tem gente que reclama... Rolling Eyes

Agora a parte mais difícil. Crie um objeto, chame-o de objJanela. Adicione 3 eventos, um Create, um Alarm0 e um Draw. Abaixo segue o código de cada um:

Create
Código:

opened = false;
timer = 0;
cor = c_white;
move = false
d_x = 0;
d_y = 0;
valor_x = 0;
valor_y = 0;
largura = 220;
altura = 180;
image_xscale = 6;
Alarm0
Código:
timer = 0;
Draw
Código:

janelaDraw("Menu","HP - 100");
Para evitarmos um erro, adicione no Sprite do objeto nosso sprite de nome mask.
Crie uma room, adicione o objJanela na mesma e rode. Ao clicar na barra superior e arrastar, a janela se move. Ao clicar duas vezes, a janela se expande, mudando o texto na barra. Para que se apareça um texto na parte de baixo da janela, inclua este código no Draw do objJanela:
Código:
if opened {
    textoJanela(x,y+20,"HP - 100");
}
Agora ao se clicar duas vezes, o texto da barra é mostrado na parte inferior.
Caso queria ver a coisa realmente legal, crie uma room grande, adicione uma view e um objeto que se move e... a janela acompanha a tela !!

Já deu pra sacar que parece difícil demais, mas foi muito fácil. O tópico já está de um tamanho bom e eu muito cansado.
Na próxima parte desta lição eu explicarei item por item dos scripts, e mudaremos o layout de nossa janela para usar imagens, dando mais vida à mesma.

Até a próxima.
joaoneto
joaoneto

Data de inscrição : 08/05/2008
Reputação : 7
Número de Mensagens : 36
Prêmios : GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.deploy.net.br

Ir para o topo Ir para baixo

GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty Re: GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte

Mensagem por vinians Ter 17 Fev 2009, 09:14

Muito bem bolado João! Esse eu gostei, afinal quem não precisa duma janelinha de vez em quando né?
vinians
vinians

Games Ranking : Nota B

Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Reputação : 90
Número de Mensagens : 2715
Prêmios : GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Construct 2
  • Java
  • C#
  • Javascript
  • C ou C++
  • Outros


https://vinians.itch.io

Ir para o topo Ir para baixo

GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty Re: GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte

Mensagem por xxxAKIRAxxx Ter 17 Fev 2009, 17:01

eh isso ai João gostei pra caramba.
valew.
ou vo te q fazer otra conta la na jrpg
pq eles atualizou o site e meu login tava
gravado agora nao sei mais qual eh.
flw.
xxxAKIRAxxx
xxxAKIRAxxx

Data de inscrição : 04/02/2009
Reputação : 1
Número de Mensagens : 108
Prêmios : GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty Re: GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte

Mensagem por reddragon Qua 18 Fev 2009, 12:49

muito legal um menu bem planejado e com bons recursos.

gostei bastante agora vamos a próxima
reddragon
reddragon

Data de inscrição : 19/03/2008
Reputação : 0
Número de Mensagens : 267
Prêmios : GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty Re: GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte

Mensagem por CPinheiro Seg 23 Fev 2009, 06:31

Cara, você manja XD
Tutorial muito bom, bem legal. Parece que o próximo vai falar de skins, mas ainda não li. Espero que esteja tão bom quanto este. Very Happy
CPinheiro
CPinheiro

Data de inscrição : 01/06/2008
Reputação : 0
Número de Mensagens : 1015
Prêmios : GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://supermariobrasileiro.blogspot.com

Ir para o topo Ir para baixo

GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty Re: GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte

Mensagem por Metal_X Qui 12 Mar 2009, 01:54

Joao, muito bom o tutorial, mas tipo eu mudei o jeito de andar, coloquei no botao esquerdo, ai quando eu clico na janela o personagem anda tb, ai fica bugando o movimento da janela, ela começa a tipo repelir as bordas muito estranho, sera q num tem como fazer das janelas algo "alem" do mapa, como exemplo o do ragnarok mesmo, que quando vc clica na janela vc não clica no mapa tb. Vlw!
Metal_X
Metal_X

Data de inscrição : 10/03/2009
Reputação : 0
Número de Mensagens : 3
Prêmios : GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty Re: GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte

Mensagem por jpaulo Sex 26 Mar 2010, 18:54

no meu nao pegou.pega na lite?
jpaulo
jpaulo

Data de inscrição : 21/03/2010
Reputação : 0
Número de Mensagens : 345
Prêmios : GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty Re: GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte

Mensagem por jpaulo Dom 28 Mar 2010, 15:46

no meu nao funcionou o segundo codigo
jpaulo
jpaulo

Data de inscrição : 21/03/2010
Reputação : 0
Número de Mensagens : 345
Prêmios : GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty Re: GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte

Mensagem por Riccardoric Seg 16 Fev 2015, 00:09

Sei que é um post antigo, mas tem como renovar as imagens?
Riccardoric
Riccardoric

Data de inscrição : 17/06/2014
Reputação : 34
Número de Mensagens : 206
Prêmios : GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte Empty Re: GM RPG - 3º Lição - Janelas Flutuantes estilo Ragnarok - 1º parte

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


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