Conectar-se

Esqueci minha senha

Últimos assuntos
» colisão de queda após outra colisão dando problema
Ontem à(s) 18:08 por Lighter

» [Duvida] O que aprender
Ontem à(s) 15:32 por Markituh

» BUILD FAILED: Cannot find BUILD.xml
Ontem à(s) 14:50 por ReisBlender

» Nota de esclarecimento - GMBR voltou!
Sex 23 Jun 2017, 20:33 por Willy

» Regras do Fórum
Sex 23 Jun 2017, 19:02 por GMBR

» Retorno da GMBR!!!
Ter 24 Jan 2017, 15:43 por GMBR

» Jogo Dengue HTML
Seg 30 Nov 2015, 16:17 por guga

» Criando IA Simples para inimigos
Qua 25 Nov 2015, 19:22 por DJDAVYD

» Ordenar variavel em ordem decrescente
Sex 28 Ago 2015, 21:09 por Kodained

» Crio Trilha Sonora para Games!
Qui 27 Ago 2015, 13:50 por Isaias Malafaia

» Problema com Colisão
Qui 27 Ago 2015, 12:30 por The_Game

» Quem quer Uma Engine, e de Quê?
Qui 27 Ago 2015, 09:22 por theguitarmester

» [RESOLV]Como adicionar 2 objetos na mesma posição?
Qua 26 Ago 2015, 11:38 por Bhryenno Kelvyn Carlson

» Sistema de porta!!!
Ter 25 Ago 2015, 21:29 por theguitarmester

» Venda de objetos em Inventário - Multiplicado
Seg 24 Ago 2015, 18:33 por AG Hydra

» Atirar na direção certa
Seg 24 Ago 2015, 09:03 por theguitarmester

» Western Duels
Seg 24 Ago 2015, 07:47 por theguitarmester

» Problemas na compilação android
Dom 23 Ago 2015, 23:43 por Zero.

» Dúvida sobre strings, lendo txt
Sab 22 Ago 2015, 20:31 por Pai véi

» Como estabilizar um som
Sab 22 Ago 2015, 19:03 por Isquilo_Roedor

» Janela Modal
Sab 22 Ago 2015, 09:23 por Pai véi

» Sobre instance Creation Code
Sab 22 Ago 2015, 08:39 por Pai véi

» LudumDare #33
Sex 21 Ago 2015, 21:17 por WellingtonBecker

» Como fazer um temporizador
Sex 21 Ago 2015, 19:02 por Isquilo_Roedor

» GMS sempre salva projeto ao compilar?
Sex 21 Ago 2015, 12:32 por Pai véi

Quem está conectado
15 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 15 Visitantes

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 324 em Ter 05 Out 2010, 13:36

[RESOLVIDO] Possível problema com lógica

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

[RESOLVIDO] Possível problema com lógica

Mensagem por Mateus O de Andrade em Sex 13 Fev 2015, 16:27

Boa tarde Pessoal,
Estou enfrentando um problema no meu código. Talvez apenas um problema de lógica mesmo.

Meu código é o seguinte
No STEP do Objeto que representa o vento
Código:
if place_meeting(x,y,obj_player)
{
//desativa a gravidade
global.gravidade="off"
//Faz o player subir
obj_player.vspeed-=0.3
}
if not place_meeting(x,y,obj_player)
{
//religa a gravidade
global.gravidade="on"
}

