Sprite* img_star;
Sprite* img_growup;
Sprite* img_iceflower;
+Sprite* img_fireflower;
Sprite* img_1up;
#define GROWUP_SPEED 1.0f
if(kind == FIRE_BULLET)
base.ym = base.ym + 0.5 * frame_ratio;
- else if(kind == FIRE_BULLET)
+ else if(kind == ICE_BULLET)
base.ym = 0;
if (base.x < scroll_x ||
{
if(kind == FIRE_BULLET)
img_firebullet->draw(base.x, base.y);
- else if(kind == FIRE_BULLET)
+ else if(kind == ICE_BULLET)
img_icebullet->draw(base.x, base.y);
}
}
physic.set_velocity(dir == LEFT ? -1 : 1, 4);
physic.enable_gravity(true);
base.height = 32;
- } else if (kind == UPGRADE_ICEFLOWER) {
+ } else if (kind == UPGRADE_ICEFLOWER || kind == UPGRADE_FIREFLOWER) {
// nothing
} else if (kind == UPGRADE_GROWUP) {
physic.set_velocity(dir == LEFT ? -GROWUP_SPEED : GROWUP_SPEED, 0);
void
Upgrade::action(double frame_ratio)
{
- if (kind == UPGRADE_ICEFLOWER || kind == UPGRADE_GROWUP) {
+ if (kind == UPGRADE_ICEFLOWER || kind == UPGRADE_FIREFLOWER
+ || kind == UPGRADE_GROWUP) {
if (base.height < 32) {
/* Rise up! */
base.height = base.height + 0.7 * frame_ratio;
img_growup->draw_part(0,0,dest.x,dest.y,dest.w,dest.h);
else if (kind == UPGRADE_ICEFLOWER)
img_iceflower->draw_part(0,0,dest.x,dest.y,dest.w,dest.h);
+ else if (kind == UPGRADE_FIREFLOWER)
+ img_fireflower->draw_part(0,0,dest.x,dest.y,dest.w,dest.h);
else if (kind == UPGRADE_HERRING)
img_star->draw_part(0,0,dest.x,dest.y,dest.w,dest.h);
else if (kind == UPGRADE_1UP)
img_iceflower->draw(
base.x, base.y);
}
+ else if (kind == UPGRADE_FIREFLOWER)
+ {
+ img_fireflower->draw(
+ base.x, base.y);
+ }
else if (kind == UPGRADE_HERRING)
{
img_star->draw(
pplayer->grow();
pplayer->got_power = pplayer->ICE_POWER;
}
+ else if (kind == UPGRADE_FIREFLOWER)
+ {
+ play_sound(sounds[SND_COFFEE], SOUND_CENTER_SPEAKER);
+ pplayer->grow();
+ pplayer->got_power = pplayer->FIRE_POWER;
+ }
else if (kind == UPGRADE_HERRING)
{
play_sound(sounds[SND_HERRING], SOUND_CENTER_SPEAKER);
{
img_growup = sprite_manager->load("egg");
img_iceflower = sprite_manager->load("iceflower");
+ img_fireflower = sprite_manager->load("fireflower");
img_star = sprite_manager->load("star");
img_1up = sprite_manager->load("1up");
player_status.distros++;
break;
- case 2: // Add an upgrade!
+ case 2: // Add a fire flower upgrade!
+ if (tux.size == SMALL) /* Tux is small, add mints! */
+ add_upgrade(posx, posy, col_side, UPGRADE_GROWUP);
+ else /* Tux is big, add a fireflower: */
+ add_upgrade(posx, posy, col_side, UPGRADE_FIREFLOWER);
+ play_sound(sounds[SND_UPGRADE], SOUND_CENTER_SPEAKER);
+ break;
+
+ case 5: // Add an ice flower upgrade!
if (tux.size == SMALL) /* Tux is small, add mints! */
add_upgrade(posx, posy, col_side, UPGRADE_GROWUP);
else /* Tux is big, add an iceflower: */