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
» 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

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21


[GM:S]Criando um virtualpad

4 participantes

Ir para baixo

[GM:S]Criando um virtualpad Empty [GM:S]Criando um virtualpad

Mensagem por Mr. Kaleb Sex 07 Mar 2014, 23:18


  • Título: Criando um virtualpad
  • Versão do GM: Studio Professional
  • Dificuldade: Básica
  • Link para download da engine: virtualpad.gmx
  • Requer extensões: Não
  • Requer DLL's: Não
  • Tags: virtualpad, virtual key, gui, interface


Para criar um sistema de pad na tela, vamos ter que separar algumas coisas. Quando você quer criar um virtualpad, você não vai colocá-lo lá como se põe um objeto normal. O virtualpad é um objeto que não causa e nem deve receber influência nos outros objetos do jogo, assim como outros botões e outras coisas que estão presentes num jogo. Aqui vai um exemplo:

[GM:S]Criando um virtualpad CkgqkD0
Imagem do jogo Stardash
Todos esses elementos devem ficar a parte de alterações como rotação da tela, efeitos no jogo e etc. Devem ser desenhados como em, digamos, uma surface própria. Para fazer isso, utilizamos a GUI (Game User Interface). É na GUI que colocamos esses elementos. Caso você abra seu Studio e procure nos eventos, verá que no Draw, existe um subevento chamado Draw GUI. É nele que desenharemos todas as imagens pertencentes ao nosso pad.

Antes de usar os eventos da GUI, temos que criar uma view. Por quê? Bem, porque primeiro, todo jogo de mobile vai usar uma view, de qualquer jeito. Segundo, todas as imagens vão seguir o personagem, ou o que quer que seja principal no jogo (isso não é necessariamente correto, caso você tenha um game estático).

Começando, crie um objeto (obj_player) e nele ponha os movimentos direcionais básicos (esquerda e direita), com as teclas correspondentes (left, right). Crie uma sprite qualquer para ele, pode ser um quadrado básico mesmo.

Depois crie 2 sprites (spr_left, spr_right) e coloque essas duas imagens, respectivamente (deixe o Center em 0 e 0 mesmo:)
[GM:S]Criando um virtualpad VqtsYep [GM:S]Criando um virtualpad Xv0nYuJ

Agora, crie uma room de tamanho qualquer (grande, preferencialmente) e crie uma view de 800x600.

Finalizada essa parte, crie um objeto (obj_control) e no evento Create ponha esse código:

Código:
guiw=view_wport[numero]
guih=view_hport[numero]

esq=virtual_key_add(16,468,100,100,vk_left)
dir=virtual_key_add(132,468,100,100,vk_left)

virtual_key_show(esq)
virtual_key_show(dir)

Isso vai criar duas variáveis que determinam que o comprimento e altura da GUI é respectivamente igual ao comprimento e altura da view. Depois, cria 2 teclas virtuais no canto inferior esquerdo da tela, que é onde você vai pressionar (no seu dispositivo touchscreen) e o objeto vai se mover, caso você tenha criado-o corretamente.
Veja que, por último, eu coloquei um código para mostrar onde as vk's estão. Caso você inicie a room, verá 2 quadrados brancos na posição estabelecida. Mas isso foi só para mostrar, apague as 2 últimas linhas e vamos colocar as sprites.

Agora, ainda no obj_controle, clique em Add Event > Draw > Draw GUI. É aqui que vamos desenhar as sprites. Lá, apenas desenhe as sprites:

Código:
draw_sprite(spr_left,0,16,468)
draw_sprite(spr_left,0,132,468)

E pronto! Caso você inicie no seu Windows, não vai dar pra clicar, como simulação de touchscreen. Esse método só funciona para mobile ou HTML5, portanto, se você tiver como testar no seu aparelho, vai poder verificar o resultado.

Eu não vou deixar a engine agora, porque esqueci de salvar, mas provavelmente irei pôr. Espero que aproveitem!


