would crash since getItemModel was not static (and no ItemManager instance
exists at that time).
2) Items are now also stored in quad-based containers, which will allow the
AI to better find 'interesting' items.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@11511 178a84e3-b1eb-0310-8ba1-8eac791a3b58
the default item meshes. An instance of it is now only
created when a race is started (and deleted once the
race is finished). This makes the race-specific
initialisation and cleanup better to understand. Also
added singleton access to the one instance of ItemManager.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@11498 178a84e3-b1eb-0310-8ba1-8eac791a3b58
using a fixed object in the kart, now each animation
(rescue, explosion, canon) has its own object and
implementation using a common interface. This
simplifies AbstractKartInterface, and makes it
easier to add new functionailty.
Instead of using: kart->rescue(...), or kart->explode(...)
you use new ExplosionAnimation(kart, ...) etc. Memory
handling is done by the object (and abstract kart).
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@11070 178a84e3-b1eb-0310-8ba1-8eac791a3b58
location) support. ATM only linear interpolation of the position
is used (i.e. no rotation).
2) To be consistend renamed 'forceRescue' to 'rescue',
'handleExplosion' to 'explode' (and added shootTo for the canon).
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@11021 178a84e3-b1eb-0310-8ba1-8eac791a3b58
de-couple kart implementation and its interface. This
significantly reduces compile time when changing kart.hpp,
but is at this stage still work in progress.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10997 178a84e3-b1eb-0310-8ba1-8eac791a3b58
reduce compile time on controller changes).
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10952 178a84e3-b1eb-0310-8ba1-8eac791a3b58
GhostKart was not called, since it was called during when
the contrsuctor of Kart was executed (at this time the
GhostKart vtable wasn't set up, so Kart::createPhysics)
was called - which resulted in a memory leak since all
physics parts of the kart were actually allocated (just
not used). To fix this, karts are not constructed in two
phases: first a constructor, followed by a call to init
(during which virtual function can be used).
Fixed several bugs were physics data for a GhostKart
were accessed.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10947 178a84e3-b1eb-0310-8ba1-8eac791a3b58
kart positions and rotations are saved.
To save a replay, press ctrl-F10 which will create a file
in the stk config dir 'trackname'.replay .
To replay, use --ghost command line, and select the
track with the same name (at this stage the replay is
loaded even if number of laps and difficulty is different).
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10897 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This impulse does not cause any rotation of the kart, it just pushes
the kart orthogonal to its velocity.
2) The rotational velocity is set to 0 in case of a collision, hopefully
avoiding the problem that karts will rotate as result of a collision.
3) A collision pair now stores the exact collision point for both bodies
(which is then used to determine the side in which the impulse to be
applied).
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10422 178a84e3-b1eb-0310-8ba1-8eac791a3b58
AIKart (e.g. m_random_kart_list -> m_ai_kart_list) - since this
describes what the lists and function actually are (in network
the name is not entirely correct, but since this will be
re-implemented anyway, we leave the proper naming till later).
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@6103 178a84e3-b1eb-0310-8ba1-8eac791a3b58
(esp. code that was previously duplicated in the battle mode and standard race).
There is now time for an end animation, even if the player should finish last
(in which case the previous end camera would not be shown). This mostly in
preparation for end animations.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4750 178a84e3-b1eb-0310-8ba1-8eac791a3b58
now use a 'controller' object which is responsible for its steering, e.g.
a default_ai_controller, player_controller etc. This makes it easier to
switch a player kart to use a end-of-race computer controller to drive
the kart once the race is finished (though that's not implemented yet).
I expect some bugs with restarting race, and perhaps end of race
behaviour at this stage.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4714 178a84e3-b1eb-0310-8ba1-8eac791a3b58
there is only one list used to access all karts in world.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4680 178a84e3-b1eb-0310-8ba1-8eac791a3b58
1) Removed getKart from RaceManager.
2) Renamged RaceManager::getNumKarts() to getNumberOfKarts.
This function should only be called when the world
does not exist (or is not yet initialised). In all
other cases world::getNumKarts() should be called.
3) Improved several 'const' functions.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4676 178a84e3-b1eb-0310-8ba1-8eac791a3b58
there are still trailing spaces and lines with 5 spaces as indent (fix them
as the files are changed for other reasons). src/guiengine/CGUIFont.* and
src/bullet/ not processed to allow cleaner updates from upstream.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4320 178a84e3-b1eb-0310-8ba1-8eac791a3b58
appropriate subdirs (only main.cpp and main_loop.?pp are now directly
in the src directory).
2) Cleaned up all #include directives, so that all files now use
the right subdirectories.
3) Some minor code cleanup.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3606 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2) Replaced many (though not all yet) snprintf with ostringstream
(getting rid of the maximum length of messages).
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@3034 178a84e3-b1eb-0310-8ba1-8eac791a3b58