this could to the trick to pass functions between classes. but can I make several statements like this in the document class?
in shooter.as (main doc class):
package {
import flash.display.MovieClip;
...etc.
public class shooter extends MovieClip {
... etc.
}
public class test_super extends bomber_class {
super.super_test();
}
}
and in the bomber_class:
package {
import flash.display.MovieClip;
...etc.
public class bomber extends MovieClip {
public function super_test():void {
}
}
You have to be careful which ghosts you want to evoke, how deep in the rabbit-hole you really want to go ;-)
By calling super in every class you create you kind of sabotage the whole encapsulating principle that lies at the center of OOP, also: not every Problem in Programming can be satisfiable solved with inheritance, often an Interface is way better to handle and does the job better.
You have, in my opinion two options here:
1.creating a game that works in a reasonable time or
2.to learn OOP and use the game more as a kind of experimental field. If you want to do the latter a good start and maybe the only Design Pattern every programmer should heard of is the MVC (Model-View-Controller) Concept. (google it)
If you want to do the first (creating the game is your first priority) you might want to abandon all your classes and subclasses and just put everything in one main.as, from what I see the complexity of your game will not need more (no offence intended here), and have a look at the Tweening concept, I guess you use a lot of Enterframe events to drive your objects( like bomber.x +=5, canonshot.y -=3 and so forth).
Flash has its own Tween classes, but there are some open source implementations that are even better, faster and easier to understand (http://www.greensock.com/), you won`t need any timers any more that have to communicate with your objects, because tweens have their timers built in, that are much more flexible than the one Flash offers off-shelf.
Anyway: at this point you will have to make a decision, since I don`t think you can have both.
Good luck!