megaman rx
Novato
Novato
Autor
Mensagens: 13
Registrado em: Qui Mai 30, 2019 1:06 pm
Karma: 8

animated tileset

Dom Jul 14, 2019 11:00 am

bom dia pessoal!
eu estou com problemas em animar,essa parte do animated tileset,nas fases ja ate usei codigo de outras fases e nao ficar bom,ficar piscando,queria saber porque isso alguem saber?
Imagem
Imagem
 
Avatar do usuário
Mega
Programador
Programador
Mensagens: 71
Registrado em: Dom Mai 22, 2016 6:20 pm
Karma: 104

Re: animated tileset

Ter Jul 16, 2019 4:02 pm

Você ta alternando entre as camadas de tiles ?
Se for isso deixe uma camada sempre ativa e a outra você fica desativando e ativando.
1
 
megaman rx
Novato
Novato
Autor
Mensagens: 13
Registrado em: Qui Mai 30, 2019 1:06 pm
Karma: 8

Re: animated tileset

Ter Jul 16, 2019 7:29 pm

por camadas,mas mesmo não ativando as camadas da error
 
Avatar do usuário
Mega
Programador
Programador
Mensagens: 71
Registrado em: Dom Mai 22, 2016 6:20 pm
Karma: 104

Re: animated tileset

Qua Jul 17, 2019 8:05 am

Mostre o código que você esta usando
1
 
megaman rx
Novato
Novato
Autor
Mensagens: 13
Registrado em: Qui Mai 30, 2019 1:06 pm
Karma: 8

Re: animated tileset

Qua Jul 17, 2019 12:53 pm

Imagem
Imagem
codigo: animlenght = 2;
animTime = 6;
animID[0] = tstBrightman;
animID[1] = tstBrightmanAnimated1;
animateOnTransition = true;
animationLayer = 700;
 
megaman rx
Novato
Novato
Autor
Mensagens: 13
Registrado em: Qui Mai 30, 2019 1:06 pm
Karma: 8

Re: animated tileset

Qua Jul 17, 2019 12:55 pm

esse é o codigo dentro do objeto:
event_inherited();
///Used to animate a tileset with its animation frames in different backgrounds
///An object setter is required for animating chunks of tiles(you don't have to set any object if you
///don't want to, just put one in the tileset so its tiles are splited).
///To use you have to set the animID array to the animation frames of the tileset
///and set animationLayer to the layer where the animated tiles are
/*
animLength = how many frames
animTime = interval before change
animID[#] = background frame (Note # goes up from 0 to animLength)
animateOnTransition = will stop animations during the transition

animationLayer = Layer animated tiles start at (your animated tiles should start on this layer)

Note: This only works for tiles on a 16x16 grid


see the example level for how to set this up.
*/

animLength = 2;
animTime = 6;
animateOnTransition = true;
animID[0] = tstBubbleman;
animID[1] = tstBubblemanAnimated1;
animationLayer=700;

timer = 0;
tileID = 0;
init=1;

begin step:
/// This generates tiles all across the levet
/// Note this causes lag at the start of the stage in larger levels
if(init)
{
print("Animating");
var tiles = tile_get_ids_at_depth(animationLayer);
var total = array_length_1d(tiles);
if(total<=0)
{
init=0;
instance_destroy();
exit;
}

for (var i = 0; i < total; i+=1)
{
var tile = tiles[i];
var bg=tile_get_background(tile);
var skip=false;
var k=0;
for(var j=0; j<animLength;j+=1;)
{
if(bg==animID[1])
{
skip=false;
k=j+1;
break;
}
}
if(skip)
continue;
if(k>=animLength)
{
k=0;
}
for(var j=1;j<animLength;j++)
{
tile_add(animID[k], tile_get_left(tile),
tile_get_top(tile), 16,
16, tile_get_x(tile), tile_get_y(tile),
animationLayer + j);
++k;
if(k>=animLength)
{
k=0;
}
}
}
for(var i =1;i<animLength;i++)
tile_layer_hide(animationLayer+i);
init=false;
exit;
}

if (global.frozen)
{
if (!global.switchingSections)
{
exit;
}
else if (!animateOnTransition)
{
exit;
}
}

if (timer < animTime)
{
timer += 1;
}
else
{
timer = 0;
if (tileID < animLength)
{
tile_layer_hide(animationLayer + tileID);
tileID += 1;
if(tileID==animLength)
tileID = 0;
tile_layer_show(animationLayer + tileID);
}
}
 
Avatar do usuário
Mega
Programador
Programador
Mensagens: 71
Registrado em: Dom Mai 22, 2016 6:20 pm
Karma: 104

Re: animated tileset

Qua Jul 17, 2019 1:38 pm

Nossa não entendi nada, onde você pegou esse código ?
E é realmente necessário utiliza-lo ? Sprites são BEM mais simples.
1
 
megaman rx
Novato
Novato
Autor
Mensagens: 13
Registrado em: Qui Mai 30, 2019 1:06 pm
Karma: 8

Re: animated tileset

Qua Jul 17, 2019 1:57 pm

realmente são fácil mas esse código esta dando muito problema mesmo,peguei de um engine pronto,gostaria de saber se tem um modo mais fácil por favor.
 
Avatar do usuário
None
Administrador
Administrador
Mensagens: 268
Registrado em: Sáb Abr 14, 2018 8:11 pm
Karma: 649

Re: animated tileset

Qua Jul 17, 2019 2:25 pm

Seu computador roda o GMS2? Se sim, a forma mais fácil é usando ele.
Cachorro-quente!!!

Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
 
megaman rx
Novato
Novato
Autor
Mensagens: 13
Registrado em: Qui Mai 30, 2019 1:06 pm
Karma: 8

Re: animated tileset

Qua Jul 17, 2019 2:32 pm

O problema é que a versao que,eu estou é a 1.4,mudar para outra,o engine nao vai abrir

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 7 visitantes