public bool Initialize(StageObject stgObj, AnimEventData.EventData data, AttackInfo atkInfo)
    {
        //IL_007f: Unknown result type (might be due to invalid IL or missing references)
        //IL_0084: Expected O, but got Unknown
        //IL_00b7: Unknown result type (might be due to invalid IL or missing references)
        //IL_00bc: Unknown result type (might be due to invalid IL or missing references)
        //IL_00c1: Expected O, but got Unknown
        //IL_0151: Unknown result type (might be due to invalid IL or missing references)
        //IL_0153: Unknown result type (might be due to invalid IL or missing references)
        if (data.id != AnimEventFormat.ID.ATK_COLLIDER_CAPSULE && data.id != AnimEventFormat.ID.ATK_COLLIDER_CAPSULE_START && data.id != AnimEventFormat.ID.ATK_COLLIDER_CAPSULE_DEPEND_VALUE && data.id != AnimEventFormat.ID.CONTINUS_ATTACK)
        {
            return(false);
        }
        if (object.ReferenceEquals(stgObj, null))
        {
            return(false);
        }
        Player player = stgObj as Player;
        int    layer  = 13;
        float  num    = 1f;

        if (!object.ReferenceEquals(player, null))
        {
            layer = 12;
            num   = player.GetRadiusCustomRate();
        }
        if (gameObject == null)
        {
            gameObject = new GameObject();
            gameObject.set_name("AnimEventCollider");
            gameObject.set_layer(layer);
            colliderHiter = gameObject.AddComponent <AtkColliderHiter>();
        }
        Transform parent = stgObj.get_gameObject().get_transform();

        if (!string.IsNullOrEmpty(data.stringArgs[1]))
        {
            Transform val = stgObj.FindNode(data.stringArgs[1]);
            if (val != null)
            {
                parent = val;
            }
        }
        Vector3 pos = default(Vector3);

        pos._002Ector(data.floatArgs[0], data.floatArgs[1], data.floatArgs[2]);
        Vector3 rot = default(Vector3);

        rot._002Ector(data.floatArgs[3], data.floatArgs[4], data.floatArgs[5]);
        float radius = data.floatArgs[6] * num;
        float height = data.floatArgs[7];

        colliderHiter.SetColliderInfo(stgObj, parent, atkInfo, pos, rot, radius, height);
        return(true);
    }
 public void OnAnimEvent(AnimEventData.EventData data)
 {
     AnimEventFormat.ID id = data.id;
     if (id == AnimEventFormat.ID.SE_ONESHOT)
     {
         int num = data.intArgs[0];
         if (num != 0)
         {
             SoundManager.PlayOneShotUISE(num);
         }
     }
 }
