AS2 uses a lot of attributes that start with an underscore
(._x, ._alpha, etc). In AS3 the underscores are removed
(ie. .x, .alpha), if you see underscores you're probably in
2.
Second, look for variable typing. It's not required in
either version but a lot more people type their variables
in AS3...if variables are being typed (ie. var a:Number =
5) you're probably in 3.
Lastly, look for function return types. The majority of
functions in either language will be returning void...in
AS2 look for a capitol V (function():Void{) and in AS3 that
got lowercased (function():void{).
Another difference is the fact that all events in AS3 are
called with addEventListener function, instead of using
the "onEventName" property of each object.
• To add event listeners in ActionScript 2.0, you use
addListener() in some cases and addEventListener() in
others, whereas in ActionScript 3.0 you use addEventListener
() in all cases.
• There is no event flow in ActionScript 2.0, which
means that the addListener() method can be called only on
the object that broadcasts the event, whereas in
ActionScript 3.0 the addEventListener() method can be
called on any object that is part of the event flow.
• In ActionScript 2.0, event listeners can be either
functions, methods, or objects, whereas in ActionScript
3.0, only functions or methods can be event listeners.
• The on(event) syntax is no longer supported in
ActionScript 3.0, so you cannot attach ActionScript event
code to a movie clip. You can only use addEventListener()
to add an event listener.