コード例 #1
0
        private void onInitBackground()
        {
            BattleShips battleShips = BattleTaskManager.GetBattleShips();

            battleShips.SetShipDrawType(FleetType.Enemy, ShipDrawType.Normal);
            battleShips.SetStandingPosition(StandingPositionType.OneRow);
            battleShips.SetLayer(Generics.Layers.ShipGirl);
            BattleField battleField = BattleTaskManager.GetBattleField();

            battleField.ResetFleetAnchorPosition();
            BattleTaskManager.GetPrefabFile().DisposeProdCommandBuffer();
            BattleCameras battleCameras = BattleTaskManager.GetBattleCameras();

            battleCameras.SwitchMainCamera(FleetType.Friend);
            battleCameras.InitEnemyFieldCameraDefault();
            BattleFieldCamera friendFieldCamera = battleCameras.friendFieldCamera;
            BattleFieldCamera enemyFieldCamera  = battleCameras.enemyFieldCamera;

            battleCameras.isFieldDimCameraEnabled = false;
            friendFieldCamera.ResetMotionBlur();
            friendFieldCamera.clearFlags  = 1;
            friendFieldCamera.cullingMask = battleCameras.GetDefaultLayers();
            enemyFieldCamera.cullingMask  = battleCameras.GetEnemyCamSplitLayers();
            battleCameras.SetVerticalSplitCameras(true);
            friendFieldCamera.ReqViewMode(CameraActor.ViewMode.NotViewModeCtrl);
            enemyFieldCamera.ReqViewMode(CameraActor.ViewMode.NotViewModeCtrl);
            Vector3 position = battleField.dicCameraAnchors.get_Item(CameraAnchorType.OneRowAnchor).get_Item(FleetType.Friend).get_position();

            friendFieldCamera.get_transform().set_position(new Vector3(-51f, 8f, 90f));
            friendFieldCamera.get_transform().set_localRotation(Quaternion.Euler(new Vector3(10.5f, 70f, 0f)));
            Vector3 position2 = battleField.dicCameraAnchors.get_Item(CameraAnchorType.OneRowAnchor).get_Item(FleetType.Enemy).get_position();

            enemyFieldCamera.get_transform().set_position(new Vector3(-51f, 8f, -90f));
            enemyFieldCamera.get_transform().set_rotation(Quaternion.Euler(new Vector3(10.5f, 111f, 0f)));
            battleField.isEnemySeaLevelActive = true;
            battleField.AlterWaveDirection(FleetType.Friend, FleetType.Friend);
            battleField.AlterWaveDirection(FleetType.Enemy, FleetType.Enemy);
            BattleShips battleShips2 = BattleTaskManager.GetBattleShips();

            battleShips2.RadarDeployment(false);
            battleShips2.SetBollboardTarget(false, enemyFieldCamera.get_transform());
            battleShips2.SetTorpedoSalvoWakeAngle(true);
            BattleCutInEffectCamera cutInEffectCamera = BattleTaskManager.GetBattleCameras().cutInEffectCamera;
            UITexture component = cutInEffectCamera.get_transform().FindChild("TorpedoLine/OverlayLine").GetComponent <UITexture>();

            if (component != null)
            {
                component.alpha = 1f;
            }
            BattleTaskManager.GetBattleCameras().fieldDimCamera.maskAlpha = 0f;
            using (Dictionary <int, UIBattleShip> .ValueCollection.Enumerator enumerator = BattleTaskManager.GetBattleShips().dicFriendBattleShips.get_Values().GetEnumerator())
            {
                while (enumerator.MoveNext())
                {
                    UIBattleShip current = enumerator.get_Current();
                    current.billboard.billboardTarget = BattleTaskManager.GetBattleCameras().friendFieldCamera.get_transform();
                }
            }
            using (Dictionary <int, UIBattleShip> .ValueCollection.Enumerator enumerator2 = BattleTaskManager.GetBattleShips().dicEnemyBattleShips.get_Values().GetEnumerator())
            {
                while (enumerator2.MoveNext())
                {
                    UIBattleShip current2 = enumerator2.get_Current();
                    current2.billboard.billboardTarget = BattleTaskManager.GetBattleCameras().enemyFieldCamera.get_transform();
                }
            }
        }
コード例 #2
0
        private void startMotionBlur()
        {
            BattleCutInEffectCamera cutInEffectCamera = BattleTaskManager.GetBattleCameras().cutInEffectCamera;

            cutInEffectCamera.motionBlur.enabled = true;
        }
コード例 #3
0
        private void _createExplosion()
        {
            _listBombCritical = new List <bool>();
            _listExplosion    = new List <ParticleSystem>();
            _listMiss         = new List <ParticleSystem>();
            Vector3 position5 = default(Vector3);

            for (int i = 0; i < _defenders.Count; i++)
            {
                DamageModel attackDamage = _clsShelling.GetAttackDamage(_defenders[i].TmpId);
                int         key          = (!attackDamage.GetProtectEffect()) ? _defenders[i].Index : _defenders[i].Index;
                if (attackDamage.GetHitState() != 0)
                {
                    _isAttack = true;
                    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;
                    Transform transform = ((Component)val).transform;
                    Vector3   position  = _eBattleship[key].transform.position;
                    float     x         = position.x;
                    Vector3   position2 = _eBattleship[key].transform.position;
                    transform.position = new Vector3(x, 3f, position2.z);
                    _listExplosion.Add(val);
                    _listBombCritical.Add((attackDamage.GetHitState() == BattleHitStatus.Clitical) ? true : false);
                }
                else
                {
                    int       iLim  = XorRandom.GetILim(0, 2);
                    Vector3[] array = new Vector3[3]
                    {
                        new Vector3(5f, 0f, -5f),
                        new Vector3(-3f, 0f, 5f),
                        new Vector3(4f, 0f, -7f)
                    };
                    Vector3 position3 = _eBattleship[key].transform.position;
                    float   x2        = position3.x + array[iLim].x;
                    Vector3 position4 = _eBattleship[key].transform.position;
                    position5 = new Vector3(x2, 0f, position4.z + array[iLim].z);
                    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 = position5;
                    val2.Stop();
                    _listMiss.Add(val2);
                }
            }
        }
