🤔 Para Refletir : "Já fez sua cota diária de PÁ? Não!? Então comece agora! 🖌️" - Victor Sena

[Game Maker]Movimento por Tiles (Estilo RM 2000)

Administração Administração
Jogador maluco, problemático, olho parado.
Postagens
540
Bravecoins
2.533
Área
Programação
Motor de jogo
RPG Maker 2003
RPG Maker 2000 Motion

xo25.png



Autor: Dr.XGB
Plataforma: Game Maker 8.0
Dificuldade: Intermediário



Desenvolvi um pequeno sistema para o Game Maker onde você pode deixar o movimento muito parecido com a movimentação padrão do RPG Maker 2000. Muito útil para quem deseja fazer um jogo de Top Down ou até mesmo um de RPG. A movimentação tem, no total, 5 scripts que são realizados durante o jogo.
Aproveitei um recurso muito importante do GM onde você não precisa criar vários sprites para cada posição do herói, utilizei a mesma fórmula que o RPG Maker usa para mostrar o gráfico dos eventos através de uma única imagem — onde o denominamos como Charset —. O script capaz de fazer esta proeza, deve ser colocado no Evento Draw do objeto que receberá este charset. Mas antes você precisa declarar as variáveis no Evento Create.​

Create: Call Piece of Code
Código:
// Set Hero Graphics
charset = 'Chara1.png'
charframe = 0                            // charset index (0 to 7)
frame = FRAME_NORMAL                    // Animation frame
frame_simple = FRAME_NORMAL              // Drawing frame
dir_look = DIR_DOWN                      // direction
char_sprite = sprite_add(working_directory+'\Charset\'+charset,0,true,false,0,0)

//Set Hero State
walk = false
animation = false
fix_dir = false
phasing = false

image_speed = 0
self_speed = 4
current_move = -1
x_spot = 0
y_spot = 0

Draw: Chamar o Script Draw_Event
Código:
/*
========================================================================
    # RPG Maker 2000 Draw Event Charset #
      - Script by Dr.XGB -
   
    This script draws the event's charset, according to
    its graphic file, similar like the Rm2k does.
========================================================================
*/

// Draw Event GFX Like RPG Maker 2000
draw_sprite_part(
                char_sprite,
                0,
                (charframe mod 4)*(3*24)+(frame_simple*24),
                (charframe div 4)*(4*32)+(dir_look*32),
                24,
                32,
                x-4,
                y-16
                );

Podemos notar que é quase o mesmo raciocínio que eu utilizo no RPG Maker 2000, com ajuda do Destiny, a diferença é que aqui no GM eu crio as minhas próprias variáveis e minhas próprias funções.
Não se esqueça de carregar as constantes salvas pelo Bloco de Notas na pasta da própria Demo (Ctrl+Shift+N)!

Para mais detalhes, baixe a Demonstração, onde estarão disponíveis os outros scripts que vão servir para um funcionamento melhor do sistema.​

[box class=catbg3]Clique aqui para Baixar a Demo (70Kb)[/box]
 
Crixus comentou:
Ual! Será que consigo reproduzir isso em CANVAS (Javascript)?

Nota 10 mesmo.
[member=136]Crixus[/member] : Provavelmente consegue. Talvez não com essa lógica do GML, mas consegue sim e, se pá, até mais otimizado.
 
Voltar
Topo