Exemple #3
0
    public static AnimEventShot Create(StageObject stage_object, AnimEventData.EventData data, AttackInfo atk_info, Vector3 offset)
    {
        //IL_0023: Unknown result type (might be due to invalid IL or missing references)
        //IL_0034: Unknown result type (might be due to invalid IL or missing references)
        //IL_005d: Unknown result type (might be due to invalid IL or missing references)
        //IL_0062: Unknown result type (might be due to invalid IL or missing references)
        //IL_0063: Unknown result type (might be due to invalid IL or missing references)
        //IL_0068: Unknown result type (might be due to invalid IL or missing references)
        //IL_006a: Unknown result type (might be due to invalid IL or missing references)
        //IL_006f: Unknown result type (might be due to invalid IL or missing references)
        //IL_0072: Unknown result type (might be due to invalid IL or missing references)
        //IL_0073: Unknown result type (might be due to invalid IL or missing references)
        //IL_0078: Unknown result type (might be due to invalid IL or missing references)
        //IL_0091: Unknown result type (might be due to invalid IL or missing references)
        //IL_0096: Unknown result type (might be due to invalid IL or missing references)
        //IL_009b: Unknown result type (might be due to invalid IL or missing references)
        //IL_00aa: Unknown result type (might be due to invalid IL or missing references)
        //IL_00af: Unknown result type (might be due to invalid IL or missing references)
        //IL_00b0: Unknown result type (might be due to invalid IL or missing references)
        //IL_00b5: Unknown result type (might be due to invalid IL or missing references)
        //IL_00bc: Unknown result type (might be due to invalid IL or missing references)
        //IL_00c1: Unknown result type (might be due to invalid IL or missing references)
        //IL_00c6: Unknown result type (might be due to invalid IL or missing references)
        //IL_00cb: Unknown result type (might be due to invalid IL or missing references)
        //IL_00cc: Unknown result type (might be due to invalid IL or missing references)
        //IL_00d1: Unknown result type (might be due to invalid IL or missing references)
        //IL_00d4: Unknown result type (might be due to invalid IL or missing references)
        //IL_00d5: Unknown result type (might be due to invalid IL or missing references)
        Transform val = stage_object.FindNode(data.stringArgs[1]);

        if (val == null)
        {
            val = stage_object._transform;
        }
        if (val.get_gameObject() != null && !val.get_gameObject().get_activeInHierarchy())
        {
            return(null);
        }
        Vector3   val2 = new Vector3(data.floatArgs[0], data.floatArgs[1], data.floatArgs[2]) + offset;
        Matrix4x4 localToWorldMatrix = val.get_localToWorldMatrix();

        val2 = localToWorldMatrix.MultiplyPoint3x4(val2);
        Quaternion val3 = Quaternion.Euler(new Vector3(data.floatArgs[3], data.floatArgs[4], data.floatArgs[5]));

        val3 = ((data.intArgs[0] != 0) ? (stage_object.get_gameObject().get_transform().get_rotation() * val3) : (val.get_rotation() * val3));
        return(Create(stage_object, atk_info, val2, val3, null, true, null, null, null, Player.ATTACK_MODE.NONE, null, null));
    }
    public bool OnAnimEvent(AnimEventData.EventData data)
    {
        switch (data.id)
        {
        case AnimEventFormat.ID.STAMP:
        {
            if (!CheckDistance())
            {
                return(true);
            }
            int num = data.intArgs[0];
            if (stampInfos == null || stampNodes == null)
            {
                return(true);
            }
            int i = 0;
            for (int num2 = stampNodes.Length; i < num2; i++)
            {
                StampNode stampNode = stampNodes[i];
                int       j         = 0;
                for (int num3 = stampNode.triggers.Length; j < num3; j++)
                {
                    StampNode.StampTrigger stampTrigger = stampNode.triggers[j];
                    if (stampTrigger.eventID == num)
                    {
                        StageObject.StampInfo stamp_info = stampInfos[stampTrigger.StampInfoID];
                        PlayStampEffect(stamp_info, stampNode);
                        break;
                    }
                }
            }
            return(true);
        }

        case AnimEventFormat.ID.AUTO_STAMP_ON:
            enableAutoStampEffect = true;
            return(true);

        case AnimEventFormat.ID.AUTO_STAMP_OFF:
            enableAutoStampEffect = false;
            return(true);

        default:
            return(false);
        }
    }
 public void Generate(AnimEventData.EventData data)
 {
     //IL_00e0: Unknown result type (might be due to invalid IL or missing references)
     //IL_00e5: Unknown result type (might be due to invalid IL or missing references)
     if (!object.ReferenceEquals(owner, null))
     {
         _setupParam.maxNum       = data.intArgs[0];
         _setupParam.maxHp        = (int)((float)data.intArgs[1] * 0.01f * (float)owner.hpMax);
         _setupParam.generateSeId = ((data.intArgs.Length >= 3) ? data.intArgs[2] : 0);
         _setupParam.breakSeId    = ((data.intArgs.Length >= 4) ? data.intArgs[3] : 0);
         _setupParam.allBreakSeId = ((data.intArgs.Length >= 5) ? data.intArgs[4] : 0);
         _setupParam.offset       = new Vector3(data.floatArgs[0], data.floatArgs[1], data.floatArgs[2]);
         _setupParam.scale        = data.floatArgs[3];
         _setupParam.effectName   = data.stringArgs[0];
         _setupParam.nodeName     = ((data.stringArgs.Length <= 1) ? string.Empty : data.stringArgs[1]);
         _setupParam.nowNum       = _setupParam.maxNum;
         _setupParam.nowHp        = _setupParam.maxHp;
         Setup(_setupParam, true);
     }
 }
Exemple #6
0
    public void CacheAnimDataUseResource(AnimEventData animEventData, EffectNameAnalyzer name_analyzer = null, List <AnimEventData.EventData> cntAtkDataList = null)
    {
        if (!(animEventData == null))
        {
            animEventData.Initialize();
            AnimEventData.AnimData[] animations = animEventData.animations;
            int i = 0;
            for (int num = animations.Length; i < num; i++)
            {
                AnimEventData.EventData[] events = animations[i].events;
                int j = 0;
                for (int num2 = events.Length; j < num2; j++)
                {
                    AnimEventData.EventData eventData = events[j];
                    switch (eventData.id)
                    {
                    case AnimEventFormat.ID.EFFECT:
                    case AnimEventFormat.ID.EFFECT_ONESHOT:
                    case AnimEventFormat.ID.EFFECT_STATIC:
                    case AnimEventFormat.ID.EFFECT_LOOP_CUSTOM:
                    case AnimEventFormat.ID.CAMERA_EFFECT:
                    case AnimEventFormat.ID.EFFECT_SCALE_DEPEND_VALUE:
                    {
                        string text4 = eventData.stringArgs[0];
                        if (name_analyzer != null)
                        {
                            text4 = name_analyzer(text4);
                        }
                        if (!string.IsNullOrEmpty(text4))
                        {
                            CacheEffect(RESOURCE_CATEGORY.EFFECT_ACTION, text4);
                        }
                        break;
                    }

                    case AnimEventFormat.ID.EFFECT_DEPEND_SP_ATTACK_TYPE:
                    {
                        int k = 1;
                        for (int num4 = eventData.stringArgs.Length; k < num4; k++)
                        {
                            string text7 = eventData.stringArgs[k];
                            if (name_analyzer != null && !string.IsNullOrEmpty(text7))
                            {
                                text7 = name_analyzer(text7);
                            }
                            if (!string.IsNullOrEmpty(text7))
                            {
                                CacheEffect(RESOURCE_CATEGORY.EFFECT_ACTION, text7);
                            }
                        }
                        break;
                    }

                    case AnimEventFormat.ID.SE_ONESHOT:
                    case AnimEventFormat.ID.SE_LOOP_PLAY:
                        CacheSE(eventData.intArgs[0], null);
                        break;

                    case AnimEventFormat.ID.CONTINUS_ATTACK:
                    {
                        cntAtkDataList?.Add(eventData);
                        string text5 = eventData.stringArgs[2];
                        if (name_analyzer != null)
                        {
                            text5 = name_analyzer(text5);
                        }
                        if (!string.IsNullOrEmpty(text5))
                        {
                            CacheEffect(RESOURCE_CATEGORY.EFFECT_ACTION, text5);
                        }
                        break;
                    }

                    case AnimEventFormat.ID.WEAKPOINT_ON:
                    {
                        Enemy.WEAK_STATE wEAK_STATE = (Enemy.WEAK_STATE)((eventData.intArgs.Length > 1) ? eventData.intArgs[1] : 0);
                        if (Enemy.IsWeakStateElementAttack(wEAK_STATE) || Enemy.IsWeakStateSkillAttack(wEAK_STATE) || Enemy.IsWeakStateHealAttack(wEAK_STATE) || Enemy.IsWeakStateCannonAttack(wEAK_STATE))
                        {
                            TargetMarker.EFFECT_TYPE eFFECT_TYPE = Enemy.WeakStateToEffectType(wEAK_STATE);
                            if (eFFECT_TYPE != TargetMarker.EFFECT_TYPE.NONE)
                            {
                                string           text2       = MonoBehaviourSingleton <InGameSettingsManager> .I.targetMarkerSettings.effectNames[(int)eFFECT_TYPE];
                                Enemy.WEAK_STATE wEAK_STATE2 = wEAK_STATE;
                                if (wEAK_STATE2 == Enemy.WEAK_STATE.WEAK_ELEMENT_ATTACK || wEAK_STATE2 == Enemy.WEAK_STATE.WEAK_ELEMENT_SKILL_ATTACK)
                                {
                                    int num3 = (eventData.intArgs.Length <= 2) ? (-1) : eventData.intArgs[2];
                                    if (num3 >= 0)
                                    {
                                        text2 += num3.ToString();
                                    }
                                }
                                CacheEffect(RESOURCE_CATEGORY.EFFECT_ACTION, text2);
                            }
                        }
                        eventData.attackMode = Player.ATTACK_MODE.NONE;
                        string text3 = (eventData.stringArgs.Length <= 0) ? string.Empty : eventData.stringArgs[0];
                        if (!string.IsNullOrEmpty(text3))
                        {
                            if (!Enum.IsDefined(typeof(EQUIPMENT_TYPE), text3))
                            {
                                Log.Error("Undefined EQUIPMENT_TYPE name:" + text3);
                            }
                            else
                            {
                                EQUIPMENT_TYPE equipment_type = (EQUIPMENT_TYPE)(int)Enum.Parse(typeof(EQUIPMENT_TYPE), text3);
                                eventData.attackMode = Player.ConvertEquipmentTypeToAttackMode(equipment_type);
                            }
                        }
                        break;
                    }

                    case AnimEventFormat.ID.WEAKPOINT_ALL_ON:
                    {
                        eventData.attackMode = Player.ATTACK_MODE.NONE;
                        string text6 = (eventData.stringArgs.Length <= 0) ? string.Empty : eventData.stringArgs[0];
                        if (!string.IsNullOrEmpty(text6))
                        {
                            if (!Enum.IsDefined(typeof(EQUIPMENT_TYPE), text6))
                            {
                                Log.Error("Undefined EQUIPMENT_TYPE name:" + text6);
                            }
                            else
                            {
                                EQUIPMENT_TYPE equipment_type2 = (EQUIPMENT_TYPE)(int)Enum.Parse(typeof(EQUIPMENT_TYPE), text6);
                                eventData.attackMode = Player.ConvertEquipmentTypeToAttackMode(equipment_type2);
                            }
                        }
                        break;
                    }

                    case AnimEventFormat.ID.GENERATE_AEGIS:
                    {
                        string text = eventData.stringArgs[0];
                        if (!string.IsNullOrEmpty(text))
                        {
                            CacheEffect(RESOURCE_CATEGORY.EFFECT_ACTION, text);
                        }
                        if (eventData.intArgs.Length >= 3 && eventData.intArgs[2] > 0)
                        {
                            CacheSE(eventData.intArgs[2], null);
                        }
                        if (eventData.intArgs.Length >= 4 && eventData.intArgs[3] > 0)
                        {
                            CacheSE(eventData.intArgs[3], null);
                        }
                        if (eventData.intArgs.Length >= 5 && eventData.intArgs[4] > 0)
                        {
                            CacheSE(eventData.intArgs[4], null);
                        }
                        break;
                    }
                    }
                }
            }
        }
    }
    public virtual void OnAnimEvent(AnimEventData.EventData data)
    {
        //IL_0078: Unknown result type (might be due to invalid IL or missing references)
        switch (data.id)
        {
        case AnimEventFormat.ID.SHAKE_CAMERA:
        {
            float percent    = data.floatArgs[0];
            float cycle_time = (data.floatArgs.Length <= 1) ? 0f : data.floatArgs[1];
            if (MonoBehaviourSingleton <InGameCameraManager> .IsValid())
            {
                MonoBehaviourSingleton <InGameCameraManager> .I.SetShakeCamera(_position, percent, cycle_time);
            }
            return;
        }

        case AnimEventFormat.ID.INVICIBLE_ON:
            hitOffFlag |= HIT_OFF_FLAG.INVICIBLE;
            return;

        case AnimEventFormat.ID.INVICIBLE_OFF:
            hitOffFlag &= ~HIT_OFF_FLAG.INVICIBLE;
            return;

        case AnimEventFormat.ID.SE_ONESHOT:
        {
            int    num2  = data.intArgs[0];
            string name2 = data.stringArgs[0];
            if (num2 != 0)
            {
                if (EnablePlaySound())
                {
                    SoundManager.PlayOneShotSE(num2, this, FindNode(name2));
                }
                return;
            }
            break;
        }

        case AnimEventFormat.ID.SE_LOOP_PLAY:
        {
            int num = data.intArgs[0];
            if (data.intArgs.Length > 1 && data.intArgs[1] != 0)
            {
                loopSeForceEndList.Add(num);
            }
            string name = data.stringArgs[0];
            if (EnablePlaySound())
            {
                SoundManager.PlayLoopSE(num, this, FindNode(name));
            }
            return;
        }

        case AnimEventFormat.ID.SE_LOOP_STOP:
        {
            int se_id = data.intArgs[0];
            SoundManager.StopLoopSE(se_id, this);
            return;
        }
        }
        Log.Error(LOG.INGAME, "AnimEvent Error! Event={0} Object={1}", data.name, this.get_name());
    }
Exemple #8
0
    public static Transform EffectEventExec(ID id, AnimEventData.EventData data, Transform transform, bool is_oneshot_priority, EffectNameAnalyzer name_analyzer = null, NodeFinder node_finder = null, Character chara = null)
    {
        //IL_0204: Unknown result type (might be due to invalid IL or missing references)
        //IL_0209: Unknown result type (might be due to invalid IL or missing references)
        //IL_020c: Unknown result type (might be due to invalid IL or missing references)
        //IL_0210: Unknown result type (might be due to invalid IL or missing references)
        //IL_023b: Unknown result type (might be due to invalid IL or missing references)
        //IL_025e: Unknown result type (might be due to invalid IL or missing references)
        //IL_0263: Unknown result type (might be due to invalid IL or missing references)
        //IL_02d2: Unknown result type (might be due to invalid IL or missing references)
        //IL_02d7: Unknown result type (might be due to invalid IL or missing references)
        //IL_02da: Unknown result type (might be due to invalid IL or missing references)
        //IL_02de: Unknown result type (might be due to invalid IL or missing references)
        //IL_0309: Unknown result type (might be due to invalid IL or missing references)
        //IL_032c: Unknown result type (might be due to invalid IL or missing references)
        //IL_0331: Unknown result type (might be due to invalid IL or missing references)
        //IL_034a: Unknown result type (might be due to invalid IL or missing references)
        //IL_034f: Unknown result type (might be due to invalid IL or missing references)
        //IL_036b: Unknown result type (might be due to invalid IL or missing references)
        //IL_0370: Unknown result type (might be due to invalid IL or missing references)
        //IL_0375: Unknown result type (might be due to invalid IL or missing references)
        //IL_0379: Unknown result type (might be due to invalid IL or missing references)
        //IL_0396: Unknown result type (might be due to invalid IL or missing references)
        //IL_039b: Unknown result type (might be due to invalid IL or missing references)
        //IL_03a0: Unknown result type (might be due to invalid IL or missing references)
        //IL_03a5: Unknown result type (might be due to invalid IL or missing references)
        //IL_03a7: Unknown result type (might be due to invalid IL or missing references)
        //IL_03a9: Unknown result type (might be due to invalid IL or missing references)
        //IL_03ab: Unknown result type (might be due to invalid IL or missing references)
        //IL_03ad: Unknown result type (might be due to invalid IL or missing references)
        //IL_03b6: Unknown result type (might be due to invalid IL or missing references)
        //IL_03bb: Unknown result type (might be due to invalid IL or missing references)
        //IL_03bf: Unknown result type (might be due to invalid IL or missing references)
        //IL_03c4: Unknown result type (might be due to invalid IL or missing references)
        //IL_03c8: Unknown result type (might be due to invalid IL or missing references)
        //IL_03dd: Unknown result type (might be due to invalid IL or missing references)
        //IL_03df: Unknown result type (might be due to invalid IL or missing references)
        //IL_03e3: Unknown result type (might be due to invalid IL or missing references)
        //IL_03ea: Unknown result type (might be due to invalid IL or missing references)
        if (id != ID.EFFECT && id != ID.EFFECT_ONESHOT && id != ID.EFFECT_STATIC && id != ID.EFFECT_LOOP_CUSTOM && id != ID.EFFECT_DEPEND_SP_ATTACK_TYPE && id != ID.EFFECT_DEPEND_WEAPON_ELEMENT && id != ID.EFFECT_SCALE_DEPEND_VALUE && id != ID.CAMERA_EFFECT)
        {
            return(null);
        }
        Transform val    = null;
        string    empty  = string.Empty;
        string    empty2 = string.Empty;

        if (id == ID.EFFECT_DEPEND_SP_ATTACK_TYPE)
        {
            if (object.ReferenceEquals(chara, null))
            {
                return(null);
            }
            Player player = chara as Player;
            if (object.ReferenceEquals(player, null))
            {
                return(null);
            }
            int num = (int)(1 + player.spAttackType);
            if (num >= data.stringArgs.Length)
            {
                return(null);
            }
            empty  = data.stringArgs[num];
            empty2 = data.stringArgs[0];
        }
        else
        {
            empty  = data.stringArgs[0];
            empty2 = ((data.stringArgs.Length <= 1) ? string.Empty : data.stringArgs[1]);
        }
        if (name_analyzer != null)
        {
            empty = name_analyzer(empty);
            if (empty == null)
            {
                return(null);
            }
        }
        int   num2 = data.floatArgs.Length;
        float num3 = (num2 <= 0) ? 1f : data.floatArgs[0];

        if (id == ID.CAMERA_EFFECT)
        {
            return(CreateCameraEffect(empty, num3, data));
        }
        Transform val2 = (node_finder != null) ? node_finder(empty2) : ((!string.IsNullOrEmpty(empty2)) ? Utility.Find(transform, empty2) : transform);

        switch (id)
        {
        case ID.EFFECT:
        case ID.EFFECT_STATIC:
        case ID.EFFECT_LOOP_CUSTOM:
        case ID.EFFECT_DEPEND_SP_ATTACK_TYPE:
        case ID.EFFECT_SCALE_DEPEND_VALUE:
            val = EffectManager.GetEffect(empty, val2);
            if (val == null)
            {
                Log.Warning("Failed to create effect!! " + empty);
            }
            else
            {
                if (id == ID.EFFECT_SCALE_DEPEND_VALUE && !object.ReferenceEquals(chara, null))
                {
                    num3 = chara.GetEffectScaleDependValue();
                }
                Vector3 localScale2 = val.get_localScale();
                val.set_localScale(localScale2 * num3);
                if (num2 >= 7)
                {
                    val.set_localPosition(new Vector3(data.floatArgs[1], data.floatArgs[2], data.floatArgs[3]));
                    val.set_localRotation(Quaternion.Euler(new Vector3(data.floatArgs[4], data.floatArgs[5], data.floatArgs[6])));
                }
            }
            break;

        case ID.EFFECT_DEPEND_WEAPON_ELEMENT:
        {
            Player player2 = chara as Player;
            if (!(player2 == null))
            {
                int currentWeaponElement = player2.GetCurrentWeaponElement();
                if (currentWeaponElement >= 0 && currentWeaponElement < 6)
                {
                    val = EffectManager.GetEffect(empty + currentWeaponElement.ToString(), val2);
                    if (!(val == null))
                    {
                        Vector3 localScale = val.get_localScale();
                        val.set_localScale(localScale * num3);
                        if (num2 >= 7)
                        {
                            val.set_localPosition(new Vector3(data.floatArgs[1], data.floatArgs[2], data.floatArgs[3]));
                            val.set_localRotation(Quaternion.Euler(new Vector3(data.floatArgs[4], data.floatArgs[5], data.floatArgs[6])));
                        }
                    }
                }
            }
            break;
        }

        case ID.EFFECT_ONESHOT:
        {
            Vector3    pos;
            Quaternion rot;
            if (num2 >= 7)
            {
                Matrix4x4  localToWorldMatrix = val2.get_localToWorldMatrix();
                Vector3    val3 = localToWorldMatrix.MultiplyPoint3x4(new Vector3(data.floatArgs[1], data.floatArgs[2], data.floatArgs[3]));
                Quaternion val4 = val2.get_rotation() * Quaternion.Euler(new Vector3(data.floatArgs[4], data.floatArgs[5], data.floatArgs[6]));
                pos = val3;
                rot = val4;
            }
            else
            {
                pos = val2.get_position();
                rot = val2.get_rotation();
            }
            if (val2.get_gameObject().get_activeInHierarchy())
            {
                EffectManager.OneShot(empty, pos, rot, val2.get_lossyScale() * num3, is_oneshot_priority, delegate(Transform effect)
                    {
                        //IL_0001: Unknown result type (might be due to invalid IL or missing references)
                        rymFX component = effect.get_gameObject().GetComponent <rymFX>();
                        if (component != null)
                        {
                            component.LoopEnd    = true;
                            component.AutoDelete = true;
                        }
                    });
            }
            break;
        }
        }
        return(val);
    }
