Author: grumbel
Date: 2007-12-01 12:01:31 +0100 (Sat, 01 Dec 2007)
New Revision: 3511
Modified:
trunk/pingus/src/actions/climber.cpp
trunk/pingus/src/actions/jumper.cpp
Log:
- added wall jump
Modified: trunk/pingus/src/actions/climber.cpp
===================================================================
--- trunk/pingus/src/actions/climber.cpp 2007-11-24 17:42:37 UTC (rev
3510)
+++ trunk/pingus/src/actions/climber.cpp 2007-12-01 11:01:31 UTC (rev
3511)
@@ -88,7 +88,9 @@
bool
Climber::change_allowed(ActionName new_action)
{
- return (new_action == Actions::Floater);
+ return
+ (new_action == Actions::Floater) ||
+ (new_action == Actions::Jumper);
}
} // namespace Actions
Modified: trunk/pingus/src/actions/jumper.cpp
===================================================================
--- trunk/pingus/src/actions/jumper.cpp 2007-11-24 17:42:37 UTC (rev 3510)
+++ trunk/pingus/src/actions/jumper.cpp 2007-12-01 11:01:31 UTC (rev 3511)
@@ -43,11 +43,12 @@
void
Jumper::update ()
{
- if (pingu->direction.is_right()) {
+ // if climber, do a wall-jump, else just jump forward
+ if ((pingu->get_previous_action() == Actions::Climber)
+ ? pingu->direction.is_left() : pingu->direction.is_right())
pingu->set_velocity(pingu->get_velocity() + Vector3f(5.0, -5.0));
- } else {
+ else
pingu->set_velocity(pingu->get_velocity() + Vector3f(-5.0, -5.0));
- }
// Move the pingu in the air, so that it can start 'falling'
pingu->set_y(pingu->get_y() - 1);
_______________________________________________
pingus-cvs mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/pingus-cvs