Página 1 de 1
Ajuda com botoes
Enviado: Sáb Jun 11, 2016 7:08 pm
por nicoca
alguem poderia me fala como faço pra tipo o carrinho chega perto de uma televisão ai pressiona ma tecla ela liga so que quando faço do jeito que sei ele pode aperte de qual quer lugar como faço pra fazer somente usando o personagem estiver na frente da televisão ?
Re: Ajuda com botoes
Enviado: Sáb Jun 11, 2016 7:48 pm
por Ark
Faz com colisão, se ele colidir com o objeto aperte tal botão e liga.
Re: Ajuda com botoes
Enviado: Sáb Jun 11, 2016 9:29 pm
por nicoca
ta as qual o comando ?
Re: Ajuda com botoes
Enviado: Sáb Jun 11, 2016 9:46 pm
por vikintor
Boa noite
nicoca
No meu caso costumo fazer uma "gambiarra" que geralmente funciona bem:
Alem do player eu crio um outro objeto (com sprite de um quadrado pequeno) vou chamar ele de
obj_collider.
No create do player coloco este código
No step do player coloco algo assim:
Código: Selecionar todos
if keyboard_check(vk_right) {x+=9 obj_collider.x = x+32}
Significa: Ao apertar a tecla da direita o player se movera a nove passos nesta direção, enquanto o objeto
obj_collider será fixado na frente do player a 32 passos a direita.
Se forem as quatro direções:
Código: Selecionar todos
if keyboard_check(vk_right) {x+=9 obj_collider.x = x+32}
if keyboard_check(vk_up) {y-=9 obj_collider.y = y-32}
if keyboard_check(vk_down) {y+=9 obj_collider.y = x+32}
if keyboard_check(vk_left) {x-=9 obj_collider.x = x-32}
Agora no objeto da televisão eu coloco uma colisão entre ele e o
obj_collider
No STEP coloco esse código:
Código: Selecionar todos
if keyboard_check_pressed(ord("Z"))
{
// E aqui vai o seu código da TV ligando e desligando.[/size]
}
Você pode trocar o "Z" por qualquer outra tecla.
Se acaso a TV deva ser ligada pressionando SPACE ficaria assim:
Código: Selecionar todos
if keyboard_check_pressed(vk_space)
{
// E aqui vai o seu código da TV ligando e desligando.
}
Re: Ajuda com botoes
Enviado: Dom Jun 12, 2016 12:12 am
por Ark
voce pode fazer uma verificação de colisão com place_meeting, fazendo uma verificação exata da mascara do player com a televisão. ou criar um colider msm, com as posições do player.
ex : if place_meeting(x+sign(hsp),y,obj_televisão){
//liga e desliga
}
Re: Ajuda com botoes
Enviado: Dom Jun 12, 2016 10:58 am
por ValdeciVieira
Ja fiz esse codigo varias vezes
Re: Ajuda com botoes
Enviado: Dom Jun 12, 2016 1:18 pm
por chicoweb
Código: Selecionar todos
d = 32 // distancia da televisao em que ele pode ligar
if position_meeting(x-d,y,obj_televisao) and keyboard_check_pressed(ord("X")){
// Coloque aqui o cpdigo que ele liga a tv
ligar_tv()
}
No código acima ele liga a com o tecla X e a televisão esta a esquerda dele, se ela estiver em cima, usa no Y
Se tiver em outra posição ai vc calcula ai que e facil
OBS: Eu não uso o place_meeting, acho mil vezes melhor o position.