Exemple #9
0
    private static Transform CreateCameraEffect(string effect_name, float effect_scale, AnimEventData.EventData data)
    {
        //IL_003c: Unknown result type (might be due to invalid IL or missing references)
        //IL_0041: Unknown result type (might be due to invalid IL or missing references)
        //IL_0043: Unknown result type (might be due to invalid IL or missing references)
        //IL_0045: Unknown result type (might be due to invalid IL or missing references)
        //IL_0076: Unknown result type (might be due to invalid IL or missing references)
        //IL_0099: Unknown result type (might be due to invalid IL or missing references)
        //IL_009e: Unknown result type (might be due to invalid IL or missing references)
        if (!MonoBehaviourSingleton <InGameCameraManager> .IsValid())
        {
            return(null);
        }
        Transform cameraTransform = MonoBehaviourSingleton <InGameCameraManager> .I.cameraTransform;

        if (cameraTransform == null)
        {
            return(null);
        }
        Transform effect = EffectManager.GetEffect(effect_name, cameraTransform);

        if (effect == null)
        {
            return(null);
        }
        Vector3 localScale = effect.get_localScale();

        effect.set_localScale(localScale * effect_scale);
        if (data.floatArgs.Length >= 7)
        {
            effect.set_localPosition(new Vector3(data.floatArgs[1], data.floatArgs[2], data.floatArgs[3]));
            effect.set_localRotation(Quaternion.Euler(new Vector3(data.floatArgs[4], data.floatArgs[5], data.floatArgs[6])));
        }
        return(effect);
    }
