diff --git a/data/models/License.txt b/data/models/License.txt index 3ee158000..68c56d492 100644 --- a/data/models/License.txt +++ b/data/models/License.txt @@ -74,6 +74,9 @@ * rubber_ball-icon, plunger icon, cake icon, bowling ball texture and icon by Totoplus62, released under CC-BY-SA 3.0 + +* shield-icon + by tuxfan, release under CC-BY-SA 3.0 Others are GPL, by the original (super)TuxKart team diff --git a/data/models/bubblegum-icon.png b/data/models/bubblegum-icon.png index 3c144dff4..637d532d3 100644 Binary files a/data/models/bubblegum-icon.png and b/data/models/bubblegum-icon.png differ diff --git a/data/models/bubblegum_shield.b3d b/data/models/bubblegum_shield.b3d new file mode 100644 index 000000000..3a1a4c01e Binary files /dev/null and b/data/models/bubblegum_shield.b3d differ diff --git a/data/models/bubblegum_shield.png b/data/models/bubblegum_shield.png new file mode 100644 index 000000000..fe65992a9 Binary files /dev/null and b/data/models/bubblegum_shield.png differ diff --git a/data/models/shield-icon.png b/data/models/shield-icon.png new file mode 100644 index 000000000..41e27bc21 Binary files /dev/null and b/data/models/shield-icon.png differ diff --git a/data/stk_config.xml b/data/stk_config.xml index 2746789d0..c42716288 100644 --- a/data/stk_config.xml +++ b/data/stk_config.xml @@ -114,8 +114,10 @@ nolok-bubble-gum, easter egg --> - - + + diff --git a/src/config/stk_config.cpp b/src/config/stk_config.cpp index 33424df9e..b3f840e74 100644 --- a/src/config/stk_config.cpp +++ b/src/config/stk_config.cpp @@ -118,6 +118,7 @@ void STKConfig::load(const std::string &filename) CHECK_NEG(m_anvil_weight, "anvil-weight" ); CHECK_NEG(m_item_switch_time, "item-switch-time" ); CHECK_NEG(m_bubblegum_counter, "bubblegum disappear counter"); + CHECK_NEG(m_bubblegum_shield_time, "bubblegum shield-time" ); CHECK_NEG(m_explosion_impulse_objects, "explosion-impulse-objects" ); CHECK_NEG(m_max_history, "max-history" ); CHECK_NEG(m_max_skidmarks, "max-skidmarks" ); @@ -159,6 +160,8 @@ void STKConfig::init_defaults() m_smooth_angle_limit = m_penalty_time = m_explosion_impulse_objects = UNDEFINED; m_bubblegum_counter = -100; + m_bubblegum_shield_time = -100; + m_shield_restrict_weapos = false; m_max_karts = -100; m_max_history = -100; m_max_skidmarks = -100; @@ -335,7 +338,9 @@ 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("disappear-counter", &m_bubblegum_counter ); + bubblegum_node->get("shield-time", &m_bubblegum_shield_time ); + bubblegum_node->get("restrict-weapons", &m_shield_restrict_weapos); } if(const XMLNode *explosion_node= root->getNode("explosion")) diff --git a/src/config/stk_config.hpp b/src/config/stk_config.hpp index 8dda02cb4..67b93140d 100644 --- a/src/config/stk_config.hpp +++ b/src/config/stk_config.hpp @@ -74,8 +74,10 @@ public: passed on. */ float m_anvil_time; /**