X-Git-Url: https://git.verplant.org/?a=blobdiff_plain;f=src%2Fbadguy%2Ftoad.cpp;h=3df4901f26bd1452fae40d73255d4f399dc2d246;hb=013a5ca196545a094f27c1b708facd0084d58d55;hp=f416d8aa0e03c906953fec2f748517a9dc0f7a77;hpb=714a30abd887def6331a193216387e66cbfbd1bb;p=supertux.git diff --git a/src/badguy/toad.cpp b/src/badguy/toad.cpp index f416d8aa0..3df4901f2 100644 --- a/src/badguy/toad.cpp +++ b/src/badguy/toad.cpp @@ -1,4 +1,4 @@ -// $Id: toad.cpp 4192 2006-08-16 23:25:39Z sommer $ +// $Id$ // // Toad - A jumping toad // Copyright (C) 2006 Christoph Sommer @@ -51,7 +51,7 @@ Toad::write(lisp::Writer& writer) } void -Toad::activate() +Toad::initialize() { // initial state is JUMPING, because we might start airborne state = JUMPING; @@ -62,16 +62,16 @@ void Toad::set_state(ToadState newState) { if (newState == IDLE) { - physic.vx = 0; - physic.vy = 0; + physic.set_velocity_x(0); + physic.set_velocity_y(0); sprite->set_action(dir == LEFT ? "idle-left" : "idle-right"); recover_timer.start(RECOVER_TIME); } else if (newState == JUMPING) { sprite->set_action(dir == LEFT ? "jumping-left" : "jumping-right"); - physic.vx = (dir == LEFT ? -HORIZONTAL_SPEED : HORIZONTAL_SPEED); - physic.vy = VERTICAL_SPEED; + physic.set_velocity_x(dir == LEFT ? -HORIZONTAL_SPEED : HORIZONTAL_SPEED); + physic.set_velocity_y(VERTICAL_SPEED); sound_manager->play( HOP_SOUND, get_pos()); } else if (newState == FALLING) { @@ -108,7 +108,7 @@ Toad::collision_solid(const CollisionHit& hit) } // check if we hit left or right while moving in either direction - if(((physic.vx < 0) && hit.left) || ((physic.vx > 0) && hit.right)) { + if(((physic.get_velocity_x() < 0) && hit.left) || ((physic.get_velocity_x() > 0) && hit.right)) { /* dir = dir == LEFT ? RIGHT : LEFT; if (state == JUMPING) { @@ -117,7 +117,7 @@ Toad::collision_solid(const CollisionHit& hit) sprite->set_action(dir == LEFT ? "idle-left" : "idle-right"); } */ - physic.vx = -0.25*physic.vx; + physic.set_velocity_x(-0.25*physic.get_velocity_x()); } // check if we hit the floor while falling @@ -128,7 +128,7 @@ Toad::collision_solid(const CollisionHit& hit) // check if we hit the roof while climbing if ((state == JUMPING) && hit.top) { - physic.vy = 0; + physic.set_velocity_y(0); } } @@ -148,7 +148,7 @@ Toad::active_update(float elapsed_time) BadGuy::active_update(elapsed_time); // change sprite when we are falling - if ((state == JUMPING) && (physic.vy > 0)) { + if ((state == JUMPING) && (physic.get_velocity_y() > 0)) { set_state(FALLING); return; }