Jump to content

Need bit of help of solving a issue with DamageMessageBox (AS3)


tjnome

Recommended Posts

I'm having a hard time how to solve a issue with Perfect Information with flyovers. The issue is that information inside critical flyover (messagebox) dissapears.

YouTube Video of the bug: (Thanks sernik for report)

https://www.youtube.com/watch?v=BfSlFYGT6hg

 

After a lot of digging i'm finding this difference between normal damagebox and criticalbox

function AnimateInDamage()
   {
      this._alpha = 100;
      this._visible = true;
      if(this.animateOutTimerHandle != -1 && this.animateOutTimerHandle != undefined)
      {
         FxsTween.removeTimer(this.animateOutTimerHandle);
      }
      if(FxsTween.isTweening(this))
      {
         FxsTween.removeTweens(this);
      }
      if(this.displayTime > 0)
      {
         this.animateOutTimerHandle = FxsTween.addTimer(this.displayTime,mx.utils.Delegate.create(this,this.AnimateOut));
      }
      else
      {
         this.animateOutTimerHandle = -1;
      }
      switch(this.behavior)
      {
         case DamageMessageBox.BEHAVIOR_DEFAULT:
         default:
            this.gotoAndPlay("_default");
            FxsTween.addTween(this.textBg,{_x:this.textWidth,time:0.2,delay:0.5});
            break;
         case DamageMessageBox.BEHAVIOR_STEADY:
            this.gotoAndStop("_steady");
            this.textBg._x = this.textWidth;
      }
   }
   function AnimateInCrit()
   {
      this._alpha = 100;
      this._visible = true;
      if(this.animateOutTimerHandle != -1)
      {
         FxsTween.removeTimer(this.animateOutTimerHandle);
      }
      if(FxsTween.isTweening(this))
      {
         FxsTween.removeTweens(this);
      }
      if(this.displayTime > 0)
      {
         this.animateOutTimerHandle = FxsTween.addTimer(this.displayTime,mx.utils.Delegate.create(this,this.AnimateOut));
      }
      else
      {
         this.animateOutTimerHandle = -1;
      }
      switch(this.behavior)
      {
         case DamageMessageBox.BEHAVIOR_DEFAULT:
         default:
            this.gotoAndPlay("_crit");
            FxsTween.addTween(this.critTextBG,{_x:this.critTextWidth,time:0.1,delay:0.2,onComplete:mx.utils.Delegate.create(this,this.AnimateInCritDamage)});
            if(this.textBg._visible)
            {
               this.textBg._x = this.textWidth;
            }
            break;
         case DamageMessageBox.BEHAVIOR_STEADY:
            this.gotoAndStop("_critSteady");
            this.critTextBG._x = this.critTextWidth;
            if(this.textBg._visible)
            {
               this.textBg._x = this.textWidth;
            }
      }
   }
   function AnimateInCritDamage()
   {
      if(this.damage2 != undefined && this.damage2 > 0)
      {
         FxsTween.addTween(this.textBg,{_x:this.textWidth,time:0.2,delay:1.3});
      }
   }

I found this in gfxWorldMessageMgr.upk (XCOM 2\XComGame\Content\XCOM_2\Packages\GFx)

 

I can confirm the bug is only when sendt as critical message to the flash. If sendt as normal damage it's not breaking up like in the video. The big question now is how I can fix this?

Link to comment
Share on other sites

Oh, my video. :wink: Did You hit the flashy wall? After my adventures with gfx's inside of upk's I gave up trying to change anything in this. I wish You good luck...

 

Yeah hit the wall hard on this one. Pretty much hoping that Firaxis fixing it themself :P

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...