protected override void FootingCollision(SolidObj footing)
    {
        base.FootingCollision(footing);

        if (Base.Sprite.IsPlaying("weed_air"))
          Base.Sprite.Play("Land");
    }
    protected override void FootingCollision(SolidObj footing)
    {
        if (Base.Physics.vspeed != 0 && Base.Sprite.IsPlaying("glob_jump", "glob_attack"))
          Base.Sprite.Play("Land");

        base.FootingCollision(footing);
    }
Example #3
0
    protected override void FootingCollision(SolidObj footing)
    {
        if (Base.Physics.vspeed != 0)
          Base.Sound.Play("Land");

        bool dontBounce = false;
        if (footing.SpecialType == eObjectType.MANHOLE && Base.Physics.vspeed < 0) {
          Manhole_Base manhole = footing as Manhole_Base;

          if (manhole.strength == 0 || (Base.Is("GroundPounding") && (manhole.strength == 1 || Stitch.canGroundBoom))) {
        manhole.StartSpinning();
        dontBounce = true;
          }
        }

        base.FootingCollision(footing);

        bounced = false;
        if (Base.Sprite.IsPlaying("kat_pound"))
          BounceOffGround();

        if (dontBounce)
          Base.Physics.vspeed = 0;

        Stitch.Kat.hasAirAttack = true;
        Stitch.Kat.hasUppercut = true;

        if (Base.Sprite.IsPlaying("kat_uppercut"))
          Base.Sprite.Play("Idle");
    }
Example #4
0
 protected override void RoofCollision(SolidObj roof)
 {
     if (roof.SpecialType == eObjectType.MANHOLE && Base.Physics.vspeed > 0)
       (roof as Manhole_Base).StartSpinning();
     else {
       Base.Physics.vspeed = Math.Min(Base.Physics.vspeed, 2);
       base.RoofCollision(roof);
     }
 }
Example #5
0
 protected override void WallCollision(SolidObj wall)
 {
     Base.Physics.hspeed = 0;
 }