aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/Unit.cpp20
-rw-r--r--src/game/World.cpp8
-rw-r--r--src/game/World.h1
-rw-r--r--src/trinitycore/Main.cpp2
-rw-r--r--src/trinitycore/trinitycore.conf.dist9
5 files changed, 27 insertions, 13 deletions
diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp
index 6600879d0eb..cd2555f28ef 100644
--- a/src/game/Unit.cpp
+++ b/src/game/Unit.cpp
@@ -58,15 +58,15 @@
float baseMoveSpeed[MAX_MOVE_TYPE] =
{
- 2.5f, // MOVE_WALK
- 7.0f, // MOVE_RUN
- 3.0f, // MOVE_RUN_BACK
- 4.722222f, // MOVE_SWIM
- 4.5f, // MOVE_SWIM_BACK
- 3.141594f, // MOVE_TURN_RATE
- 7.0f, // MOVE_FLIGHT
- 4.5f, // MOVE_FLIGHT_BACK
- 3.14f // MOVE_PITCH_RATE
+ 2.5f * sWorld.getRate(RATE_MOVESPEED), // MOVE_WALK
+ 7.0f * sWorld.getRate(RATE_MOVESPEED), // MOVE_RUN
+ 3.0f * sWorld.getRate(RATE_MOVESPEED), // MOVE_RUN_BACK
+ 4.722222f * sWorld.getRate(RATE_MOVESPEED), // MOVE_SWIM
+ 4.5f * sWorld.getRate(RATE_MOVESPEED), // MOVE_SWIM_BACK
+ 3.141594f * sWorld.getRate(RATE_MOVESPEED), // MOVE_TURN_RATE
+ 7.0f * sWorld.getRate(RATE_MOVESPEED), // MOVE_FLIGHT
+ 4.5f * sWorld.getRate(RATE_MOVESPEED), // MOVE_FLIGHT_BACK
+ 3.14f * sWorld.getRate(RATE_MOVESPEED) // MOVE_PITCH_RATE
};
// Used for prepare can/can`t triggr aura
@@ -169,7 +169,7 @@ Unit::Unit()
m_misdirectionTargetGUID = 0;
// remove aurastates allowing special moves
- for(uint8 i=0; i < MAX_REACTIVE; ++i)
+ for(uint8 i = 0; i < MAX_REACTIVE; ++i)
m_reactiveTimer[i] = 0;
}
diff --git a/src/game/World.cpp b/src/game/World.cpp
index db791f06bc9..00f7cc87c15 100644
--- a/src/game/World.cpp
+++ b/src/game/World.cpp
@@ -515,9 +515,15 @@ void World::LoadConfigSettings(bool reload)
rate_values[RATE_TALENT] = sConfig.GetFloatDefault("Rate.Talent",1.0f);
if(rate_values[RATE_TALENT] < 0.0f)
{
- sLog.outError("Rate.Talent (%f) mustbe > 0. Using 1 instead.",rate_values[RATE_TALENT]);
+ sLog.outError("Rate.Talent (%f) must be > 0. Using 1 instead.",rate_values[RATE_TALENT]);
rate_values[RATE_TALENT] = 1.0f;
}
+ rate_values[RATE_MOVESPEED] = sConfig.GetFloatDefault("Rate.MoveSpeed",1.0f);
+ if(rate_values[RATE_MOVESPEED] < 0)
+ {
+ sLog.outError("Rate.MoveSpeed (%f) must be > 0. Using 1 instead.",rate_values[RATE_MOVESPEED]);
+ rate_values[RATE_MOVESPEED] = 1.0f;
+ }
rate_values[RATE_CORPSE_DECAY_LOOTED] = sConfig.GetFloatDefault("Rate.Corpse.Decay.Looted",0.5f);
rate_values[RATE_TARGET_POS_RECALCULATION_RANGE] = sConfig.GetFloatDefault("TargetPosRecalculateRange",1.5f);
diff --git a/src/game/World.h b/src/game/World.h
index e82546261fe..823d172d7f4 100644
--- a/src/game/World.h
+++ b/src/game/World.h
@@ -327,6 +327,7 @@ enum Rates
RATE_DURABILITY_LOSS_PARRY,
RATE_DURABILITY_LOSS_ABSORB,
RATE_DURABILITY_LOSS_BLOCK,
+ RATE_MOVESPEED,
MAX_RATES
};
diff --git a/src/trinitycore/Main.cpp b/src/trinitycore/Main.cpp
index 8638c74aa1a..ddb233d557b 100644
--- a/src/trinitycore/Main.cpp
+++ b/src/trinitycore/Main.cpp
@@ -40,7 +40,7 @@
// Format is YYYYMMDDRR where RR is the change in the conf file
// for that day.
#ifndef _TRINITY_CORE_CONFVER
-# define _TRINITY_CORE_CONFVER 2009082901
+# define _TRINITY_CORE_CONFVER 2009083001
#endif //_TRINITY_CORE_CONFVER
#ifdef WIN32
diff --git a/src/trinitycore/trinitycore.conf.dist b/src/trinitycore/trinitycore.conf.dist
index ae79b365f4d..160a5fb6656 100644
--- a/src/trinitycore/trinitycore.conf.dist
+++ b/src/trinitycore/trinitycore.conf.dist
@@ -1,7 +1,7 @@
##########################################
# Trinity Core worldd configuration file #
##########################################
-ConfVersion=2009082901
+ConfVersion=2009083001
###################################################################################################################
# CONNECTIONS AND DIRECTORIES
@@ -1258,6 +1258,12 @@ Visibility.Distance.Grey.Object = 10
# Reputation Gain rate
# Default: 1
#
+# Rate.MoveSpeed
+# Multiply the default unit (player,pet,...) speed.
+# Shouldn't affect creatures, as their speed is set in the database.
+# Default: 1 - no change
+# 1.4 - 40% increase
+#
# Rate.InstanceResetTime
# Multiplier for the number of days in between global raid/heroic instance resets.
# Default: 1
@@ -1368,6 +1374,7 @@ Rate.Mining.Amount = 1
Rate.Mining.Next = 1
Rate.Talent = 1
Rate.Reputation.Gain = 1
+Rate.MoveSpeed = 1
Rate.Reputation.LowLevel.Kill = 1
Rate.Reputation.LowLevel.Quest = 1
Rate.InstanceResetTime = 1