示例#1
0
    public void Initialize(int playerId, int decoyId, BulletData bullet, Vector3 position, SkillInfo.SkillParam skill, bool isHit)
    {
        //IL_0085: Unknown result type (might be due to invalid IL or missing references)
        //IL_008a: Expected O, but got Unknown
        //IL_00aa: Unknown result type (might be due to invalid IL or missing references)
        //IL_00b7: Unknown result type (might be due to invalid IL or missing references)
        //IL_00fc: Unknown result type (might be due to invalid IL or missing references)
        //IL_010c: Unknown result type (might be due to invalid IL or missing references)
        //IL_0111: Unknown result type (might be due to invalid IL or missing references)
        //IL_012c: 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_0143: Unknown result type (might be due to invalid IL or missing references)
        //IL_015f: Unknown result type (might be due to invalid IL or missing references)
        //IL_0197: Unknown result type (might be due to invalid IL or missing references)
        if (!MonoBehaviourSingleton <StageObjectManager> .IsValid())
        {
            Log.Error(LOG.INGAME, "StageObjectManager is invalid. Can't initialize DecoyBulletObject.");
        }
        else
        {
            base.objectType = OBJECT_TYPE.DECOY;
            StageObject stageObject = MonoBehaviourSingleton <StageObjectManager> .I.FindPlayer(playerId);

            if (!object.ReferenceEquals(stageObject, null))
            {
                ownerPlayer = (stageObject as Player);
            }
            bulletData      = bullet;
            skillParam      = skill;
            lifeTime        = bulletData.data.appearTime;
            dontHitSec      = bulletData.dataDecoy.dontHitSec;
            cachedTransform = this.get_transform();
            cachedTransform.SetParent(MonoBehaviourSingleton <StageObjectManager> .I._transform);
            cachedTransform.set_position(position);
            cachedTransform.set_localScale(Vector3.get_one());
            if (MonoBehaviourSingleton <EffectManager> .IsValid())
            {
                cachedEffectTransform = EffectManager.GetEffect(bulletData.data.effectName, MonoBehaviourSingleton <EffectManager> .I._transform);
                cachedEffectTransform.set_position(cachedTransform.get_position() + bulletData.data.dispOffset);
                cachedEffectTransform.set_localRotation(Quaternion.Euler(bulletData.data.dispRotation));
            }
            id = decoyId;
            this.get_gameObject().set_name(OBJ_NAME + decoyId);
            this.get_gameObject().set_layer(12);
            ignoreLayerMask |= -1073741824;
            if (!object.ReferenceEquals(ownerPlayer, null) && isHit)
            {
                cachedCollider = this.get_gameObject().AddComponent <SphereCollider>();
                cachedCollider.set_radius(bulletData.data.radius);
                cachedCollider.set_isTrigger(true);
                cachedCollider.set_enabled(true);
                if (!string.IsNullOrEmpty(skillParam.tableData.attackInfoNames[0]))
                {
                    atkInfo = FindAttackInfo(skillParam.tableData.attackInfoNames[0], true, false);
                }
                ownerPlayer.GetAtk(atkInfo as AttackHitInfo, ref exAtk);
            }
            isInitialized = true;
        }
    }
 private void OnDisappear()
 {
     //IL_0065: Unknown result type (might be due to invalid IL or missing references)
     //IL_007b: Unknown result type (might be due to invalid IL or missing references)
     //IL_0082: Expected O, but got Unknown
     //IL_008f: Unknown result type (might be due to invalid IL or missing references)
     //IL_0095: Expected O, but got Unknown
     //IL_00a0: Unknown result type (might be due to invalid IL or missing references)
     ownerPlayer           = null;
     usePlayer             = null;
     bulletData            = null;
     skillParam            = null;
     cachedPlayerTransform = null;
     cachedTransform       = null;
     if (!object.ReferenceEquals(cachedCollider, null))
     {
         cachedCollider.set_enabled(false);
     }
     cachedCollider = null;
     if (cachedEffectTransform != null && cachedEffectTransform.get_gameObject() != null)
     {
         EffectManager.ReleaseEffect(cachedEffectTransform.get_gameObject(), true, false);
     }
     cachedEffectTransform = null;
     if (!object.ReferenceEquals((object)this.get_gameObject(), null))
     {
         Object.Destroy(this.get_gameObject());
     }
     isInitialized = false;
 }
    }    //IL_0019: Unknown result type (might be due to invalid IL or missing references)

    //IL_001f: Unknown result type (might be due to invalid IL or missing references)
    //IL_0020: Unknown result type (might be due to invalid IL or missing references)


    public void Initialize(Player player, BulletData bullet, Vector3 position, SkillInfo.SkillParam skill, bool isHealDamgeEnemy, bool isOwner)
    {
        //IL_0093: Unknown result type (might be due to invalid IL or missing references)
        //IL_00bb: Unknown result type (might be due to invalid IL or missing references)
        //IL_00c0: Expected O, but got Unknown
        //IL_00c7: Unknown result type (might be due to invalid IL or missing references)
        //IL_00cc: Expected O, but got Unknown
        //IL_00ec: Unknown result type (might be due to invalid IL or missing references)
        //IL_00f8: Unknown result type (might be due to invalid IL or missing references)
        //IL_014e: Unknown result type (might be due to invalid IL or missing references)
        //IL_015e: Unknown result type (might be due to invalid IL or missing references)
        //IL_0163: Unknown result type (might be due to invalid IL or missing references)
        //IL_017e: Unknown result type (might be due to invalid IL or missing references)
        //IL_0183: Unknown result type (might be due to invalid IL or missing references)
        //IL_018e: Unknown result type (might be due to invalid IL or missing references)
        //IL_01d2: Unknown result type (might be due to invalid IL or missing references)
        //IL_0238: Unknown result type (might be due to invalid IL or missing references)
        //IL_023d: Expected O, but got Unknown
        if (!MonoBehaviourSingleton <StageObjectManager> .IsValid())
        {
            Log.Error(LOG.INGAME, "StageObjectManager is invalid. Can't initialize PresentBulletObject.");
        }
        else
        {
            ownerPlayer  = ((!isOwner) ? null : player);
            usePlayer    = player;
            bulletData   = bullet;
            skillParam   = skill;
            healValue    = ((bulletData.dataZone.type == BulletData.BulletZone.TYPE.HEAL) ? skill.supportValue[0] : 0);
            lifeTime     = skill.supportTime[0];
            intervalTime = bullet.dataZone.intervalTime;
            this.get_gameObject().set_name(OBJ_NAME + skill.tableData.id);
            cachedPlayerTransform = player.get_transform();
            cachedTransform       = this.get_transform();
            cachedTransform.SetParent(MonoBehaviourSingleton <StageObjectManager> .I._transform);
            cachedTransform.set_position(position);
            cachedTransform.set_localScale(Vector3.get_one());
            if (MonoBehaviourSingleton <EffectManager> .IsValid())
            {
                cachedEffectTransform = EffectManager.GetEffect(bulletData.data.effectName, MonoBehaviourSingleton <EffectManager> .I._transform);
                if (!object.ReferenceEquals(cachedEffectTransform, null))
                {
                    cachedEffectTransform.set_position(cachedTransform.get_position() + bulletData.data.dispOffset);
                    cachedEffectTransform.set_localRotation(Quaternion.Euler(bulletData.data.dispRotation));
                }
            }
            this.get_gameObject().set_layer(31);
            ignoreLayerMask |= 41984;
            ignoreLayerMask |= 20480;
            ignoreLayerMask |= 2490880;
            cachedCollider   = this.get_gameObject().AddComponent <SphereCollider>();
            cachedCollider.set_radius(bulletData.data.radius);
            cachedCollider.set_isTrigger(true);
            cachedCollider.set_enabled(true);
            validSecCollection.Clear();
            if (isHealDamgeEnemy && healValue > 0)
            {
                GameObject           val = new GameObject(HEALATK_NAME);
                HealAttackZoneObject healAttackZoneObject = val.AddComponent <HealAttackZoneObject>();
                healAttackZoneObject.Setup(ownerPlayer, cachedTransform, bullet, skill);
            }
            isInitialized = true;
        }
    }
 public override void OnAttackedHitFix(AttackedHitStatusFix status)
 {
     base.OnAttackedHitFix(status);
     m_sphereCollider.set_enabled(false);
     RequestDestroy();
 }