Bloco solido ao ter objeto em cima

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Bloco solido ao ter objeto em cima

Mensagem por Gabriel_Silva em Qua 26 Jun 2013, 19:05

Gostaria de saber como faço para deixar um bloco solido quando o personagem estiver sobre ele e quando o mesmo sair de cima do bloco, o mesmo, volta a ser não-solido

Gabriel_Silva

Número de Mensagens : 42
Data de inscrição : 15/05/2013
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://kawek.net/gabrielarrudas

Voltar ao Topo Ir em baixo

Re: Bloco solido ao ter objeto em cima

Mensagem por Thiago_o_programador em Qua 26 Jun 2013, 20:07

Você pode usar a própria variável 'solid', veja:
Código:
if obj_player.y<y&&distance_to_object(obj_player)<1 solid=true;else solid=false;

Thiago_o_programador

Ranking : Nota D
Número de Mensagens : 709
Idade : 19
Data de inscrição : 14/05/2009
Notas recebidas : D - C - D - C
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://www.jogosdahora.maisblog.net

Voltar ao Topo Ir em baixo

Re: Bloco solido ao ter objeto em cima

Mensagem por Gabriel_Silva em Qua 26 Jun 2013, 20:43

cara eu testei isso e place_free

Gabriel_Silva

Número de Mensagens : 42
Data de inscrição : 15/05/2013
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://kawek.net/gabrielarrudas

Voltar ao Topo Ir em baixo

Re: Bloco solido ao ter objeto em cima

Mensagem por Thiago_o_programador em Qua 26 Jun 2013, 20:54

Se você só quer deixar ele sólido quando o player estiver em cima, esse é o código; é só colocar no STEP do bloco, 'place_free()' é apenas uma checagem, assim como 'distance_to_object()' e 'place_meeting()', por exemplo.

Thiago_o_programador

Ranking : Nota D
Número de Mensagens : 709
Idade : 19
Data de inscrição : 14/05/2009
Notas recebidas : D - C - D - C
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://www.jogosdahora.maisblog.net

Voltar ao Topo Ir em baixo

Re: Bloco solido ao ter objeto em cima

Mensagem por Gabriel_Silva em Qua 26 Jun 2013, 21:22

então eu apliquei no step mas por algum motivo o bloco não fica solido

Gabriel_Silva

Número de Mensagens : 42
Data de inscrição : 15/05/2013
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://kawek.net/gabrielarrudas

Voltar ao Topo Ir em baixo

Re: Bloco solido ao ter objeto em cima

Mensagem por Gabriel_Silva em Qua 26 Jun 2013, 21:34

Aqui segue o codigo do personagem caso seja problema com ele:
PS: ignore algumas variaveis globais.

Spoiler:
//gravidade
if place_free(x,y+2){gravity=1} //Se estiver livre de colisões 2 pixels abaixo, a gravidade será 1
else //senão
gravity=0 //a gravidade será 0


//---------------------------------------------------------------


//movimentação direita
if keyboard_check(vk_right) && !keyboard_check(vk_left) {//Se a tecla direita for pressionada
if place_free(x+5,y) {
global.direita = true
parado = false
x+=5 //e se estiver livre de colisões 5 pixels a frente, andará 5 pixels para frente.
if pulo_ativo == 0 { // se não estiver no pulo
sprite_index = sprite_naruto_corre // troca sprite para corrida
image_speed = 0.8 //troca velocidade de animação para mais lento
} else sprite_index = sprite_naruto_pulo // troca sprite para pulo
}
image_xscale=1 //e o sprite olhará para a direita
}


// soltou tecla da direta, e não está no pulo, troca sprite para parado
if keyboard_check_released(vk_right)
if pulo_ativo == 0 {
sprite_index = sprite_naruto_parado
parado = true
}


//---------------------------------------------------------------


//movimentação esquerda
if keyboard_check(vk_left) && !keyboard_check(vk_right) {//Se a tecla esquerda for pressionada
if place_free(x-5,y){
global.direita = false
parado = false
x-=5 //e se estiver livre de colisões 5 pixels atras, voltará 5 pixels.
if pulo_ativo == 0 { // se não estiver no pulo
sprite_index = sprite_naruto_corre // troca sprite para corrida
image_speed = 0.8 //troca velocidade de animação para mais lento
} else sprite_index = sprite_naruto_pulo // troca sprite para pulo
}
image_xscale=-1 //e o sprite olhará para a esquerda
}

