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); }
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"); }
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); } }
protected override void WallCollision(SolidObj wall) { Base.Physics.hspeed = 0; }