public PublicGameEngineInterface() { // This is a singleton accessable from anyone in GameEngine, but stash a copy since we use it alot m_engine = new CoreGameEngine(); m_engine.TextOutputEvent += new TextOutputFromGame(s => TextOutputEvent(s)); m_engine.PlayerDiedEvent += new PlayerDied(() => PlayerDiedEvent()); m_engine.RangedAttackEvent += new RangedAttack((a, type, d, targetAtEnd) => RangedAttackEvent(a, type, d, targetAtEnd)); m_debugEngine = new DebugEngine(m_engine); m_actionEngine = new PlayerActionEngine(m_engine); m_gameState = new GameStateInterface(m_engine); m_targetting = new TargettingUtils(m_engine); }
public TargettingUtils(CoreGameEngine engine) { m_engine = engine; }
internal static void SetupCoreGameEngineInterface(CoreGameEngine engine) { Instance = new CoreGameEngineInterface(engine); }
private CoreGameEngineInterface(CoreGameEngine engine) { m_engine = engine; CoreGameEngineInstance.Instance = this; }
public void Dispose() { if (m_engine != null) m_engine.Dispose(); m_engine = null; }
public GameStateInterface(CoreGameEngine engine) { m_engine = engine; }
internal DebugEngine(CoreGameEngine engine) { m_engine = engine; }
internal PlayerActionEngine(CoreGameEngine engine) { m_engine = engine; }