Olá, eu estou começando com o Construct 2, eu criei uma solução e gostaria de compartilhar com a comunidade.
Há algum tempo eu procurei sobre como manter os inimigos em várias plataformas ao longo de um mapa. Como sou iniciante, eu não gostei do que encontrei e tentei algo mais fácil para mim. Então fiz assim:
1) Criei uma plataforma;
2) Criei um inimigo;
3) Criei uma máscara;
4) Configurei o Event Sheet.
1) A plataforma foi feita com um background normal. Neste esquema que bolei, você pode duplicar esses backgrounds e setar o tamanho que quiser. Você deve setar o comportamento de 'Bloco' para ele.
2) O inimigo foi configurado com um comportamento 'Bullet' e foi adicionado um 'ImagePoint' para ele. Este novo imagepoint serve para segurar a máscara do lado do inimigo, senão o inimigo sairia fora da plataforma... mesmo funcionando, ficaria estranho pois ele saí e volta... andando um pouco no ar. Na verdade, ficaria muito estranho.
3) A máscara serve para calcular quando ela sairá para fora da plataforma e esta é a razão para tudo funcionar perfeitamente neste mecanismo. Configure a máscara assim:
Não se esqueça de setá-la com a propriedade 'Invisível' no painel propriedades, assim ela não aparece no jogo; e setá-la também como 'Container' do inimigo, para que a máscara seja criada automaticamente em todos os inimigos e, principalmente, permita que você duplique os inimigos ao longo do mapa.
4) Event sheet deve ficar assim:
Portanto, a todo momento que a máscara sair fora da plataforma, ela mudará a direção (Bullet *-1) e espelhará (Mirrored) os dois sprites, consecutivamente. Assim, você pode colocar os inimigos nas plataformas sem usar os blocos limitadores como é feito tradicionalmente. Como a máscara é um container do inimigo, você pode duplicá-lo ao longo do mapa sobre todas as plataformas. Perceba que eu usei o evento 'Overlapping Offset' Event e setei X = 0 e Y = 3 para garantir que os inimigos fiquem sempre em colisão com a plataforma da qual está em cima.
Eu espero ter ajudado em seus projetos com este tutorial e quero dizer muito obrigado ao JJlist por ter me ajudado no fórum com estas questões.
Obrigado novamente!
Até mais!