Página 1 de 1

Criar um background na frente das tiles

Enviado: Dom Nov 06, 2016 7:23 am
por AdrianoPpaula
Fala galerinha! Então, vou explicar o que está acontecendo com meu jogo que não acho solução em lugar nenhum >.<
Bom, estou finalizando uma feature de ataque especial, exatamente como nos jogos de lutas tradicionais, no momento em que o personagem faz o especial um background aparece atras na tela com uma hspeed de 50 e ao terminar o especial a tela volta ao normal . Até ai tudo bem fiz da seguinte maneira

No step de um obj controlador coloquei

Código: Selecionar todos

 if especial=true {
        background_visible[7]=true;
        background_index[7]= (bac_especial)
        background_hspeed[7]=-50; 
}
O problema é que agora adicionei as tiles na room e quando o especial é ativado o bacground fica atras das tiles.
Existe alguma maneira de nessa hora fazer com que o background fique na frente das tiles?

Re: Criar um background na frente das tiles

Enviado: Dom Nov 06, 2016 10:47 am
por JuBraz
Oooi, você pode tentar esse código aqui:
  tile_set_visible(tile, true);  (Se você clicar no link vai ter uma explicação de como usar )

Se não der certo temos mais um monte de funções do game maker:
Funções de Background
Funções de Tiles

Espero que ajude você.

Re: Criar um background na frente das tiles

Enviado: Dom Nov 06, 2016 12:10 pm
por Golden Bunny
O único jeito é criar um objeto e desenhar a background com ele, já que não tem como alterar o depth do background para sobrepor os tiles.
draw_background(back, x, y)

Re: Criar um background na frente das tiles

Enviado: Dom Nov 06, 2016 3:10 pm
por AdrianoPpaula
Poxa no caso se eu usar o draw_background(back, x, y) não conseguiria fazer o efeito de hspeed do background (ou pelo menos n faço ideia de como fazer isso)
estava vendo todas as funções de tiles e background mas não estou conseguindo fazer com que os tile fique invisível ou visível

entendi a lógica no caso se o especial estiver ativo todos os tileset do cenário ficariam invisível e depois que ele acaba volta a ser visível...n to conseguindo fazer isso sempre da um erro estranho >_<

[ EDIT]


Bom consegui resolver, fiz uma gabiarra aqui e deu certo olha só

Código: Selecionar todos

// QUANDO ATIVA O ESPECIAL
        especial=true;
        background_visible[7]=true;
        background_index[7]= (bac_especial)
        background_hspeed[7]=-50;



// STEP DE UM OBJETO CONTROLADOR

var num = tile_get_count();

if especial= true {
    for (var i = 0; i < num; i++;){
        tile_set_visible(tile_get_id(i), false)
    }
} else {
    for (var i = 0; i < num; i++;){
        tile_set_visible(tile_get_id(i), true)
    }


}



Re: Criar um background na frente das tiles

Enviado: Dom Nov 06, 2016 3:45 pm
por All-x
AdrianoPpaula escreveu:Poxa no caso se eu usar o draw_background(back, x, y) não conseguiria fazer o efeito de hspeed do background (ou pelo menos n faço ideia de como fazer isso)
estava vendo todas as funções de tiles e background mas não estou conseguindo fazer com que os tile fique invisível ou visível

entendi a lógica no caso se o especial estiver ativo todos os tileset do cenário ficariam invisível e depois que ele acaba volta a ser visível...n to conseguindo fazer isso sempre da um erro estranho >_<
Entendi, fiz um exemplo:

Exemplo - Background Obj (400 Kb)

É só usar a função draw_background_tiled_ext(). No exemplo segure espaço para simular o especial.

FLWS!