[Resolvido]Duvida com instance_create

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

Resolvido [Resolvido]Duvida com instance_create

Mensagem por henriquebr em Seg 20 Ago 2012, 19:15

Tipo galera, coloquei isso no step do obj_player:
Código:
if global.arma1=1 then {
if keyboard_check_pressed(vk_space){instance_create(obj_player.view_xview/2,view_yview/2,obj_bala_arma1)}}
Acho q todo mundo deve saber que a finalidade desse codigo é checar se a global.arma1 é = a 1, se for o player tem a função do key_press barra de espaço, ue cria a bala e bla bla bla.... mas so ue ao player se mecher a bala nao segue ele, e o pior, a bala nao sai diretamente dele, ele sao la nos cafundé da room! alguem sabe o erro?


Última edição por henriquebr em Ter 21 Ago 2012, 19:18, editado 1 vez(es)

henriquebr

Ranking : Nota D
Número de Mensagens : 421
Data de inscrição : 03/10/2011
Notas recebidas : D+B+D
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por Kapoty em Seg 20 Ago 2012, 19:24

henriquebr escreveu:
if global.arma1=1 then {
if keyboard_check_pressed(vk_space){instance_create(obj_player.view_xview/2,view_yview/2,obj_bala_arma1)}}

O código esta com um erro nesta parte que coloquei bold, Não sai do player por que você não esta setando o x e o y do player e sim o da view, Para corrigir basta fazer isto :

No lugar de instance_create(obj_player.view_xview/2,view_yview/2,obj_bala_arma1)

Coloque instance_create(obj_player.x,obj_player.y,obj_bala_arma1)

Assim ele criara a bala de acordo com o x e y do player mas você pode fazer uns ajustes assim :

obj_player.x > obj_player.x+5

Neste caso ele ira criar a bala no x do player + 5, Digamos que o player esta na posição do x em 100, Ai ele criara a bala na posição do x 105.
Espero ter ajudado flw

Kapoty

Ranking : Nota B
Número de Mensagens : 635
Data de inscrição : 05/11/2011
Notas recebidas : E + D + C + B + D +B + A
Reputação : 22
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 1

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por henriquebr em Seg 20 Ago 2012, 19:32

vlw kapoty vc e o cara deu certinho, mas aproveitando o topico eu queria perguntar outra coisa: como fazer pra se o player estiver indo pra cima e atirar, a bala vai pra cima, pra esquerda e atirar ele ir pra esquerda, e assim por diante? pq ele so atira pra direita ainda....

henriquebr

Ranking : Nota D
Número de Mensagens : 421
Data de inscrição : 03/10/2011
Notas recebidas : D+B+D
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por Kapoty em Seg 20 Ago 2012, 20:09

Bom... Para isso você terá que checar para que lado o player esta andando, Para isso você terá que salvar a direção em uma var... Vou dar um exemplo :

Create:

Código:
direcao=""

Step:

Código:
if keyboard_check(vk_up) {codigo de andar;direcao="cima"}
if keyboard_check(vk_down) {codigo de andar;direcao="baixo"}
if keyboard_check(vk_left) {codigo de andar;direcao="esquerda"}
if keyboard_check(vk_right) {codigo de andar;direcao="direita"}
Código:
if global.arma1=1 then {
if keyboard_check_pressed(vk_space)
{
if direcao="direita" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.hspeed=5}
if direcao="esquerda" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.hspeed=-5}
if direcao="cima" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.vspeed=-5}
if direcao="baixo" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.vspeed=5}
}
}

Espero que tenha entendido, Mas e claro que você terá que adaptar o código de acordo com o seu projeto.
flw

Kapoty

Ranking : Nota B
Número de Mensagens : 635
Data de inscrição : 05/11/2011
Notas recebidas : E + D + C + B + D +B + A
Reputação : 22
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 1

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por Mr. Kaleb em Seg 20 Ago 2012, 21:39

Só uma observação, caso queira diminuir o código, use um switch, definindo os cases como as direções.

Mr. Kaleb

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

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por henriquebr em Ter 21 Ago 2012, 13:26

kapoty escreveu:Bom... Para isso você terá que checar para que lado o player esta andando, Para isso você terá que salvar a direção em uma var... Vou dar um exemplo :

Create:

Código:
direcao=""

Step:

if keyboard_check(vk_up) {codigo de andar;direcao="cima"}
if keyboard_check(vk_down) {codigo de andar;direcao="baixo"}
if keyboard_check(vk_left) {codigo de andar;direcao="esquerda"}
if keyboard_check(vk_right) {codigo de andar;direcao="direita"}[/code]
[code]if global.arma1=1 then {
if keyboard_check_pressed(vk_space)
{
if direcao="direita" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.hspeed=5}
if direcao="esquerda" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.hspeed=-5}
if direcao="cima" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.vspeed=-5}
if direcao="baixo" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.vspeed=5}
}
}

