protected override void DownB() { cdTimer = 700; state = FighterStates.Paused; MeleeAttack db = new MeleeAttack("Right", _charTextures[4], new Rectangle((int)Position.X - 35, (int)Position.Y + 34, 120, 10), new Rectangle((int)Position.X - 35, (int)Position.Y, 120, 10), 13, "V", this, 30, 10, Math.PI / 6, true); activeAttacks.Add((ActionTypes.SideSp, db)); }
protected override void SideB() { cdTimer = 200; state = FighterStates.Paused; string direction = facing; int positionX = (int)Position.X + (facing == "Left" ? -46 : 36); int positionY = (int)Position.Y + 35; Rectangle atkPosition = new Rectangle(positionX, positionY, 60, 5); Rectangle atkHitbox = atkPosition; double kbAngle = facing == "Left" ? 5 * Math.PI / 6 : Math.PI / 6; //The plan for MeleeMoves is to make it so we can make the hitbox rectangles here go from 10 to 60, 10 at a time. MeleeAttack sb = new MeleeAttack(direction, _charTextures[2], atkPosition, atkHitbox, 6, "V", this, 20, 5, kbAngle, true); activeAttacks.Add((ActionTypes.SideSp, sb)); }
protected override void UpB() { // Magnet Rise; Melee cdTimer = 500; string direction = facing; int positionX = (int)Position.X + (facing == "Left" ? -5 : 5); int positionY = (int)Position.Y; Rectangle atkPosition = new Rectangle(positionX, positionY, 50, 60); Rectangle atkHitbox = atkPosition; MeleeAttack nb = new MeleeAttack(direction, _attackTextures[ActionTypes.UpSp], atkPosition, atkHitbox, 10, "H", this, 30, 0, 0, true); activeAttacks.Add((ActionTypes.UpSp, nb)); state = FighterStates.Helpless; currAnimation = _charTextures[ActionTypes.UpSp]; vel.Y = -10; }
protected override void SideB() { // Thunder; Melee cdTimer = 500; string direction = facing; int positionX = (int)Position.X + (facing == "Left" ? -65 : 65); int positionY = (int)Position.Y + 20; Rectangle atkPosition = new Rectangle(positionX, positionY, 65, 14); Rectangle atkHitbox = atkPosition; double kbAngle = facing == "Left" ? Math.PI : 0; MeleeAttack nb = new MeleeAttack(direction, _attackTextures[ActionTypes.SideSp], atkPosition, atkHitbox, 8, "V", this, 30, 5, kbAngle, true); activeAttacks.Add((ActionTypes.SideSp, nb)); state = FighterStates.Paused; currAnimation = _charTextures[ActionTypes.SideSp]; }
protected override void NeutralB() { // Thunder Punch; Melee cdTimer = 700; string direction = facing; int positionX = (int)Position.X + (facing == "Left" ? -2 : 2); int positionY = (int)Position.Y + 1; Rectangle atkPosition = new Rectangle(positionX, positionY, 60, 36); Rectangle atkHitbox = atkPosition; double kbAngle = facing == "Left" ? 5 * Math.PI / 6 : Math.PI / 6; MeleeAttack nb = new MeleeAttack(direction, _attackTextures[ActionTypes.NeutralSp], atkPosition, atkHitbox, 2, "H", this, 30, 5, kbAngle, true, 300f); activeAttacks.Add((ActionTypes.NeutralSp, nb)); state = FighterStates.Paused; currAnimation = _charTextures[ActionTypes.NeutralSp]; }
protected override void DownB() { // Magnet Rise; Melee cdTimer = 500; string direction = facing; int positionX = (int)Position.X + (facing == "Left" ? -105 : 65); int positionY = (int)Position.Y; Rectangle atkPosition = new Rectangle(positionX, positionY, 100, 20); Rectangle atkHitbox = atkPosition; double kbAngle = facing == "Left" ? Math.PI : 0; MeleeAttack nb = new MeleeAttack(direction, _attackTextures[ActionTypes.DownSp], atkPosition, atkHitbox, 5, "V", this, 30, 5, kbAngle, true); activeAttacks.Add((ActionTypes.DownSp, nb)); state = FighterStates.Paused; currAnimation = _charTextures[ActionTypes.DownSp]; }
protected override void UpB() { cdTimer = 100; state = FighterStates.Helpless; string direction = facing; int positionX = (int)Position.X + 10; int positionY = (int)Position.Y - 8; Rectangle atkPosition = new Rectangle(positionX, positionY, 30, 60); Rectangle atkHitbox = atkPosition; double kbAngle = Math.PI / 2; MeleeAttack ub = new MeleeAttack(direction, _charTextures[3], atkPosition, atkHitbox, 12, "H", this, 5, 7, kbAngle, false); activeAttacks.Add((ActionTypes.SideSp, ub)); vel.Y = -15; }