#include "worldmap/level.hpp"
#include "worldmap/tux.hpp"
-namespace WorldMapNS {
+namespace worldmap {
static const float TUXSPEED = 200;
static const float map_message_TIME = 2.8f;
void
Tux::draw(DrawingContext& context)
{
- switch (player_status->bonus) {
+ switch (worldmap->get_player_status()->bonus) {
case GROWUP_BONUS:
sprite->set_action(moving ? "large-walking" : "large-stop");
break;
SpriteChange* sprite_change = worldmap->at_sprite_change(tile_pos);
if(sprite_change != NULL) {
- sprite.reset(new Sprite( *(sprite_change->sprite.get()) ));
+ sprite = sprite_change->sprite->clone();
sprite_change->clear_stay_action();
}
SpriteChange* next_sprite = worldmap->at_sprite_change(next_tile);
if(next_sprite != NULL && next_sprite->change_on_touch) {
- sprite.reset(new Sprite( *(next_sprite->sprite.get()) ));
+ sprite = next_sprite->sprite->clone();
next_sprite->clear_stay_action();
}
SpriteChange* last_sprite = worldmap->at_sprite_change(tile_pos);
// check if we already touch a SpriteChange object
SpriteChange* sprite_change = worldmap->at_sprite_change(tile_pos);
if(sprite_change != NULL) {
- sprite.reset(new Sprite( *(sprite_change->sprite.get()) ));
+ sprite = sprite_change->sprite->clone();
sprite_change->clear_stay_action();
}
}