Conectar-se
Quem está conectado
19 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 19 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 15/05/2013
Número de Mensagens : 42
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuáriohttp://kawek.net/gabrielarrudas

Bloco solido ao ter objeto em cima

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
avatar
Ranking : Nota D
Notas recebidas : D - C - D - C
Data de inscrição : 14/05/2009
Número de Mensagens : 712
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 7

Prêmios
   : 0
   : 0
   : 1
Ver perfil do usuário

Re: Bloco solido ao ter objeto em cima

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;
avatar
Data de inscrição : 15/05/2013
Número de Mensagens : 42
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuáriohttp://kawek.net/gabrielarrudas

Re: Bloco solido ao ter objeto em cima

em Qua 26 Jun 2013, 20:43
cara eu testei isso e place_free
avatar
Ranking : Nota D
Notas recebidas : D - C - D - C
Data de inscrição : 14/05/2009
Número de Mensagens : 712
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 7

Prêmios
   : 0
   : 0
   : 1
Ver perfil do usuário

Re: Bloco solido ao ter objeto em cima

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.
avatar
Data de inscrição : 15/05/2013
Número de Mensagens : 42
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuáriohttp://kawek.net/gabrielarrudas

Re: Bloco solido ao ter objeto em cima

em Qua 26 Jun 2013, 21:22
então eu apliquei no step mas por algum motivo o bloco não fica solido
avatar
Data de inscrição : 15/05/2013
Número de Mensagens : 42
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuáriohttp://kawek.net/gabrielarrudas

Re: Bloco solido ao ter objeto em cima

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;
}
avatar
Data de inscrição : 15/05/2013
Número de Mensagens : 42
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuáriohttp://kawek.net/gabrielarrudas

Re: Bloco solido ao ter objeto em cima

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
avatar
Data de inscrição : 15/05/2013
Número de Mensagens : 42
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1
Ver perfil do usuáriohttp://kawek.net/gabrielarrudas

Re: Bloco solido ao ter objeto em cima

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 .
avatar
Ranking : Sem avaliações
Data de inscrição : 21/11/2010
Número de Mensagens : 775
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 25

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Bloco solido ao ter objeto em cima

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 =)
avatar
Data de inscrição : 15/08/2010
Número de Mensagens : 1598
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 147

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://spyreserver.16mb.com

Re: Bloco solido ao ter objeto em cima

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}
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum