package_20 alternativa.tanks.game.subsystems.eventsystem

This commit is contained in:
Pyogenics
2025-01-27 18:09:36 +00:00
parent 608f91dc7a
commit 9d109fc043
11 changed files with 53 additions and 52 deletions

View File

@@ -12,4 +12,5 @@ package_13 alternativa.tanks.config
package_14 platform.client.a3d.osgi package_14 platform.client.a3d.osgi
package_16 alternativa.protocol.osgi package_16 alternativa.protocol.osgi
package_17 platform.clients.fp10.libraries.alternativaprotocol package_17 platform.clients.fp10.libraries.alternativaprotocol
package_20 alternativa.tanks.game.subsystems.eventsystem
package_22 alternativa.tanks.game.subsystems.inputsystem package_22 alternativa.tanks.game.subsystems.inputsystem

View File

@@ -73,13 +73,13 @@ package alternativa.tanks
import alternativa.tanks.game.GameEvents; import alternativa.tanks.game.GameEvents;
import alternativa.tanks.game.entities.map.IA3DMapComponentListener; import alternativa.tanks.game.entities.map.IA3DMapComponentListener;
import package_20.name_56; import alternativa.tanks.game.subsystems.eventsystem.IEventSystem;
class MapListener implements IA3DMapComponentListener class MapListener implements IA3DMapComponentListener
{ {
private var eventSystem:name_56; private var eventSystem:IEventSystem;
public function MapListener(param1:name_56) public function MapListener(param1:IEventSystem)
{ {
super(); super();
this.eventSystem = param1; this.eventSystem = param1;

View File

@@ -18,8 +18,8 @@ package alternativa.tanks
import package_15.name_55; import package_15.name_55;
import package_18.name_102; import package_18.name_102;
import package_18.name_44; import package_18.name_44;
import package_20.class_11; import alternativa.tanks.game.subsystems.eventsystem.IGameEventListener;
import package_20.name_56; import alternativa.tanks.game.subsystems.eventsystem.IEventSystem;
import package_21.name_77; import package_21.name_77;
import package_21.name_78; import package_21.name_78;
import alternativa.tanks.game.subsystems.inputsystem.KeyboardEventType; import alternativa.tanks.game.subsystems.inputsystem.KeyboardEventType;
@@ -110,7 +110,7 @@ package alternativa.tanks
use namespace alternativa3d; use namespace alternativa3d;
public class TankTestTask extends GameTask implements class_11 public class TankTestTask extends GameTask implements IGameEventListener
{ {
private static const DEAD_TEXTURE_ID:String = "dead"; private static const DEAD_TEXTURE_ID:String = "dead";
@@ -200,7 +200,7 @@ package alternativa.tanks
{ {
var _loc1_:IInput = IInput(var_4.getTaskInterface(IInput)); var _loc1_:IInput = IInput(var_4.getTaskInterface(IInput));
_loc1_.name_94(KeyboardEventType.KEY_DOWN,this.onKeyDown); _loc1_.name_94(KeyboardEventType.KEY_DOWN,this.onKeyDown);
var _loc2_:name_56 = name_56(var_4.getTaskInterface(name_56)); var _loc2_:IEventSystem = IEventSystem(var_4.getTaskInterface(IEventSystem));
_loc2_.addEventListener(name_253.TANK_CLICK,this); _loc2_.addEventListener(name_253.TANK_CLICK,this);
this.var_67 = new FollowCameraController(this.gameKernel.name_5().name_27(),this.gameKernel.method_112().name_246().collisionDetector,name_257.STATIC,_loc1_); this.var_67 = new FollowCameraController(this.gameKernel.name_5().name_27(),this.gameKernel.method_112().name_246().collisionDetector,name_257.STATIC,_loc1_);
this.var_69 = new OrbitCameraController(this.gameKernel.name_5().name_27(),this.gameKernel.method_112().name_246().collisionDetector,name_257.STATIC,_loc1_); this.var_69 = new OrbitCameraController(this.gameKernel.name_5().name_27(),this.gameKernel.method_112().name_246().collisionDetector,name_257.STATIC,_loc1_);

View File

@@ -2,8 +2,8 @@ package alternativa.tanks.game
{ {
import flash.display.Stage; import flash.display.Stage;
import package_18.name_44; import package_18.name_44;
import package_20.name_179; import alternativa.tanks.game.subsystems.eventsystem.EventSystem;
import package_20.name_56; import alternativa.tanks.game.subsystems.eventsystem.IEventSystem;
import alternativa.tanks.game.subsystems.inputsystem.InputSystem; import alternativa.tanks.game.subsystems.inputsystem.InputSystem;
import alternativa.tanks.game.subsystems.inputsystem.IInput; import alternativa.tanks.game.subsystems.inputsystem.IInput;
import package_26.name_100; import package_26.name_100;
@@ -47,7 +47,7 @@ package alternativa.tanks.game
private var inputSystem:InputSystem; private var inputSystem:InputSystem;
private var eventSystem:name_179; private var eventSystem:EventSystem;
private var logicSystem1:name_177; private var logicSystem1:name_177;
@@ -77,7 +77,7 @@ package alternativa.tanks.game
this.var_4.addTask(this.var_44); this.var_4.addTask(this.var_44);
this.inputSystem = new InputSystem(INPUT_SYSTEM_PRIORITY,stage); this.inputSystem = new InputSystem(INPUT_SYSTEM_PRIORITY,stage);
this.var_4.addTask(this.inputSystem); this.var_4.addTask(this.inputSystem);
this.eventSystem = new name_179(EVENT_SYSTEM_PRIORITY); this.eventSystem = new EventSystem(EVENT_SYSTEM_PRIORITY);
this.var_4.addTask(this.eventSystem); this.var_4.addTask(this.eventSystem);
this.logicSystem1 = new name_177(LOGIC_SYSTEM_1_PRIORITY,this); this.logicSystem1 = new name_177(LOGIC_SYSTEM_1_PRIORITY,this);
this.var_4.addTask(this.logicSystem1); this.var_4.addTask(this.logicSystem1);
@@ -163,7 +163,7 @@ package alternativa.tanks.game
return this.inputSystem; return this.inputSystem;
} }
public function name_61() : name_56 public function name_61() : IEventSystem
{ {
return this.eventSystem; return this.eventSystem;
} }

View File

@@ -1,10 +1,10 @@
package package_20 package alternativa.tanks.game.subsystems.eventsystem
{ {
import alternativa.tanks.game.GameTask; import alternativa.tanks.game.GameTask;
import package_108.name_373; import package_108.name_373;
import package_108.name_374; import package_108.name_374;
public class name_179 extends GameTask implements name_56 public class EventSystem extends GameTask implements IEventSystem
{ {
private var eventQueue1:name_374; private var eventQueue1:name_374;
@@ -12,7 +12,7 @@ package package_20
private var var_213:Object; private var var_213:Object;
public function name_179(priority:int) public function EventSystem(priority:int)
{ {
super(priority); super(priority);
this.eventQueue1 = new name_374(); this.eventQueue1 = new name_374();
@@ -20,7 +20,7 @@ package package_20
this.var_213 = new Object(); this.var_213 = new Object();
} }
public function addEventListener(eventType:String, listener:class_11) : void public function addEventListener(eventType:String, listener:IGameEventListener) : void
{ {
var listeners:name_374 = this.var_213[eventType]; var listeners:name_374 = this.var_213[eventType];
if(listeners == null) if(listeners == null)
@@ -31,7 +31,7 @@ package package_20
listeners.add(listener); listeners.add(listener);
} }
public function removeEventListener(eventType:String, listener:class_11) : void public function removeEventListener(eventType:String, listener:IGameEventListener) : void
{ {
var listeners:name_374 = this.var_213[eventType]; var listeners:name_374 = this.var_213[eventType];
if(listeners != null) if(listeners != null)
@@ -42,18 +42,18 @@ package package_20
public function dispatchEvent(eventType:String, eventData:*) : void public function dispatchEvent(eventType:String, eventData:*) : void
{ {
this.eventQueue1.add(name_476.create(eventType,eventData)); this.eventQueue1.add(GameEvent.create(eventType,eventData));
} }
override public function run() : void override public function run() : void
{ {
var event:name_476 = null; var event:GameEvent = null;
var listeners:name_374 = null; var listeners:name_374 = null;
var iterator:name_373 = null; var iterator:name_373 = null;
var listener:class_11 = null; var listener:IGameEventListener = null;
var tmp:name_374 = this.eventQueue1; var tmp:name_374 = this.eventQueue1;
this.eventQueue1 = this.eventQueue2; this.eventQueue1 = this.eventQueue2;
for(this.eventQueue2 = tmp; (event = name_476(this.eventQueue2.poll())) != null; ) for(this.eventQueue2 = tmp; (event = GameEvent(this.eventQueue2.poll())) != null; )
{ {
listeners = this.var_213[event.eventType]; listeners = this.var_213[event.eventType];
if(listeners != null) if(listeners != null)
@@ -61,7 +61,7 @@ package package_20
iterator = listeners.listIterator(); iterator = listeners.listIterator();
while(iterator.hasNext()) while(iterator.hasNext())
{ {
listener = class_11(iterator.next()); listener = IGameEventListener(iterator.next());
listener.method_146(event.eventType,event.eventData); listener.method_146(event.eventType,event.eventData);
} }
} }

View File

@@ -1,29 +1,29 @@
package package_20 package alternativa.tanks.game.subsystems.eventsystem
{ {
public class name_476 public class GameEvent
{ {
private static var pool:name_476; private static var pool:GameEvent;
public var eventType:String; public var eventType:String;
public var eventData:*; public var eventData:*;
public var next:name_476; public var next:GameEvent;
public function name_476(eventType:String, eventData:*) public function GameEvent(eventType:String, eventData:*)
{ {
super(); super();
this.eventType = eventType; this.eventType = eventType;
this.eventData = eventData; this.eventData = eventData;
} }
public static function create(eventType:String, eventData:*) : name_476 public static function create(eventType:String, eventData:*) : GameEvent
{ {
if(pool == null) if(pool == null)
{ {
return new name_476(eventType,eventData); return new GameEvent(eventType,eventData);
} }
var item:name_476 = pool; var item:GameEvent = pool;
pool = item.next; pool = item.next;
item.next = null; item.next = null;
item.eventType = eventType; item.eventType = eventType;

View File

@@ -0,0 +1,12 @@
package alternativa.tanks.game.subsystems.eventsystem
{
public interface IEventSystem
{
function addEventListener(param1:String, param2:IGameEventListener) : void;
function removeEventListener(param1:String, param2:IGameEventListener) : void;
function dispatchEvent(param1:String, param2:*) : void;
}
}

View File

@@ -0,0 +1,8 @@
package alternativa.tanks.game.subsystems.eventsystem
{
public interface IGameEventListener
{
function method_146(param1:String, param2:*) : void;
}
}

View File

@@ -1,8 +0,0 @@
package package_20
{
public interface class_11
{
function method_146(param1:String, param2:*) : void;
}
}

View File

@@ -1,12 +0,0 @@
package package_20
{
public interface name_56
{
function addEventListener(param1:String, param2:class_11) : void;
function removeEventListener(param1:String, param2:class_11) : void;
function dispatchEvent(param1:String, param2:*) : void;
}
}

View File

@@ -4,9 +4,9 @@ package package_71
import alternativa.tanks.game.EntityComponent; import alternativa.tanks.game.EntityComponent;
import alternativa.tanks.game.GameKernel; import alternativa.tanks.game.GameKernel;
import alternativa.tanks.game.GameEvents; import alternativa.tanks.game.GameEvents;
import package_20.class_11; import alternativa.tanks.game.subsystems.eventsystem.IGameEventListener;
public class name_278 extends EntityComponent implements class_11 public class name_278 extends EntityComponent implements IGameEventListener
{ {
private static var stateEvents:Dictionary; private static var stateEvents:Dictionary;