diff options
author | Jesusaves <cpntb1@ymail.com> | 2019-05-20 11:01:20 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2019-05-20 11:01:20 -0300 |
commit | cc8727b60fbcae442bc3fd0e38514733d5fab1d2 (patch) | |
tree | 6bf444e5aa2ba4f0f21f4bcbb580649b3c53c8ca /npc/items/legacy_heal.txt | |
parent | 5b6e7d9c85f3e48ce84a6fb4b14d4a59f7da086e (diff) | |
download | serverdata-cc8727b60fbcae442bc3fd0e38514733d5fab1d2.tar.gz serverdata-cc8727b60fbcae442bc3fd0e38514733d5fab1d2.tar.bz2 serverdata-cc8727b60fbcae442bc3fd0e38514733d5fab1d2.tar.xz serverdata-cc8727b60fbcae442bc3fd0e38514733d5fab1d2.zip |
Add legacy_heal, support for legacy behavior
Diffstat (limited to 'npc/items/legacy_heal.txt')
-rw-r--r-- | npc/items/legacy_heal.txt | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/npc/items/legacy_heal.txt b/npc/items/legacy_heal.txt new file mode 100644 index 000000000..9ef8e548b --- /dev/null +++ b/npc/items/legacy_heal.txt @@ -0,0 +1,48 @@ +// TMW-2 Script. +// Evol scripts. +// Author: +// Reid +// Jesusalva +// Description: +// Legacy Healing System +// +// Variables: +// @delay Second of healing +// @min Min amount of healing +// @max Max amount of healing +// +// *getequipoption(EQI_HEAD_TOP,1,168); → Heal Bonus (should be first bonus on Chef Hat) + + +- script legacy_heal -1,{ + +OnUse: + if (@delay <= 0) end; + + // minimum between @min and bVit / 2 * BaseLevel / 10 + @min = min(@max, readparam(bVit) * BaseLevel / 20); + @val1 = rand(@min, @max); + + @delay *= 1000; // Put the delay in ms + + // We now have @val1 (new effect), @delay (new delay) + // But do we have .@v and .@d (old effect and delay)? + .@v=getstatus(getarg(0), 1); + .@d=getstatus(getarg(0), 4) * 1000; + + // If there WAS an effect previously, get ponderate average + if (.@v > 0) { + @val1=ponderate_avg(@val1, @delay, .@v, .@d); + @delay=ponderate_avg(@delay, @val1, .@d, .@v); + } + + // Decide the healing bonus type. We have four types: S, L, G and M + // By default, we use 'S' + .@skill = SC_S_LIFEPOTION; + + // Apply the effect and finish + sc_end .@skill; + sc_start2 .@skill, @delay, @val1, 1; + + end; +} |