From f68952c168d6610f5de8d5984ef38860d191d47b Mon Sep 17 00:00:00 2001 From: JJ Date: Fri, 8 May 2015 22:23:50 -0400 Subject: [PATCH] Update to some spell duration formulas (Shendare). Filename fixes. --- ...l => 2015_02_05_UseAdditiveFocusFromWornSlot.sql} | 0 ...Type.sql => 2015_02_06_AdditiveBonusWornType.sql} | 0 ...5_4_30_MeleePush.sql => 2015_04_30_MeleePush.sql} | 0 zone/spells.cpp | 12 +++++++----- 4 files changed, 7 insertions(+), 5 deletions(-) rename utils/sql/git/optional/{2015_2_5_UseAdditiveFocusFromWornSlot.sql => 2015_02_05_UseAdditiveFocusFromWornSlot.sql} (100%) rename utils/sql/git/optional/{2015_2_6_AdditiveBonusWornType.sql => 2015_02_06_AdditiveBonusWornType.sql} (100%) rename utils/sql/git/optional/{2015_4_30_MeleePush.sql => 2015_04_30_MeleePush.sql} (100%) diff --git a/utils/sql/git/optional/2015_2_5_UseAdditiveFocusFromWornSlot.sql b/utils/sql/git/optional/2015_02_05_UseAdditiveFocusFromWornSlot.sql similarity index 100% rename from utils/sql/git/optional/2015_2_5_UseAdditiveFocusFromWornSlot.sql rename to utils/sql/git/optional/2015_02_05_UseAdditiveFocusFromWornSlot.sql diff --git a/utils/sql/git/optional/2015_2_6_AdditiveBonusWornType.sql b/utils/sql/git/optional/2015_02_06_AdditiveBonusWornType.sql similarity index 100% rename from utils/sql/git/optional/2015_2_6_AdditiveBonusWornType.sql rename to utils/sql/git/optional/2015_02_06_AdditiveBonusWornType.sql diff --git a/utils/sql/git/optional/2015_4_30_MeleePush.sql b/utils/sql/git/optional/2015_04_30_MeleePush.sql similarity index 100% rename from utils/sql/git/optional/2015_4_30_MeleePush.sql rename to utils/sql/git/optional/2015_04_30_MeleePush.sql diff --git a/zone/spells.cpp b/zone/spells.cpp index d93050746..77a9f691d 100644 --- a/zone/spells.cpp +++ b/zone/spells.cpp @@ -2642,7 +2642,7 @@ int CalcBuffDuration_formula(int level, int formula, int duration) return i < duration ? (i < 1 ? 1 : i) : duration; case 2: - i = (int)ceil(duration / 5.0f * 3); + i = (int)ceil(level / 5.0f * 3); return i < duration ? (i < 1 ? 1 : i) : duration; case 3: @@ -2681,13 +2681,15 @@ int CalcBuffDuration_formula(int level, int formula, int duration) return std::min((level + 3) * 30, duration); case 12: - return duration; - + case 13: + case 14: case 15: // Don't know what the real formula for this should be. Used by Skinspikes potion. return duration; - case 50: // lucy says this is unlimited? - return 72000; // 5 days + case 50: // Permanent. Cancelled by casting/combat for perm invis, non-lev zones for lev, curing poison/curse counters, etc. + return 72000; // 5 days until better method to make permanent + + //case 51: // Permanent. Cancelled when out of range of aura. Placeholder until appropriate duration identified. case 3600: return duration ? duration : 3600;