Exemple #10
0
    private void PreSetAnimationEventDataParamToEnemy(AnimEventData animEventData, Enemy enemy)
    {
        //IL_00f7: Unknown result type (might be due to invalid IL or missing references)
        //IL_0132: Unknown result type (might be due to invalid IL or missing references)
        if (!(animEventData == null))
        {
            AnimEventData.AnimData[] animations = animEventData.animations;
            if (animations != null)
            {
                int i = 0;
                for (int num = animations.Length; i < num; i++)
                {
                    AnimEventData.EventData[] events = animations[i].events;
                    if (events != null)
                    {
                        int j = 0;
                        for (int num2 = events.Length; j < num2; j++)
                        {
                            AnimEventData.EventData eventData = events[j];
                            if (eventData != null)
                            {
                                switch (eventData.id)
                                {
                                case AnimEventFormat.ID.MOVE_SIDEWAYS_LOOK_TARGET:
                                    if (eventData.floatArgs.Length >= 2)
                                    {
                                        enemy.moveAngle_deg      = eventData.floatArgs[0];
                                        enemy.moveAngleSpeed_deg = eventData.floatArgs[1];
                                    }
                                    break;

                                case AnimEventFormat.ID.MOVE_POINT_DATA:
                                    if (eventData.floatArgs.Length >= 2)
                                    {
                                        enemy.movePointPos = new Vector3(eventData.floatArgs[0], 0f, eventData.floatArgs[1]);
                                    }
                                    break;

                                case AnimEventFormat.ID.MOVE_LOOKAT_DATA:
                                    if (eventData.floatArgs.Length >= 3)
                                    {
                                        enemy.moveLookAtPos   = new Vector3(eventData.floatArgs[0], 0f, eventData.floatArgs[1]);
                                        enemy.moveLookAtAngle = eventData.floatArgs[2];
                                    }
                                    break;

                                case AnimEventFormat.ID.EFFECT:
                                    if (animations[i].name == "paralyze")
                                    {
                                        if (eventData.floatArgs.Length > 0)
                                        {
                                            enemy.paralyzeEffectScale = eventData.floatArgs[0];
                                        }
                                        if (eventData.stringArgs.Length > 0)
                                        {
                                            enemy.paralyzeEffectName = eventData.stringArgs[0];
                                        }
                                    }
                                    break;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    public void OnAnimEvent(AnimEventData.EventData data)
    {
        //IL_00ff: Unknown result type (might be due to invalid IL or missing references)
        //IL_0116: Unknown result type (might be due to invalid IL or missing references)
        //IL_011b: Unknown result type (might be due to invalid IL or missing references)
        //IL_0120: Unknown result type (might be due to invalid IL or missing references)
        //IL_0125: Unknown result type (might be due to invalid IL or missing references)
        //IL_0166: Unknown result type (might be due to invalid IL or missing references)
        //IL_0276: Unknown result type (might be due to invalid IL or missing references)
        //IL_027d: Unknown result type (might be due to invalid IL or missing references)
        //IL_0282: Unknown result type (might be due to invalid IL or missing references)
        //IL_0290: Unknown result type (might be due to invalid IL or missing references)
        //IL_0295: Unknown result type (might be due to invalid IL or missing references)
        if (!(stepCtrl != null) || !stepCtrl.OnAnimEvent(data))
        {
            switch (data.id)
            {
            case AnimEventFormat.ID.RADIAL_BLUR_START:
            {
                float     time3 = data.floatArgs[0];
                float     num4  = data.floatArgs[1];
                string    name  = data.stringArgs[0];
                bool      flag  = (data.intArgs[0] != 0) ? true : false;
                Transform val   = Utility.Find(loader.body, name);
                if (val == null)
                {
                    val = loader.body;
                }
                if (renderCamera == null && MonoBehaviourSingleton <InGameCameraManager> .IsValid())
                {
                    if (flag)
                    {
                        MonoBehaviourSingleton <InGameCameraManager> .I.StartRadialBlurFilter(time3, num4, val);
                    }
                    else
                    {
                        MonoBehaviourSingleton <InGameCameraManager> .I.StartRadialBlurFilter(time3, num4, val.get_position());
                    }
                }
                else
                {
                    Vector2 center = Vector2.op_Implicit(renderCamera.WorldToScreenPoint(val.get_position()));
                    center.x /= (float)Screen.get_width();
                    center.y  = Mathf.Lerp(0.5f, 1f, center.y / (float)Screen.get_height());
                    MonoBehaviourSingleton <FilterManager> .I.StartTubulanceFilter(num4, center, null);
                }
                if (!isFieldQuest)
                {
                    loader.animator.set_speed(0f);
                    if (onSignal != null)
                    {
                        onSignal();
                        onSignal = null;
                    }
                }
                break;
            }

            case AnimEventFormat.ID.RADIAL_BLUR_CHANGE:
            {
                float time2 = data.floatArgs[0];
                float num2  = data.floatArgs[1];
                if (num2 <= 0f)
                {
                    MonoBehaviourSingleton <InGameCameraManager> .I.EndRadialBlurFilter(time2);
                }
                else
                {
                    MonoBehaviourSingleton <InGameCameraManager> .I.ChangeRadialBlurFilter(time2, num2);
                }
                break;
            }

            case AnimEventFormat.ID.RADIAL_BLUR_END:
            {
                float time = data.floatArgs[0];
                MonoBehaviourSingleton <InGameCameraManager> .I.EndRadialBlurFilter(time);

                break;
            }

            case AnimEventFormat.ID.SE_ONESHOT:
            {
                int num3 = data.intArgs[0];
                if (num3 != 0)
                {
                    SoundManager.PlayOneShotSE(num3, null, MonoBehaviourSingleton <AppMain> .I.mainCameraTransform);
                }
                break;
            }

            case AnimEventFormat.ID.FIELD_QUEST_UI_OPEN:
                if (isFieldQuest && onSignal != null)
                {
                    onSignal();
                    onSignal = null;
                }
                break;

            case AnimEventFormat.ID.MOVE_FORWARD_START:
            {
                float num = data.floatArgs[0];
                enableEventMove   = true;
                eventMoveVelocity = Vector3.get_forward() * num;
                break;
            }

            case AnimEventFormat.ID.MOVE_END:
                enableEventMove   = false;
                eventMoveVelocity = Vector3.get_zero();
                break;
            }
        }
    }
    public void Initialize(StageObject attacker, Transform parentTrans, AnimEventData.EventData data, AttackInfo atkInfo, AnimEventShot childEventShot)
    {
        //IL_0079: Unknown result type (might be due to invalid IL or missing references)
        //IL_007e: Expected O, but got Unknown
        //IL_00b8: Unknown result type (might be due to invalid IL or missing references)
        //IL_00f0: Unknown result type (might be due to invalid IL or missing references)
        //IL_0106: Unknown result type (might be due to invalid IL or missing references)
        //IL_011b: Unknown result type (might be due to invalid IL or missing references)
        //IL_0131: Unknown result type (might be due to invalid IL or missing references)
        //IL_0136: Unknown result type (might be due to invalid IL or missing references)
        //IL_013d: Unknown result type (might be due to invalid IL or missing references)
        //IL_0150: Unknown result type (might be due to invalid IL or missing references)
        //IL_0155: Expected O, but got Unknown
        //IL_0161: Unknown result type (might be due to invalid IL or missing references)
        //IL_0166: Expected O, but got Unknown
        //IL_01a8: Unknown result type (might be due to invalid IL or missing references)
        //IL_01b8: Unknown result type (might be due to invalid IL or missing references)
        //IL_02f0: Unknown result type (might be due to invalid IL or missing references)
        //IL_02f5: Unknown result type (might be due to invalid IL or missing references)
        //IL_0301: Unknown result type (might be due to invalid IL or missing references)
        //IL_0307: Unknown result type (might be due to invalid IL or missing references)
        //IL_030c: Unknown result type (might be due to invalid IL or missing references)
        //IL_0311: Unknown result type (might be due to invalid IL or missing references)
        //IL_031c: Unknown result type (might be due to invalid IL or missing references)
        //IL_0321: Unknown result type (might be due to invalid IL or missing references)
        //IL_0327: Unknown result type (might be due to invalid IL or missing references)
        //IL_032c: Unknown result type (might be due to invalid IL or missing references)
        bulletData = atkInfo.bulletData;
        if (!(bulletData == null))
        {
            BulletData.BulletBase data2 = bulletData.data;
            if (data2 != null)
            {
                this.attacker    = attacker;
                this.parentTrans = parentTrans;
                int           num           = (!(attacker is Player)) ? 15 : 14;
                AttackHitInfo attackHitInfo = atkInfo as AttackHitInfo;
                if (attackHitInfo != null)
                {
                    attackHitInfo.enableIdentityCheck = false;
                }
                atkInfoName = atkInfo.name;
                _transform  = this.get_transform();
                _transform.set_parent((!MonoBehaviourSingleton <StageObjectManager> .IsValid()) ? MonoBehaviourSingleton <EffectManager> .I._transform : MonoBehaviourSingleton <StageObjectManager> .I._transform);
                _transform.set_position(parentTrans.get_position());
                switch (data.intArgs[0])
                {
                case 0:
                    _transform.set_rotation(attacker._transform.get_rotation());
                    break;

                case 1:
                    _transform.set_rotation(parentTrans.get_rotation());
                    break;

                case 2:
                    _transform.set_rotation(Quaternion.get_identity());
                    break;
                }
                defaultPos = _transform.get_position();
                childEventShot.get_transform().set_parent(_transform);
                bulletObj   = childEventShot.get_gameObject();
                bulletTrans = bulletObj.get_transform();
                Vector3 localPosition = default(Vector3);
                localPosition._002Ector(data.floatArgs[0], data.floatArgs[1], data.floatArgs[2]);
                bulletTrans.set_localEulerAngles(new Vector3(data.floatArgs[3], data.floatArgs[4], data.floatArgs[5]));
                bulletTrans.set_localPosition(localPosition);
                rotSpd      = data.floatArgs[6];
                moveSpd     = data.floatArgs[7];
                moveDis     = data.floatArgs[8];
                isChaseXPos = ((data.intArgs[2] != 0) ? true : false);
                isChaseYPos = ((data.intArgs[3] != 0) ? true : false);
                isChaseZPos = ((data.intArgs[4] != 0) ? true : false);
                isChaseXRot = ((data.intArgs[5] != 0) ? true : false);
                isChaseYRot = ((data.intArgs[6] != 0) ? true : false);
                isChaseZRot = ((data.intArgs[7] != 0) ? true : false);
                isRot       = ((data.intArgs[8] != 0) ? true : false);
                isMove      = ((data.intArgs[9] != 0) ? true : false);
                moveDir     = data.intArgs[10];
                isMinusMove = ((data.intArgs[11] != 0) ? true : false);
                if (parentTrans != null)
                {
                    defaultOffsetPos = Vector3.get_zero();
                    defaultOffsetRot = _transform.get_eulerAngles() - parentTrans.get_eulerAngles();
                }
                else
                {
                    defaultOffsetPos = Vector3.get_zero();
                    defaultOffsetRot = Vector3.get_zero();
                }
                if (isChaseXPos || isChaseYPos || isChaseZPos)
                {
                    isUseChasePos = true;
                }
                if (isChaseXRot || isChaseYRot || isChaseZRot)
                {
                    isUseChaseRot = true;
                }
                currentRotAngle = 0f;
                isInit          = true;
            }
        }
    }