コード例 #4
0
        public static BattlePhase NextPhase(BattlePhase iPhase)
        {
            BattleManager battleManager = BattleTaskManager.GetBattleManager();

            if (battleManager == null)
            {
                return(BattlePhase.BattlePhase_BEF);
            }
            BattlePhase result = BattlePhase.BattlePhase_BEF;

            switch (iPhase)
            {
            case BattlePhase.BattlePhase_ST:
                result = BattlePhase.FleetAdvent;
                break;

            case BattlePhase.FleetAdvent:
                if (battleManager is SortieBattleManager || battleManager is RebellionBattleManager)
                {
                    BattleManager battleManager2 = BattleTaskManager.GetBattleManager();
                    if (GetStarBattleFleetAdventNextPhase(battleManager2.WarType) == BattlePhase.NightCombat)
                    {
                        result = BattlePhase.NightCombat;
                        break;
                    }
                }
                result = ((!battleManager.IsExistSakutekiData()) ? ((!battleManager.IsExistCommandPhase()) ? ((!battleManager.IsExistKoukuuData()) ? ((!battleManager.IsExistShienData()) ? ((!battleManager.IsExistKaimakuData()) ? ((!battleManager.IsExistHougekiPhase_Day()) ? ((!battleManager.IsExistRaigekiData()) ? BattlePhase.WithdrawalDecision : BattlePhase.TorpedoSalvo) : BattlePhase.Shelling) : BattlePhase.OpeningTorpedoSalvo) : BattlePhase.SupportingFire) : BattlePhase.AerialCombat) : BattlePhase.Command) : BattlePhase.Detection);
                break;

            case BattlePhase.Detection:
                result = ((!battleManager.IsExistCommandPhase()) ? ((!battleManager.IsExistKoukuuData()) ? ((!battleManager.IsExistShienData()) ? ((!battleManager.IsExistKaimakuData()) ? ((!battleManager.IsExistHougekiPhase_Day()) ? ((!battleManager.IsExistRaigekiData()) ? BattlePhase.WithdrawalDecision : BattlePhase.TorpedoSalvo) : BattlePhase.Shelling) : BattlePhase.OpeningTorpedoSalvo) : BattlePhase.SupportingFire) : BattlePhase.AerialCombat) : BattlePhase.Command);
                break;

            case BattlePhase.Command:
                result = ((!battleManager.IsExistKoukuuData()) ? ((!battleManager.IsExistShienData()) ? ((!battleManager.IsExistKaimakuData()) ? ((!battleManager.IsExistHougekiPhase_Day()) ? ((!battleManager.IsExistRaigekiData()) ? BattlePhase.WithdrawalDecision : BattlePhase.TorpedoSalvo) : BattlePhase.Shelling) : BattlePhase.OpeningTorpedoSalvo) : BattlePhase.SupportingFire) : BattlePhase.AerialCombat);
                break;

            case BattlePhase.AerialCombat:
                result = ((!battleManager.IsExistShienData()) ? ((!battleManager.IsExistKaimakuData()) ? ((!battleManager.IsExistHougekiPhase_Day()) ? ((!battleManager.IsExistRaigekiData()) ? BattlePhase.WithdrawalDecision : BattlePhase.TorpedoSalvo) : BattlePhase.Shelling) : BattlePhase.OpeningTorpedoSalvo) : BattlePhase.SupportingFire);
                break;

            case BattlePhase.AerialCombatSecond:
                result = ((!battleManager.IsExistShienData()) ? ((!battleManager.IsExistKaimakuData()) ? ((!battleManager.IsExistHougekiPhase_Day()) ? ((!battleManager.IsExistRaigekiData()) ? BattlePhase.WithdrawalDecision : BattlePhase.TorpedoSalvo) : BattlePhase.Shelling) : BattlePhase.OpeningTorpedoSalvo) : BattlePhase.SupportingFire);
                break;

            case BattlePhase.SupportingFire:
                result = ((!battleManager.IsExistKaimakuData()) ? ((!battleManager.IsExistHougekiPhase_Day()) ? ((!battleManager.IsExistRaigekiData()) ? BattlePhase.WithdrawalDecision : BattlePhase.TorpedoSalvo) : BattlePhase.Shelling) : BattlePhase.OpeningTorpedoSalvo);
                break;

            case BattlePhase.OpeningTorpedoSalvo:
                result = ((!battleManager.IsExistHougekiPhase_Day()) ? ((!battleManager.IsExistRaigekiData()) ? BattlePhase.WithdrawalDecision : BattlePhase.TorpedoSalvo) : BattlePhase.Shelling);
                break;

            case BattlePhase.Shelling:
                result = ((!battleManager.IsExistRaigekiData()) ? BattlePhase.WithdrawalDecision : BattlePhase.TorpedoSalvo);
                break;

            case BattlePhase.TorpedoSalvo:
                result = BattlePhase.WithdrawalDecision;
                break;

            case BattlePhase.WithdrawalDecision:
                result = ((!battleManager.HasNightBattle()) ? BattlePhase.Result : BattlePhase.NightCombat);
                break;

            case BattlePhase.NightCombat:
                result = BattlePhase.Result;
                break;

            case BattlePhase.Result:
                result = BattlePhase.ClearReward;
                break;

            case BattlePhase.FlagshipWreck:
                result = BattlePhase.MapOpen;
                break;

            case BattlePhase.EscortShipEvacuation:
                result = BattlePhase.AdvancingWithdrawal;
                break;

            case BattlePhase.ClearReward:
                if (battleManager.GetEscapeCandidate() != null)
                {
                }
                result = BattlePhase.MapOpen;
                break;
            }
            return(result);
        }
コード例 #5
0
 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);
 }
コード例 #6
0
 public ProdObservedShellingAttack()
 {
     _prodObservedShellingCutIn = ProdObservedShellingCutIn.Instantiate(PrefabFile.Load <ProdObservedShellingCutIn>(PrefabFileInfos.BattleProdObservedShellingCutIn), BattleTaskManager.GetBattleCameras().cutInCamera.transform);
 }
コード例 #7
0
        private bool _createTorpedoWakeOnes(bool isFriend)
        {
            FleetType key = (!isFriend) ? FleetType.Enemy : FleetType.Friend;
            Dictionary <int, UIBattleShip> dictionary  = (!isFriend) ? BattleTaskManager.GetBattleShips().dicEnemyBattleShips : BattleTaskManager.GetBattleShips().dicFriendBattleShips;
            Dictionary <int, UIBattleShip> dictionary2 = (!isFriend) ? BattleTaskManager.GetBattleShips().dicFriendBattleShips : BattleTaskManager.GetBattleShips().dicEnemyBattleShips;

            if (_dicIsAttack[key])
            {
                for (int i = 0; i < dictionary.Count; i++)
                {
                    ShipModel_Battle shipModel = dictionary[i].shipModel;
                    ShipModel_Battle attackTo  = _clsTorpedo.GetAttackTo(shipModel);
                    if (shipModel != null && attackTo != null)
                    {
                        Vector3 position = dictionary[i].transform.position;
                        Vector3 vector;
                        if (isFriend)
                        {
                            Vector3 position2 = dictionary2[attackTo.Index].transform.position;
                            vector = new Vector3(position2.x, position.y, position.z - 1f);
                        }
                        else
                        {
                            Vector3 position3 = dictionary2[attackTo.Index].transform.position;
                            vector = new Vector3(position3.x, position.y, position.z + 1f);
                        }
                        Vector3            injection    = vector;
                        RaigekiDamageModel attackDamage = _clsTorpedo.GetAttackDamage(attackTo.Index, (!isFriend) ? true : false);
                        int     key2      = (!attackDamage.GetProtectEffect(shipModel.TmpId)) ? attackTo.Index : 0;
                        float   num       = (!isFriend) ? (-20f) : 20f;
                        float   num2      = (attackDamage.GetHitState(shipModel.TmpId) != 0) ? 0f : (-3f);
                        Vector3 position4 = dictionary2[key2].transform.position;
                        _onesTorpedoWake = _instantiateTorpedo(target: new Vector3(position4.x + num2, position4.y, position4.z + num), injection: injection, index: i, _time: 2.65f, isDet: false, isMiss: false, isD: true);
                        _setCameraPosition(injection.x);
                        _straightTarget = position4;
                        Vector3 pointOfGaze = dictionary2[key2].pointOfGaze;
                        _straightTargetGazeY = pointOfGaze.y;
                        break;
                    }
                }
            }
            return((_onesTorpedoWake != null) ? true : false);
        }
