public ActorSolarSystem(IActorRef actorEngine, IActorRef actorTextOutput, SolarSystem ss) { _actorEngine = actorEngine; _actorTextOutput = actorTextOutput; ss.Actor = Self; _solarSystemC = new SolarSystemController(ss, this, actorTextOutput); _tickCompleteCmd = new MessageEngineSSCompletedCommand(_solarSystemC.SolarSystemId); setupChildMarketActors(ss); setupChildAgentActors(ss); Receive<MessageTick>(msg => receiveTick(msg)); Receive<MessageShipCommand>(msg => receiveCommandForShip(msg)); Receive<MessageEngineAgCompletedCommand>(msg => receiveAgentCompletedMessage(msg)); //_actorTextOutput.Tell("Solar System initialised : " + _solarSystem.Name); }
private void receiveSSCompleted(MessageEngineSSCompletedCommand msg) { if (_runState == TickEngineRunState.RunningMax) { _numberOfIncompleteSS--; if (_numberOfIncompleteSS <= 0) { _numberOfIncompleteSS = _subscribedActorSolarSystems.Count(); receiveTick(null); } } }