Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Alfonsos1 en Noviembre 10, 2009, 09:57:48 pm

Título: Extraño error
Publicado por: Alfonsos1 en Noviembre 10, 2009, 09:57:48 pm
Citar
ERROR in
action number 1
of  Step Event
for object GuerreroGrifo:

In script AtacarDistancia:
Error in code at line 89:
       if((i-COR1)>=-(j-COR2)/2 && (i-COR1) <= -2*(j-COR2) && ((i-COR1)>=MinAlc || (j-COR2)<=-MinAlc) && global.Esp[i,j].COR1 = Selector.COR1 && global.Esp[i,j].COR2 = Selector.COR2)

at position 120: Unknown variable COR1

No entiendo el porque de este error, sobretodo porque aparece en la linea 89 mientras que en las lineas 85 y 87 ya se hacia referencia a la variable COR1

cada objeto tiene su variable local COR1, mientras transcurre el juego esta variable cambia de valor pero nunca es eliminada...

el script se da en un objeto que si tiene la variable COR1 (verificado por el debug mode), no entiendo porque la desconoce a esa variable

lo que mas me molesta es que no siempre se da el error, lo que me dificulta encontrar la causa

LES DEJO EL PEDASO UN PEDAZO DEL CODIGO...

Código: [Seleccionar]
if(global.Accion = 1 && keyboard_check_pressed(ord("S")))
{
 Objetivo = -1;
 if(Direccion = 1)
 {
  for(i=COR1;i<=MaxAlc+COR1;i+=1)
  {
   for(j=COR2;j>=COR2-MaxAlc;j-=1)
   {
    if((i-COR1)>=-(j-COR2)/2 && (i-COR1) <= -2*(j-COR2) && ((i-COR1)>=MinAlc || (j-COR2)<=-MinAlc) && global.Esp[i,j].COR1 = Selector.COR1 && global.Esp[i,j].COR2 = Selector.COR2)
    Objetivo = global.Esp[i,j];
   }
  }
 }

alguna sugenrencia o algo...?
Título: Re: Extraño error
Publicado por: hardraid en Noviembre 11, 2009, 10:36:59 pm
primero para facilitar el trabajo deberias separar un poquito mas el codigo, osea que ese if que te tiro error lo pongas en varias lineas, tambien deberias mostrar el codigo donde se define COR1, osea como se define, como varia, etc. por  que seguramente recibe algun cambio en particular que hace que no pueda leerse, o talvez selector.COR1 de el error. separa un poquito el codigo para encontrar el error y fijate si las variaciones que recibe la variable esten bien definidas.