コード例 #8
0
 public ProdTranscendenceAttack()
 {
     this._prodTranscendenceCutIn = ProdTranscendenceCutIn.Instantiate(PrefabFile.Load <ProdTranscendenceCutIn>(PrefabFileInfos.BattleProdTranscendenceCutIn), BattleTaskManager.GetBattleCameras().cutInEffectCamera.get_transform());
 }
コード例 #9
0
        public void Init()
        {
            this._basePosition = new Vector3[]
            {
                new Vector3(101f, -481f, 0f),
                new Vector3(38f, -533f, 0f),
                new Vector3(105f, -419f, 0f),
                new Vector3(-39f, -581f, 0f),
                new Vector3(110f, -362f, 0f),
                new Vector3(-120f, -634f, 0f)
            };
            this._baseNum = new int[]
            {
                2,
                3,
                1,
                4,
                0,
                5
            };
            float num = 0.8f + 0.1f * (float)this._baseNum[this._shipNum];

            base.get_transform().set_localPosition(this._basePosition[this._shipNum]);
            base.get_transform().set_localScale(new Vector3(num, num, num));
            GameObject gameObject = base.get_transform().FindChild("AircraftObj").get_gameObject();

            Util.FindParentToChild <UITexture>(ref this._uiAircraft, gameObject.get_transform(), "Aircraft");
            Util.FindParentToChild <ParticleSystem>(ref this._explosionParticle, this._uiAircraft.get_transform(), "AircraftExplosion");
            Util.FindParentToChild <ParticleSystem>(ref this._smokeParticle, this._uiAircraft.get_transform(), "AircraftSmoke");
            this._uiAircraft.depth = 5 + this._baseNum[this._shipNum];
            if (this._anime == null)
            {
                this._anime = this._uiAircraft.GetComponent <Animation>().GetComponent <Animation>();
            }
            if (this._fleetType == FleetType.Friend)
            {
                this._uiAircraft.flip        = UIBasicSprite.Flip.Nothing;
                this._uiAircraft.mainTexture = SingletonMonoBehaviour <ResourceManager> .Instance.SlotItemTexture.Load(this._plane.MstId, 6);

                this._uiAircraft.get_transform().set_localScale(Vector3.get_one());
            }
            else if (this._fleetType == FleetType.Enemy)
            {
                this._uiAircraft.flip = UIBasicSprite.Flip.Nothing;
                if (BattleTaskManager.GetBattleManager() is PracticeBattleManager)
                {
                    this._uiAircraft.flip        = UIBasicSprite.Flip.Horizontally;
                    this._uiAircraft.mainTexture = SingletonMonoBehaviour <ResourceManager> .Instance.SlotItemTexture.Load(this._plane.MstId, 6);

                    this._uiAircraft.get_transform().set_localScale(Vector3.get_one());
                }
                else
                {
                    this._uiAircraft.mainTexture = SlotItemUtils.LoadTexture(this._plane);
                    this._uiAircraft.MakePixelPerfect();
                    this._uiAircraft.get_transform().set_localScale((this._plane.MstId > 500) ? new Vector3(0.7f, 0.7f, 0.7f) : new Vector3(0.8f, 0.8f, 0.8f));
                }
            }
            Vector3 to = new Vector3(this._basePosition[this._shipNum].x, this._basePosition[this._shipNum].y + 544f, this._basePosition[this._shipNum].z);

            base.get_transform().LTMoveLocal(to, 0.8f).setEase(LeanTweenType.easeOutBack).setDelay(0.4f + 0.1f * (float)this._baseNum[this._shipNum]);
        }
コード例 #10
0
 private void _createExplosion()
 {
     this._listBombCritical = new List <bool>();
     this._listExplosion    = new List <ParticleSystem>();
     this._listMiss         = new List <ParticleSystem>();
     for (int i = 0; i < this._defenders.get_Count(); i++)
     {
         DamageModel attackDamage = this._clsShelling.GetAttackDamage(this._defenders.get_Item(i).TmpId);
         int         num          = (!attackDamage.GetProtectEffect()) ? this._defenders.get_Item(i).Index : this._defenders.get_Item(i).Index;
         if (attackDamage.GetHitState() != BattleHitStatus.Miss)
         {
             this._isAttack = true;
             ParticleSystem particleSystem = (!(BattleTaskManager.GetParticleFile().explosionAerial == null)) ? Object.Instantiate <ParticleSystem>(BattleTaskManager.GetParticleFile().explosionAerial) : BattleTaskManager.GetParticleFile().explosionAerial;
             particleSystem.SetActive(true);
             particleSystem.get_transform().set_parent(BattleTaskManager.GetBattleField().get_transform());
             particleSystem.get_transform().set_position(new Vector3(this._eBattleship.get_Item(num).get_transform().get_position().x, 3f, this._eBattleship.get_Item(num).get_transform().get_position().z));
             this._listExplosion.Add(particleSystem);
             this._listBombCritical.Add(attackDamage.GetHitState() == BattleHitStatus.Clitical);
         }
         else
         {
             int       iLim  = XorRandom.GetILim(0, 2);
             Vector3[] array = new Vector3[]
             {
                 new Vector3(5f, 0f, -5f),
                 new Vector3(-3f, 0f, 5f),
                 new Vector3(4f, 0f, -7f)
             };
             Vector3        position        = new Vector3(this._eBattleship.get_Item(num).get_transform().get_position().x + array[iLim].x, 0f, this._eBattleship.get_Item(num).get_transform().get_position().z + array[iLim].z);
             ParticleSystem particleSystem2 = (!(BattleTaskManager.GetParticleFile().splashMiss == null)) ? Object.Instantiate <ParticleSystem>(BattleTaskManager.GetParticleFile().splashMiss) : BattleTaskManager.GetParticleFile().splashMiss;
             particleSystem2.SetActive(true);
             particleSystem2.get_transform().set_parent(BattleTaskManager.GetBattleField().get_transform());
             particleSystem2.get_transform().set_position(position);
             particleSystem2.Stop();
             this._listMiss.Add(particleSystem2);
         }
     }
 }
コード例 #11
0
        private IEnumerator PlayForceCallback()
        {
            UIBattleNavigation uibn = BattleTaskManager.GetPrefabFile().battleNavigation;

            uibn.SetNavigationInWithdrawalDecision(_iMode);
            Dlg.Call(ref _actForceCallback);
            _uiTacticalSituation = UITacticalSituation.Instantiate(((Component)_prefabUITacticalSituation).GetComponent <UITacticalSituation>(), BattleTaskManager.GetBattleCameras().cutInCamera.transform, BattleTaskManager.GetBattleManager());
            _uiTacticalSituation.Init(OnTacticalSituationBack);
            _uiTacticalSituation.panel.depth = panel.depth + 1;
            yield return(StartCoroutine(BattleUtils.ClearMemory()));

            _listHexExBtns.ForEach(delegate(UIWithdrawalButton x)
            {
                var _003CPlayForceCallback_003Ec__IteratorF = this;
                x.SetActive(isActive: true);
                x.Play(delegate
                {
                    x.isFocus           = ((x.index == 0) ? true : false);
                    x.isColliderEnabled = true;
                    if (x.index == 0)
                    {
                        _isInputPossible = true;
                        _clsState.AddState(InitWithdrawalSelection, UpdateWithdrawalSelection);
                        uibn.Show();
                    }
                });
            });
            yield return(null);
        }
