butt_jump = false;
flapping_velocity = 0;
-
+
+ // temporary to help player's choosing a flapping
+ flapping_mode = MAREK_FLAP;
+
+ // Ricardo's flapping
+ flaps_nb = 0;
+
frame_main = 0;
frame_ = 0;
/* Reset score multiplier (for multi-hits): */
if (!invincible_timer.started())
{
- /*if(player_status.score_multiplier > 2)
- { // show a message
+ if(player_status.score_multiplier > player_status.max_score_multiplier)
+ {
+ player_status.max_score_multiplier = player_status.score_multiplier;
+
+ // show a message
char str[124];
- sprintf(str, _("%d bad guys in a row!"), player_status.score_multiplier-1);
+ sprintf(str, _("New max combo: %d"), player_status.max_score_multiplier-1);
Sector::current()->add_floating_text(base, str);
- }*/
+ }
player_status.score_multiplier = 1;
}
}
Sector::current()->add_particles(
Vector(base.x + (dir == RIGHT ? base.width : 0), base.y+base.height),
dir == RIGHT ? 270+20 : 90-40, dir == RIGHT ? 270+40 : 90-20,
- Vector(2.8,-2.6), Vector(0,0.030), 3, Color(100,100,100), 3, 800);
+ Vector(2.8,-2.6), Vector(0,0.030), 3, Color(100,100,100), 3, 800,
+ LAYER_OBJECTS+1);
ax *= 2.5;
}
flapping = false;
can_jump = false;
can_flap = false;
+ flaps_nb = 0; // Ricardo's flapping
if (size == SMALL)
SoundManager::get()->play_sound(IDToSound(SND_JUMP));
else
}
}
-
+ // temporary to help player's choosing a flapping
+ if(flapping_mode == RICARDO_FLAP)
+ {
+ // Flapping, Ricardo's version
+ // similar to SM3 Fox
+ if(input.jump == DOWN && input.old_jump == UP && can_flap &&
+ flaps_nb < 3)
+ {
+ physic.set_velocity_y(3.5);
+ physic.set_velocity_x(physic.get_velocity_x() * 0.35);
+ flaps_nb++;
+ }
+ }
+ else if(flapping_mode == MAREK_FLAP)
+ {
// Flapping, Marek's version
if (input.jump == DOWN && can_flap)
{
physic.set_velocity_y((float)flapping_timer.get_gone()/850);
}
}
-
- /* // Flapping, Ryan's version
+ }
+ else if(flapping_mode == RYAN_FLAP)
+ {
+ // Flapping, Ryan's version
if (input.jump == DOWN && can_flap)
{
if (!flapping_timer.started())
&& physic.get_velocity_y() < 0)
{
float gravity = Sector::current()->gravity;
+ (void)gravity;
float xr = (fabsf(physic.get_velocity_x()) / MAX_RUN_XM);
// XXX: magic numbers. should be a percent of gravity
{
physic.set_acceleration_y(0);
}
- */
+ }
+
// Hover
//(disabled by default, use cheat code "hover" to toggle on/off)
if(badguy->dying == DYING_NOT && badguy->mode != BadGuy::BOMB_TICKING &&
badguy->mode != BadGuy::BOMB_EXPLODE)
{
- if (fabsf(base.x - badguy->base.x) < 150 &&
- fabsf(base.y - badguy->base.y) < 60 &&
- (issolid(badguy->base.x + 1, badguy->base.y + badguy->base.height) ||
- issolid(badguy->base.x + badguy->base.width - 1, badguy->base.y + badguy->base.height)))
+ if (fabsf(base.x - badguy->base.x) < 96 &&
+ fabsf(base.y - badguy->base.y) < 64)
badguy->kill_me(25);
}
}
flapping = false;
falling_from_flap = false;
- if(player_status.score_multiplier >= 5)
- { // show a message
- char str[124];
-// if (player_status.score_multiplier <= 4) {sprintf(str, _("Combo x%d"), player_status.score_multiplier);}
- if (player_status.score_multiplier == 5)
- sprintf(str, _("Good! x%d"), player_status.score_multiplier);
- else if (player_status.score_multiplier == 6)
- sprintf(str, _("Great! x%d"), player_status.score_multiplier);
- else if (player_status.score_multiplier == 7)
- sprintf(str, _("Awesome! x%d"), player_status.score_multiplier);
- else if (player_status.score_multiplier == 8)
- sprintf(str, _("Incredible! x%d"), player_status.score_multiplier);
- else if (player_status.score_multiplier == 9)
- sprintf(str, _("Godlike! ;-) x%d"), player_status.score_multiplier);
- else
- sprintf(str, _("Unbelievable!! x%d"), player_status.score_multiplier);
- Sector::current()->add_floating_text(base, str);
- }
-
if (input.jump)
physic.set_velocity_y(5.2);
else