Basicamente o que ele faz é simular um ventilador que fará o player ficar subindo enquanto está em contato com o "vento".
Ele está funcionando perfeitamente, até que eu coloque outro destes objetos na room.
Quando uso dois destes objetos na mesma sala, a parte que faz o player subir (a redução da vspeed funciona mas o desligamento da gravidade não. O que faz o player continuar caindo sem amortecer a queda.
Não intendo o por que disso.

Se auguem souber me responder ou precisar de mais informações é só pedir.

Valeu galerinha!!!


Última edição por Mateus O de Andrade em Sex 13 Fev 2015, 17:32, editado 2 vez(es)
avatar
Mateus O de Andrade

Ranking : Nota D
Data de inscrição : 25/03/2014
Número de Mensagens : 399
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por AlexBosquin em Sex 13 Fev 2015, 16:31

tenta só colocar o else as vezes resolve n sei ;-;

Código:

if place_meeting(x,y,obj_player)
{
//desativa a gravidade
global.gravidade="off"
//Faz o player subir
obj_player.vspeed-=0.3
} else
{
//religa a gravidade
global.gravidade="on"
}
avatar
AlexBosquin

Ranking : Nota C
Notas recebidas : C
Data de inscrição : 10/07/2012
Número de Mensagens : 621
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 1
   : 0
   : 0

Ver perfil do usuário http://www.craftstudios.com.br

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por Mateus O de Andrade em Sex 13 Fev 2015, 16:36

Infelizmente Alex, não só não funciona como não pode ter else. Pois eu tenho outros objetos que também usam essa mecânica de desligar a gravidade.
avatar
Mateus O de Andrade

Ranking : Nota D
Data de inscrição : 25/03/2014
Número de Mensagens : 399
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por AlexBosquin em Sex 13 Fev 2015, 16:41

hmmm, tenta fazer um sistema de estados então, tipo assim no create

state = `st_parado`

dai depois e só ir desenvolvendo:
no obj que faz o player voar STEP:
Código:

if place_meeting(x,y,obj_player)
{
      with(obj_player)
      {
            state = `st_voando`
      }
}
agora no obj_player vc define o que acontece quando o estado for st_voando

e outra vc meche com a gravidade só do player nao a gravidade global entende. cada objeto tem que ter sua gravidade o que vc pode fazer caso todos os objetos do game usem a gravidade global é colocar que a propria var, supondo gravidade = global.gravidade_global.

isso resolveria tenta ai e me fala.
avatar
AlexBosquin

Ranking : Nota C
Notas recebidas : C
Data de inscrição : 10/07/2012
Número de Mensagens : 621
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 1
   : 0
   : 0

Ver perfil do usuário http://www.craftstudios.com.br

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por vinians em Sex 13 Fev 2015, 16:45

O problema é que quando vc coloca dois objetos um ANULA o outro pois o player não pode estar em 2 lugares ao mesmo tempo, ou seja a variavel global fai ficar igual arvore de natal piscando ON e OFF. Para funcionar crie uma variavel dentro do player e verifique NO PLAYER se ele placemeeta um objeto vento.
Flws!
avatar
vinians

Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0

Prêmios
   : 0
   : 2
   : 1

Ver perfil do usuário http://xcreatorgames.weebly.com/

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por Alex FC em Sex 13 Fev 2015, 16:47

Realmente a lógica mata.

Você praticamente fez "se e senão" no seu código. Ou seja, se não está colidindo liga gravidade, senão está desliga.

Uma das condições sempre vai estar ocorrendo. Então caso o player não estiver em contato com alguma das instâncias de vento, a variável global.gravidade vai ser "on".

Se você criar 3 ventos, o valor final da variável será o do último vento criado.

Ou seja, você colidiu com o primeiro vento a variável é setada para "off", ai ao mesmo tempo você não está colidindo com o segundo vento então a variável segundo a condição é trocada pra "on". E o mesmo se aplica ao terceiro vento.

Então em vez de usar esse código no vento use este somente no player:

Código:
if place_meeting(x, y, vento)
{

global.gravidade = "off";

vspeed -= 0.3;

}
else
{

global.gravidade = "on";

}

FLWS!
avatar
Alex FC

Ranking : Nota A
Notas recebidas : B A
Data de inscrição : 20/12/2008
Número de Mensagens : 2503
Insígnias de JAM :

Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://redscreensoft.blogspot.com

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por vinians em Sex 13 Fev 2015, 16:50

@Alex FC escreveu:Realmente a lógica mata.

Você praticamente fez "se e senão" no seu código. Ou seja, se não está colidindo liga gravidade, senão está desliga.

Uma das condições sempre vai estar ocorrendo. Então caso o player não estiver em contato com alguma das instâncias de vento, a variável global.gravidade vai ser "on".

Se você criar 3 ventos, o valor final da variável será o do último vento criado.

Ou seja, você colidiu com o primeiro vento a variável é setada para "off", ai ao mesmo tempo você não está colidindo com o segundo vento então a variável segundo a condição é trocada pra "on". E o mesmo se aplica ao terceiro vento.

Então em vez de usar esse código no vento use este somente no player:

Código:
if place_meeting(x, y, vento)
{

global.gravidade = "off";

vspeed -= 0.3;

}
else
{

global.gravidade = "on";

}

FLWS!
Como eu havia dito acima, só não coloquei o código pro nosso amigo se aperfeiçoar hehehe
Flws!
avatar
vinians

Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0

Prêmios
   : 0
   : 2
   : 1

Ver perfil do usuário http://xcreatorgames.weebly.com/

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por Willy em Sex 13 Fev 2015, 16:54

Mas não vai funcionar mesmo... Veja bem, você colocou a seguinte condição no step do vento:
Se o jogador esta aqui{
Desligou a gravidade
}se não estiver{
Ligo a gravidade
}

Por se tratar de a variável global, outros objetos podem alterar a qualquer momento, no caso, o vento extra! Afinal, de acordo com o código, ele tem que ligar a gravidade. investigador

O correto é você tirar o código do vento e colocar no jogador, substituindo o place_metting(x,y,obj_player) por place_metting(x,y,obj_vento).

_________________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo

avatar
Willy

Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1813
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por Alex FC em Sex 13 Fev 2015, 16:54

Se lascar vinians! Happy

Apareceu aviso de nova mensagem, e eu não ia excluir minha tão elaborada mensagem neh?

De qualquer forma quanto mais ajuda melhor.

Edit: Vá se lascar você também Willy!

FLWS!
avatar
Alex FC

Ranking : Nota A
Notas recebidas : B A
Data de inscrição : 20/12/2008
Número de Mensagens : 2503
Insígnias de JAM :

Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://redscreensoft.blogspot.com

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por Willy em Sex 13 Fev 2015, 17:00

Temos aqui em caso curioso... Três respostas com sentido idêntico postadas na mesma hora...

Meu amigo Matheus... Se não for essa a solução, desista do projeto.

_________________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo

avatar
Willy

Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1813
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por Mateus O de Andrade em Sex 13 Fev 2015, 17:15

Meus queridos colegas,
FICOU MUITO FODA ESSA BAGAÇA!!!!!! UAHShaUsu

Só não teve 4 respostas por que eu não salvei minha última Willy UASHuhuAShuashu

Galera, eu SABIA que tinha que ser problema na lógica!! Aos meus quatro colegas (sim, você também Alex ;) ) fiz a correção e AGORA O BIXO VAI PEGAAAAAAAAAAA!!!!
Valeu maninhos muito obrigado!!!!
avatar
Mateus O de Andrade