コード例 #12
0
        public UniRx.IObservable <bool> Play()
        {
            ObserverActionQueue observerAction = BattleTaskManager.GetObserverAction();

            observerAction.Executions();
            BattleShips battleShips = BattleTaskManager.GetBattleShips();

            battleShips.SetStandingPosition(StandingPositionType.CommandBuffer);
            BattleCameras battleCameras = BattleTaskManager.GetBattleCameras();

            battleCameras.SetVerticalSplitCameras(isSplit: false);
            battleCameras.fieldDimCamera.maskAlpha = 0f;
            battleCameras.SwitchMainCamera(FleetType.Friend);
            BattleFieldCamera battleFieldCamera = battleCameras.fieldCameras[0];

            battleFieldCamera.ReqViewMode(CameraActor.ViewMode.FixChasing);
            battleFieldCamera.pointOfGaze        = Vector3.Lerp(BattleTaskManager.GetBattleField().dicFleetAnchor[FleetType.Friend].position, BattleTaskManager.GetBattleField().dicFleetAnchor[FleetType.Enemy].position, 0.8f);
            battleFieldCamera.vignetting.enabled = true;
            battleFieldCamera.glowEffect.enabled = true;
            battleShips.SetBollboardTarget(null);
            battleShips.SetLayer(Generics.Layers.ShipGirl);
            BattleCutInEffectCamera cutInEffectCamera = BattleTaskManager.GetBattleCameras().cutInEffectCamera;
            UITexture component = ((Component)cutInEffectCamera.transform.FindChild("TorpedoLine/OverlayLine")).GetComponent <UITexture>();

            if (component != null)
            {
                component.alpha = 0f;
            }
            Observable.NextFrame().Subscribe(delegate
            {
                CalcInitLineRotation();
                PlayLineAnimation();
            });
            return(Observable.FromCoroutine((UniRx.IObserver <bool> observer) => AnimationObserver(observer)));
        }
コード例 #13
0
        private bool Init()
        {
            BattleField battleField = BattleTaskManager.GetBattleField();

            _prodNightMessage = ProdNightMessage.Instantiate(((Component)_prefabProdNightMessage).GetComponent <ProdNightMessage>(), BattleTaskManager.GetBattleCameras().cutInCamera.transform);
            _prodNightMessage.panel.widgetsAreStatic = true;
            _subMessage.Take(1).Subscribe(delegate
            {
                _prodNightMessage.panel.widgetsAreStatic = false;
                _prodNightMessage.Play(null);
            }).AddTo(base.gameObject);
            panel.depth          = _prodNightMessage.panel.depth - 1;
            _traFriendFleet      = battleField.dicFleetAnchor[FleetType.Friend];
            _traEnemyFleet       = battleField.dicFleetAnchor[FleetType.Enemy];
            _clsCameraMoveBezier = new Bezier(Bezier.BezierType.Quadratic, _strParams.cameraStartPivot, _strParams.cameraEndPivot, _strParams.cameraMidPivot, Vector3.zero);
            RadarDeployment();
            return(true);
        }
コード例 #14
0
        private void _setAircraftTexture(FleetType type)
        {
            switch (type)
            {
            case FleetType.Friend:
            {
                if (_koukuuModel.GetCaptainShip(is_friend: true) == null)
                {
                    break;
                }
                PlaneModelBase[] plane = _koukuuModel.GetPlane(_koukuuModel.GetCaptainShip(is_friend: true).TmpId);
                if (plane == null)
                {
                    break;
                }
                for (int j = 0; j < plane.Length && j < 3; j++)
                {
                    if (plane[j] != null)
                    {
                        _uiAirObj[j].transform.localPosition = new Vector3(267f, 176f, 0f);
                        _uiAircraft[j].mainTexture           = SingletonMonoBehaviour <ResourceManager> .Instance.SlotItemTexture.Load(plane[j].MstId, 6);

                        _uiAirObj[j].transform.localEulerAngles = new Vector3(0f, 0f, -25.5f);
                        KCV.Battle.Utils.SlotItemUtils.GetAircraftOffsetInfo(plane[j].MstId);
                    }
                    else
                    {
                        _uiAircraft[j].mainTexture = null;
                    }
                }
                break;
            }

            case FleetType.Enemy:
            {
                if (_koukuuModel.GetCaptainShip(is_friend: false) == null)
                {
                    break;
                }
                PlaneModelBase[] plane = _koukuuModel.GetPlane(_koukuuModel.GetCaptainShip(is_friend: false).TmpId);
                if (plane == null)
                {
                    break;
                }
                for (int i = 0; i < plane.Length && i < 3; i++)
                {
                    if (plane[i] != null)
                    {
                        if (BattleTaskManager.GetBattleManager() is PracticeBattleManager)
                        {
                            _uiAircraft[i].mainTexture = SingletonMonoBehaviour <ResourceManager> .Instance.SlotItemTexture.Load(plane[i].MstId, 6);

                            continue;
                        }
                        _uiAirObj[i].transform.localPosition = new Vector3(267f, 176f, 0f);
                        _uiAircraft[i].mainTexture           = KCV.Battle.Utils.SlotItemUtils.LoadTexture(plane[i]);
                        _uiAircraft[i].MakePixelPerfect();
                        _uiAirObj[i].transform.localEulerAngles = Vector3.zero;
                        if (KCV.Battle.Utils.SlotItemUtils.GetAircraftOffsetInfo(plane[i].MstId).isFlipHorizontal)
                        {
                            _uiAircraft[i].flip = UIBasicSprite.Flip.Nothing;
                        }
                        else
                        {
                            _uiAircraft[i].flip = UIBasicSprite.Flip.Horizontally;
                        }
                    }
                    else
                    {
                        _uiAircraft[i].mainTexture = null;
                    }
                }
                break;
            }
            }
        }
