aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/updates/6110_world_loot_template.sql2
-rw-r--r--src/game/SpellEffects.cpp43
2 files changed, 22 insertions, 23 deletions
diff --git a/sql/updates/6110_world_loot_template.sql b/sql/updates/6110_world_loot_template.sql
new file mode 100644
index 00000000000..b0e2de566eb
--- /dev/null
+++ b/sql/updates/6110_world_loot_template.sql
@@ -0,0 +1,2 @@
+
+ALTER TABLE `spell_loot_template` ADD COLUMN `lootmode` SMALLINT UNSIGNED NOT NULL DEFAULT 1 AFTER `ChanceOrQuestChance`;
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index 5a691344905..db686d660ec 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -6346,37 +6346,34 @@ void Spell::EffectLeapForward(uint32 i)
desty = y + dist * sin(orientation);
ground = unitTarget->GetMap()->GetHeight(destx,desty,MAX_HEIGHT,true);
floor = unitTarget->GetMap()->GetHeight(destx,desty,z, true);
- destz = fabs(ground - z) <= fabs(floor - z) ? ground:floor;
+ destz = fabs(ground - z) <= fabs(floor - z) ? ground : floor;
bool col = VMAP::VMapFactory::createOrGetVMapManager()->getObjectHitPos(mapid,x,y,z+0.5f,destx,desty,destz+0.5f,destx,desty,destz,-0.5f);
- if(col) // We had a collision!
+ if (col) // We had a collision!
{
- destx -= 0.6 * cos(orientation);
- desty -= 0.6 * sin(orientation);
- dist = sqrt((x-destx)*(x-destx) + (y-desty)*(y-desty));
- step = dist/10.0f;
+ destx -= 0.6 * cos(orientation);
+ desty -= 0.6 * sin(orientation);
+ dist = sqrt((x-destx)*(x-destx) + (y-desty)*(y-desty));
+ step = dist/10.0f;
}
int j = 0;
- for (j; j<10 ; j++)
- {
- if(fabs(z - destz) > 6)
- {
- destx -= step * cos(orientation);
- desty -= step * sin(orientation);
- ground = unitTarget->GetMap()->GetHeight(destx,desty,MAX_HEIGHT,true);
- floor = unitTarget->GetMap()->GetHeight(destx,desty,z, true);
- destz = fabs(ground - z) <= fabs(floor - z) ? ground:floor;
- }else
- break;
- }
- if(j == 9)
- {
- return;
- }
- unitTarget->NearTeleportTo(destx, desty, destz + 0.07531, orientation, unitTarget==m_caster);
+ for (j; j < 10; j++)
+ {
+ if (fabs(z - destz) > 6)
+ {
+ destx -= step * cos(orientation);
+ desty -= step * sin(orientation);
+ ground = unitTarget->GetMap()->GetHeight(destx,desty,MAX_HEIGHT,true);
+ floor = unitTarget->GetMap()->GetHeight(destx,desty,z, true);
+ destz = fabs(ground - z) <= fabs(floor - z) ? ground:floor;
+ } else break;
+ }
+ if (j == 9)
+ return;
+ unitTarget->NearTeleportTo(destx, desty, destz + 0.07531, orientation, unitTarget==m_caster);
}
void Spell::EffectReputation(uint32 i)