Página 1 de 1

Erro <unknown object>

Enviado: Seg Jun 20, 2016 5:36 pm
por Matheus Carvalho
___________________________________________
############################################################################################
FATAL ERROR in
action number 1
of  Step Event0
for object obj_arcade:

Variable <unknown_object>.rot(100012, -2147483648) not set before reading it.
 at gml_Object_obj_arcade_StepNormalEvent_1 (line 1161) -                     rot += asdir_rate
############################################################################################

Alguém sabe por que esse ero acontece? O código que faz esse erro aparecer é esse:

Código: Selecionar todos

                with(obj_asteroid_rockb)
                {
                    rot += asdir_rate
                    if x > room_width + sprite_width/2
                    {
                        x = 0 - sprite_width/2
                    }
                    if x < 0 - sprite_width/2
                    {
                        x = room_width + sprite_width/2
                    }
                    if y < 0 - sprite_height/2
                    {
                        y = room_height + sprite_height/2
                    }
                    if y > room_height + sprite_height/2
                    {
                        y = 0 - sprite_height/2
                    }
                }

Mas se não tiver o "rot += asdir_rate" não acontece nenhum erro.

Mudei o 'rot += asdir_rate' pra 'id.rot += id.asdir_rate' e funcionou. Dentro do 'with' isso deveria ser inútil. Alguém tem ideia do pq disso acontecer?

Re: Erro <unknown object>

Enviado: Seg Jun 20, 2016 9:06 pm
por Rodrigo Santiago
O with IGNORA variaveis locais, ou seja, o  efeito do with não funciona com elas. ( Eu nao sei se rot ai é 'local', declarada dentro da funcao )

No mais, tente declarar no objeto 'obj_asteroid_rockb' a variavel rot no create :

Código: Selecionar todos

rot = 0 ;
Você não deu muitos detalhes , mas pelo que vi isso já pode ajudar

Re: Erro <unknown object>

Enviado: Seg Jun 20, 2016 9:44 pm
por chicoweb
Também pode ser porque não tem aidna nenhuma instancia do obj_asteroid_rockb na room atual

Re: Erro <unknown object>

Enviado: Seg Jun 20, 2016 10:06 pm
por Matheus Carvalho
Rodrigo Santiago escreveu:O with IGNORA variaveis locais, ou seja, o  efeito do with não funciona com elas. ( Eu nao sei se rot ai é 'local', declarada dentro  da funcao )

No mais, tente declarar no objeto 'obj_asteroid_rockb' a variavel rot no create :

Código: Selecionar todos

rot = 0 ;
Você não deu muitos detalhes , mas pelo que vi isso já pode ajudar
Aparentemente era isso. Em uma parte do código que chama o with eu declarei 'rot' com 'var', tirei e funcionou normalmente. Mas é estranho, pq no objeto que ele deveria usar a variável, rot não é local, apenas no que chama a função 'with'. Tanto que funcionou colocando "id" antes.

Obrigado pela ajuda.

EDIT:
chicoweb escreveu:Também pode ser porque não tem aidna nenhuma instancia do obj_asteroid_rockb na room atual
Não era isso, se não daria erro no resto do código também, não só no "rot.."
Mas pelo jeito era o que o Rodrigo falou. Mesmo assim, obrigado pela ajuda :)