Пример #1
0
        public void Open(Unit.DropItem DropItem, DropItemEffect dropItemTemplate, int numGolds, DropGoldEffect dropGoldTemplate)
        {
            ((Animation)((Component)this).GetComponent <Animation>()).AddClip(this.OpenAnimation, ((Object)this.OpenAnimation).get_name());
            ((Animation)((Component)this).GetComponent <Animation>()).Play(((Object)this.OpenAnimation).get_name());
            this.mOpened = true;
            Transform transform = ((Component)this).get_transform();

            if (numGolds > 0)
            {
                this.mDropGold      = (DropGoldEffect)Object.Instantiate <DropGoldEffect>((M0)dropGoldTemplate);
                this.mDropGold.Gold = numGolds;
                ((Component)this.mDropGold).get_transform().set_position(transform.get_position());
                ((Component)this.mDropGold).get_gameObject().SetActive(false);
            }
            if (!Object.op_Inequality((Object)dropItemTemplate, (Object)null) || DropItem == null)
            {
                return;
            }
            this.mDropItem = (DropItemEffect)Object.Instantiate <DropItemEffect>((M0)dropItemTemplate);
            ((Component)this.mDropItem).get_transform().set_position(Vector3.op_Addition(transform.get_position(), this.DropOffset));
            if (Object.op_Inequality((Object)SceneBattle.Instance, (Object)null))
            {
                SceneBattle.Popup2D(((Component)this.mDropItem).get_gameObject(), ((Component)this.mDropItem).get_transform().get_position(), 0, 0.0f);
            }
            this.mDropItem.DropItem = DropItem;
            ((Component)this.mDropItem).get_gameObject().SetActive(false);
        }
Пример #2
0
 private void Update()
 {
     if (!this.mOpened)
     {
         return;
     }
     if (!this.mDropSpawned && Object.op_Inequality((Object)this.mDropItem, (Object)null))
     {
         this.DropDelay -= Time.get_deltaTime();
         if ((double)this.DropDelay <= 0.0)
         {
             this.mDropSpawned = true;
             ((Component)this.mDropItem).get_gameObject().SetActive(true);
         }
     }
     if (!this.mGoldSpawned && Object.op_Inequality((Object)this.mDropGold, (Object)null))
     {
         this.GoldDelay -= Time.get_deltaTime();
         if ((double)this.GoldDelay <= 0.0)
         {
             this.mGoldSpawned = true;
             ((Component)this.mDropGold).get_gameObject().SetActive(true);
             this.mDropGold = (DropGoldEffect)null;
         }
     }
     if (this.IsPlaying() || Object.op_Implicit((Object)this.mDropGold) || Object.op_Implicit((Object)this.mDropItem))
     {
         return;
     }
     Object.Destroy((Object)((Component)this).get_gameObject());
 }