quinta-feira, 19 de janeiro de 2012

[Thyago] Mini mapa

Qualidade
Nome: mini mapa
Blogueiro: Thyago
Descrissao: Depois de alguns testes venho trazer um modo bem prático de criar aqueles mapas que ficam no canto da tela.
Versao: Lite e Pro
Foto(s): (vc escolhe os objetos que vao aparecer e eles aparecem dentro do quadro)


Tutorial:
.Para começar vamos criar o obj_mapa, crie uma sprite retangular,de preferência proporcional ao tamanho da room, por exemplo: largura da sprite dez vezes menor que a largura room e altura dez vezes menor que a altura da room, mas isso é só uma sugestão.

.Coloque a sprite retangular no obj_mapa, e crie os seguintes códigos no evento Draw do obj_mapa:

//O código abaixo faz o obj_mapa manter a mesma posição original na tela, mesmo movendo a //view
codigo no draw do obj_mapa:
Código:
x=view_xview[0]+xstart;
y=view_yview[0]+ystart;


//Como estamos usando o draw o obj_mapa, temos que desenhar sua sprite na tela para o sprite não //ficar invisivel
codigo no draw do obj_mapa:
Código:
draw_sprite(sprite_index,0,x,y)


//Vamos criar duas variáveis para sabermos as proporções horizontal e vertical que o mapa //vai representar, para isso dividimos o tamanho do mapa pelo da room.

codigo no draw do obj_mapa:

Código:
hproporcao=sprite_width/room_width;
vproporcao=sprite_height/room_height;


.Agora vamos fazer com que os personaens sejam representados no mini mapa, coloque esse codigo em cada objeto que aparecera no mini mapa:

codigos no create dos objetos que aparecerao no mini mapa:

Código:
mapa=true
, então damos um comando para todos os objetos, primeiro checa se existe a variável mapa, se existir checa se o valor dela é true, se for true ele desenha o personagem no mapa, para ele sumir do mapa basta mudar o valor da variavel mapa para false.

codigo no draw do obj_mapa:

Código:
with(all)
{
if(variable_local_exists('mapa'))
{
if(mapa=true)
{
draw_sprite_stretched(sprite_index,0,obj_mapa. x+(x*obj_mapa.hproporcao),obj_mapa.y+(y*obj_mapa.vproporcao),16,16)
}
}
}


.Pronto, você pode mudar o tamanho da room, mudar o tamanho do mapa, mudar o local do mapa e ele sempre vai funcionar mantendo as proporções corretas.

até mais.
Creditos: Thyago

Nenhum comentário:

Postar um comentário