Última edição por Mr. Kaleb em Sáb 29 Mar 2014, 17:06, editado 6 vez(es)
Mr. Kaleb
Mr. Kaleb

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 07/09/2010
Reputação : 21
Número de Mensagens : 1400
Prêmios : [GM:S]Criando um virtualpad 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:S]Criando um virtualpad Empty Re: [GM:S]Criando um virtualpad

Mensagem por fredcobain Qui 13 Mar 2014, 16:32

Mr. Kaleb, esse tutorial é muito útil, e indispensável para quem está desenvolvendo para plataformas do tipo mobile.

Peço apenas que vc use o cabeçalho padrão da seção de tutoriais.

  • Título:
  • Versão do GM:
  • Dificuldade:
  • Link para download da Engine:
  • Requer Extensões:
  • Requer DLLs:
  • Tags:


Obrigado pela contribuição.
fredcobain
fredcobain

Games Ranking : Sem avaliações

Data de inscrição : 14/04/2011
Reputação : 163
Número de Mensagens : 692
Prêmios : [GM:S]Criando um virtualpad Empty

Medalhas x 0 Tutoriais x 3 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:S]Criando um virtualpad Empty Re: [GM:S]Criando um virtualpad

Mensagem por Mr. Kaleb Qui 13 Mar 2014, 21:56

Obrigado que gostou e obrigado pelo aviso, o tópico já foi editado conforme as regras.
Mr. Kaleb
Mr. Kaleb

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 07/09/2010
Reputação : 21
Número de Mensagens : 1400
Prêmios : [GM:S]Criando um virtualpad 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:S]Criando um virtualpad Empty Re: [GM:S]Criando um virtualpad

Mensagem por Paranoid System Network Sáb 29 Mar 2014, 16:01

sera q teria como vc colocar a engine ?
Paranoid System Network
Paranoid System Network

Data de inscrição : 28/03/2014
Reputação : 0
Número de Mensagens : 3
Prêmios : [GM:S]Criando um virtualpad 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:S]Criando um virtualpad Empty Re: [GM:S]Criando um virtualpad

Mensagem por Mr. Kaleb Sáb 29 Mar 2014, 17:05

EDIT:
Atualizado com o link da engine!
Mr. Kaleb
Mr. Kaleb

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 07/09/2010
Reputação : 21
Número de Mensagens : 1400
Prêmios : [GM:S]Criando um virtualpad 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:S]Criando um virtualpad Empty Re: [GM:S]Criando um virtualpad

Mensagem por Paranoid System Network Sáb 29 Mar 2014, 18:14

Obrigado por postar a engine.

__________

Nao esta dando a engine q vc postou poderia postar a pasta da engine

Editado por Gabreel: Alertado em 15% por post duplo.
Paranoid System Network
Paranoid System Network

Data de inscrição : 28/03/2014
Reputação : 0
Número de Mensagens : 3
Prêmios : [GM:S]Criando um virtualpad 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:S]Criando um virtualpad Empty Re: [GM:S]Criando um virtualpad

Mensagem por Gabreel Dom 30 Mar 2014, 02:35

#Paranoid System Network# Se a engine não funcionou, o tutorial tá aí pra isso.
Gabreel
Gabreel

Data de inscrição : 02/10/2009
Reputação : 52
Número de Mensagens : 2232
Prêmios : [GM:S]Criando um virtualpad 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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Javascript
  • Outros


Ir para o topo Ir para baixo

[GM:S]Criando um virtualpad Empty Re: [GM:S]Criando um virtualpad

Mensagem por Paranoid System Network Dom 30 Mar 2014, 08:55

esta dando erro quando vo abrir a engine o game maker fala q esta faltando arquivos ;-)
Paranoid System Network
Paranoid System Network

Data de inscrição : 28/03/2014
Reputação : 0
Número de Mensagens : 3
Prêmios : [GM:S]Criando um virtualpad 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:S]Criando um virtualpad Empty Re: [GM:S]Criando um virtualpad

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