1067: Implicit coercion of a value of type GameOverScreen to an unrelated type Class.
1188: Illegal assignment to class GameOverScreen.
in DocumentClass.as line 22
this is my code
package
{
import flash.display.MovieClip;
public class DocumentClass extends MovieClip
{
public var playScreen:Game;
public var gameOverScreen:GameOverScreen;
public function DocumentClass()
{
playScreen = new Game;
playScreen.addEventListener(AvatarEvent.DEAD, onAvatarDeath);
playScreen.x = 0;
playScreen.y = 0;
addChild(playScreen);
}
public function onAvatarDeath(avatarEvent:AvatarEvent):void
{
gameOverScreen:GameOverScreen = new GameOverScreen(); // this is line 22
gameOverScreen.x = 0;
gameOverScreen.y = 0;
addChild(gameOverScreen);
playScreen = null;
}
public function restartGame():void
{
playScreen = new Game;
playScreen.addEventListener(AvatarEvent.DEAD, onAvatarDeath);
playScreen.x = 0;
playScreen.y = 0;
addChild(playScreen);
gameOverScreen = null;
}
}
}
If i keep the word var on line 22 it works
var gameOverScreen:GameOverScreen = new GameOverScreen();
When i remove it it shows the above error.
I have defined it above
public var gameOverScreen:GameOverScreen;
Why it needs to be defined twice ? I don’t understand.