Exemplo n.º 1
0
 private void _onTorpedoAttackFinished()
 {
     if (this._battleHpGauges != null)
     {
         this._battleHpGauges.Dispose();
     }
     this._battleHpGauges = null;
     if (this._listPSTorpedoWake != null)
     {
         using (List <PSTorpedoWake> .Enumerator enumerator = this._listPSTorpedoWake.GetEnumerator())
         {
             while (enumerator.MoveNext())
             {
                 PSTorpedoWake current = enumerator.get_Current();
                 Object.Destroy(current);
             }
         }
         this._listPSTorpedoWake.Clear();
     }
     this._listPSTorpedoWake = null;
     if (this._actCallback != null)
     {
         this._actCallback.Invoke();
     }
     this.OnSetDestroy();
 }
Exemplo n.º 2
0
        private void _setExplotion()
        {
            FleetType fleetType = (_attackState != AttackState.FriendExplosion) ? FleetType.Enemy : FleetType.Friend;
            int       num       = (fleetType != 0) ? _fBattleship.Count : _eBattleship.Count;

            Vector3[] array = _setHpPosition(fleetType, num);
            for (int i = 0; i < num; i++)
            {
                _battleHpGauges.Show(i, array[i], new Vector3(0.35f, 0.35f, 0.35f), isScale: false);
                BattleHPGauges battleHpGauges = _battleHpGauges;
                int            num2           = i;
                Vector3        damagePosition = _battleHpGauges.GetDamagePosition(i);
                battleHpGauges.SetDamagePosition(num2, new Vector3(damagePosition.x, -525f, 0f));
                _battleHpGauges.PlayHp(i, null);
            }
            _setShinking(fleetType);
            _createExplotion((fleetType == FleetType.Friend) ? true : false);
            if (_listExplosion != null)
            {
                KCV.Utils.SoundUtils.PlaySE((_listExplosion.Count <= 1) ? SEFIleInfos.SE_930 : SEFIleInfos.SE_931);
                Observable.FromCoroutine(_explosionPlay).Subscribe(delegate
                {
                });
            }
            foreach (ParticleSystem item in _listMiss)
            {
                item.Play();
            }
            _playSE(fleetType);
        }
        private int[] addHpGauge(bool isFriend, BattleHPGauges hpGauges)
        {
            BattleCutInCamera cutInCamera = BattleTaskManager.GetBattleCameras().cutInCamera;
            int num      = (!isFriend) ? this._eBattleship.get_Count() : this._fBattleship.get_Count();
            int arg_3A_0 = (!isFriend) ? 1 : 0;

            int[] array = new int[num];
            List <ShipModel_Defender> defenders = this._clsRaigeki.GetDefenders(isFriend, true);

            for (int i = 0; i < num; i++)
            {
                hpGauges.AddInstantiates(cutInCamera.get_transform().get_gameObject(), isFriend, false, true, true);
                array[i] = defenders.get_Item(i).HpBefore;
                if (isFriend)
                {
                    this._dicIsMiss.get_Item(FleetType.Friend)[i]      = false;
                    this._dicIsCriticall.get_Item(FleetType.Friend)[i] = false;
                }
                else
                {
                    this._dicIsMiss.get_Item(FleetType.Enemy)[i]      = false;
                    this._dicIsCriticall.get_Item(FleetType.Enemy)[i] = false;
                }
            }
            return(array);
        }
