MrTree::MrTree(const lisp::Lisp& reader)
: BadGuy(reader, "images/creatures/mr_tree/mr_tree.sprite"), mystate(STATE_BIG)
{
+ reader.get("direction", direction);
+ set_direction = true;
+ if( direction != "auto" && direction != ""){
+ set_direction = true;
+ initial_direction = str2dir( direction );
+ dir = str2dir( direction );
+ }
sprite->set_action(dir == LEFT ? "large-left" : "large-right");
sound_manager->preload("sounds/mr_tree.ogg");
sound_manager->preload("sounds/mr_treehit.ogg");
{
writer.start_list("mrtree");
+ writer.write_string("direction", direction);
writer.write_float("x", start_position.x);
writer.write_float("y", start_position.y);
void
MrTree::activate()
{
+ if( set_direction ){
+ dir = initial_direction;
+ }
if (mystate == STATE_BIG) {
physic.set_velocity_x(dir == LEFT ? -WALKSPEED : WALKSPEED);
sprite->set_action(dir == LEFT ? "large-left" : "large-right");