Add WildMushroomCount() condition.
Johnny C. Lam [04-21-14 - 05:02]
Add WildMushroomCount() condition.
git-svn-id: svn://svn.curseforge.net/wow/ovale/mainline/trunk@1308 d5049fe3-3747-40f7-a4b5-f36d6801af5f
diff --git a/conditions/WildMushroomCount.lua b/conditions/WildMushroomCount.lua
new file mode 100644
index 0000000..0440026
--- /dev/null
+++ b/conditions/WildMushroomCount.lua
@@ -0,0 +1,41 @@
+--[[--------------------------------------------------------------------
+ Ovale Spell Priority
+ Copyright (C) 2014 Johnny C. Lam
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License in the LICENSE
+ file accompanying this program.
+--]]--------------------------------------------------------------------
+
+local _, Ovale = ...
+
+do
+ local OvaleCondition = Ovale.OvaleCondition
+
+ local API_GetTotemInfo = GetTotemInfo
+ local Compare = OvaleCondition.Compare
+
+ --- Get the number of active Wild Mushrooms by the player.
+ -- @name WildMushroomCount
+ -- @paramsig number or boolean
+ -- @param operator Optional. Comparison operator: less, atMost, equal, atLeast, more.
+ -- @param number Optional. The number to compare against.
+ -- @return The number of Wild Mushrooms.
+ -- @return A boolean value for the result of the comparison.
+ -- @usage
+ -- if WildMushroomCount() < 3 Spell(wild_mushroom_caster)
+
+ local function WildMushroomCount(condition)
+ local comparator, limit = condition[1], condition[2]
+ local count = 0
+ for slot = 1, 3 do
+ local haveTotem = API_GetTotemInfo(slot)
+ if haveTotem then
+ count = count + 1
+ end
+ end
+ return Compare(count, comparator, limit)
+ end
+
+ OvaleCondition:RegisterCondition("wildmushroomcount", false, WildMushroomCount)
+end
diff --git a/conditions/files.xml b/conditions/files.xml
index 6087ce7..25086c1 100644
--- a/conditions/files.xml
+++ b/conditions/files.xml
@@ -106,4 +106,5 @@
<Script file="True.lua" />
<Script file="WeaponDamage.lua" />
<Script file="WeaponEnchantExpires.lua" />
+ <Script file="WildMushroomCount.lua" />
</Ui>