예제 #1
0
 // Token: 0x06000722 RID: 1826 RVA: 0x0005EF2C File Offset: 0x0005D12C
 public void eat(int id)
 {
     this.effEat = new Effect(105, this.cx, this.cy + 20, 2, 1, -1);
     EffecMn.addEff(this.effEat);
     if (id == global::Char.myCharz().charID)
     {
         this.focus = global::Char.myCharz();
     }
     else
     {
         this.focus = GameScr.findCharInMap(id);
     }
 }
예제 #2
0
 // Token: 0x06000428 RID: 1064 RVA: 0x00023038 File Offset: 0x00021238
 public void update()
 {
     if (this.isMe)
     {
         if (this.isMe && this.type == 1 && global::Char.myCharz().isTeleport)
         {
             global::Char.myCharz().cx       = this.x;
             global::Char.myCharz().cy       = this.y2;
             global::Char.myCharz().statusMe = 4;
             GameScr.cmtoX          = this.x - GameScr.gW2;
             GameScr.cmtoY          = this.y - GameScr.gH23;
             GameScr.info1.isUpdate = false;
             global::Char.myCharz().isTeleport = false;
             Teleport.vTeleport.removeElement(this);
         }
         if (this.isMe && this.type == 0)
         {
             global::Char.myCharz().isTeleport = true;
         }
         if (this.isMe)
         {
             if (this.type == 0)
             {
                 GameScr.cmtoX = this.x - GameScr.gW2;
                 GameScr.cmtoY = this.y - GameScr.gH23;
             }
             if (this.type == 1)
             {
                 GameScr.info1.isUpdate = true;
             }
         }
         if (this.isMe && this.type == 0)
         {
             Controller.isStopReadMessage = false;
             global::Char.ischangingMap   = true;
             Teleport.vTeleport.removeElement(this);
         }
         return;
     }
     this.tFire++;
     if (this.tFire > 3)
     {
         this.tFire = 0;
     }
     if (this.isDown)
     {
         this.paintFire = true;
         this.painHead  = (this.type != 0);
         if (this.planet < 3)
         {
             int num = this.y2 - this.y >> 3;
             if (num < 1)
             {
                 num            = 1;
                 this.paintFire = false;
             }
             this.y += num;
         }
         else
         {
             if (GameCanvas.gameTick % 2 == 0)
             {
                 this.vy++;
             }
             if (this.y2 - this.y < this.vy)
             {
                 this.y         = this.y2;
                 this.paintFire = false;
             }
             else
             {
                 this.y += this.vy;
             }
         }
         if (this.isMe && this.type == 1 && global::Char.myCharz().isTeleport)
         {
             global::Char.myCharz().cx       = this.x;
             global::Char.myCharz().cy       = this.y - 30;
             global::Char.myCharz().statusMe = 4;
             GameScr.cmtoX          = this.x - GameScr.gW2;
             GameScr.cmtoY          = this.y - GameScr.gH23;
             GameScr.info1.isUpdate = false;
         }
         if (GameScr.findCharInMap(this.id) != null && !this.isMe && this.type == 1 && GameScr.findCharInMap(this.id).isTeleport)
         {
             GameScr.findCharInMap(this.id).cx       = this.x;
             GameScr.findCharInMap(this.id).cy       = this.y - 30;
             GameScr.findCharInMap(this.id).statusMe = 4;
         }
         if (Res.abs(this.y - this.y2) < 50 && TileMap.tileTypeAt(this.x, this.y, 2))
         {
             this.tHole = true;
             if (this.planet < 3)
             {
                 if (this.y % 24 != 0)
                 {
                     this.y -= this.y % 24;
                 }
                 this.tPrepare++;
                 if (this.tPrepare > 10)
                 {
                     this.tPrepare  = 0;
                     this.isDown    = false;
                     this.isUp      = true;
                     this.paintFire = false;
                 }
                 if (this.type == 1)
                 {
                     if (this.isMe)
                     {
                         global::Char.myCharz().isTeleport = false;
                     }
                     else if (GameScr.findCharInMap(this.id) != null)
                     {
                         GameScr.findCharInMap(this.id).isTeleport = false;
                     }
                     this.painHead = false;
                     return;
                 }
             }
             else
             {
                 this.y = this.y2;
                 if (!this.isShock)
                 {
                     GameScr.shock_scr = 10;
                     this.isShock      = true;
                 }
                 this.tPrepare++;
                 if (this.tPrepare > 30)
                 {
                     this.tPrepare  = 0;
                     this.isDown    = false;
                     this.isUp      = true;
                     this.paintFire = false;
                 }
                 if (this.type == 1)
                 {
                     if (this.isMe)
                     {
                         global::Char.myCharz().isTeleport = false;
                     }
                     else if (GameScr.findCharInMap(this.id) != null)
                     {
                         GameScr.findCharInMap(this.id).isTeleport = false;
                     }
                     this.painHead = false;
                     return;
                 }
             }
         }
     }
     else if (this.isUp)
     {
         this.tPrepare++;
         if (this.tPrepare > 30)
         {
             int num2 = this.y2 + 24 - this.y >> 3;
             if (num2 > 30)
             {
                 num2 = 30;
             }
             this.y        -= num2;
             this.paintFire = true;
         }
         else
         {
             if (this.tPrepare == 14 && this.createShip)
             {
                 SoundMn.gI().resumeAirShip();
             }
             if (this.tPrepare > 0 && this.type == 0)
             {
                 if (this.isMe)
                 {
                     global::Char.myCharz().isTeleport = false;
                     if (global::Char.myCharz().statusMe != 14)
                     {
                         global::Char.myCharz().statusMe = 3;
                     }
                     global::Char.myCharz().cvy = -3;
                 }
                 else if (GameScr.findCharInMap(this.id) != null)
                 {
                     GameScr.findCharInMap(this.id).isTeleport = false;
                     if (GameScr.findCharInMap(this.id).statusMe != 14)
                     {
                         GameScr.findCharInMap(this.id).statusMe = 3;
                     }
                     GameScr.findCharInMap(this.id).cvy = -3;
                 }
                 this.painHead = false;
             }
             if (this.tPrepare > 12 && this.type == 0)
             {
                 if (this.isMe)
                 {
                     global::Char.myCharz().isTeleport = true;
                 }
                 else if (GameScr.findCharInMap(this.id) != null)
                 {
                     GameScr.findCharInMap(this.id).cx         = this.x;
                     GameScr.findCharInMap(this.id).cy         = this.y;
                     GameScr.findCharInMap(this.id).isTeleport = true;
                 }
                 this.painHead = true;
             }
         }
         if (this.isMe)
         {
             if (this.type == 0)
             {
                 GameScr.cmtoX = this.x - GameScr.gW2;
                 GameScr.cmtoY = this.y - GameScr.gH23;
             }
             if (this.type == 1)
             {
                 GameScr.info1.isUpdate = true;
             }
         }
         if (this.y <= -80)
         {
             if (this.isMe && this.type == 0)
             {
                 Controller.isStopReadMessage = false;
                 global::Char.ischangingMap   = true;
             }
             if (!this.isMe && GameScr.findCharInMap(this.id) != null && this.type == 0)
             {
                 GameScr.vCharInMap.removeElement(GameScr.findCharInMap(this.id));
             }
             if (this.planet < 3)
             {
                 Teleport.vTeleport.removeElement(this);
                 return;
             }
             this.y = -80;
             this.tDelayHole++;
             if (this.tDelayHole > 80)
             {
                 this.tDelayHole = 0;
                 Teleport.vTeleport.removeElement(this);
             }
         }
     }
 }