Exemplo n.º 4
0
        private int[] addHpGauge(bool isFriend, BattleHPGauges hpGauges)
        {
            BattleCutInCamera cutInCamera = BattleTaskManager.GetBattleCameras().cutInCamera;
            int num = (!isFriend) ? _eBattleship.Count : _fBattleship.Count;

            if (isFriend)
            {
            }
            int[] array = new int[num];
            List <ShipModel_Defender> defenders = _clsRaigeki.GetDefenders(isFriend, all: true);

            for (int i = 0; i < num; i++)
            {
                hpGauges.AddInstantiates(cutInCamera.transform.gameObject, isFriend, isLight: false, isT: true, isNumber: true);
                array[i] = defenders[i].HpBefore;
                if (isFriend)
                {
                    _dicIsMiss[FleetType.Friend][i]      = false;
                    _dicIsCriticall[FleetType.Friend][i] = false;
                }
                else
                {
                    _dicIsMiss[FleetType.Enemy][i]      = false;
                    _dicIsCriticall[FleetType.Enemy][i] = false;
                }
            }
            return(array);
        }
        private void _hitExplosion()
        {
            BattleTaskManager.GetBattleField().AlterWaveDirection(FleetType.Friend);
            BattleTaskManager.GetBattleCameras().cutInCamera.enabled = true;
            if (_isAttack)
            {
                _fieldCam.cameraShake.ShakeRot(null);
            }
            for (int i = 0; i < _defenders.Count; i++)
            {
                DamageModel attackDamage = _clsShelling.GetAttackDamage(_defenders[i].TmpId);
                _battleHpGauges.Show(i, _eHpPos[i], new Vector3(0.35f, 0.35f, 0.35f), isScale: false);
                BattleHPGauges battleHpGauges = _battleHpGauges;
                int            num            = i;
                Vector3        damagePosition = _battleHpGauges.GetDamagePosition(i);
                battleHpGauges.SetDamagePosition(num, new Vector3(damagePosition.x, -525f, 0f));
                _battleHpGauges.PlayHp(i, null);
                if (attackDamage.GetHitState() == BattleHitStatus.Miss)
                {
                    _battleHpGauges.PlayMiss(i);
                }
                else if (attackDamage.GetHitState() == BattleHitStatus.Clitical)
                {
                    _battleHpGauges.PlayCritical(i);
                }
            }
            _setShinking();
            int eCnt = (_listExplosion != null) ? _listExplosion.Count : 0;
            int mCnt = (_listMiss != null) ? _listMiss.Count : 0;

            Observable.FromCoroutine(_playExplosion).Subscribe(delegate
            {
                if (eCnt >= mCnt)
                {
                    _isEx = true;
                }
            });
            Observable.FromCoroutine(_playMissSplash).Subscribe(delegate
            {
                if (mCnt >= eCnt)
                {
                    _isEx = true;
                }
            });
            if (_listExplosion == null && _listMiss == null)
            {
                _isEx = true;
            }
            if ((_listExplosion != null) & (_listExplosion.Count > 0))
            {
                KCV.Utils.SoundUtils.PlaySE(SEFIleInfos.Explode);
            }
            if ((_listMiss != null) & (_listMiss.Count > 0))
            {
                KCV.Utils.SoundUtils.PlaySE(SEFIleInfos.BattleTorpedo);
            }
        }
 public void CreateHpGauge(FleetType type)
 {
     if (_battleHpGauges == null)
     {
         _battleHpGauges = new BattleHPGauges();
     }
     for (int i = 0; i < _defenders.Count; i++)
     {
         _battleHpGauges.AddInstantiates(base.gameObject, isFriend: true, isLight: true, isT: false, isNumber: false);
     }
 }
 public void CreateHpGauge(FleetType type)
 {
     if (this._battleHpGauges == null)
     {
         this._battleHpGauges = new BattleHPGauges();
     }
     for (int i = 0; i < this._defenders.get_Count(); i++)
     {
         this._battleHpGauges.AddInstantiates(base.get_gameObject(), true, true, false, false);
     }
 }
		public void CreateHpGauge(FleetType type)
		{
			if (_battleHpGauges == null)
			{
				_battleHpGauges = new BattleHPGauges();
			}
			BattleCutInEffectCamera cutInEffectCamera = BattleTaskManager.GetBattleCameras().cutInEffectCamera;
			UIPanel uIPanel = Resources.Load<UIPanel>("Prefabs/Battle/UI/UICircleHpPanel");
			_uiHpGaugePanel = Util.Instantiate(uIPanel.gameObject, cutInEffectCamera.transform.gameObject).GetComponent<UIPanel>();
			for (int i = 0; i < 6; i++)
			{
				_battleHpGauges.AddInstantiates(_uiHpGaugePanel.gameObject, isFriend: true, isLight: true, isT: false, isNumber: false);
			}
		}
Exemplo n.º 9
0
        public void CreateHpGauge(FleetType type)
        {
            if (this._battleHpGauges == null)
            {
                this._battleHpGauges = new BattleHPGauges();
            }
            BattleCutInEffectCamera cutInEffectCamera = BattleTaskManager.GetBattleCameras().cutInEffectCamera;
            UIPanel uIPanel = Resources.Load <UIPanel>("Prefabs/Battle/UI/UICircleHpPanel");

            this._uiHpGaugePanel = Util.Instantiate(uIPanel.get_gameObject(), cutInEffectCamera.get_transform().get_gameObject(), false, false).GetComponent <UIPanel>();
            for (int i = 0; i < 6; i++)
            {
                this._battleHpGauges.AddInstantiates(this._uiHpGaugePanel.get_gameObject(), true, true, false, false);
            }
        }
