dnl Process this file with autoconf to produce a configure script.
AC_PREREQ([2.54])
-AC_INIT(supertux, 0.2-cvs)
+AC_INIT(supertux, 0.2-svn)
AC_CONFIG_SRCDIR([src/main.cpp])
AC_CONFIG_AUX_DIR([mk/autoconf])
AC_CANONICAL_TARGET
fi
AC_SUBST([VARIANT])
-AC_MSG_CHECKING(wether OpenGL should be used)
+AC_MSG_CHECKING(whether OpenGL should be used)
AC_ARG_ENABLE(opengl,
AC_HELP_STRING([--disable-opengl], [disable OpenGL support]),
[enable_opengl=$enableval], enable_opengl=yes)
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
-
#include <config.h>
#include "jumpy.h"
static const float JUMPSPEED=600;
-static const float JUMPY_MID_TOLERANCE=8;
+static const float JUMPY_MID_TOLERANCE=4;
static const float JUMPY_LOW_TOLERANCE=2;
Jumpy::Jumpy(const lisp::Lisp& reader)
+ : groundhit_pos_set(false)
{
reader.get("x", start_position.x);
reader.get("y", start_position.y);
{
// hit floor?
if(chit.normal.y < -.5) {
+ if (!groundhit_pos_set)
+ {
+ pos_groundhit = get_pos();
+ groundhit_pos_set = true;
+ }
+
physic.set_velocity_y(JUMPSPEED);
// TODO create a nice sound for this...
//sound_manager->play_sound("skid");
dir = Sector::current()->player->get_pos().x > get_pos().x
? RIGHT : LEFT;
- //FIXME: add middle and up here
- if ( get_pos().y >= (start_position.y - JUMPY_MID_TOLERANCE) )
+ if ( get_pos().y < (pos_groundhit.y - JUMPY_MID_TOLERANCE ) )
+ sprite->set_action(dir == LEFT ? "left-up" : "right-up");
+ else if ( get_pos().y >= (pos_groundhit.y - JUMPY_MID_TOLERANCE) &&
+ get_pos().y < (pos_groundhit.y - JUMPY_LOW_TOLERANCE) )
sprite->set_action(dir == LEFT ? "left-middle" : "right-middle");
- else if ( get_pos().y >= (start_position.y - JUMPY_LOW_TOLERANCE) )
- sprite->set_action(dir == LEFT ? "left-down" : "right-down");
else
- sprite->set_action(dir == LEFT ? "left-up" : "right-up");
+ sprite->set_action(dir == LEFT ? "left-down" : "right-down");
}
IMPLEMENT_FACTORY(Jumpy, "jumpy")
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
-
#ifndef __JUMPY_H__
#define __JUMPY_H__
private:
HitResponse hit(const CollisionHit& hit);
+ Vector pos_groundhit;
+ bool groundhit_pos_set;
};
#endif
Vector(0, SCREEN_HEIGHT - 50), LEFT_ALLIGN, LAYER_FOREGROUND1);
context.draw_text(white_small_text,
_(
-"Copyright (c) 2003 SuperTux Devel Team\n"
+"Copyright (c) 2005 SuperTux Devel Team\n"
"This game comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to\n"
"redistribute it under certain conditions; see the file COPYING for details.\n"
),