public Player(PlayState parent) : base(Vector2.Zero, ORIGINAL_WIDTH, ORIGINAL_HEIGHT, Drawing.DrawOrder.ENTITIES) { DEATH_FRAME = 32; this.parent = parent; AddAnimation("walk_d", CreateAnimFrameArray(1, 0), 6, true); AddAnimation("walk_r", CreateAnimFrameArray(2, 3), 8, true); AddAnimation("walk_u", CreateAnimFrameArray(4, 5), 6, true); AddAnimation("walk_l", CreateAnimFrameArray(6, 7), 8, true); AddAnimation("attack_d", CreateAnimFrameArray(8, 9), 10, false); AddAnimation("attack_r", CreateAnimFrameArray(10, 11), 10, false); AddAnimation("attack_u", CreateAnimFrameArray(12, 13), 10, false); AddAnimation("attack_l", CreateAnimFrameArray(14, 15), 10, false); AddAnimation("fall", CreateAnimFrameArray(28, 29, 30, 31), 5, false); AddAnimation("die", CreateAnimFrameArray(25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 32), 6, false); AddAnimation("slumped", CreateAnimFrameArray(32)); AddAnimation("whirl", CreateAnimFrameArray(25, 26, 27, 24), 12, true); AddAnimation("idle_d", CreateAnimFrameArray(24), 4, true); AddAnimation("idle_r", CreateAnimFrameArray(25), 4, true); AddAnimation("idle_u", CreateAnimFrameArray(26), 4, true); AddAnimation("idle_l", CreateAnimFrameArray(27), 4, true); AddAnimation("jump_d", CreateAnimFrameArray(16, 17), 4, true); AddAnimation("jump_r", CreateAnimFrameArray(18, 19), 4, true); AddAnimation("jump_u", CreateAnimFrameArray(20, 21), 4, true); AddAnimation("jump_l", CreateAnimFrameArray(22, 23), 4, true); AddAnimation("idle_climb", CreateAnimFrameArray(33)); AddAnimation("climb", CreateAnimFrameArray(34, 35), 8, true); height = HITBOX_HEIGHT; offset = new Vector2(3, DEFAULT_Y_OFFSET); width = HITBOX_WIDTH; Play("idle_u"); ANIM_STATE = PlayerAnimState.as_idle; facing = Facing.UP; broom = new Broom(this); shadow = new Shadow(this, new Vector2(3, -1), fps: 20); }