Exemplo n.º 10
0
		private void _onTorpedoAttackFinished()
		{
			if (_battleHpGauges != null)
			{
				_battleHpGauges.Dispose();
			}
			_battleHpGauges = null;
			if (_listPSTorpedoWake != null)
			{
				foreach (PSTorpedoWake item in _listPSTorpedoWake)
				{
					UnityEngine.Object.Destroy(item);
				}
				_listPSTorpedoWake.Clear();
			}
			_listPSTorpedoWake = null;
			if (_actCallback != null)
			{
				_actCallback();
			}
			OnSetDestroy();
		}
 private void _createExplotion()
 {
     _listBombCritical = new List <bool>();
     _listExplosion    = new List <ParticleSystem>();
     if (_attackState == AttackState.FriendExplosion)
     {
         for (int i = 0; i < _eBattleship.Count; i++)
         {
             _battleHpGauges.Show(i, _eHpPos[i], new Vector3(0.35f, 0.35f, 0.35f), isScale: false);
             BattleHPGauges battleHpGauges = _battleHpGauges;
             int            num            = i;
             Vector3        damagePosition = _battleHpGauges.GetDamagePosition(i);
             battleHpGauges.SetDamagePosition(num, new Vector3(damagePosition.x, -525f, 0f));
             _battleHpGauges.PlayHp(i, null);
         }
         _setShinking(FleetType.Friend);
         Vector3 position3 = default(Vector3);
         for (int j = 0; j < _fBakuraiModel.Length; j++)
         {
             if (_fBakuraiModel[j] == null || !_fBakuraiModel[j].IsBakugeki())
             {
                 continue;
             }
             ShipModel_Battle defender = _fBakuraiModel[j].Defender;
             int       num2            = (!_fBakuraiModel[j].GetProtectEffect()) ? defender.Index : defender.Index;
             bool      flag            = (_fBakuraiModel[j].GetHitState() == BattleHitStatus.Miss) ? true : false;
             FleetType fleetType       = FleetType.Enemy;
             _dicHitType[num2] = setHitType(fleetType, num2, flag, HitType.Bomb);
             HitType hitType = _dicHitType[num2];
             if (!flag)
             {
                 if (hitType == HitType.Bomb)
                 {
                     Vector3 position  = _eBattleship[num2].transform.position;
                     float   x         = position.x;
                     Vector3 position2 = _eBattleship[num2].transform.position;
                     position3 = new Vector3(x, 3f, position2.z);
                     ParticleSystem val = (!((UnityEngine.Object)BattleTaskManager.GetParticleFile().explosionAerial == null)) ? UnityEngine.Object.Instantiate <ParticleSystem>(BattleTaskManager.GetParticleFile().explosionAerial) : BattleTaskManager.GetParticleFile().explosionAerial;
                     ((Component)val).SetActive(isActive: true);
                     ((Component)val).transform.parent   = BattleTaskManager.GetBattleField().transform;
                     ((Component)val).transform.position = position3;
                     _listExplosion.Add(val);
                     _listBombCritical.Add((_fBakuraiModel[j].GetHitState() == BattleHitStatus.Clitical) ? true : false);
                 }
             }
             else if (hitType == HitType.Miss)
             {
                 Vector3 position4 = _eBattleship[num2].transform.position;
                 float   fMin      = position4.x - 0.5f;
                 Vector3 position5 = _eBattleship[num2].transform.position;
                 float   fLim      = XorRandom.GetFLim(fMin, position5.x + 0.5f);
                 Vector3 position6 = _eBattleship[num2].transform.position;
                 float   fMin2     = position6.z - 1f;
                 Vector3 position7 = _eBattleship[num2].transform.position;
                 float   fLim2     = XorRandom.GetFLim(fMin2, position7.z + 1f);
                 float   num3      = fLim;
                 Vector3 position8 = _eBattleship[num2].transform.position;
                 fLim = ((!(num3 >= position8.x)) ? (fLim - 0.5f) : (fLim + 0.5f));
                 float   num4      = fLim2;
                 Vector3 position9 = _eBattleship[num2].transform.position;
                 fLim2 = ((!(num4 >= position9.z)) ? (fLim2 - 0.5f) : (fLim2 + 0.5f));
                 ParticleSystem val2 = (!((UnityEngine.Object)BattleTaskManager.GetParticleFile().splashMiss == null)) ? UnityEngine.Object.Instantiate <ParticleSystem>(BattleTaskManager.GetParticleFile().splashMiss) : BattleTaskManager.GetParticleFile().splashMiss;
                 ((Component)val2).SetActive(isActive: true);
                 ((Component)val2).transform.parent   = BattleTaskManager.GetBattleField().transform;
                 ((Component)val2).transform.position = new Vector3(fLim, 0f, fLim2);
                 _listMiss.Add(val2);
             }
         }
     }
     if (_listExplosion != null)
     {
         int count = _listExplosion.Count;
     }
     if (_listMiss != null)
     {
         int count2 = _listMiss.Count;
     }
     _isEx = true;
     if (_listExplosion != null)
     {
         KCV.Utils.SoundUtils.PlaySE((_listExplosion.Count <= 1) ? SEFIleInfos.SE_930 : SEFIleInfos.SE_931);
     }
     Observable.FromCoroutine(_explosionPlay).Subscribe(delegate
     {
         _isEx = true;
     });
     Observable.FromCoroutine(_missSplashPlay).Subscribe(delegate
     {
         _isMiss = true;
     });
     _playSE(FleetType.Friend);
 }