1) Added bullet collision handling, e.g. rocket hits are now
detected by bullet code, bombs will be passed on etc.
2) Rockets are now handled by bullet as well.
3) Moved expected location of bullet from STK/bullet to
STK/src/bullet.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1280 178a84e3-b1eb-0310-8ba1-8eac791a3b58
using another banana, now the bomb will explode if you
hit a banana).
2) All other 'bananas' now get more severe as well if you
hit a banana while having an anvil/parachute attached
(anvil: time is extended, parachute: you get an anvil
with the same time as the parachute attached).
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1276 178a84e3-b1eb-0310-8ba1-8eac791a3b58
- prevent closing of result screen is now done for all input variants
and without odd side effects (and with less lines of code)
- convert mouse buttons, joystick buttons and axes to key input for easier management
- added note
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1274 178a84e3-b1eb-0310-8ba1-8eac791a3b58
- make mouse axes work like analog axes
- enable display menu for non-Win32 platforms
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1272 178a84e3-b1eb-0310-8ba1-8eac791a3b58
you have to define NEWBULLET when compiling the physics.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1271 178a84e3-b1eb-0310-8ba1-8eac791a3b58
1) some minor restructuring as preparation for
converting the missiles to bullet.
2) Added support for later bullet versions (using
btBroadphaseInterface instead of btOverlappingPairCache
in ctor of btDiscreteDynamicsWorld).
Default is still the old interface, use -DNEWBULLET for
physics.cpp if a newer bullet version is available
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1270 178a84e3-b1eb-0310-8ba1-8eac791a3b58
- changed name of class "Buffer" to "ReplayBuffer" .. "Buffer" at global scope was not a good idea of mine .. ;)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1268 178a84e3-b1eb-0310-8ba1-8eac791a3b58
* set max. sample-frequency to 30 frames per second
* put sample-freq-statistic in the end of replay-file as comments
* did some replay-cleaning
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1265 178a84e3-b1eb-0310-8ba1-8eac791a3b58
number of karts (meaning maximum number of karts).
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1263 178a84e3-b1eb-0310-8ba1-8eac791a3b58
1799457 (multiplayer does not work ... if the number of
karts in the config file is lower than the number of
karts needed for multiplayer).
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1262 178a84e3-b1eb-0310-8ba1-8eac791a3b58
with about 10 karts in tuxtrack and islandtrack).
The number of karts is additionally now limited
to 10 (see stk_config.data), the only reason for this
is to avoid the same bug report when someone is using
more karts than the number of specified start locations.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1261 178a84e3-b1eb-0310-8ba1-8eac791a3b58
* interpolation between sampled frames
* restart game works with replay
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1254 178a84e3-b1eb-0310-8ba1-8eac791a3b58
* no interpolation of ghosts position between sampled frames
* no transparency or something else to distinguish
to see it:
* run a game, rename file replay/test.rph to replay/test1.rph - this file is shown in replay
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1253 178a84e3-b1eb-0310-8ba1-8eac791a3b58
because of 'images/sky2.rgb' not found.
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1252 178a84e3-b1eb-0310-8ba1-8eac791a3b58
display sizes
- re-adds the 'make last character the new preselection' feature in character
selection screen
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1247 178a84e3-b1eb-0310-8ba1-8eac791a3b58
- make "start race" button the default one in num laps screen
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1246 178a84e3-b1eb-0310-8ba1-8eac791a3b58
all code related to it must be activated with compiler-switch HAVE_GHOST_REPLAY
folder "replay" added to store the replay-files
there are 2 main classes. ReplayRecorder & ReplayPlayer. both are members of class World. the first is for recording/saving a replay and the latter one for showing the replay/loading/ghost-replay
*recording* a game works already very basic, only karts position-struct is stored and some data about the game (track,karts,player...)
the replay file currently is written to replay-folder in world's destructor to replay/test.rph
and it is loaded into ReplayPlayer in World's constructor
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1243 178a84e3-b1eb-0310-8ba1-8eac791a3b58
- fixed --numkarts/-k command line option (including
using '-1' meaning 'all karts').
- the default number of karts (used for quickstart) is now
taken from the user config file, i.e. once you've set your
preferred number of karts, you will get this number withouth
having to specify it all the time).
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1242 178a84e3-b1eb-0310-8ba1-8eac791a3b58
ok until my last change of Widget. now Widget has std::string's as members, so initializing
like that is not possible anymore .. my debian crashed there .. added an initialization-list to Widget's ctor
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1239 178a84e3-b1eb-0310-8ba1-8eac791a3b58
old:
std::vector<CupData*> m_all_cups;
new:
std::vector<CupData> m_all_cups;
related:
changed RaceManager::setGrandPrix(const CupData &cup_) to const reference rather than pointer to CupData
(2) made vector CupData::m_tracks private and added getter
(3) CupData::m_name was passed in GrandPrixSelect::GrandPrixSelect() to WidgetSet as const char*
then it was passed to Widget::_text. changed the latter to std::string and passed it as std::string
(4) changed Widget::count_text to std::string as well ..
(5) tracked down all uses of Widget::count_text & Widget::_text to plib. changed
all funcs in between to work with std::string rather than const char*
Font::getBBox
WidgetSet::set_label
WidgetSet::get_label
WidgetSet::start
WidgetSet::state
WidgetSet::label
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1238 178a84e3-b1eb-0310-8ba1-8eac791a3b58
allocated RaceGUI::TimedMessage's were not deleted, only erased from the vector
RaceGUI::cleanupMessages(): fixed iterator usage for std::vector.erase - the returned iterator must be used, the passed iterator becomes invalid after erase, so one has to use the returned one
changed vector-type RaceGUI::AllMessageType to vector of objects, rather than vector of pointers .. no risk of memory-leaks here anymore ..
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1237 178a84e3-b1eb-0310-8ba1-8eac791a3b58
(1) CreditsMenu::CreditsMenu changed file-open-mode from "ra" to "r"
(2) added fclose'ing file in CreditsMenu's ctor
(3) CreditsMenu::m_string_list removed since base-class ScrolledText already has that member,
made it private in base-class to prevent confusion, since base-class has
member-func setText to *set* that member ;)
made all other member-vars of ScrolledText private too ..
(4) changed typedef of StringList from
typedef std::vector<char*> StringList;
to
typedef std::vector<std::string> StringList;
there was a memory-leak in class CreditsMenu, strings were pushed back
into StringList via strdup, which (m)allocated memory for the string,
so we should have freed it by calling free for each item in vector,
so i choosed the all-inclusive std::string :)
and moved typedef of StringList into class ScrolledText from global scope
(5) removed cleaning-up-code for m_string_list from CreditsMenu's dtor, nothing
to clean for us, since vector's and string's dtor takes care of it
(6) changed ScrolledText::setText (StringList const &sl_) param to const reference
for the sake of efficiency .. we dont want to copy here
hope we dont get problems with windows newline-style \r\n .. tried to take care of
that ;)
git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/trunk/supertuxkart@1223 178a84e3-b1eb-0310-8ba1-8eac791a3b58