コード例 #15
0
        public void Play(Action callback)
        {
            this._actCallback = callback;
            this._fieldCamera.ReqViewMode(CameraActor.ViewMode.NotViewModeCtrl);
            this._fieldCamera.get_transform().set_localPosition(new Vector3(0f, 12f, 0f));
            this._fieldCamera.get_transform().set_localRotation(Quaternion.Euler(-16f, 0f, 0f));
            BattleCutInCamera       cutInCamera       = BattleTaskManager.GetBattleCameras().cutInCamera;
            BattleCutInEffectCamera cutInEffectCamera = BattleTaskManager.GetBattleCameras().cutInEffectCamera;

            cutInCamera.cullingMask       = (Generics.Layers.TransparentFX | Generics.Layers.UI2D | Generics.Layers.CutIn);
            cutInCamera.depth             = 4f;
            cutInEffectCamera.cullingMask = (Generics.Layers.Background | Generics.Layers.CutIn);
            cutInEffectCamera.depth       = 5f;
            cutInEffectCamera.glowEffect.set_enabled(false);
            Vector3[] array = new Vector3[]
            {
                cutInCamera.get_transform().get_localPosition(),
                      cutInEffectCamera.get_transform().get_localPosition()
            };
            using (IEnumerator enumerator = Enum.GetValues(typeof(FleetType)).GetEnumerator())
            {
                while (enumerator.MoveNext())
                {
                    FleetType fleetType = (FleetType)((int)enumerator.get_Current());
                    if (fleetType != FleetType.CombinedFleet)
                    {
                        this._uiPanel[(int)fleetType].get_transform().set_localPosition(array[(int)fleetType]);
                        this._cloudPanel[(int)fleetType].get_transform().set_parent((fleetType != FleetType.Friend) ? cutInEffectCamera.get_transform() : cutInCamera.get_transform());
                        this._cloudParPanel[(int)fleetType] = null;
                        this._cloudPanel[(int)fleetType].get_transform().set_localPosition(Vector3.get_zero());
                    }
                }
            }
            if (this._iType == CutInType.Both)
            {
                this._setParticlePanel(FleetType.Friend, cutInCamera.get_transform());
                this._setParticlePanel(FleetType.Enemy, cutInEffectCamera.get_transform());
                this._gunPar[0].get_transform().set_localPosition(new Vector3(400f, this._gunPar[0].get_transform().get_localPosition().y, 0f));
                this._gunPar[1].get_transform().set_localPosition(new Vector3(400f, this._gunPar[1].get_transform().get_localPosition().y, 0f));
            }
            else if (this._iType == CutInType.FriendOnly)
            {
                this._setParticlePanel(FleetType.Friend, cutInCamera.get_transform());
                base.get_transform().set_position(cutInCamera.get_transform().get_position());
                this._uiPanel[0].get_transform().set_localPosition(Vector3.get_zero());
                this._uiAirObjF[0].get_transform().set_localPosition(new Vector3(-280f, 0f, 0f));
                this._gunPar[0].get_transform().set_localPosition(new Vector3(0f, this._gunPar[0].get_transform().get_localPosition().y, 0f));
                this._cloudPanel[1].SetActive(false);
            }
            else if (this._iType == CutInType.EnemyOnly)
            {
            }
            for (int i = 0; i < 2; i++)
            {
                this._cloudPanel[i].get_transform().GetComponent <Animation>().Play();
                if (this._cloudParPanel[i] != null)
                {
                    this._cloudPar[i].Play();
                }
            }
            this._playAircraft();
            this._playGunParticle();
            Animation component = base.get_transform().GetComponent <Animation>();

            component.Stop();
            component.Play("AerialStartPhase1_1");
            for (int j = 0; j < 2; j++)
            {
                this._baseMoveTo(new Vector3(this._uiPanel[j].get_transform().get_localPosition().x, 0f, this._uiPanel[j].get_transform().get_localPosition().z), 1.2f, 0.5f, iTween.EaseType.easeOutBack, string.Empty, this._uiPanel[j].get_transform());
            }
        }
コード例 #16
0
ファイル: ProdDamage.cs プロジェクト: syncsyncsynchalt/BD-6Kr
        public void Play(IBattlePhase iBattlePhase, Action callback)
        {
            List <ShipModel_Defender> list = new List <ShipModel_Defender>();

            _iBattlePhase = iBattlePhase;
            _actCallback  = callback;
            _isPlaying    = true;
            BattleTaskManager.GetBattleShips().UpdateDamageAll(iBattlePhase, isFriend: false);
            if (iBattlePhase.HasGekichinEvent())
            {
                iBattlePhase.GetGekichinShips().ForEach(delegate(ShipModel_Defender x)
                {
                    _queFriedShipModel.Enqueue(x);
                });
                if (iBattlePhase.HasTaihaEvent())
                {
                    _listFriendShipModel.AddRange(iBattlePhase.GetDefenders(is_friend: true, DamagedStates.Taiha));
                }
                if (iBattlePhase.HasChuhaEvent())
                {
                    _listFriendShipModel.AddRange(iBattlePhase.GetDefenders(is_friend: true, DamagedStates.Tyuuha));
                }
                if (_listFriendShipModel.Count != 0)
                {
                    Observable.Timer(TimeSpan.FromSeconds(1.5)).Subscribe(delegate
                    {
                        ProdDamage prodDamage = this;
                        BattleShips ships     = BattleTaskManager.GetBattleShips();
                        _listFriendShipModel.ForEach(delegate(ShipModel_Defender x)
                        {
                            ships.dicFriendBattleShips[x.Index].UpdateDamage(x);
                        });
                    });
                }
                PlaySinking();
            }
            else if (iBattlePhase.HasTaihaEvent())
            {
                list.AddRange(iBattlePhase.GetDefenders(is_friend: true, DamagedStates.Taiha));
                if (iBattlePhase.HasChuhaEvent())
                {
                    list.AddRange(iBattlePhase.GetDefenders(is_friend: true, DamagedStates.Tyuuha));
                }
                _queFriedShipModel = new Queue <ShipModel_Defender>();
                int num = 0;
                foreach (ShipModel_Defender item in list)
                {
                    if (num >= 3)
                    {
                        break;
                    }
                    _queFriedShipModel.Enqueue(item);
                    num++;
                }
                PlayHeavyDamage(DamagedStates.Taiha);
            }
            else if (iBattlePhase.HasChuhaEvent())
            {
                list.AddRange(iBattlePhase.GetDefenders(is_friend: true, DamagedStates.Tyuuha).ConvertAll((ShipModel_Defender s) => s));
                int num2 = 0;
                foreach (ShipModel_Defender item2 in list)
                {
                    if (num2 >= 3)
                    {
                        break;
                    }
                    _queFriedShipModel.Enqueue(item2);
                    num2++;
                }
                PlayHeavyDamage(DamagedStates.Tyuuha);
            }
            else
            {
                OnFinished();
            }
            list.Clear();
        }
コード例 #17
0
        public bool _init()
        {
            this._fieldCamera   = BattleTaskManager.GetBattleCameras().friendFieldCamera;
            this._uiPanel       = new UIPanel[2];
            this._uiAirObjF     = new GameObject[2];
            this._uiAirObjE     = new GameObject[2];
            this._cloudPanel    = new UIPanel[2];
            this._bgTex         = new UITexture[2];
            this._cloudParPanel = new UIPanel[2];
            this._cloudPar      = new ParticleSystem[2];
            this._gunPar        = new ParticleSystem[2];
            using (IEnumerator enumerator = Enum.GetValues(typeof(FleetType)).GetEnumerator())
            {
                while (enumerator.MoveNext())
                {
                    FleetType fleetType = (FleetType)((int)enumerator.get_Current());
                    if (fleetType != FleetType.CombinedFleet)
                    {
                        Util.FindParentToChild <UIPanel>(ref this._uiPanel[(int)fleetType], base.get_transform(), string.Format("{0}Panel", fleetType.ToString()));
                        if (this._uiAirObjF[(int)fleetType] == null)
                        {
                            this._uiAirObjF[(int)fleetType] = this._uiPanel[(int)fleetType].get_transform().FindChild("FAircraft").get_gameObject();
                        }
                        if (this._uiAirObjE[(int)fleetType] == null)
                        {
                            this._uiAirObjE[(int)fleetType] = this._uiPanel[(int)fleetType].get_transform().FindChild("EAircraft").get_gameObject();
                        }
                        Util.FindParentToChild <UIPanel>(ref this._cloudPanel[(int)fleetType], base.get_transform(), string.Format("{0}CloudPanel", fleetType.ToString()));
                        Util.FindParentToChild <UITexture>(ref this._bgTex[(int)fleetType], this._cloudPanel[(int)fleetType].get_transform(), "Bg");
                        Util.FindParentToChild <UIPanel>(ref this._cloudParPanel[(int)fleetType], base.get_transform(), string.Format("{0}CloudParPanel", fleetType.ToString()));
                        Util.FindParentToChild <ParticleSystem>(ref this._gunPar[(int)fleetType], this._cloudPanel[(int)fleetType].get_transform(), "Gun");
                    }
                }
            }
            bool flag  = false;
            bool flag2 = false;

            if (this._clsAerial.IsBakugeki_f() || this._clsAerial.IsRaigeki_f())
            {
                flag = true;
            }
            if (this._clsAerial.IsBakugeki_e() || this._clsAerial.IsRaigeki_e())
            {
                flag2 = true;
            }
            if (flag && flag2)
            {
                this._iType = CutInType.Both;
            }
            else if (flag && !flag2)
            {
                this._iType = CutInType.FriendOnly;
            }
            BattleCameras           battleCameras     = BattleTaskManager.GetBattleCameras();
            BattleCutInCamera       cutInCamera       = battleCameras.cutInCamera;
            BattleCutInEffectCamera cutInEffectCamera = BattleTaskManager.GetBattleCameras().cutInEffectCamera;

            if (this._iType == CutInType.Both)
            {
                battleCameras.SetSplitCameras2D(true);
                cutInCamera.isCulling       = true;
                cutInEffectCamera.isCulling = true;
            }
            else if (this._iType == CutInType.FriendOnly)
            {
                cutInCamera.isCulling       = true;
                cutInEffectCamera.isCulling = true;
            }
            Observable.FromCoroutine(new Func <IEnumerator>(this._createAsyncAircrafts), false).Subscribe(delegate(Unit _)
            {
            });
            return(true);
        }
コード例 #18
0
 private PSTorpedoWake _createTorpedo(Vector3 injection, Vector3 target, float time, bool isDet)
 {
     return(PSTorpedoWake.Instantiate(this._torpedoParticle, BattleTaskManager.GetBattleField().get_transform(), injection, target, 0, time, isDet, false));
 }
コード例 #19
0
        public void Play(Action callback)
        {
            _actCallback = callback;
            _fieldCamera.ReqViewMode(CameraActor.ViewMode.NotViewModeCtrl);
            _fieldCamera.transform.localPosition = new Vector3(0f, 12f, 0f);
            _fieldCamera.transform.localRotation = Quaternion.Euler(-16f, 0f, 0f);
            BattleCutInCamera       cutInCamera       = BattleTaskManager.GetBattleCameras().cutInCamera;
            BattleCutInEffectCamera cutInEffectCamera = BattleTaskManager.GetBattleCameras().cutInEffectCamera;

            cutInCamera.cullingMask              = (Generics.Layers.TransparentFX | Generics.Layers.UI2D | Generics.Layers.CutIn);
            cutInCamera.depth                    = 4f;
            cutInEffectCamera.cullingMask        = (Generics.Layers.Background | Generics.Layers.CutIn);
            cutInEffectCamera.depth              = 5f;
            cutInEffectCamera.glowEffect.enabled = false;
            setAirSupremacyLabel();
            Vector3[] array = new Vector3[2]
            {
                cutInCamera.transform.localPosition,
                cutInEffectCamera.transform.localPosition
            };
            foreach (int value in Enum.GetValues(typeof(FleetType)))
            {
                if (value != 2)
                {
                    _uiPanel[value].transform.localPosition = array[value];
                    _cloudPanel[value].transform.parent     = ((value != 0) ? cutInEffectCamera.transform : cutInCamera.transform);
                    _cloudParPanel[value] = null;
                    _cloudPanel[value].transform.localPosition = Vector3.zero;
                }
            }
            if (_iType == CutInType.Both)
            {
                _setParticlePanel(FleetType.Friend, cutInCamera.transform);
                _setParticlePanel(FleetType.Enemy, cutInEffectCamera.transform);
                _labelPanel[0].transform.localPosition = new Vector3(array[1].x, array[1].y + 272f, array[1].z);
                Transform transform      = _labelPanel[1].transform;
                Vector3   localPosition  = cutInCamera.transform.localPosition;
                float     x              = localPosition.x;
                Vector3   localPosition2 = cutInCamera.transform.localPosition;
                float     y              = localPosition2.y - 272f;
                Vector3   localPosition3 = cutInCamera.transform.localPosition;
                transform.localPosition = new Vector3(x, y, localPosition3.z);
                Transform transform2     = ((Component)_gunPar[0]).transform;
                Vector3   localPosition4 = ((Component)_gunPar[0]).transform.localPosition;
                transform2.localPosition = new Vector3(400f, localPosition4.y, 0f);
                Transform transform3     = ((Component)_gunPar[1]).transform;
                Vector3   localPosition5 = ((Component)_gunPar[1]).transform.localPosition;
                transform3.localPosition = new Vector3(400f, localPosition5.y, 0f);
            }
            else if (_iType == CutInType.FriendOnly)
            {
                _setParticlePanel(FleetType.Friend, cutInCamera.transform);
                _labelPanel[0].transform.localPosition = new Vector3(array[0].x, array[0].y - 175f, array[0].z);
                base.transform.position               = cutInCamera.transform.position;
                _uiPanel[0].transform.localPosition   = Vector3.zero;
                _uiAirObjF[0].transform.localPosition = new Vector3(-280f, 0f, 0f);
                Transform transform4     = ((Component)_gunPar[0]).transform;
                Vector3   localPosition6 = ((Component)_gunPar[0]).transform.localPosition;
                transform4.localPosition = new Vector3(0f, localPosition6.y, 0f);
                _cloudPanel[1].SetActive(isActive: false);
            }
            else if (_iType == CutInType.EnemyOnly)
            {
                _setParticlePanel(FleetType.Enemy, cutInEffectCamera.transform);
                _labelPanel[0].transform.localPosition = new Vector3(array[1].x, array[1].y - 175f, array[1].z);
                base.transform.position               = cutInEffectCamera.transform.position;
                _uiPanel[1].transform.localPosition   = Vector3.zero;
                _uiAirObjE[1].transform.localPosition = new Vector3(280f, 0f, 0f);
                Transform transform5     = ((Component)_gunPar[1]).transform;
                Vector3   localPosition7 = ((Component)_gunPar[1]).transform.localPosition;
                transform5.localPosition = new Vector3(0f, localPosition7.y, 0f);
                _cloudPanel[0].SetActive(isActive: false);
                cutInEffectCamera.isCulling = true;
            }
            for (int i = 0; i < 2; i++)
            {
                ((Component)_cloudPanel[i].transform).GetComponent <Animation>().Play();
                if (_cloudParPanel[i] != null)
                {
                    _cloudPar[i].Play();
                }
            }
            _playAircraft();
            _playGunParticle();
            Animation component = ((Component)base.transform).GetComponent <Animation>();

            component.Stop();
            component.Play("AerialStartPhase1_1");
            for (int j = 0; j < 2; j++)
            {
                Vector3 localPosition8 = _uiPanel[j].transform.localPosition;
                float   x2             = localPosition8.x;
                Vector3 localPosition9 = _uiPanel[j].transform.localPosition;
                _baseMoveTo(new Vector3(x2, 0f, localPosition9.z), 1.2f, 0.5f, iTween.EaseType.easeOutBack, string.Empty, _uiPanel[j].transform);
            }
        }