Ranking : Nota D
Data de inscrição : 25/03/2014
Número de Mensagens : 399
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por Willy em Sex 13 Fev 2015, 17:17

Uh.... Temos dois Alex aqui. :]

_________________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo

avatar
Willy

Ranking : Nota A
Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Número de Mensagens : 1813
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por Mateus O de Andrade em Sex 13 Fev 2015, 17:19

4 Colegas.....AlexBosquin, vinian, Alex FC e Willy...
avatar
Mateus O de Andrade

Ranking : Nota D
Data de inscrição : 25/03/2014
Número de Mensagens : 399
Insígnias de JAM :

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 0
   : 0
   : 0

Ver perfil do usuário

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por Alex FC em Sex 13 Fev 2015, 17:34

Eu tava achando que tu tava louco citando o AlexBosquin. Quando postei minha mensagem, subi e pensei ter só o vinians. Tenho que trocar de óculos kkk

Se lasque também meu xará!

Trancado!

FLWS!
avatar
Alex FC

Ranking : Nota A
Notas recebidas : B A
Data de inscrição : 20/12/2008
Número de Mensagens : 2503
Insígnias de JAM :

Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0

Prêmios
   : 2
   : 1
   : 1

Ver perfil do usuário http://redscreensoft.blogspot.com

Voltar ao Topo Ir em baixo

Re: [RESOLVIDO] Possível problema com lógica

Mensagem por Conteúdo patrocinado


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