|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
--Resource Warner--------------------local RESOURCE_WARNER_FLASH_TIME = 300local RESOURCE_WARNER_NUM_FLASHES = 3 return warnerend self.warning:RegisterForEvent(EVENT_COMBAT_EVENT, function(eventCode, ...) self:OnCombatEvent(...) end) self.warning:AddFilterForEvent(EVENT_COMBAT_EVENT, REGISTER_FILTER_POWER_TYPE, powerType, REGISTER_FILTER_COMBAT_RESULT, ACTION_RESULT_INSUFFICIENT_RESOURCE) self.warning:RegisterForEvent(EVENT_POWER_UPDATE, function(_, unitTag, powerIndex, powerType, currentPower, maxPower) self:OnPowerUpdate(powerType, currentPower, maxPower) end) self.warning:AddFilterForEvent(EVENT_POWER_UPDATE, REGISTER_FILTER_POWER_TYPE, powerType, REGISTER_FILTER_UNIT_TAG, "player")end end endendfunction ZO_ResourceWarner:OnCombatEvent(result, isError, abilityName, abilityGraphic, abilityActionSlotType, sourceName, sourceType, targetName, targetType, hitValue, powerType, damageType, log) else --Reset the animation by making it do RESOURCE_WARNER_NUM_FLASHES after this point local newLoops = RESOURCE_WARNER_NUM_FLASHES --If we're on the backswing of the ping pong we need to do one addition loop to make sure it ends in the alpha down state, otherwise it stops at full alpha if remainingLoops % 2 == 0 then newLoops = newLoops + 1 end end endend end endend--Health Warner---------------local HEALTH_ALPHA_PULSE_THRESHOLD = 0.25 return warnerend end end self.warning:AddFilterForEvent(EVENT_POWER_UPDATE, REGISTER_FILTER_POWER_TYPE, COMBAT_MECHANIC_FLAGS_HEALTH, REGISTER_FILTER_UNIT_TAG, "player")end if paused then end else end endend if healthPerc <= HEALTH_ALPHA_PULSE_THRESHOLD then end else end endend local healthPerc = health / maxHealth endend |