GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18

» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30

» Como ajustar velocidade de cada frame da animação no game maker
por Ralphed Qui 18 Abr 2024, 18:28

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39


Qual o problema ?

4 participantes

Ir para baixo

Qual o problema ? Empty Qual o problema ?

Mensagem por Zero. Qua 27 Jun 2012, 17:59

O obj_bixo_select ele é criado 16 pixeis a mais que o anterior quando o player colide com o obj_create.
No create dele está :
Código:

hp=100
eng=10
exaust=false

No step :

exe 1
Código:

if place_meeting(x,y,obj_select1)
{global.sclt[1]=id}

if place_meeting(x,y,obj_select2)
{global.sclt[2]=id}

if place_meeting(x,y,obj_select3)
{global.sclt[3]=id}

if place_meeting(x,y,obj_select4)
{global.sclt[4]=id}

if place_meeting(x,y,obj_select5)
{global.sclt[5]=id}

exe 2
Código:

if instance_exists(proteus) // está é a criatura que será criada a partir das variaveis do obj_bixo_select
{
if global.monster.destroy=id // id em que se está o obj_bixo_select ( global.sclt[1~5] )
{exaust=proteus.exaust
hp=proteus.hp
eng=proteus.eng}
}

Entaum ao mudar um valor de um obj_bixo_select e depois criar outro, todos os obj_bixo_select ficam com o valor das variáveis iguais ao que foi criado (ou seja volta tudo ao início), sendo que as varáveis são locais, ainda sim isso acontece.
Não conssigo ver o erro *0* .

Obs : pra criar uma nova obj_bixo_select (ou para o player poder colider com o obj_create) o proteus não pode estar na room.

THX

EDIT ---------------------------------------------------------------------------------------------------------------

Observei que muda não quando é criado mas , sempre !
quando um novo é criado todos ficam com as variaveis iguais a este, e quando mudo uma variavel em um, a mesma variavel é alterada em todos da msm forma. Ou seja o problema ésta no step eu acho.


Última edição por FlyAway em Sex 29 Jun 2012, 11:24, editado 3 vez(es)
Zero.
Zero.

Data de inscrição : 19/08/2010
Reputação : 47
Número de Mensagens : 1300
Prêmios : Qual o problema ? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Qual o problema ? Empty Re: Qual o problema ?

Mensagem por Eudes - Hyo Qua 27 Jun 2012, 18:30

eae Fly. não consegui entender muito bem, mas..

se todos as instancias do mesmo objeto ficam com as variáveis iguais quando vc muda a variável de uma delas, vc pode tentar usar o ' self. ' antes do nome da variável.
Mas isso se o obj que estiver fazendo essa alteração for o próprio 'obj_bixo_select' né.
Não sei bem se é isso que ocorre.
Eudes - Hyo
Eudes - Hyo

Games Ranking : Nota B

Notas recebidas : E + B+B
Data de inscrição : 02/06/2009
Reputação : 27
Número de Mensagens : 513
Prêmios : Qual o problema ? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Qual o problema ? Empty Re: Qual o problema ?

Mensagem por Zero. Qua 27 Jun 2012, 19:45

O self não funcionou.
Isso é estranho acontecer porque os objs possuem variaveis locais e suas ids são diferentes =/ .
Zero.
Zero.

Data de inscrição : 19/08/2010
Reputação : 47
Número de Mensagens : 1300
Prêmios : Qual o problema ? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Qual o problema ? Empty Re: Qual o problema ?

Mensagem por Thiago_o_programador Qua 27 Jun 2012, 19:58

tente colocar a colisão no outro objeto, (o q a variavel vai alterar e que possui varias instancias)
Thiago_o_programador
Thiago_o_programador

Games Ranking : Nota D

Notas recebidas : D - C - D - C
Data de inscrição : 14/05/2009
Reputação : 7
Número de Mensagens : 713
Prêmios : Qual o problema ? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 1

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

Ir para o topo Ir para baixo

Qual o problema ? Empty Re: Qual o problema ?

Mensagem por Zero. Qua 27 Jun 2012, 20:03

Num pode. porque esta obj ela faz parte da HUD e não é um objeto da room como o char e o inimigo. E isso não alteraria em nada ao meu ver.

Eu dei um edit no post, é uma informação que vale ressaltar.



Última edição por FlyAway em Qua 27 Jun 2012, 20:14, editado 2 vez(es)
Zero.
Zero.

Data de inscrição : 19/08/2010
Reputação : 47
Número de Mensagens : 1300
Prêmios : Qual o problema ? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Qual o problema ? Empty Re: Qual o problema ?

Mensagem por Thiago_o_programador Qua 27 Jun 2012, 20:12

tente criar uma variavel que segure o valor inicial logo no create, e depois trabalhe só com ela, pois tera os valores iniciais... (Se for o q eu to pensando, ainda não entendi bem...)
Thiago_o_programador
Thiago_o_programador

Games Ranking : Nota D

Notas recebidas : D - C - D - C
Data de inscrição : 14/05/2009
Reputação : 7
Número de Mensagens : 713
Prêmios : Qual o problema ? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 1

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

Ir para o topo Ir para baixo

Qual o problema ? Empty Re: Qual o problema ?

Mensagem por Zero. Qua 27 Jun 2012, 20:15

Descobri onde está o problema !
Está na hora de criar o proteus
Olha no obj_create_char // obj que cria o proteus
Create:

Código:

if obj_selected.select=1 // esses obj_selected.select é pra saber qual está selecionado.
{with instance_create(x,y-4,global.summon)
{destroy=global.sclt[1]
hp=global.sclt[1].hp
eng=global.sclt[1].eng
exaust=global.sclt[1].exaust}}

if obj_selected.select=2
{with instance_create(x,y-4,global.summon)
{destroy=global.sclt[2]
hp=global.sclt[2].hp
eng=global.sclt[2].eng
exaust=global.sclt[2].exaust}}

if obj_selected.select=3
{with instance_create(x,y-4,global.summon)
{destroy=global.sclt[3]
hp=global.sclt[3].hp
eng=global.sclt[3].eng
exaust=global.sclt[3].exaust}}

if obj_selected.select=4
{with instance_create(x,y-4,global.summon)
{destroy=global.sclt[4]
hp=global.sclt[4].hp
eng=global.sclt[4].eng
exaust=global.sclt[4].exaust}}

if obj_selected.select=5
{with instance_create(x,y-4,global.summon)
{destroy=global.sclt[5]
hp=global.sclt[5].hp
eng=global.sclt[5].eng
exaust=global.sclt[5].exaust}}

Ai ele vai criar o global.summon (no caso o proteus) e se o obj_bixo_select que estiver selecianado for o 1~5 ele vai receber as variaveis que estavam salvas no próprio obj_bixo_select. As variaveis hp,eng e exaust do obj_bixo_select mudam e as outras não mudam (elas ficam sim com valores diferentes), porém o obj_create_char está criando o proteus com as variaveis do ultimo obj_bixo_select que foi alterado, oque não pra acontecer. E agora onde está este erro na criação ?

EDIT ------------------------------------------------------------------------------------

Descobri mais uma coisa, o problema está só na criação do 1º.
Quando eu mudo algo no 1º ele ao invés de mudar as suas váriaveis muda as variáveis do ultimo que foi criado. e também quando crio o proteus apartir do 1º ele não cria a partir do 1º e sim do ultimo que foi criado.
OBS : isso só acontece com o 1º . O resto ta blz Happy , tão salvando suas variaveis normalmente.
OBS2 : Pra checar em qual lugar está, há 5 objs diferentes em sequencia de 16 em 16 pixels eles tem o nome de obj_select1~5. Todos os obj_select de 2~5 são parents do 1º.
Zero.
Zero.

Data de inscrição : 19/08/2010
Reputação : 47
Número de Mensagens : 1300
Prêmios : Qual o problema ? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Qual o problema ? Empty Re: Qual o problema ?

Mensagem por saim Qui 28 Jun 2012, 11:13

Cara, eu devo estar com muito sono, ou então você ainda não conseguiu descrever direito o que está acontecendo.
Faz o seguinte, como os códigos já estão aí, faça uma descrição de como será o jogo. Como acontecem as colisões, o que é cada objeto, essas coisas. Como se fosse uma descrição pro jogador, mas com os nomes dos objetos. Ah, e não consegui entender o que são exe1 e exe2; são exemplos de código ou dois códigos pra usar no mesmo step?

Ah, e esse último código pode ser substituído por
Código:
with instance_create(x,y-4,global.summon)
{destroy=global.sclt[obj_selected.select]
hp=global.sclt[obj_selected.select].hp
eng=global.sclt[obj_selected.select].eng
exaust=global.sclt[obj_selected.select].exaust}
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Qual o problema ? Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

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

Ir para o topo Ir para baixo

Qual o problema ? Empty Re: Qual o problema ?

Mensagem por Zero. Qui 28 Jun 2012, 11:27

Acontece assim :

Sao criados 5 objs em sequência de 16 em 16 pixels (fazem parte da hud tb) os seus nomes são obj_select1 ao 5 (obj_select1 , obj_select2 ... obj_select5)
Entaum quando eu capturo um bixo (no caso proteus) é criado um obj_bixo_select nas cordenadas do obj_selected (esse obj_select é um crossair pra saber qual slot (qual obj_select) está selecionado) sendo assim quando eu invocar a criatura que eu capturei (proteus) ele vai ser criado com as variaveis hp,eng e exaust do obj_bixo_select (o msm vai guardar as variaveis do proteus pra quando eu voltar ele de pois chama-lo novamente ele venha com o hp,eng,exaust igual a como ele voltou) entaum enquanto a variavel destroy do proteus for igual a do obj_bixo_select ele vai está igualando suas variaveis a do bixo em campo, e quando eu volta-lo as variaveis no obj_bixo_select continuaram lá.
O problema que ocorre é que quando eu capturo um proteus no slot1 e depois capturo outro em qualquer slot , o obj_create_char (oque cria o proteus) ele cria o proteus que está no slot1 igual ao do ultimo slot e as variaveis que mudam não são a do slot1 mas sim do ultimo slot que foi criado. Ou seja quando um obj_bixo_select está no slot1 é como se ele estivesse no ultimo slot em que o obj_bixo_select foi criado (ou seja outro que eu capturei) entaum o slot1 está igual ao ultimo slot onde há um obj_bixo_select.

OBS : Todos os obj_select de 2 a 5 são parents do obj_select1
Zero.
Zero.

Data de inscrição : 19/08/2010
Reputação : 47
Número de Mensagens : 1300
Prêmios : Qual o problema ? Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

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

Ir para o topo Ir para baixo

Qual o problema ? Empty Re: Qual o problema ?

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo


 
Permissões neste sub-fórum
Não podes responder a tópicos