Implemented 'min_range' field, sets a min range that you must

be away from target for spell to land.
This commit is contained in:
KayenEQ 2014-08-03 08:21:47 -04:00
parent 52d92b7181
commit ef982b9ce2
4 changed files with 6 additions and 4 deletions

View File

@ -8,6 +8,7 @@ in/out of combat (beneficial) or if target is in/out of combat (detrimental).
-min_dist, min_dist_mod, max_dist, max_dist_mod - Scales spell power based on targets distance from caster. -min_dist, min_dist_mod, max_dist, max_dist_mod - Scales spell power based on targets distance from caster.
*This will require further work to fully implement but will work with 90% of live spells as is. *This will require further work to fully implement but will work with 90% of live spells as is.
*If making custom spells do not include effects that can't be scaled (like a spell trigger) *If making custom spells do not include effects that can't be scaled (like a spell trigger)
- min_rage sets minimum distance range that must be away from target.
Required SQL: utils/sql/git/required/2014_08_02_spells_new.sql Required SQL: utils/sql/git/required/2014_08_02_spells_new.sql

View File

@ -1742,8 +1742,8 @@ void SharedDatabase::LoadSpells(void *data, int max_spells) {
sp[tempid].viral_targets = atoi(row[191]); sp[tempid].viral_targets = atoi(row[191]);
sp[tempid].viral_timer = atoi(row[192]); sp[tempid].viral_timer = atoi(row[192]);
sp[tempid].NimbusEffect = atoi(row[193]); sp[tempid].NimbusEffect = atoi(row[193]);
sp[tempid].directional_start = (float)atoi(row[194]); sp[tempid].directional_start = static_cast<float>(atoi(row[194]));
sp[tempid].directional_end = (float)atoi(row[195]); sp[tempid].directional_end = static_cast<float>(atoi(row[195]));
sp[tempid].not_extendable = atoi(row[197]) != 0; sp[tempid].not_extendable = atoi(row[197]) != 0;
sp[tempid].suspendable = atoi(row[200]) != 0; sp[tempid].suspendable = atoi(row[200]) != 0;
sp[tempid].viral_range = atoi(row[201]); sp[tempid].viral_range = atoi(row[201]);
@ -1761,7 +1761,7 @@ void SharedDatabase::LoadSpells(void *data, int max_spells) {
sp[tempid].min_dist_mod = atof(row[228]); sp[tempid].min_dist_mod = atof(row[228]);
sp[tempid].max_dist = atof(row[229]); sp[tempid].max_dist = atof(row[229]);
sp[tempid].max_dist_mod = atof(row[230]); sp[tempid].max_dist_mod = atof(row[230]);
sp[tempid].min_range = atoi(row[231]); sp[tempid].min_range = static_cast<float>(atoi(row[231]));
sp[tempid].DamageShieldType = 0; sp[tempid].DamageShieldType = 0;
} }
mysql_free_result(result); mysql_free_result(result);

View File

@ -743,7 +743,7 @@ struct SPDat_Spell_Struct
/* 228 */ float min_dist_mod; //spell power modified by distance from caster (Modifier at Min Distance) /* 228 */ float min_dist_mod; //spell power modified by distance from caster (Modifier at Min Distance)
/* 229 */ float max_dist; //spell power modified by distance from caster (Max Distance) /* 229 */ float max_dist; //spell power modified by distance from caster (Max Distance)
/* 230 */ float max_dist_mod; //spell power modified by distance from caster (Modifier at Max Distance) /* 230 */ float max_dist_mod; //spell power modified by distance from caster (Modifier at Max Distance)
/* 231 */ int min_range; //Min casting range /* 231 */ float min_range; //Min casting range
/* 232 - 236 */ /* 232 - 236 */
uint8 DamageShieldType; // This field does not exist in spells_us.txt uint8 DamageShieldType; // This field does not exist in spells_us.txt
}; };

View File

@ -249,6 +249,7 @@
#define CORPSEDRAG_BEGIN 4064 //You begin to drag %1. #define CORPSEDRAG_BEGIN 4064 //You begin to drag %1.
#define CORPSEDRAG_STOPALL 4065 //You stop dragging the corpses. #define CORPSEDRAG_STOPALL 4065 //You stop dragging the corpses.
#define CORPSEDRAG_STOP 4066 //You stop dragging the corpse. #define CORPSEDRAG_STOP 4066 //You stop dragging the corpse.
#define TARGET_TOO_CLOSE 4602 //You are too close to your target. Get farther away.
#define WHOALL_NO_RESULTS 5029 //There are no players in EverQuest that match those who filters. #define WHOALL_NO_RESULTS 5029 //There are no players in EverQuest that match those who filters.
#define PETITION_NO_DELETE 5053 //You do not have a petition in the queue. #define PETITION_NO_DELETE 5053 //You do not have a petition in the queue.
#define PETITION_DELETED 5054 //Your petition was successfully deleted. #define PETITION_DELETED 5054 //Your petition was successfully deleted.