コード例 #1
0
 public void Initialize(IPlayerLoopProcessor playerLoopProcessor, Transform cameraTransform)
 {
     PlayerLoopSubscriptionController.Initialize(this, playerLoopProcessor);
     PlayerLoopSubscriptionController.SubscribeToLoop();
     GameTransform = cameraTransform;
     RegisterAsTransformOwner();
 }
コード例 #2
0
 public void Shutdown()
 {
     isShuttingDown = true;
     PlayerLoopSubscriptionController.Shutdown();
     _inputListener   = null;
     playerController = null;
 }
コード例 #3
0
        public void Initialize(Stat stat, StatType type)
        {
            if (_isSubscribed)
            {
                UnsubscribeFromSource();
            }
            _stat         = stat;
            icon.sprite   = MasterManager.Instance.LinksHolder.StatsLibrary.GetStatIcon(type);
            _maxValue     = _stat.MaxValue;
            _minValue     = _stat.MinValue;
            _currentValue = _stat.CurrentValue;
            if (_stat is RegenerativeStat statRegen)
            {
                _regenStat  = statRegen;
                _regenValue = _regenStat.CurrentRegenerationAmount;
                regenText.gameObject.SetActive(true);
            }

            SubscribeForSource();

            UpdateValueText();
            UpdateRegenText();

            if (changeColor)
            {
                content.color = Color.Lerp(lowColor, fullColor, content.fillAmount);
            }

            _cameraTransform = MasterManager.Instance.LinksHolder.CameraController.GameTransform;
            _selfTransform   = transform;
            PlayerLoopSubscriptionController.Initialize(this, MasterManager.Instance.LinksHolder.PlayerLoopProcessor);
            PlayerLoopSubscriptionController.SubscribeToLoop();
        }
コード例 #4
0
 public void Initialize(IPlayerLoopProcessor playerLoopProcessor, Ship playerShip, Camera camera)
 {
     PlayerLoopSubscriptionController = new PlayerLoopSubscriptionController();
     PlayerLoopSubscriptionController.Initialize(this, playerLoopProcessor);
     PlayerLoopSubscriptionController.SubscribeToLoop();
     ship    = playerShip;
     _camera = camera;
 }
コード例 #5
0
 public void Shutdown()
 {
     isShuttingDown = true;
     PlayerLoopSubscriptionController.Shutdown();
     StopTracking();
     DisposeTransform();
     GameTransform = null;
     Target        = null;
 }
コード例 #6
0
 public void Initialize(IPlayer player, Transform view, IPlayerLoopProcessor loopProcessor, GameObject defaultIcon)
 {
     this.player   = player;
     iconPrefab    = defaultIcon;
     GameTransform = view;
     RegisterAsTransformOwner();
     PlayerLoopSubscriptionController.Initialize(this, loopProcessor);
     PlayerLoopSubscriptionController.SubscribeToLoop();
     iconPrefab = Resources.Load("Prefabs/UI/DefaultRadarIcon", typeof(GameObject)) as GameObject;
 }
コード例 #7
0
 public void Shutdown()
 {
     PlayerLoopSubscriptionController?.Shutdown();
     DisposeTransform();
     player = null;
     foreach (var radarObject in radarObjects.Values)
     {
         radarObject?.Shutdown();
     }
     radarObjects.Clear();
 }
コード例 #8
0
 public virtual void Shutdown()
 {
     DisposeTransform();
     GameTransform = null;
     UnsubscribeCurrentSpeedChange();
     UnsubscribeJumpPowerChange();
     PlayerLoopSubscriptionController.Shutdown();
     OnPositionChange = null;
     effectController?.RemoveAllInstantly();
     StatHolder.Clear();
 }
コード例 #9
0
 public virtual void Initialize(Transform gameTransform, IPlayerLoopProcessor playerLoopProcessor, StatsDictionary stats, float jumpPower)
 {
     GameTransform = gameTransform;
     RegisterAsTransformOwner();
     MaxMoveSpeed = 50f;
     JumpPower    = jumpPower;
     InitializeStats(stats);
     SubscribeForSpeedChange();
     SubscribeJumpPowerChange();
     PlayerLoopSubscriptionController.Initialize(this, playerLoopProcessor);
     PlayerLoopSubscriptionController.SubscribeToLoop();
     if (effectController == null)
     {
         effectController = new EffectController(this);
     }
 }
コード例 #10
0
 public void Shutdown()
 {
     PlayerLoopSubscriptionController?.Shutdown();
     _blacklist.Clear();
     _axesInputs.Clear();
 }
コード例 #11
0
 public void Initialize(IPlayerLoopProcessor loopProcessor)
 {
     PlayerLoopSubscriptionController?.Initialize(this, loopProcessor);
     PlayerLoopSubscriptionController?.SubscribeToLoop();
 }
コード例 #12
0
 private void OnDestroy()
 {
     UnsubscribeFromSource();
     PlayerLoopSubscriptionController.Shutdown();
 }
コード例 #13
0
 public void Stop()
 {
     PlayerLoopSubscriptionController.UnsubscribeFromLoop();
 }
コード例 #14
0
 public void Start()
 {
     playerController = MasterManager.Instance.LinksHolder.ActivePlayer;
     PlayerLoopSubscriptionController.SubscribeToLoop();
 }
コード例 #15
0
 public void Initialize()
 {
     _inputListener       = MasterManager.Instance.LinksHolder.InputListener;
     _playerLoopProcessor = MasterManager.Instance.LinksHolder.PlayerLoopProcessor;
     PlayerLoopSubscriptionController.Initialize(this, _playerLoopProcessor);
 }