コード例 #20
0
 public void PlaySplash(Vector3 fromPos)
 {
     this.splashT = ((!(BattleTaskManager.GetParticleFile().splash == null)) ? Object.Instantiate <ParticleSystem>(BattleTaskManager.GetParticleFile().splash) : BattleTaskManager.GetParticleFile().splash);
     this.splashT.SetActive(true);
     this.splashT.get_transform().set_parent(BattleTaskManager.GetBattleField().get_transform());
     this.splashT.get_transform().set_position(fromPos);
     this.splashT.Play();
 }
コード例 #21
0
 private PSTorpedoWake _instantiateTorpedo(Vector3 injection, Vector3 target, int index, float _time, bool isDet, bool isMiss, bool isD)
 {
     return(PSTorpedoWake.Instantiate(injectionVec: new Vector3(injection.x, injection.y + 1f, injection.z), target: new Vector3(target.x, target.y + 1f, target.z), prefab: (!isD) ? _torpedoWake : ParticleFile.Load <PSTorpedoWake>(ParticleFileInfos.BattlePSTorpedowakeD), parent: BattleTaskManager.GetBattleField().transform, attacker: index, _time: _time, isDet: isDet, isMiss: isMiss));
 }
コード例 #22
0
 private void _onFinishedInjection()
 {
     if (this._isDetonation)
     {
         this.splashT = ((!(BattleTaskManager.GetParticleFile().splash == null)) ? Object.Instantiate <ParticleSystem>(BattleTaskManager.GetParticleFile().splash) : BattleTaskManager.GetParticleFile().splash);
         this.splashT.SetActive(true);
         this.splashT.get_transform().set_parent(BattleTaskManager.GetBattleField().get_transform());
         this.splashT.get_transform().set_position(this._vecTarget);
         this.splashT.Play();
     }
     this._psTorpedoWake.Stop();
     this._psTorpedoWake.set_time(0f);
     if (this._actCallback != null)
     {
         this._actCallback.Invoke();
     }
 }
コード例 #23
0
        private void playSlotItemTripleLine()
        {
            ProdShellingSlotLine prodShellingSlotLine = BattleTaskManager.GetPrefabFile().prodShellingSlotLine;

            prodShellingSlotLine.PlayTranscendenceLine(BaseProdLine.AnimationName.ProdTripleLine, _clsAttacker.IsFriend(), null);
        }
コード例 #24
0
        private void _setAircraftTexture(FleetType type)
        {
            if (type == FleetType.Friend)
            {
                if (this._koukuuModel.GetCaptainShip(true) != null)
                {
                    PlaneModelBase[] plane = this._koukuuModel.GetPlane(this._koukuuModel.GetCaptainShip(true).TmpId);
                    if (plane != null)
                    {
                        for (int i = 0; i < plane.Length; i++)
                        {
                            if (i >= 3)
                            {
                                break;
                            }
                            if (plane[i] != null)
                            {
                                this._uiAirObj[i].get_transform().set_localPosition(new Vector3(267f, 176f, 0f));
                                this._uiAircraft[i].mainTexture = SingletonMonoBehaviour <ResourceManager> .Instance.SlotItemTexture.Load(plane[i].MstId, 6);

                                this._uiAirObj[i].get_transform().set_localEulerAngles(new Vector3(0f, 0f, -25.5f));
                                AircraftOffsetInfo aircraftOffsetInfo = KCV.Battle.Utils.SlotItemUtils.GetAircraftOffsetInfo(plane[i].MstId);
                            }
                            else
                            {
                                this._uiAircraft[i].mainTexture = null;
                            }
                        }
                    }
                }
            }
            else if (type == FleetType.Enemy && this._koukuuModel.GetCaptainShip(false) != null)
            {
                PlaneModelBase[] plane = this._koukuuModel.GetPlane(this._koukuuModel.GetCaptainShip(false).TmpId);
                if (plane != null)
                {
                    for (int j = 0; j < plane.Length; j++)
                    {
                        if (j >= 3)
                        {
                            break;
                        }
                        if (plane[j] != null)
                        {
                            if (BattleTaskManager.GetBattleManager() is PracticeBattleManager)
                            {
                                this._uiAircraft[j].mainTexture = SingletonMonoBehaviour <ResourceManager> .Instance.SlotItemTexture.Load(plane[j].MstId, 6);
                            }
                            else
                            {
                                this._uiAirObj[j].get_transform().set_localPosition(new Vector3(267f, 176f, 0f));
                                this._uiAircraft[j].mainTexture = KCV.Battle.Utils.SlotItemUtils.LoadTexture(plane[j]);
                                this._uiAircraft[j].MakePixelPerfect();
                                this._uiAirObj[j].get_transform().set_localEulerAngles(Vector3.get_zero());
                                if (KCV.Battle.Utils.SlotItemUtils.GetAircraftOffsetInfo(plane[j].MstId).isFlipHorizontal)
                                {
                                    this._uiAircraft[j].flip = UIBasicSprite.Flip.Nothing;
                                }
                                else
                                {
                                    this._uiAircraft[j].flip = UIBasicSprite.Flip.Horizontally;
                                }
                            }
                        }
                        else
                        {
                            this._uiAircraft[j].mainTexture = null;
                        }
                    }
                }
            }
        }
コード例 #25
0
 private void _playFShipVoice()
 {
     KCV.Battle.Utils.ShipUtils.PlayFlagshipWreckVoice(BattleTaskManager.GetBattleManager().Ships_f[0]);
 }
