CurseForge and Overwolf are joining forces!
Awesome More Information
  • 0

    posted a message on Edited: Creating an ACE author~
    This looks promising


    Retrieves information about an available Shapeshiftform or Stance.

    icon, name, active, castable = GetShapeshiftFormInfo(index);

    --------------------------------------------------------------------------------

    Arguments
    (Number Index)
    type
    One of the following:
    index
    Index of ShapeshiftForm, counted from left to right from Iconpositions in the Shapeshift/Stance bar. May not be greater then GetNumShapeshiftForms();

    --------------------------------------------------------------------------------

    Returns
    icon: Position and name of the icon used for the button
    name: Name of the ShapeshiftForm or Stance (optional)
    active: Returns 1 if this ShapeshiftForm/Stance is currently active, else 0 (optional)
    castable: identifies if its castable.

    --------------------------------------------------------------------------------

    Example
    icon = GetShapeshiftFormInfo(1);
    icon, name = GetShapeshiftFormInfo(1);
    icon, name, active = GetShapeshiftFormInfo(1);
    icon, name, active, castable = GetShapeshiftFormInfo(1);
    Posted in: General Chat
  • 0

    posted a message on Edited: Creating an ACE author~
    My next question should you guys (and girls) feel up to it. Is it possible for an addon to know if a player has a certain skill and if they do is it usable? For instance. A warrior friend has Overpower however this is only available in certain stances then his alt toon a rogue does not have disarm at all.

    Now for his rogue is easy enough to just set it to standby. no sleep lost there however on his warrior he wants the addon to start automatically when he changes stances..

    Thoughts?
    Posted in: General Chat
  • 0

    posted a message on BigMinimap replacement
    Holy flashing screens batman.

    Resizing the Minimap to 1.5 changed the border but not the map itself. It also sent my interface into fits of flashing joy. Im glad it didnt send me into a fit.
    Posted in: Addon Ideas
  • 0

    posted a message on BigMinimap replacement
    That would change the scale of the cluster yes but would not replace the keypress minimap increase in size.

    I actually did try and use visor to change the cluster size with no luck. Followed the directions. Not sure where I went wrong.

    was like

    /vz set f=MinimapCluster
    /vz set s=2

    results nada.
    Posted in: Addon Ideas
  • 0

    posted a message on BigMinimap replacement
    See BMM http://www.wowinterface.com/downloads/fileinfo.php?id=4095

    The only real short comings i find in BMM other than it not being an ACE mod is the fact that when you increase the scale of the map the rest of the icons follow. Sometimes I do need to enlarge the map but I'm quite sure I dont need a 2 inch track icon.
    Posted in: Addon Ideas
  • 0

    posted a message on Edited: Creating an ACE author~
    Yes that works as well Turan.
    Posted in: General Chat
  • 0

    posted a message on Edited: Creating an ACE author~
    My list needs more blue ;)

    Posted in: General Chat
  • 0

    posted a message on Edited: Creating an ACE author~
    Oh yeah now were cooking~
    Posted in: General Chat
  • 0

    posted a message on Edited: Creating an ACE author~
    Makes sense then. I have reduced the XML to this :

    <Ui xmlns="http&#58;//www.blizzard.com/wow/ui/" xmlns&#58;xsi="http&#58;//www.w3.org/2001/XMLSchema-instance" xsi&#58;schemaLocation="http&#58;//www.blizzard.com/wow/ui/">
    	<MessageFrame frameStrata="LOW" insertMode="TOP" name="MMSplashFrame" parent="UIParent" toplevel="true">
    		<Size>
    			<AbsDimension x="512" y="100" />
    		</Size>
    		<Anchors>
    			<Anchor point="CENTER">
    				<Offset>
    					<AbsDimension x="0" y="0" />
    				</Offset>
    			</Anchor>
    		</Anchors>
    		<FontString inherits="NumberFontNormalHuge" justifyH="CENTER" />
    	</MessageFrame>
    </Ui
    >

    My next question and heres the kicker. Why doesn't it do anything ;). Its registered as an ACE addon. I can vew all the config info, set it to standby and vice versa but in combat nothing happens.
    Posted in: General Chat
  • 0

    posted a message on Edited: Creating an ACE author~
    You were right on both counts. I did not have ace listed as a dependancy and I was atempting to use OnLoad from the XML. Both issues now resolved. My next question since I am just now learning of the overall ACE communities disdane for XML. How does the function actually get triggered? Am I still required to trigger the function from <OnEvent> in XML or does ACE handle this somehow as well? If it is triggered from the XML. What function do I call? function MongooseMania:Enable() or function MongooseMania:UNIT_COMBAT(). Though maybe it is some ACE specific event handler I am yet unaware of?

    Full code disclosure:

    TOC
    ## Interface: 1800
    ## Title: MongooseMania
    ## Author: Mokaikai
    ## Notes: Display a screen splash and play an audio cue when either player or target dodge's or parry's..
    ## Dependencies: Ace
    MongooseMania.xml

    XML
    <Ui xmlns="http&#58;//www.blizzard.com/wow/ui/" xmlns&#58;xsi="http&#58;//www.w3.org/2001/XMLSchema-instance" xsi&#58;schemaLocation="http&#58;//www.blizzard.com/wow/ui/">
    	<Script file="MongooseMania.lua"/>
    	<Frame name="MongooseManiaFrame">
    		<MessageFrame frameStrata="LOW" insertMode="TOP" name="MMSplashFrame" parent="UIParent" toplevel="true">
    			<Size>
    				<AbsDimension x="512" y="100"></AbsDimension>
    			</Size>
    			<Anchors>
    				<Anchor point="CENTER">
    					<Offset>
    						<AbsDimension x="0" y="0"></AbsDimension>
    					</Offset>
    				</Anchor>
    			</Anchors>
    			<FontString inherits="NumberFontNormalHuge" justifyH="CENTER"></FontString>
    		</MessageFrame>
    		<Scripts>
    		<!--<OnLoad>
    				MongooseMania&#58;Initialize&#40;&#41;
    			</OnLoad> -->
    			<OnEvent>
    				MongooseMania&#58;Enable&#40;&#41; 
    			</OnEvent>
    		</Scripts>
    	</Frame>
    </Ui>

    LUA
    --<< ================================================= >>--
    -- Section I&#58; Initialize the AddOn Object.               --
    --<< ================================================= >>--
    
    MongooseMania		= AceAddon&#58;new&#40;&#123;
    	name		= "MongooseMania",
    	description	= "Display a screen splash and play an audio cue when either player or target dodge's and parry's.",
    	author		= "Mokaikai",
    	version		= " Beta",
    	aceCompatible	= "100",
    	db		= AceDbClass&#58;new&#40;"MongooseManiaDB"&#41;,
            defaults	= DB_OPTIONS,
    	cmd		= AceChatCmd&#58;new&#123;"/MM", "/MongooseMania"&#125;,
    	dodgeWav	= "interface\\addons\\mongoosemania\\waves\\dodge.wav", 
    	parryWav	= "interface\\addons\\mongoosemania\\waves\\parry.wav" 
    &#125;&#41; 
    
    function MongooseMania&#58;Initialize&#40;&#41; 
       if &#40; ace.char.class == "Hunter" &#41; then 
          self.dodgeSpam = "Mongoose Bite!" 
          self.parrySpam = "Counter Attack!" 
          self.argType = "player" 
          self.enable = TRUE 
       elseif &#40; ace.char.class == "Rogue" &#41; then 
          self.parrySpam = "Disarm!" 
          self.argType = "target" 
          self.enable = TRUE 
       elseif &#40; ace.char.class == "Warrior"&#41; then 
          self.dodgeSpam = "Overpower!" 
          self.argType = "target" 
          self.enable = TRUE 
       end 
    end 
    
    function MongooseMania&#58;Enable&#40;&#41; 
       if&#40; self.enable &#41; then this&#58;RegisterEvent&#40;"UNIT_COMBAT"&#41; end 
    end 
    
    --<< ================================================= >>--
    -- Section II&#58; The MongooseMania System Function.        --
    --<< ================================================= >>--
    
    function MongooseMania&#58;UNIT_COMBAT&#40;&#41; 
       if &#40;&#40; arg1 == self.argType &#41; and &#40; arg2=="DODGE" &#41;&#41; then 
          PlaySoundFile&#40;self.dodgeWav&#41; 
          MMSplashFrame&#58;AddMessage&#40;self.dodgeSpam, 1, 1, 0, 1, 2&#41; 
       elseif &#40;&#40; arg1 == self.argType &#41; and &#40; arg2=="PARRY" &#41;&#41; then 
          PlaySoundFile&#40;self.parryWav&#41; 
          MMSplashFrame&#58;AddMessage&#40;self.parrySpam, 1, 1, 0, 1, 2&#41; 
       end
    end
    
    --<< ================================================= >>--
    -- Section Omega&#58; Register the AddOn Object.             --
    --<< ================================================= >>--
    
    MongooseMania&#58;RegisterForLoad&#40;&#41; 
    Posted in: General Chat
  • 0

    posted a message on Edited: Creating an ACE author~
    Any thoughts on the ace.char.class is nil value issue?

    It sounds from your description that the addon is now looking in a DB for the character class via the string ace.char.class but its unavailable because im not using a DB?
    Posted in: General Chat
  • 0

    posted a message on Edited: Creating an ACE author~
    ok so I found this....
    function AceCommands:UseProfileClass(addon)
    self:SetProfile(ace.char.class, addon,
    format(ACE_PROFILE_LOADED_CLASS, ace.char.class, ace.char.id)
    )
    end


    Now I must assume something is missing to let me use it.
    Posted in: General Chat
  • 0

    posted a message on Edited: Creating an ACE author~
    Ok I've taken what you have given me and some comments and the config stolen from other ACE'd mods, here it is.

    --<< ================================================= >>--
    -- Section I&#58; Initialize the AddOn Object.               --
    --<< ================================================= >>--
    
    MongooseMania		= AceAddon&#58;new&#40;&#123;
    	name		= "MongooseMania",
    	description	= "MongooseMania, based loosely on DodgeDing",
    	author		= "Mokaikai",
    	version		= "a./R1",
    	aceCompatible	= "100",
    	dodgeWav	= "interface\\addons\\mongoosemania\\waves\\dodge.wav", 
    	parryWav	= "interface\\addons\\mongoosemania\\waves\\parry.wav" 
    &#125;&#41; 
    
    
    function MongooseMania&#58;Initialize&#40;&#41; 
       if &#40; ace.char.class == "Hunter" &#41; then 
          self.dodgeSpam = "Mongoose Bite!" 
          self.parrySpam = "Counter Attack!" 
          self.argType = "player" 
          self.enable = TRUE 
       elseif &#40; ace.char.class == "Rogue" &#41; then 
          self.parrySpam = "Disarm!" 
          self.argType = "target" 
          self.enable = TRUE 
       elseif &#40; ace.char.class == "Warrior"&#41; then 
          self.dodgeSpam = "Overpower!" 
          self.argType = "target" 
          self.enable = TRUE 
       end 
    end 
    
    function MongooseMania&#58;Enable&#40;&#41; 
       if&#40; self.enable &#41; then this&#58;RegisterEvent&#40;"UNIT_COMBAT"&#41; end 
    end 
    
    --<< ================================================= >>--
    -- Section II&#58; The MongooseMania System Function.        --
    --<< ================================================= >>--
    
    function MongooseMania&#58;UNIT_COMBAT&#40;&#41; 
       if &#40;&#40; arg1 == self.argType &#41; and &#40; arg2=="DODGE" &#41;&#41; then 
          PlaySoundFile&#40;self.dodgeWav&#41; 
          MMSplashFrame&#58;AddMessage&#40;self.dodgeSpam, 1, 1, 0, 1, 2&#41; 
       elseif &#40;&#40; arg1 == self.argType &#41; and &#40; arg2=="PARRY" &#41;&#41; then 
          PlaySoundFile&#40;self.parryWav&#41; 
          MMSplashFrame&#58;AddMessage&#40;self.parrySpam, 1, 1, 0, 1, 2&#41; 
       end 
    end
    
    --<< ================================================= >>--
    -- Section Omega&#58; Register the AddOn Object.             --
    --<< ================================================= >>--
    
    MongooseMania&#58;RegisterForLoad&#40;&#41; 


    The only thing of note I had to change was the word AddOn and AddOn:RegisterAddon() to
    MongooseMania:RegisterForLoad()

    Currently im getting an error that ace.char.class is nil or not an object. How would I go about checking the ensure this ACE object does indeed exist?
    Posted in: General Chat
  • 0

    posted a message on Edited: Creating an ACE author~
    Good call. I had to read it 3 times to understand lol. You are totally right.
    Posted in: General Chat
  • 0

    posted a message on Edited: Creating an ACE author~
    Well I seem to have gotten my head around the changes you made, at least to the point where I could modify it further (as slight as those might be) to do what I need.

    Would you be willing to continue the lesson and go further and show me what it would look like as an "ACED" mod?

    local playerClass, englishClass = UnitClass("player")
    local argType
    local dodgeSpam 
    local parrySpam
    local dodgeWav = "interface\\addons\\mongoosemania\\waves\\dodge.wav" 
    local parryWav = "interface\\addons\\mongoosemania\\waves\\parry.wav" 
    
    function MM_OnLoad() 
    	if ( playerClass == "Hunter" ) then 
    		dodgeSpam = "Mongoose Bite!" 
    		parrySpam = "Counter Attack!"
    		argType = "player"
    		this:RegisterEvent("UNIT_COMBAT") 
    	elseif ( playerClass == "Rogue" ) then
    		parrySpam = "Disarm!"
    		argType = "target"
    		this:RegisterEvent("UNIT_COMBAT")
    	elseif ( playerClass == "Warrior") then
    		dodgeSpam = "Overpower!"
    		argType = "target"
    		this:RegisterEvent("UNIT_COMBAT") 			
    	end 
    end 
    
    function MM_OnEvent(event) 
    	if ( event ~= UNIT_COMBAT ) then return end
    	if (( arg1 == argType ) and ( arg2=="DODGE" )) then 
    		PlaySoundFile(dodgeWav) 
    		MMSplashFrame:AddMessage(dodgeSpam, 1, 1, 0, 1, 2) 
    	elseif (( arg1 == argType ) and ( arg2=="PARRY" )) then 
    		PlaySoundFile(parryWav) 
    		MMSplashFrame:AddMessage(parrySpam, 1, 1, 0, 1, 2) 
    	end 
    end


    One way or the other. Thank you Turan I've learned from you and it works great as is :P
    Posted in: General Chat
  • To post a comment, please or register a new account.