// soltou tecla da esquerda, e não está no pulo, troca sprite para parado
if keyboard_check_released(vk_left)
if pulo_ativo == 0 {
sprite_index = sprite_naruto_parado
parado = true
}



//---------------------------------------------------------------


// pulo
if keyboard_check_pressed(vk_up) {//Se a tecla cima for pressionada
if!place_free(x,y+2){
vspeed=-12 //e se não estiver livre de colisões 2 pixels abaixo, a velocidade vertical irá ser -12, ou seja, ele pulará.
pulo_ativo = 1 // indica que está no pulo, para trocar sprite quando acionar teclas esq ou dir
sprite_index = sprite_naruto_pulo // troca sprite para pulo (necessário se pular reto para cima, sem teclas esq ou dir)
}
}


//---------------------------------------------------------------
// plataforma móvel
if place_meeting(x,y+1,object_plataformaFlutuante) {//se estiver encostando no obj_movimento
friction=0.0
hspeed = object_plataformaFlutuante.hspeed
}//vai parar de escorregar e sua velocidade horizontal vai ser igual a do obj_movimento

//---------------------------------------------------------------

//Abaixado

if keyboard_check(vk_down) && !keyboard_check(vk_left) && !keyboard_check(vk_right){
if pulo_ativo == 0 { //Se nao estiver pulando
abaixado = true;
sprite_index = sprite_naruto_abaixado;
}
}

else{
if (keyboard_check_released(vk_down)){
abaixado = false;
parado = true;
sprite_index = sprite_naruto_parado;
}
}
//------------------------------
if global.chakra <= 0{
global.chakra = 0;
}
if global.chakra > 100{
global.chakra = 100;
}

if global.sayan <= 0{
global.sayan = 0;
}
if global.sayan > 100{
global.sayan = 100;
}

Gabriel_Silva

Número de Mensagens : 42
Data de inscrição : 15/05/2013
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://kawek.net/gabrielarrudas

Voltar ao Topo Ir em baixo

Re: Bloco solido ao ter objeto em cima

Mensagem por Gabriel_Silva em Qua 03 Jul 2013, 13:44

fiz progressos mas agora quando ele fica sobre o bloco, o bloco fica solido mas depois volta a ficar não-solido mesmo com o personagem em cima

Gabriel_Silva

Número de Mensagens : 42
Data de inscrição : 15/05/2013
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://kawek.net/gabrielarrudas

Voltar ao Topo Ir em baixo

Re: Bloco solido ao ter objeto em cima

Mensagem por Gabriel_Silva em Sex 05 Jul 2013, 14:45

Alguem pode ajudar? É urgente, fiz progressos mas agora quando o personagem fica sobre o bloco, o bloco fica solido mas depois volta a ficar não-solido mesmo com o personagem em cima e com isso o personagem cai .

Gabriel_Silva

Número de Mensagens : 42
Data de inscrição : 15/05/2013
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://kawek.net/gabrielarrudas

Voltar ao Topo Ir em baixo

Re: Bloco solido ao ter objeto em cima

Mensagem por Tedi Ripper em Sex 05 Jul 2013, 15:08

No step do bloco coloca:
Código:

if PLAYER.y < y then solid=true
else solid=false
só troca o PLAYER pelo nome do objeto player...
simples assim =)

Tedi Ripper

Ranking : Nota C
Número de Mensagens : 765
Idade : 19
Data de inscrição : 21/11/2010
Notas recebidas : C
Reputação : 24
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Bloco solido ao ter objeto em cima

Mensagem por Isaque Onix em Sex 05 Jul 2013, 15:12

no step do objeto que muda:
Player é o nome do seu obj_player!
Código:
if(Player.y<y-sprite_yoffset){solid=true}else{solid=false}

Isaque Onix

Número de Mensagens : 1597
Idade : 23
Data de inscrição : 15/08/2010
Reputação : 147
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://spyreserver.16mb.com

Voltar ao Topo Ir em baixo

Re: Bloco solido ao ter objeto em cima

Mensagem por Conteúdo patrocinado Hoje à(s) 19:17


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum