diff --git a/.gitignore b/.gitignore
index 1ba98ce23..b437bf1b2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,6 +9,7 @@ stk-editor/
.config/
supertuxkart-64
make*.bat
+__pycache__
data/editor
data/karts
diff --git a/data/CREDITS b/data/CREDITS
index 64991a2a6..d36394892 100755
Binary files a/data/CREDITS and b/data/CREDITS differ
diff --git a/data/kart_characteristics.xml b/data/kart_characteristics.xml
new file mode 100644
index 000000000..e72f40f8f
--- /dev/null
+++ b/data/kart_characteristics.xml
@@ -0,0 +1,404 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/stk_config.xml b/data/stk_config.xml
index a36995311..d1b198a0f 100644
--- a/data/stk_config.xml
+++ b/data/stk_config.xml
@@ -85,24 +85,6 @@
-
-
-
-
-
-
@@ -150,22 +132,6 @@
============================ -->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -411,23 +314,6 @@
(like 10000000) disables bullet skidding. -->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
diff --git a/sources.cmake b/sources.cmake
index e7f553234..ba4868d71 100644
--- a/sources.cmake
+++ b/sources.cmake
@@ -1,5 +1,5 @@
-# Modify this file to change the last-modified date when you add/remove a file.
-# This will then trigger a new cmake run automatically.
+# Modify this file to change the last-modified date when you add/remove a file.
+# This will then trigger a new cmake run automatically.
file(GLOB_RECURSE STK_HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "src/*.hpp")
file(GLOB_RECURSE STK_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "src/*.cpp")
file(GLOB_RECURSE STK_SHADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "data/shaders/*")
diff --git a/src/config/stk_config.cpp b/src/config/stk_config.cpp
index 58650278e..6ca5ce857 100644
--- a/src/config/stk_config.cpp
+++ b/src/config/stk_config.cpp
@@ -27,7 +27,6 @@
#include "io/xml_node.hpp"
#include "items/item.hpp"
#include "karts/kart_properties.hpp"
-#include "karts/player_difficulty.hpp"
#include "utils/log.hpp"
STKConfig* stk_config=0;
@@ -119,19 +118,8 @@ void STKConfig::load(const std::string &filename)
}
CHECK_NEG(m_max_karts, "" );
@@ -163,18 +151,13 @@ void STKConfig::load(const std::string &filename)
*/
void STKConfig::init_defaults()
{
- m_anvil_weight = m_parachute_friction =
- m_parachute_time = m_parachute_lbound_fraction =
- m_parachute_time_other = m_anvil_speed_factor =
- m_bomb_time = m_bomb_time_increase =
- m_anvil_time = m_music_credit_time =
+ m_bomb_time = m_bomb_time_increase =
+ m_explosion_impulse_objects = m_music_credit_time =
m_delay_finish_time = m_skid_fadeout_time =
m_near_ground = m_item_switch_time =
- m_smooth_angle_limit = m_parachute_ubound_fraction =
- m_penalty_time = m_explosion_impulse_objects =
- m_parachute_max_speed = UNDEFINED;
+ m_smooth_angle_limit = m_penalty_time =
+ UNDEFINED;
m_bubblegum_counter = -100;
- m_bubblegum_shield_time = -100;
m_shield_restrict_weapos = false;
m_max_karts = -100;
m_max_skidmarks = -100;
@@ -310,23 +293,6 @@ void STKConfig::getAllData(const XMLNode * root)
credits_node->get("music", &m_music_credit_time);
- if(const XMLNode *anvil_node= root->getNode("anvil"))
- {
- anvil_node->get("weight", &m_anvil_weight );
- anvil_node->get("speed-factor", &m_anvil_speed_factor);
- anvil_node->get("time", &m_anvil_time );
- }
-
- if(const XMLNode *parachute_node= root->getNode("parachute"))
- {
- parachute_node->get("friction", &m_parachute_friction );
- parachute_node->get("time", &m_parachute_time );
- parachute_node->get("time-other", &m_parachute_time_other );
- parachute_node->get("lbound-fraction", &m_parachute_lbound_fraction);
- parachute_node->get("ubound-fraction", &m_parachute_ubound_fraction);
- parachute_node->get("max-speed", &m_parachute_max_speed );
- }
-
if(const XMLNode *bomb_node= root->getNode("bomb"))
{
bomb_node->get("time", &m_bomb_time);
@@ -359,7 +325,6 @@ void STKConfig::getAllData(const XMLNode * root)
if(const XMLNode *bubblegum_node= root->getNode("bubblegum"))
{
bubblegum_node->get("disappear-counter", &m_bubblegum_counter );
- bubblegum_node->get("shield-time", &m_bubblegum_shield_time );
bubblegum_node->get("restrict-weapons", &m_shield_restrict_weapos);
}
@@ -415,14 +380,6 @@ void STKConfig::getAllData(const XMLNode * root)
m_kart_properties[type->getName()]->copyFrom(m_default_kart_properties);
m_kart_properties[type->getName()]->getAllData(type);
}
-
- child_node = node->getNode("difficulties");
- for (unsigned int i = 0; i < child_node->getNumNodes(); ++i)
- {
- const XMLNode* type = child_node->getNode(i);
- m_player_difficulties[i] = new PlayerDifficulty();
- m_player_difficulties[i]->getAllData(type);
- }
} // getAllData
// ----------------------------------------------------------------------------
diff --git a/src/config/stk_config.hpp b/src/config/stk_config.hpp
index 62da73c98..89245a0f8 100644
--- a/src/config/stk_config.hpp
+++ b/src/config/stk_config.hpp
@@ -34,7 +34,6 @@
#include