Commit Graph

102 Commits

Author SHA1 Message Date
hikerstk
ecd569b093 1) Fixed crash: hovering on top of random kart in the kart selection screen
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
2012-08-16 22:02:41 +00:00
hikerstk
e2caea1c05 Refactored ItemManager to use static components to load
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
2012-08-09 06:37:29 +00:00
auria
dae00f0828 Add first version on intro cutscene. Still incomplete but goes somewhere :) Ask me for the menu patch if you want to look at it
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@11276 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2012-06-05 00:27:34 +00:00
auria
553385fe9d Start work to allow showing worlds without kart, for cutscenes. Does not work yet but getting closer
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@11266 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2012-05-31 01:32:27 +00:00
hikerstk
5963f31079 Removed physics.hpp #include from world.hpp.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@11213 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2012-05-08 07:07:15 +00:00
hikerstk
eca5b3e570 Refactored handling of kart animations: instead of
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
2012-04-01 22:57:41 +00:00
hikerstk
53b3c78598 1) Added first version of 'cannon' (flying the kart to a specific
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
2012-03-25 23:16:53 +00:00
hikerstk
ebbc1a71d8 Introduced an 'abstract kart' class, which is used to
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
2012-03-19 20:21:11 +00:00
hikerstk
629f9a27e2 Removed dependencies on controller.hpp from kart.hpp (to
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
2012-03-08 22:56:33 +00:00
hikerstk
72070db1a0 Fixed memory leak: the virtual createPhysics function of
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
2012-03-07 02:41:41 +00:00
hikerstk
bce6113fd7 Added first version of (uncompressed) replays - atm only
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
2012-02-27 05:52:17 +00:00
hikerstk
613173ff3d Set the world kart id in the constructor of karts, and not
later in a separate call.


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10788 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2012-02-02 05:21:14 +00:00
hikerstk
d06acf1f7b 1) Added an (additional) impulse to push karts away from each other.
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
2011-12-14 21:02:15 +00:00
hikerstk
dde603030c Missing file in previous commit (unused network code, but
it wouldn't compile without this).


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10408 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-12-12 05:43:57 +00:00
auria
92eb0ebd2a Ran a small bash script to remove all of those annoying strings. The only thing they gave us were the need to rebuild after committing
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@10363 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-12-06 18:43:36 +00:00
auria
a37008d014 More work on 'thou shalt not include irrlicht.h everywhere carelessly', plus add debug checks to track.hpp in a desperate attempt to make STK Arthur_D-proof
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@8661 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-05-22 18:31:25 +00:00
auria
c54809ebe2 Fixed lightning being multiplied in multiplayer mode
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@8174 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-04-01 14:41:18 +00:00
hikerstk
af29a627ce Fixed compilation problems (why on earth didn't the compiler detect this earlier??)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@7977 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-03-17 21:08:28 +00:00
auria
238f572c36 Say hello to the new rain, one that is much, much less CPU and GPU intensive. Joerg: sorry, you will need to modify the exporter again, since now we need support for some built-in weather types, which use a different XML syntax than particles
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@7642 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-02-07 02:45:32 +00:00
hikerstk
4ab6331ff4 Update to bullet-2.77.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@7579 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-02-02 22:04:13 +00:00
mbjornstk
015443f582 Set props as per SVN-CONFIG for .[ch]pp, AKA SVN props clean up day. :)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@7493 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-01-21 01:54:38 +00:00
auria
f774aef2c4 Add animation setting middleground : only human players karts are animted
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@7487 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2011-01-20 02:43:32 +00:00
auria
5bd9afdd7f Big refactor : move a lot of strings and config files to use wide strings. For instance to be able to cope with foreign characters in player names
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@7174 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-12-28 01:29:36 +00:00
hikerstk
a973e8b84f Renamed all instanced of RandomKart in the race_manager to
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
2010-09-21 07:37:42 +00:00
auria
b868909efe Some cleanups with ActivePlayer. Moved it to StateManager, because that's where active players are created and stored - this will be less confusing than hiding it inside a configuration class. More work is still to be done if we want to make this code really clean, though.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4764 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-02-18 21:28:32 +00:00
hikerstk
31e3806fd0 Refactor end of race handling so that more functions are done in a base class only
(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
2010-02-17 11:59:51 +00:00
hikerstk
da3de6d131 Big code refactoring: instead of having auto_kart, player_kart, the karts
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
2010-02-15 00:54:28 +00:00
hikerstk
328373289a 1) Moved access to world object from race_manager to static functions in
world.
2) Removed more dujplicated/unnecessary functions from race_manager
   (getPlayerKart, getTrack).


git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4682 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-02-11 07:11:52 +00:00
hikerstk
4a96f98182 Removed player- and network-kart lists from world, so now
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
2010-02-10 22:59:17 +00:00
hikerstk
47a1a1dfa2 Removed m_local_player_karts vector from world.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4678 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-02-10 12:47:18 +00:00
hikerstk
c6bf95a64c Started to remove the various kart lists in various objects.
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
2010-02-10 11:40:33 +00:00
hikerstk
cf0e69b48f Removed #include of kart and player_kart from world.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@4424 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2010-01-10 23:12:29 +00:00
mbjornstk
5fe41e5625 Run expand -t4 to convert tabs to spaces. No other whitespace fixes, but
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
2009-12-18 00:36:35 +00:00
auria
74c6dd557c Added an implicit dependency that caused problems on some systems (fixed previous commit, it was plain wrong)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@4091 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-10-06 17:03:08 +00:00
auria
b59b754ab3 Added an implicit dependency that caused problems on some systems
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@4090 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-10-06 16:59:45 +00:00
rforder
7a84273ec5 Cleaning up kart selection. Assigns karts correctly in multiplayer. included some null pointer and bounds checks that were causing some
crashes, etc.



git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3856 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-08-13 22:53:24 +00:00
auria
85266dfe10 Started mammoth cleanup of GUI code. Separated the generic GUI engine and the STK-specific bits (still work to do on this side)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3764 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-07-18 17:48:36 +00:00
auria
fbc3119dbc Continued cleaning up references to Player & ActivePlayer and docs
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3762 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-07-18 15:32:54 +00:00
auria
2c0a322b61 Started cleaning up references to Player to use ActivePlayer where relevant
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3761 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-07-18 15:21:16 +00:00
auria
36bfc5e7fe The player list can now be extended in Options, and is saved to file and loaded too
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3630 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-06-21 18:55:12 +00:00
auria
2f6b05bace started converting user config to XML. Implementation is not 100% complete yet; saving works, not lodading. Implementation is not the prettiest but designed for minimal maintenance.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3625 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-06-21 01:10:43 +00:00
hikerstk
ee90eca26e 1) Created new config subdir and moved the last remaining files into
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
2009-06-11 10:00:43 +00:00
hikerstk
25b9d9643c Replaced all remaining HEADER_.*_H with HEADER_.*_HPP .
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3585 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-06-03 02:17:43 +00:00
hikerstk
590eab3315 Missed one file in previous commit - another wrong include fixed.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3584 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-06-03 02:14:32 +00:00
hikerstk
64d72dabad Fixed incorrect include paths.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3583 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-06-03 02:12:37 +00:00
hikerstk
96805cfc71 Moved race related files into new subdir 'race'.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3581 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-06-03 01:36:48 +00:00
auria
4acc6fc7c8 first introduction of new GUI code. It does *not* work, consider this a backup (and the removal of the old UI)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/branches/irrlicht@3256 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-03-13 13:50:24 +00:00
mbjornstk
fc46307f54 Fixing all remaining "executable" flags.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@3205 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-02-27 02:54:25 +00:00
hikerstk
6f34674b4c 1) Moved more files around.
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
2009-01-23 05:23:22 +00:00
hikerstk
6ce3803165 Moved more files into subdirs.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@3029 178a84e3-b1eb-0310-8ba1-8eac791a3b58
2009-01-22 22:27:13 +00:00