Add fire mario mode
This commit is contained in:
+14
-10
@@ -88,7 +88,8 @@ void Mario::handleVisitor(SDLPP::Visitor &visitor) {
|
||||
// for some reason falling of the edge causes on_ground to be true, but
|
||||
// visitor ground_y is 0
|
||||
if (m_visitor.getGroundY() != 0) {
|
||||
setPos(getPos().getX(), m_visitor.getGroundY() - getDoubleRect().second.getY());
|
||||
setPos(getPos().getX(),
|
||||
m_visitor.getGroundY() - getDoubleRect().second.getY());
|
||||
}
|
||||
}
|
||||
// if we just left ground gravity didn't work in custom_move
|
||||
@@ -217,15 +218,18 @@ void Mario::setBig() {
|
||||
setFireFlag();
|
||||
} else {
|
||||
setBigFlag();
|
||||
setSize({BLOCK_SIZE, 2 * BLOCK_SIZE});
|
||||
setBaseRect(isJumping() ? MARIO_JUMP_BIG_SRC : MARIO_STANDING_BIG_SRC);
|
||||
setAnimationFrames(MARIO_WALK_BIG_ANIM);
|
||||
standing_src = &MARIO_STANDING_BIG_SRC;
|
||||
death_src = &MARIO_DEATH_BIG_SRC;
|
||||
change_dir_src = &MARIO_CHANGE_DIR_BIG_SRC;
|
||||
jump_src = &MARIO_JUMP_BIG_SRC;
|
||||
walk_anim = &MARIO_WALK_BIG_ANIM;
|
||||
setSize({ BLOCK_SIZE, 2 * BLOCK_SIZE });
|
||||
}
|
||||
setBaseRect(isJumping()
|
||||
? (hasFire() ? MARIO_JUMP_FIRE_SRC : MARIO_JUMP_BIG_SRC)
|
||||
: (hasFire() ? MARIO_STANDING_FIRE_SRC
|
||||
: MARIO_STANDING_BIG_SRC));
|
||||
setAnimationFrames(hasFire() ? MARIO_WALK_FIRE_ANIM : MARIO_WALK_BIG_ANIM);
|
||||
standing_src = hasFire() ? &MARIO_STANDING_FIRE_SRC : &MARIO_STANDING_BIG_SRC;
|
||||
death_src = hasFire() ? &MARIO_DEATH_FIRE_SRC : &MARIO_DEATH_BIG_SRC;
|
||||
change_dir_src = hasFire() ? &MARIO_CHANGE_DIR_FIRE_SRC : &MARIO_CHANGE_DIR_BIG_SRC;
|
||||
jump_src = hasFire() ? &MARIO_JUMP_FIRE_SRC : &MARIO_JUMP_BIG_SRC;
|
||||
walk_anim = hasFire() ? &MARIO_WALK_FIRE_ANIM : &MARIO_WALK_BIG_ANIM;
|
||||
}
|
||||
|
||||
void Mario::unsetBig() {
|
||||
@@ -233,7 +237,7 @@ void Mario::unsetBig() {
|
||||
unsetFireFlag();
|
||||
} else {
|
||||
unsetBigFlag();
|
||||
setSize({BLOCK_SIZE, BLOCK_SIZE});
|
||||
setSize({ BLOCK_SIZE, BLOCK_SIZE });
|
||||
setBaseRect(isJumping() ? MARIO_JUMP_SRC : MARIO_STANDING_SRC);
|
||||
setAnimationFrames(MARIO_WALK_ANIM);
|
||||
standing_src = &MARIO_STANDING_SRC;
|
||||
|
||||
Reference in New Issue
Block a user