private void _createTorpedoWake()
        {
            _torpedoWakes = new PSTorpedoWakes();
            int num = 0;

            _setProtect();
            Vector3 targetVec = default(Vector3);

            for (int i = 0; i < _fBakuraiModel.Length; i++)
            {
                if (_fBakuraiModel[i] != null && _fBakuraiModel[i].IsRaigeki())
                {
                    ShipModel_Defender defender = _fBakuraiModel[i].Defender;
                    int     num2         = (!_fBakuraiModel[i].GetProtectEffect()) ? defender.Index : 0;
                    bool    flag         = (_fBakuraiModel[i].GetHitState() == BattleHitStatus.Miss) ? true : false;
                    float   num3         = (!flag) ? 0f : 1f;
                    Vector3 injectionVec = _setTorpedoVec(num, isFriend: true);
                    num++;
                    _dicHitType[num2] = setHitType(FleetType.Enemy, defender.Index, flag, HitType.Torpedo);
                    Vector3 position  = _eBattleship[num2].transform.position;
                    float   x         = position.x + num3;
                    Vector3 position2 = _eBattleship[num2].transform.position;
                    targetVec = new Vector3(x, 0f, position2.z + 1f);
                    if (_fBakuraiModel[i].GetProtectEffect())
                    {
                        Vector3 position3 = _eBattleship[defender.Index].transform.position;
                        _torpedoWakes.SetProtectVector(num, new Vector3(position3.x + 2f, 0f, position3.z));
                    }
                    _torpedoWakes.AddInstantiates(BattleTaskManager.GetBattleField().transform, injectionVec, targetVec, isFull: true, i, 2f, isDet: false, flag);
                }
            }
        }
Example #2
0
        private void _createTorupedoWakes(bool isFriend)
        {
            int       num       = 0;
            FleetType key       = (!isFriend) ? FleetType.Enemy : FleetType.Friend;
            FleetType fleetType = isFriend ? FleetType.Enemy : FleetType.Friend;

            _torpedoWakes.InitProtectVector();
            for (int i = 0; i < _dicBakuraiModel[key].Length; i++)
            {
                if (_dicBakuraiModel[key][i] != null && _dicBakuraiModel[key][i].IsRaigeki())
                {
                    ShipModel_Defender defender = _dicBakuraiModel[key][i].Defender;
                    int     num2         = (!_dicBakuraiModel[key][i].GetProtectEffect()) ? defender.Index : 0;
                    bool    flag         = (_dicBakuraiModel[key][i].GetHitState() == BattleHitStatus.Miss) ? true : false;
                    float   num3         = (!flag) ? 0f : 1f;
                    Vector3 injectionVec = _setTorpedoVec(num, isFriend);
                    num++;
                    _dicHitType[fleetType][num2] = setHitType(fleetType, defender.Index, flag, HitType.Torpedo);
                    Vector3 vector;
                    if (isFriend)
                    {
                        Vector3 position  = _eBattleship[num2].transform.position;
                        float   x         = position.x + num3;
                        Vector3 position2 = _eBattleship[num2].transform.position;
                        vector = new Vector3(x, 0f, position2.z + 1f);
                    }
                    else
                    {
                        Vector3 position3 = _fBattleship[num2].transform.position;
                        float   x2        = position3.x + num3;
                        Vector3 position4 = _fBattleship[num2].transform.position;
                        vector = new Vector3(x2, 0f, position4.z - 1f);
                    }
                    Vector3 targetVec = vector;
                    if (_dicBakuraiModel[key][i].GetProtectEffect())
                    {
                        Vector3 vector2 = (!isFriend) ? _fBattleship[defender.Index].transform.position : _eBattleship[defender.Index].transform.position;
                        _torpedoWakes.SetProtectVector(num, (!isFriend) ? new Vector3(vector2.x - 2f, 0f, vector2.z) : new Vector3(vector2.x + 2f, 0f, vector2.z));
                    }
                    _torpedoWakes.AddInstantiates(BattleTaskManager.GetBattleField().transform, injectionVec, targetVec, isFull: true, i, 2f, isDet: false, flag);
                }
            }
        }