Espero que tenha entendido, Mas e claro que você terá que adaptar o código de acordo com o seu projeto.
flw

hmm, vle vou tentar aki, mas eu nao entendi o que essa parte ai queeu destaquei no codigo do step (esse tal "oo") scratch

henriquebr

Ranking : Nota D
Número de Mensagens : 421
Data de inscrição : 03/10/2011
Notas recebidas : D+B+D
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por Kapoty em Ter 21 Ago 2012, 13:27

henriquebr escreveu:
kapoty escreveu:Bom... Para isso você terá que checar para que lado o player esta andando, Para isso você terá que salvar a direção em uma var... Vou dar um exemplo :

Create:

Código:
direcao=""

Step:

Código:
if keyboard_check(vk_up) {codigo de andar;direcao="cima"}
if keyboard_check(vk_down) {codigo de andar;direcao="baixo"}
if keyboard_check(vk_left) {codigo de andar;direcao="esquerda"}
if keyboard_check(vk_right) {codigo de andar;direcao="direita"}
Código:
if global.arma1=1 then {
if keyboard_check_pressed(vk_space)
{
if direcao="direita" {[b]oo[/b]=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);[b]oo[/b].hspeed=5}
if direcao="esquerda" {[b]oo[/b]=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);[b]oo[/b].hspeed=-5}
if direcao="cima" {[b]oo[/b]=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);[b]oo[/b].vspeed=-5}
if direcao="baixo" {[b]oo[/b]=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);[b]oo[/b].vspeed=5}
}
}

Espero que tenha entendido, Mas e claro que você terá que adaptar o código de acordo com o seu projeto.
flw

hmm, vle vou tentar aki, mas eu nao entendi o que essa parte ai queeu destaquei no codigo do step (esse tal "oo") scratch

Digamos que este "oo" e a variável que usei para salvar o id do obj_bala_arma1 que acabei de criar para que possamos setar a sua hspeed!

Kapoty

Ranking : Nota B
Número de Mensagens : 635
Data de inscrição : 05/11/2011
Notas recebidas : E + D + C + B + D +B + A
Reputação : 22
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 1

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por henriquebr em Ter 21 Ago 2012, 14:02

ata, tipo na esquerda e direita funfo blzinha, mas pra cima e pra baixo ele atira pras diagonais, e eu quero que ele va reto para cima....

henriquebr

Ranking : Nota D
Número de Mensagens : 421
Data de inscrição : 03/10/2011
Notas recebidas : D+B+D
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por Kapoty em Ter 21 Ago 2012, 14:57

Ops erro meu troque o código para :
Step:

Código:
if keyboard_check(vk_up) {codigo de andar;direcao="cima"}
if keyboard_check(vk_down) {codigo de andar;direcao="baixo"}
if keyboard_check(vk_left) {codigo de andar;direcao="esquerda"}
if keyboard_check(vk_right) {codigo de andar;direcao="direita"}
Código:
if global.arma1=1 then {
if keyboard_check_pressed(vk_space)
{
if direcao="direita" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.hspeed=5} else
if direcao="esquerda" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.hspeed=-5} else
if direcao="cima" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.vspeed=-5} else
if direcao="baixo" {oo=instance_create(obj_player.x,obj_player.y,obj_bala_arma1);oo.vspeed=5}
}
}

Kapoty

Ranking : Nota B
Número de Mensagens : 635
Data de inscrição : 05/11/2011
Notas recebidas : E + D + C + B + D +B + A
Reputação : 22
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 1

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por henriquebr em Ter 21 Ago 2012, 18:41

ainda ta atirando na diagonal (quando vai pra cima e pra baixo)

henriquebr

Ranking : Nota D
Número de Mensagens : 421
Data de inscrição : 03/10/2011
Notas recebidas : D+B+D
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por Kapoty em Ter 21 Ago 2012, 19:02

Entao o problema deve estar no create do obj_bala_arma1, Va no create e tire o hspeed=? e me fale se resolveu!

Kapoty

Ranking : Nota B
Número de Mensagens : 635
Data de inscrição : 05/11/2011
Notas recebidas : E + D + C + B + D +B + A
Reputação : 22
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 1

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por henriquebr em Ter 21 Ago 2012, 19:18

aeee, era isso msm, vlw kapoty, (add no msn pra se eu tiver + duvidas: henriqueacb@hotmail.com :p) topico resolvido!

henriquebr

Ranking : Nota D
Número de Mensagens : 421
Data de inscrição : 03/10/2011
Notas recebidas : D+B+D
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por Kapoty em Ter 21 Ago 2012, 19:26

De nada! Qualquer coisa tamo ai flw
Ah e já enviei o convite!

Kapoty

Ranking : Nota B
Número de Mensagens : 635
Data de inscrição : 05/11/2011
Notas recebidas : E + D + C + B + D +B + A
Reputação : 22
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 1

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Duvida com instance_create

Mensagem por Conteúdo patrocinado Hoje à(s) 09:44


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