コード例 #26
0
        public void Play(DelDecideAdvancingWithdrawalButton decideCallback)
        {
            this._delDecideAdvancingWithdrawalButton = decideCallback;
            base.get_transform().localScaleOne();
            base.Init();
            if (this._iType == Generics.BattleRootType.Rebellion)
            {
                this.SetHexBtnsPos4Rebellion();
            }
            else
            {
                this.SetHexBtnsPos4Sortie();
            }
            ShipModel_BattleAll shipModel_BattleAll = BattleTaskManager.GetBattleManager().Ships_f[0];

            if (shipModel_BattleAll.HasRecoverYouin())
            {
                this._btnIndex = 1;
            }
            else if (shipModel_BattleAll.HasRecoverMegami())
            {
                this._btnIndex = 2;
            }
            else
            {
                this._btnIndex = 0;
            }
            if (shipModel_BattleAll.HasRecoverYouin())
            {
                this._listIsBtn.set_Item(1, true);
            }
            else
            {
                this._listHexBtns.get_Item(1).uiButton.defaultColor = new Color(0.2f, 0.2f, 0.2f);
            }
            if (shipModel_BattleAll.HasRecoverMegami())
            {
                this._listIsBtn.set_Item(2, true);
            }
            else
            {
                this._listHexBtns.get_Item(2).uiButton.defaultColor = new Color(0.2f, 0.2f, 0.2f);
            }
            if (BattleTaskManager.GetBattleManager().ChangeableDeck)
            {
                this._listIsBtn.set_Item(3, BattleTaskManager.GetBattleManager().ChangeableDeck);
            }
            else
            {
                this._listHexBtns.get_Item(3).uiButton.defaultColor = new Color(0.2f, 0.2f, 0.2f);
            }
            this._listIsBtn.set_Item(0, true);
            this._listHexBtns.ForEach(delegate(UIHexButton x)
            {
                x.SetActive(true);
                x.Play(UIHexButton.AnimationList.HexButtonShow, delegate
                {
                    this._isInputPossible = true;
                    this.SetAdvancingWithdrawalBtnState(this._btnIndex);
                });
            });
            UIBattleNavigation battleNavigation = BattleTaskManager.GetPrefabFile().battleNavigation;

            battleNavigation.SetNavigationInAdvancingWithDrawal();
            battleNavigation.Show(0.2f, null);
            this._uiFleetInfos.Show();
        }
コード例 #27
0
        private void endMotionBlur()
        {
            BattleCutInEffectCamera cutInEffectCamera = BattleTaskManager.GetBattleCameras().cutInEffectCamera;

            cutInEffectCamera.motionBlur.enabled = false;
        }
コード例 #28
0
 private void CheckTrophy()
 {
     BattleTaskManager.GetBattleManager().IncrementRecoveryItemCountWithTrophyUnlock();
 }
コード例 #29
0
        private bool UpdateKeyMode(object data)
        {
            KeyControl keyControl = BattleTaskManager.GetKeyControl();

            for (int i = 0; i < _uiCommandUnitList.listCommandUnits.Count; i++)
            {
                _uiCommandUnitList.listCommandUnits[i].ResetPosition();
            }
            if (Input.touchCount != 0 || Input.GetMouseButtonDown(0))
            {
                _clsState.AddState(InitTouchMode, UpdateTouchMode);
                return(true);
            }
            switch (commandMode)
            {
            case BattleCommandMode.SurfaceBox:
                if (keyControl.GetDown(KeyControl.KeyName.LEFT))
                {
                    _uiCommandBox.Prev();
                    break;
                }
                if (keyControl.GetDown(KeyControl.KeyName.RIGHT))
                {
                    _uiCommandBox.Next();
                    break;
                }
                if (keyControl.GetDown(KeyControl.KeyName.BATU))
                {
                    _uiCommandBox.RemoveCommandUnit2FocusSurface();
                    break;
                }
                if (keyControl.GetDown(KeyControl.KeyName.SHIKAKU))
                {
                    _uiCommandBox.RemoveCommandUnitAll();
                    return(false);
                }
                if (!keyControl.GetDown(KeyControl.KeyName.MARU))
                {
                    break;
                }
                return(OnKeyModeDecideSurface());

            case BattleCommandMode.UnitList:
                if (keyControl.GetDown(KeyControl.KeyName.UP))
                {
                    _uiCommandUnitList.PrevColumn();
                    break;
                }
                if (keyControl.GetDown(KeyControl.KeyName.DOWN))
                {
                    _uiCommandUnitList.NextColumn();
                    break;
                }
                if (keyControl.GetDown(KeyControl.KeyName.LEFT))
                {
                    _uiCommandUnitList.PrevLine();
                    break;
                }
                if (keyControl.GetDown(KeyControl.KeyName.RIGHT))
                {
                    _uiCommandUnitList.NextLine();
                    break;
                }
                if (keyControl.GetDown(KeyControl.KeyName.MARU))
                {
                    return(OnKeyModeDecideUnit());
                }
                if (!keyControl.GetDown(KeyControl.KeyName.BATU))
                {
                    break;
                }
                return(OnKeyModeCancelUnit());
            }
            return(false);
        }
コード例 #30
0
        private void _createExplotion(bool isFriend)
        {
            _listBombCritical = new List <bool>();
            _listExplosion    = new List <ParticleSystem>();
            _listMiss         = new List <ParticleSystem>();
            FleetType key = (!isFriend) ? FleetType.Enemy : FleetType.Friend;

            if (isFriend)
            {
                Dictionary <int, UIBattleShip> fBattleship = _fBattleship;
            }
            else
            {
                Dictionary <int, UIBattleShip> eBattleship = _eBattleship;
            }
            Dictionary <int, UIBattleShip> dictionary = (!isFriend) ? _fBattleship : _eBattleship;
            Vector3 position3 = default(Vector3);

            for (int i = 0; i < _dicBakuraiModel[key].Length; i++)
            {
                if (_dicBakuraiModel[key][i] == null || !_dicBakuraiModel[key][i].IsBakugeki())
                {
                    continue;
                }
                ShipModel_Battle defender = _dicBakuraiModel[key][i].Defender;
                int       num             = (!_dicBakuraiModel[key][i].GetProtectEffect()) ? defender.Index : defender.Index;
                bool      flag            = (_dicBakuraiModel[key][i].GetHitState() == BattleHitStatus.Miss) ? true : false;
                FleetType fleetType       = isFriend ? FleetType.Enemy : FleetType.Friend;
                _dicHitType[fleetType][num] = setHitType(fleetType, num, flag, HitType.Bomb);
                HitType hitType = (!isFriend) ? _dicHitType[FleetType.Friend][num] : _dicHitType[FleetType.Enemy][num];
                if (!flag)
                {
                    if (hitType == HitType.Bomb)
                    {
                        Vector3 position  = dictionary[num].transform.position;
                        float   x         = position.x;
                        Vector3 position2 = dictionary[num].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((_dicBakuraiModel[key][i].GetHitState() == BattleHitStatus.Clitical) ? true : false);
                    }
                }
                else if (hitType == HitType.Miss)
                {
                    Vector3 position4 = dictionary[num].transform.position;
                    float   fMin      = position4.x - 0.5f;
                    Vector3 position5 = dictionary[num].transform.position;
                    float   fLim      = XorRandom.GetFLim(fMin, position5.x + 0.5f);
                    Vector3 position6 = dictionary[num].transform.position;
                    float   fMin2     = position6.z - 1f;
                    Vector3 position7 = dictionary[num].transform.position;
                    float   fLim2     = XorRandom.GetFLim(fMin2, position7.z + 1f);
                    float   num2      = fLim;
                    Vector3 position8 = dictionary[num].transform.position;
                    fLim = ((!(num2 >= position8.x)) ? (fLim - 0.5f) : (fLim + 0.5f));
                    float   num3      = fLim2;
                    Vector3 position9 = dictionary[num].transform.position;
                    fLim2 = ((!(num3 >= 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);
                }
            }
        }