mirror of
https://github.com/mangosfour/server.git
synced 2025-12-13 13:37:05 +00:00
[9589] Add additional field for storage of speed_run rate of creature
This allow independent rate of walk vs run speed. Existing field renamed to explicit speed_walk. Note that default database rate for run is a result of the most common value seen, 8.0/7.0 Signed-off-by: NoFantasy <nofantasy@nf.no>
This commit is contained in:
parent
7d304b002c
commit
9823356946
9 changed files with 23 additions and 13 deletions
|
|
@ -24,7 +24,7 @@ CREATE TABLE `db_version` (
|
|||
`version` varchar(120) default NULL,
|
||||
`creature_ai_version` varchar(120) default NULL,
|
||||
`cache_id` int(10) default '0',
|
||||
`required_9539_01_mangos_spell_bonus_data` bit(1) default NULL
|
||||
`required_9589_01_mangos_creature_template` bit(1) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes';
|
||||
|
||||
--
|
||||
|
|
@ -1098,7 +1098,8 @@ CREATE TABLE `creature_template` (
|
|||
`faction_A` smallint(5) unsigned NOT NULL default '0',
|
||||
`faction_H` smallint(5) unsigned NOT NULL default '0',
|
||||
`npcflag` int(10) unsigned NOT NULL default '0',
|
||||
`speed` float NOT NULL default '1',
|
||||
`speed_walk` float NOT NULL default '1' COMMENT 'Result of 2.5/2.5, most common value',
|
||||
`speed_run` float NOT NULL default '1.14286' COMMENT 'Result of 8.0/7.0, most common value',
|
||||
`scale` float NOT NULL default '1',
|
||||
`rank` tinyint(3) unsigned NOT NULL default '0',
|
||||
`mindmg` float NOT NULL default '0',
|
||||
|
|
|
|||
4
sql/updates/9589_01_mangos_creature_template.sql
Normal file
4
sql/updates/9589_01_mangos_creature_template.sql
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
ALTER TABLE db_version CHANGE COLUMN required_9539_01_mangos_spell_bonus_data required_9589_01_mangos_creature_template bit;
|
||||
|
||||
ALTER TABLE creature_template ADD COLUMN speed_run float NOT NULL default '1.14286' COMMENT 'Result of 8.0/7.0, most common value' AFTER speed;
|
||||
ALTER TABLE creature_template CHANGE COLUMN speed speed_walk float NOT NULL default '1' COMMENT 'Result of 2.5/2.5, most common value';
|
||||
|
|
@ -87,6 +87,7 @@ pkgdata_DATA = \
|
|||
9526_01_mangos_spell_proc_event.sql \
|
||||
9528_01_mangos_spell_bonus_data.sql \
|
||||
9539_01_mangos_spell_bonus_data.sql \
|
||||
9589_01_mangos_creature_template.sql \
|
||||
README
|
||||
|
||||
## Additional files to include when running 'make dist'
|
||||
|
|
@ -154,4 +155,5 @@ EXTRA_DIST = \
|
|||
9526_01_mangos_spell_proc_event.sql \
|
||||
9528_01_mangos_spell_bonus_data.sql \
|
||||
9539_01_mangos_spell_bonus_data.sql \
|
||||
9589_01_mangos_creature_template.sql \
|
||||
README
|
||||
|
|
|
|||
|
|
@ -263,9 +263,10 @@ bool Creature::InitEntry(uint32 Entry, uint32 team, const CreatureData *data )
|
|||
|
||||
SetFloatValue(UNIT_MOD_CAST_SPEED, 1.0f);
|
||||
|
||||
SetSpeedRate(MOVE_WALK, cinfo->speed);
|
||||
SetSpeedRate(MOVE_RUN, cinfo->speed);
|
||||
SetSpeedRate(MOVE_SWIM, cinfo->speed);
|
||||
SetSpeedRate(MOVE_WALK, cinfo->speed_walk);
|
||||
SetSpeedRate(MOVE_RUN, cinfo->speed_run);
|
||||
SetSpeedRate(MOVE_SWIM, 1.0f); // using 1.0 rate
|
||||
SetSpeedRate(MOVE_FLIGHT, 1.0f); // using 1.0 rate
|
||||
|
||||
SetFloatValue(OBJECT_FIELD_SCALE_X, cinfo->scale);
|
||||
|
||||
|
|
|
|||
|
|
@ -81,7 +81,8 @@ struct CreatureInfo
|
|||
uint32 faction_A;
|
||||
uint32 faction_H;
|
||||
uint32 npcflag;
|
||||
float speed;
|
||||
float speed_walk;
|
||||
float speed_run;
|
||||
float scale;
|
||||
uint32 rank;
|
||||
float mindmg;
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ float baseMoveSpeed[MAX_MOVE_TYPE] =
|
|||
{
|
||||
2.5f, // MOVE_WALK
|
||||
7.0f, // MOVE_RUN
|
||||
1.25f, // MOVE_RUN_BACK
|
||||
2.5f, // MOVE_RUN_BACK
|
||||
4.722222f, // MOVE_SWIM
|
||||
4.5f, // MOVE_SWIM_BACK
|
||||
3.141594f, // MOVE_TURN_RATE
|
||||
|
|
@ -376,8 +376,9 @@ void Unit::SendMonsterMove(float NewPosX, float NewPosY, float NewPosZ, SplineTy
|
|||
|
||||
data << uint32(flags);
|
||||
|
||||
if(flags & SPLINEFLAG_WALKMODE)
|
||||
moveTime *= 1.05f;
|
||||
// enable me if things goes wrong or looks ugly, it is however an old hack
|
||||
// if(flags & SPLINEFLAG_WALKMODE)
|
||||
// moveTime *= 1.05f;
|
||||
|
||||
data << uint32(moveTime); // Time in between points
|
||||
data << uint32(1); // 1 single waypoint
|
||||
|
|
|
|||
|
|
@ -25,8 +25,8 @@ extern DatabasePostgre WorldDatabase;
|
|||
extern DatabaseMysql WorldDatabase;
|
||||
#endif
|
||||
|
||||
const char CreatureInfosrcfmt[]="iiiiiiiiiisssiiiiiiiiiiiffiffiifiiiiiiiiiiffiiiiiiiiiiiiiiiiiiisiiffliiiiiiiliiis";
|
||||
const char CreatureInfodstfmt[]="iiiiiiiiiisssiiiiiiiiiiiffiffiifiiiiiiiiiiffiiiiiiiiiiiiiiiiiiisiiffliiiiiiiliiii";
|
||||
const char CreatureInfosrcfmt[]="iiiiiiiiiisssiiiiiiiiiiifffiffiifiiiiiiiiiiffiiiiiiiiiiiiiiiiiiisiiffliiiiiiiliiis";
|
||||
const char CreatureInfodstfmt[]="iiiiiiiiiisssiiiiiiiiiiifffiffiifiiiiiiiiiiffiiiiiiiiiiiiiiiiiiisiiffliiiiiiiliiii";
|
||||
const char CreatureDataAddonInfofmt[]="iiiiiis";
|
||||
const char CreatureModelfmt[]="iffbi";
|
||||
const char CreatureInfoAddonInfofmt[]="iiiiiis";
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#ifndef __REVISION_NR_H__
|
||||
#define __REVISION_NR_H__
|
||||
#define REVISION_NR "9588"
|
||||
#define REVISION_NR "9589"
|
||||
#endif // __REVISION_NR_H__
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
#ifndef __REVISION_SQL_H__
|
||||
#define __REVISION_SQL_H__
|
||||
#define REVISION_DB_CHARACTERS "required_9375_01_characters_character_glyphs"
|
||||
#define REVISION_DB_MANGOS "required_9539_01_mangos_spell_bonus_data"
|
||||
#define REVISION_DB_MANGOS "required_9589_01_mangos_creature_template"
|
||||
#define REVISION_DB_REALMD "required_9010_01_realmd_realmlist"
|
||||
#endif // __REVISION_SQL_H__
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue