예제 #1
0
 public TimeSystem(ISystemContainer systemContainer)
 {
     _systemContainer = systemContainer;
     _eventSystem     = systemContainer.EventSystem;
     _playerSystem    = systemContainer.PlayerSystem;
     _statSystem      = systemContainer.StatSystem;
 }
        public LevelLoadingConfiguration(
            GameObject rootUIObject
            , Slider loadingBar
            , Text percentageText
            , ILookAtController lookAtController
            , ICameraController cameraController
            , IPlayerSystem playerSystem)
        {
            Configurations = new List <ISystemConfiguration>
            {
                new SystemConfiguration()
                .AddType <WorldMapLevel>()
                .Calls(c => LoadLevel(WorldMapSceneName)),

                new SystemConfiguration()
                .AddType <BattleGroundLevel>()
                .Calls(c => LoadLevel(BattleGroundSceneName))
            };

            UnityEngine.Object.DontDestroyOnLoad(rootUIObject);

            this.rootUIObject   = rootUIObject;
            this.loadingBar     = loadingBar;
            this.percentageText = percentageText;

            this.lookAtController = lookAtController;
            this.cameraController = cameraController;
            this.playerSystem     = playerSystem;
        }
예제 #3
0
 public AttackClosestEnemyBehaviour(ISystemContainer systemContainer)
 {
     _positionSystem  = systemContainer.PositionSystem;
     _eventRuleSystem = systemContainer.EventSystem;
     _playerSystem    = systemContainer.PlayerSystem;
     _mapSystem       = systemContainer.MapSystem;
     _factionSystem   = systemContainer.FactionSystem;
 }
 public MoveAwayFromPlayerBehaviour(ISystemContainer systemContainer)
 {
     _positionSystem  = systemContainer.PositionSystem;
     _eventRuleSystem = systemContainer.EventSystem;
     _playerSystem    = systemContainer.PlayerSystem;
     _mapSystem       = systemContainer.MapSystem;
     _random          = systemContainer.Random;
 }
예제 #5
0
 public FollowPathBehaviour(ISystemContainer systemContainer)
 {
     _positionSystem  = systemContainer.PositionSystem;
     _eventRuleSystem = systemContainer.EventSystem;
     _playerSystem    = systemContainer.PlayerSystem;
     _mapSystem       = systemContainer.MapSystem;
     _entityEngine    = systemContainer.EntityEngine;
     _messageSystem   = systemContainer.MessageSystem;
     _timeSystem      = systemContainer.TimeSystem;
 }
예제 #6
0
        public BattleManager(IPlayerSystem playerSystem
                             , IOpponentSystem opponentSystem
                             , ICameraController cameraController)
        {
            this.playerSystem     = playerSystem;
            this.opponentSystem   = opponentSystem;
            this.cameraController = cameraController;

            BattleTurn = BattleTurn.Player;
        }
 public ComputerMarbleMechanicsController(IBattleManager battleManager
                                          , IPlayerSystem playerSystem
                                          , IOpponentSystem opponentSystem
                                          , ILevelLoader levelLoader)
 {
     this.battleManager  = battleManager;
     this.opponentSystem = opponentSystem;
     this.levelLoader    = levelLoader;
     this.playerSystem   = playerSystem;
 }
예제 #8
0
 public SuspenseSystem(IPlayerSystem playerSystem
                       , IOpponentSystem opponentSystem
                       , ICameraController cameraController
                       , ITimeController timeController
                       , ILevelLoader levelLoader)
 {
     this.opponentSystem   = opponentSystem;
     this.cameraController = cameraController;
     this.timeController   = timeController;
     this.playerSystem     = playerSystem;
     this.levelLoader      = levelLoader;
 }
예제 #9
0
        public HumanMarbleMechanicsController(IInputManager inputManager
                                              , IPlayerSystem playerSystem
                                              , IOpponentSystem opponentSystem
                                              , ICameraController cameraController
                                              , ILevelLoader levelLoader
                                              , IBattleManager battleManager)
        {
            this.inputManager     = inputManager;
            this.playerSystem     = playerSystem;
            this.opponentSystem   = opponentSystem;
            this.cameraController = cameraController;
            this.levelLoader      = levelLoader;
            this.battleManager    = battleManager;

            MarbleShotStatus = MarbleShotStatus.Idle;
            layerMask        = 1 << LayerMask.NameToLayer(PlaneRayCastLayerName);

            lastEndShot = 0f;
        }
예제 #10
0
        public void SetUp()
        {
            _sender = CreateSkillUser();
            _player = CreatePlayer();

            _systemContainer = Substitute.For <ISystemContainer>();
            _positionSystem  = Substitute.For <IPositionSystem>();
            _playerSystem    = Substitute.For <IPlayerSystem>();
            _targetingSystem = Substitute.For <ITargetingSystem>();
            _mapSystem       = Substitute.For <IMapSystem>();
            _mapCollection   = new Atlas();
            _map             = Substitute.For <IMap>();
            _systemContainer.PositionSystem.ReturnsForAnyArgs(_positionSystem);
            _systemContainer.PlayerSystem.ReturnsForAnyArgs(_playerSystem);
            _systemContainer.MapSystem.ReturnsForAnyArgs(_mapSystem);
            _systemContainer.Random.ReturnsForAnyArgs(new RNG("test seed"));
            _systemContainer.TargetingSystem.ReturnsForAnyArgs(_targetingSystem);
            _mapSystem.MapCollection.ReturnsForAnyArgs(_mapCollection);
            _mapCollection[new MapKey("test")] = _map;

            SetTargetableCells(new MapCoordinate(MAP_KEY, 0, 0));

            _playerSystem.Player.ReturnsForAnyArgs(_player);

            _data = CreateTargetingData();

            UNUSED = new MapCoordinate("UNUSED", 0, 0);
            _callbackCoordinate = UNUSED;

            _callback = m =>
            {
                _callbackCoordinate = m;
            };

            _senderLocation = new MapCoordinate(MAP_KEY, 0, 0);

            SetPosition(_sender, _senderLocation);
        }
예제 #11
0
 public GetBaseStatRule(ISystemContainer systemContainer)
 {
     _playerSystem = systemContainer.PlayerSystem;
     _statSystem   = systemContainer.StatSystem;
     _itemSystem   = systemContainer.ItemSystem;
 }
예제 #12
0
 public GameplayActivity(Rectangle position, Padding padding, IOSystemConfiguration ioSystemConfiguration, IPlayerSystem playerSystem) : base(position, padding)
 {
     _ioSystemConfiguration = ioSystemConfiguration;
     _playerSystem          = playerSystem;
 }
예제 #13
0
 public RendererSystem(IPlayerSystem playerSystem, IActivitySystem activitySystem, IUnifiedRenderer renderer)
 {
     _playerSystem   = playerSystem;
     _activitySystem = activitySystem;
     Renderer        = renderer;
 }