public PlayerInputActionController(Atom atom,
                                    PlayerInteractionComponent interactionComponent,
                                    ScheduleController scheduleController)
 {
     Atom = atom;
     _interactionComponent = interactionComponent;
     _scheduleController   = scheduleController;
 }
Beispiel #2
0
        public Atom CreatePlayer(string name, GamePosition position)
        {
            var player           = new Atom("Player", '@', position);
            var damagerComponent = new DamagerComponent(player, _eventBus);

            player.AddComponent(damagerComponent);
            var interactionComponent = new PlayerInteractionComponent(player, _levelController, damagerComponent, _random);

            player.AddComponent(interactionComponent);
            var inputActionController = new PlayerInputActionController(player, interactionComponent, _scheduleController);

            player.AddComponent(inputActionController);
            var uniqueComponent = new UniqueAtomComponent(player, name);

            player.AddComponent(uniqueComponent);
            var inventoryComponent = new InventoryComponent(player, _levelController, _eventBus);

            player.AddComponent(inventoryComponent);
            var agentComponent = new AgentComponent(player);

            player.AddComponent(agentComponent);
            return(player);
        }