Comunidad de diseño web y desarrollo en internet online

AYUDA: "1180: Llamada a un método posiblemente no definido".

Citar            
MensajeEscrito el 30 Dic 2014 02:19 am
Hola que tal, les comento que estoy creando un videojuego y me salta este error:

"Escena 1, Capa 'as3', Fotograma 1, Línea 14 1180: Llamada a un método ship posiblemente no definido".

Le juro que busque la solución y probé con todo: 'sp' es el nombre de instancia de el MovieClip 'ship' el cual se extiende a una clase llamada 'ship' esta clase es publica (ya se creo como public, también se extiende como un MovieClip no a un Sprite ni nada de eso, osea no hay nada mal. Aclaro que la clase esta dentro de la misma carpeta que el archivo Main), otra solución según busque sería importarla (import flash.display.MovieClip;) o definirlo (var ship: MovieClip = new MovieClip();), cosas que ya hice.
No entiendo -.- el Flash juega conmigo....
Otra cosa que quizás sirva aclarar es que yo antes adhería este personaje con el nombre de 'sp' con 'addchild', ahora lo puse en el escenario porque necesito que este allí y no que se adhiera externamente para usar algunos eventos de colisión, y ademas dentro del movieclip hay varios frames de la animación del personaje (osea dos fotogramas nombrados por acciones y dentro de ellos varios fotogramas de la animación de este personaje).

Desde ya mil gracias a quien pueda ayudarme y aquí les dejo el código:

stop();
import flash.display.Stage;
import flash.display.MovieClip;
import flash.media.Sound;
import flash.display.Sprite;
import flash.events.Event;
import flash.utils.Timer;
import flash.display.Scene;

Mouse.hide();

var sfx_gun: Sound = new sfx ();
var ship: MovieClip = new MovieClip();
var sp: MovieClip = new ship();
var tm:Timer = new Timer(3900);
var pm:Timer = new Timer(16900);

Por Fakundito

9 de clabLevel



 

chrome
Citar            
MensajeEscrito el 30 Dic 2014 07:11 pm
El problema es que el constructor no encuentra la definición de la clase.

var sp: MovieClip = new ship();

La clase ship la tienes creada en un archivo externo en la misma ubicación que el fla?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 30 Dic 2014 08:02 pm
Gracias Jorge por responder,
La clase esta en la misma carpeta como "ship.as" pero cuando me acerco a la clase de ese movieclip en la biblioteca pongo click derecho y le doy a propiedades, en "clase base" donde tendría que estar flash.display.MovieClip esta en blanco y le doy a los botones de al lado y no se linkea -.-

Por Fakundito

9 de clabLevel



 

chrome
Citar            
MensajeEscrito el 30 Dic 2014 10:40 pm
Clase base tiene que estar flash.display.MovieClip, sino está ponlo.
La clase tiene que ser ship.
Si lo instancias manualmente no lo crees por código, usa el nombre de instancia para accederlo

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 31 Dic 2014 12:41 am
Mil gracias Jorge, me has ayudado sido de mucha ayuda. Tuve que hacer lo que tu dijiste y borre las lineas donde los creaba :)

Por Fakundito

9 de clabLevel



 

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.