diff -Nauwr myworld/3DEngine.h myworld.26/3DEngine.h --- myworld/3DEngine.h 2005-05-26 14:58:50.000000000 +0200 +++ myworld.26/3DEngine.h 2005-07-05 13:42:55.735329091 +0200 @@ -39,7 +39,6 @@ class GrObject { friend class I3DEngine; protected: -// V3D * m_pos; // graphic_type m_gt; IAnimatedMesh * m_mesh; ISceneNode * m_node; @@ -47,7 +46,7 @@ IVideoDriver * m_driver; public: - GrObject () { + GrObject ():m_mesh(NULL),m_node(NULL),m_driver(NULL) { m_v = new V3D(0.0f, 0.0f, 0.0f); /*m_gt = GT_NULL;*/ } diff -Nauwr myworld/main.cpp myworld.26/main.cpp --- myworld/main.cpp 2005-06-09 14:23:54.000000000 +0200 +++ myworld.26/main.cpp 2005-07-06 10:02:15.414278999 +0200 @@ -307,8 +307,8 @@ } -char vBuf[124]; void myAfterPhStepEventHandler (Event * data) { + wchar_t vBuf[254]; EV_FORCE = false; speed *= 0.985f; @@ -319,11 +319,11 @@ // fng_pos *= 0.99f; - sprintf(vBuf, "Dist: %.2f", sens->getDistance()); - sensText->setText(Unicode::strToUnicode(vBuf)); + swprintf(vBuf, 254, L"Dist: %.2f", sens->getDistance()); + sensText->setText(vBuf); - sprintf(vBuf, "FPS: %i", pWorld->getFPS()); - fpsText->setText(Unicode::strToUnicode(vBuf)); + swprintf(vBuf, 254, L"FPS: %i", pWorld->getFPS()); + fpsText->setText(vBuf); } @@ -367,6 +367,7 @@ void actDriving(DyRealObject * obj) { + wchar_t vBuf[254]; ((Hinge2Joint*)hj[0])->setVel2(-speed * 1.5f, 25.0f); ((Hinge2Joint*)hj[1])->setVel2(-speed * 1.5f, 25.0f); ((HingeJoint*)hj[2])->setVel(-speed * 1.5f, 25.0f); @@ -383,8 +384,8 @@ // sj[0]->setVel(-fng_pos, 10.0f); // sj[1]->setVel(fng_pos, 10.0f); - sprintf(vBuf, "fng_pos: %f", fng_pos); - debText->setText(Unicode::strToUnicode(vBuf)); + swprintf(vBuf, 255, L"fng_pos: %f", fng_pos); + debText->setText(vBuf); } void actCar(DyRealObject * obj) { diff -Nauwr myworld/Makefile myworld.26/Makefile --- myworld/Makefile 2005-04-23 18:46:24.000000000 +0200 +++ myworld.26/Makefile 2005-07-06 16:13:40.378262580 +0200 @@ -1,9 +1,10 @@ -CPP = g++ -OPTS = -I"/usr/X11R6/include" -L"/usr/X11R6/lib" -lode -lIrrlicht -lGL -lXxf86vm -lXext -lX11 -lz -ljpeg +CXX = g++ +CXXFLAGS= -Wall -Wno-reorder -I/usr/X11R6/include -I../irrlicht-0.10.0/source/Irrlicht/include -I../ode-0.5/include +LDFLAGS = -L../ode-0.5/lib -lode -L../irrlicht-0.10.0/source/Irrlicht -lIrrlicht -lGLU -lGL -L/usr/X11R6/lib -lXxf86vm -lXext -lX11 SRC = 3DEngine.cpp PhEngine.cpp wrap.cpp main.cpp -all: - $(CPP) $(SRC) -o mw $(OPTS) +all: $(SRC:.cpp=.o) + $(CXX) $(CXXFLAGS) $^ -o mw $(OPTS) $(LDFLAGS) clean: - rm mw + $(RM) $(SRC:.cpp=.o) mw diff -Nauwr myworld/Objects.h myworld.26/Objects.h --- myworld/Objects.h 2005-06-04 16:42:10.000000000 +0200 +++ myworld.26/Objects.h 2005-07-06 09:56:32.633565001 +0200 @@ -38,9 +38,9 @@ }; - class StRealObject : public RealObject, public StPhObject { - void (*actionfp)(StRealObject *); /// Callback to Action +typedef void (*STACTFP)(StRealObject *); /// Callback to Action + STACTFP actionfp; public: StRealObject(GrObject * gro, Collision * collision, Material * mat) : RealObject(gro), StPhObject(collision, mat) { @@ -53,13 +53,14 @@ void setAction(void (*_actionfp)(StRealObject *)) { actionfp = _actionfp; } void action() { actionfp(this); } - void * getAction() { return actionfp; }; + STACTFP getAction() { return actionfp; }; }; class DyRealObject : public RealObject, public DyPhObject { - void (*actionfp)(DyRealObject *); /// Callback to Action +typedef void (*DYACTFP)(DyRealObject *); /// Callback to Action + DYACTFP actionfp; PhSystem * m_owner; public: DyRealObject(GrObject * gro, Collision * collision, Material * mat, float mass = 0.25f) : RealObject(gro), DyPhObject(collision, mat, mass) { @@ -87,7 +88,7 @@ void setAction(void (*_actionfp)(DyRealObject *)) { actionfp = _actionfp; } void action() { actionfp(this); } - void * getAction() { return actionfp; }; + DYACTFP getAction() { return actionfp; }; void setPosition(V3D * pos) { m_gro->setPosition(pos); diff -Nauwr myworld/wrap.h myworld.26/wrap.h --- myworld/wrap.h 2005-06-04 21:30:26.000000000 +0200 +++ myworld.26/wrap.h 2005-07-06 16:14:27.613612325 +0200 @@ -70,7 +70,7 @@ } void forEach(void (*fp)(T)) { - for (int i = 0; i < l.size(); i++) { + for (unsigned int i = 0; i < l.size(); i++) { fp(l[i]); } }