Make explosive items timeout configurable in stk_config
This commit is contained in:
parent
3292c8f0c3
commit
31e14b14c6
@ -184,8 +184,10 @@
|
||||
new: always get a new item.
|
||||
only-if-same: if the random item is the same one as the
|
||||
one currently owned, increase the number, otherwise
|
||||
no more/new item s are given to the kart. -->
|
||||
<powerup collect-mode="new"/>
|
||||
no more/new item s are given to the kart.
|
||||
no-explosive-items-timeout determines if world time is less than this value
|
||||
then no cake or basketball is given by bonus boxes. -->
|
||||
<powerup collect-mode="new" no-explosive-items-timeout="15.0"/>
|
||||
<!-- time: How long a switch is being effective.
|
||||
items for each item list the index of the item it is switched with.
|
||||
Order: giftbox, banana, big-nitro, small-nitro, bubble-gum, nolok-bubble-gum,
|
||||
@ -202,7 +204,6 @@
|
||||
<explosion impulse-objects="500.0" />
|
||||
|
||||
<!-- Networking
|
||||
state-frequency: how many states the server will send per second.
|
||||
steering-reduction: Reduce a remote kart's steering by this factor
|
||||
each frame. This helps reduces oversteering by high latency
|
||||
clients when they only do minor steering adjustments.
|
||||
@ -210,8 +211,7 @@
|
||||
when networking is on. Objects will be hidden if total count is
|
||||
larger than this value.
|
||||
-->
|
||||
<networking state-frequency="10"
|
||||
steering-reduction="1.0"
|
||||
<networking steering-reduction="1.0"
|
||||
max-moveable-objects="15"/>
|
||||
|
||||
<!-- The field od views for 1-4 player split screen. fov-3 is
|
||||
|
@ -151,7 +151,7 @@ void STKConfig::load(const std::string &filename)
|
||||
CHECK_NEG(m_smooth_angle_limit, "physics smooth-angle-limit" );
|
||||
CHECK_NEG(m_default_track_friction, "physics default-track-friction");
|
||||
CHECK_NEG(m_physics_fps, "physics fps" );
|
||||
CHECK_NEG(m_network_state_frequeny, "network state-frequency" );
|
||||
CHECK_NEG(m_no_explosive_items_timeout,"powerup no-explosive-items-timeout" );
|
||||
CHECK_NEG(m_max_moveable_objects, "network max-moveable-objects");
|
||||
CHECK_NEG(m_network_steering_reduction,"network steering-reduction" );
|
||||
CHECK_NEG(m_default_moveable_friction, "physics default-moveable-friction");
|
||||
@ -203,7 +203,7 @@ void STKConfig::init_defaults()
|
||||
m_minimap_player_icon = -100;
|
||||
m_donate_url = "";
|
||||
m_password_reset_url = "";
|
||||
m_network_state_frequeny = -100;
|
||||
m_no_explosive_items_timeout = -100.0f;
|
||||
m_max_moveable_objects = -100;
|
||||
m_solver_iterations = -100;
|
||||
m_solver_set_flags = 0;
|
||||
@ -416,6 +416,8 @@ void STKConfig::getAllData(const XMLNode * root)
|
||||
Log::warn("StkConfig", "Invalid item mode '%s' - ignored.",
|
||||
s.c_str());
|
||||
}
|
||||
powerup_node->get("no-explosive-items-timeout",
|
||||
&m_no_explosive_items_timeout);
|
||||
}
|
||||
|
||||
if(const XMLNode *switch_node= root->getNode("switch"))
|
||||
@ -444,7 +446,6 @@ void STKConfig::getAllData(const XMLNode * root)
|
||||
|
||||
if (const XMLNode *networking_node = root->getNode("networking"))
|
||||
{
|
||||
networking_node->get("state-frequency", &m_network_state_frequeny);
|
||||
networking_node->get("max-moveable-objects", &m_max_moveable_objects);
|
||||
networking_node->get("steering-reduction", &m_network_steering_reduction);
|
||||
}
|
||||
|
@ -86,8 +86,8 @@ public:
|
||||
bool m_smooth_normals; /**< If normals for raycasts for wheels
|
||||
should be interpolated. */
|
||||
|
||||
/** How many state updates per second the server will send. */
|
||||
int m_network_state_frequeny;
|
||||
/** Prevent early explosive items before this world time. */
|
||||
float m_no_explosive_items_timeout;
|
||||
|
||||
/** Maximum number of moveable objects in a track when networking is on. */
|
||||
int m_max_moveable_objects;
|
||||
|
@ -604,7 +604,8 @@ PowerupManager::PowerupType PowerupManager::getRandomPowerup(unsigned int pos,
|
||||
*n=1;
|
||||
|
||||
// Prevents early explosive items
|
||||
if (stk_config->ticks2Time(World::getWorld()->getTicksSinceStart()) < 15.)
|
||||
if (stk_config->ticks2Time(World::getWorld()->getTicksSinceStart()) <
|
||||
stk_config->m_no_explosive_items_timeout)
|
||||
{
|
||||
if (powerup == POWERUP_CAKE || powerup == POWERUP_RUBBERBALL)
|
||||
powerup = POWERUP_BOWLING;
|
||||
|
Loading…
Reference in New Issue
Block a user