• 0

    posted a message on Need some help with secure hooking
    Hi all

     I am looking for a bit of guidance with hooking secure functions and/or triggering events for opening and closing the backpack.

     

    I already have PLAYER_LOGIN, MERCHANT_SHOW and MERCHANT_CLOSED events working without issue. 
    On Townlong Yak I can find the BAG_OPEN and BAG_CLOSED events, as well as the ToggleBackpack, OpenBackpack and CloseBackpack functions yet I still have not been able to get any results when I run my code. 
    Here are my code chunks:
    -- my hook functions
    hooksecurefunc(
    "CloseBackpack",function()
    print("CloseBackpack hookedfunction fired")
    end
    )
    hooksecurefunc(
    "OpenBackpack",function()
    print("OpenBackpack hookedfunction fired")
    end
    )
    hooksecurefunc(
    "ToggleBackpack",function()
    print("ToggleBackpack hookedfunction fired")
    end
    )
     -- my event triggers
    TestFrame:SetScript("OnEvent",function(self, event, ...)
    if event =="BAG_OPEN"then
    print("BAG_OPEN event triggered")
    elseif event =="BAG_CLOSED"then
    print("BAG_CLOSED event triggered")
    end
    end
    )
    TestFrame:RegisterEvent("BAG_OPEN")
    TestFrame:RegisterEvent("BAG_CLOSED")
    Any sort of guidance and explanation of where I am going wrong would be great.
    Posted in: Lua Code Discussion
  • 0

    posted a message on Convert ItemID's to Item Details

    Hi all

     

    I am building a small addon that converts an itemID into an extended itemDetails table.

    I have a function that loops through a list of itemID's and gets the full item details which I then insert as a table into another table.

     

    When I check the results in the saved variables file I get a list with only the hearthstone details, all the other entries display only the itemID.

     

    My convert function, (links to my full code are at the bottom of this post)

    -- convert function
    local function convertList()
    print('convert start')
    for k, v inpairs(AAA_FROM_LIST)do
    local itemName,
    itemLink,
    itemRarity,
    itemLevel,
    itemMinLevel,
    itemType,
    itemSubType,
    itemStackCount,
    itemEquipLoc,
    iconFileDataID,
    itemSellPrice,
    itemClassID,
    itemSubClassID,
    bindType,
    expacID,
    itemSetID,
    isCraftingReagent = GetItemInfo(v)

    tempItemList = {
    itemID = v,
    itemName = itemName,
    itemLink = itemLink,
    itemRarity = itemRarity,
    itemLevel = itemLevel,
    itemMinLevel = itemMinLevel,
    itemType = itemType,
    itemSubType = itemSubType,
    itemStackCount = itemStackCount,
    itemEquipLoc = itemEquipLoc,
    iconFileDataID = iconFileDataID,
    itemSellPrice = itemSellPrice,
    itemClassID = itemClassID,
    itemSubClassID = itemSubClassID,
    bindType = bindType,
    expacID = expacID,
    itemSetID = itemSetID,
    isCraftingReagent = isCraftingReagent
    }
    table.insert(AAA_CONVERTED_LIST,1, tempItemList)
    end
    print('convert end')
    end

    My results

    1. AAA_CONVERTED_LIST = {
    2.     {
    3.         ["itemID"] = 52025,
    4.     }, -- [1]
    5.     {
    6.         ["itemID"] = 50717,
    7.     }, -- [2]
    8.     {
    9.         ["itemID"] = 50606,
    10.     }, -- [3]
    11.     {
    12.         ["itemID"] = 50688,
    13.     }, -- [4]
    14.     {
    15.         ["itemID"] = 50639,
    16.     }, -- [5]
    17.     {
    18.         ["itemID"] = 50687,
    19.     }, -- [6]
    20.     {
    21.         ["itemID"] = 50703,
    22.     }, -- [7]
    23.     {
    24.         ["itemID"] = 50650,
    25.     }, -- [8]
    26.     {
    27.         ["itemID"] = 52028,
    28.     }, -- [9]
    29.     {
    30.         ["itemID"] = 52029,
    31.     }, -- [10]
    32.     {
    33.         ["itemID"] = 52026,
    34.     }, -- [11]
    35.     {
    36.         ["itemID"] = 50685,
    37.     }, -- [12]
    38.     {
    39.         ["itemID"] = 50730,
    40.     }, -- [13]
    41.     {
    42.         ["itemID"] = 147561,
    43.     }, -- [14]
    44.     {
    45.         ["itemID"] = 114131,
    46.     }, -- [15]
    47.     {
    48.         ["itemID"] = 114081,
    49.     }, -- [16]
    50.     {
    51.         ["itemID"] = 119229,
    52.     }, -- [17]
    53.     {
    54.         ["itemID"] = 119226,
    55.     }, -- [18]
    56.     {
    57.         ["itemID"] = 139802,
    58.     }, -- [19]
    59.     {
    60.         ["itemID"] = 32240,
    61.     }, -- [20]
    62.     {
    63.         ["itemID"] = 32258,
    64.     }, -- [21]
    65.     {
    66.         ["itemID"] = 32254,
    67.     }, -- [22]
    68.     {
    69.         ["itemID"] = 805,
    70.     }, -- [23]
    71.     {
    72.         ["itemID"] = 9763,
    73.     }, -- [24]
    74.     {
    75.         ["itemID"] = 4496,
    76.     }, -- [25]
    77.     {
    78.         ["itemID"] = 109119,
    79.     }, -- [26]
    80.     {
    81.         ["itemID"] = 109253,
    82.     }, -- [27]
    83.     {
    84.         ["itemID"] = 128650,
    85.     }, -- [28]
    86.     {
    87.         ["itemName"] = "Hearthstone",
    88.         ["iconFileDataID"] = 134414,
    89.         ["bindType"] = 1,
    90.         ["itemSellPrice"] = 0,
    91.         ["itemLink"] = "|cffffffff|Hitem:6948::::::::19:265::::::|h[Hearthstone]|h|r",
    92.         ["itemClassID"] = 15,
    93.         ["itemLevel"] = 1,
    94.         ["itemStackCount"] = 1,
    95.         ["isCraftingReagent"] = false,
    96.         ["expacID"] = 0,
    97.         ["itemRarity"] = 1,
    98.         ["itemMinLevel"] = 0,
    99.         ["itemID"] = 6948,
    100.         ["itemSubClassID"] = 0,
    101.         ["itemEquipLoc"] = "",
    102.         ["itemSubType"] = "Junk",
    103.         ["itemType"] = "Miscellaneous",
    104.     }, -- [29]
    105.     {
    106.         ["itemID"] = 15017,
    107.     }, -- [30]
    108.     {
    109.         ["itemID"] = 6268,
    110.     }, -- [31]
    111.     {
    112.         ["itemID"] = 90555,
    113.     }, -- [32]
    114.     {
    115.         ["itemID"] = 109118,
    116.     }, -- [33]
    117.     {
    118.         ["itemID"] = 828,
    119.     }, -- [34]
    120.     {
    121.         ["itemID"] = 2657,
    122.     }, -- [35]
    123. }

    Here is my lua

    Here is my toc

    Here is my saved variables results

     

    Any help solving this would be great.

    Posted in: AddOn HELP!
  • 0

    posted a message on Are item hyperlinks localised?

    Hi all

     

    As per the title of this post, I am trying to find out if item links are localised or are they universal.

     

    If I store the itemlink for a cinderweb egg it is "|cff0070dd|Hitem:152976::::::::19:256::::::|h[Cinderweb Egg]|h|r"

     

    If I store the itemlink on a Russian client will the item name be English or will it be saved as the Russian translation?

     

     

     

     
    Posted in: Lua Code Discussion
  • 0

    posted a message on Getting item details via slash command

    In reply to Caraxe:

     Oh wow, so I missed putting in a space, knew it would be a simple thing I messed up :0
    Thanks for your help Caraxe
    Posted in: Lua Code Discussion
  • 0

    posted a message on Getting item details via slash command
     
    Hi all 
    I am having an issue with getting the item string of an item linked in chat using a slash command. 
    SLASH_TESTC1 = '/asd'
    function SlashCmdList.TESTC(msg, editbox)
       print('*** Chat Link Test Start ***')
       local itemID = tonumber(string.match(msg, 'item:(%d+):'))
       if msg then
          print('message =', msg)
       else
          print('no message')
       end   
       if itemID then
          print('itemID =', itemID)
       else 
          print('no item')
       end   
       print('*** Chat Link Test End ***')
    end

     

    I am running this in game using the hack addon with the following results;
    -- /asd
    *** Chat Link Test Start ***
    message = 
    no item
    *** Chat Link Test End *** 
    -- /asd<<shift clicked item link
    Type'help' for a listing of a few commands.

     

    I am not getting any errors in bugsack.

    I dont understand how msg is true but there is no print, and when I do link an item why i do not get the opening and closing and the full message prints.

    Any help will be greatly appreciated.
    Posted in: Lua Code Discussion
  • 0

    posted a message on Button factory based on filtered list

    Hi all

     

    I am trying to filter a list of itemID's to build and add a button to a scroll frame based on the item rarity.

     

    I already have a working scroll frame that correctly adds a list of buttons based on a list of itemID's, but when I try to create buttons based on the item rarity my code keeps breaking with a nil error.

     

    I have looked at a lot of addon's that have filter systems but I am still a novice to programming, (self-teaching), and I don’t understand a lot of the addon code that I am viewing.

     

    Here is my test code; 

    pastebin 

    local ListOfItemIDs = {
    132204,-- [1]
    122245,-- [2]
    118658,-- [3]
    124106,-- [4]
    124121,-- [5]
    127810,-- [6]
    128318-- [7]
    }
    local ListOfItemRarity = {
    rarityGrey = true,
    rarityWhite = true,
    rarityGreen = true,
    rarityBlue = true,
    rarityPurple = true,
    rarityHeirloom = true,
    rarityLegendary = true,
    rarityArtifact = true
    }
    local NumberOfButtons, HeightOfButtons = 13, 223
    local function testItemRarity(itemID)
    local itemName, itemLink, itemRarity, itemLevel, itemMinLevel, itemType, itemSubType, itemStackCount, itemEquipLoc, iconFileDataID, itemSellPrice, itemClassID, itemSubClassID, bindType, expacID, itemSetID, isCraftingReagent =GetItemInfo(itemID)
    if(ListOfItemRarity.rarityGrey and itemRarity ==0)or(ListOfItemRarity.rarityWhite and itemRarity ==1)or(ListOfItemRarity.rarityGreen and itemRarity ==2)or(ListOfItemRarity.rarityBlue and itemRarity ==3)or(ListOfItemRarity.rarityPurple and itemRarity ==4)or(ListOfItemRarity.rarityHeirloom and itemRarity ==5)or(ListOfItemRarity.rarityLegendary and itemRarity ==6)or(ListOfItemRarity.rarityArtifact and itemRarity ==7)then
    returntrue, itemLink
    else
    returnfalse
    end
    end
    local function updatRarityScrollFrame()
    FauxScrollFrame_Update(ItemRarityScrollFrame,#ListOfItemIDs, NumberOfButtons, HeightOfButtons)
    for index =1, NumberOfButtons do
    local offset = index +FauxScrollFrame_GetOffset(ItemRarityScrollFrame)
    if testItemRarity(ListOfItemIDs[offset])then
    local button = ItemRarityScrollFrame.buttons[index]
    button.index = offset
    if offset <=#ListOfItemIDs then
    button:SetText(testItemRarity())
    button:Show()
    else
    button:Hide()
    end
    end
    end
    end

    Any help would be gratefully appreciated.

    Posted in: Need Help?
  • 0

    posted a message on Adding buttons to player dropdown menu

    Hello all 

    I am looking for a bit of help understanding how to add buttons correctly to the right click dropdown menu of a targeted player.

    Here is my current code to add the buttons;

    local playerMenuList = {"PLAYER","RAID_PLAYER","PARTY","FRIEND"}
    
    UnitPopupButtons["GREEN_BUTTON"] = {text = "GREEN"}
    UnitPopupButtons["YELLOW_BUTTON"] = {text = "YELLOW"}
    UnitPopupButtons["RED_BUTTON"] = {text = "RED"}
    }
    
    for k,v in pairs(playerMenuList) do	
    	table.insert(UnitPopupMenus[v],"GREEN_BUTTON")
    	table.insert(UnitPopupMenus[v],"YELLOW_BUTTON")
    	table.insert(UnitPopupMenus[v],"RED_BUTTON")
    end
    
    local function testPlayerMenuButton(self)
    	if self.value == "GREEN_BUTTON" then
    		print("GREEN_BUTTON clicked")
    	elseif self.value == "YELLOW_BUTTON" then
    		print("YELLOW_BUTTON clicked")
    	elseif self.value == "RED_BUTTON" then
    		print("RED_BUTTON clicked")
    	end
    end
    
    hooksecurefunc("UnitPopup_OnClick",testPlayerMenuButton)

     I would like to only display one of the buttons based on a condition such as;

    if xzy=="Red" then
    RED_BUTTON:Hide()
    YELLOW_BUTTON:Hide()
    GREEN_BUTTON:Show()
    elseif xyz=="Yellow" then
    RED_BUTTON:Hide()
    GREEN_BUTTON:Hide()
    YELLOW_BUTTON:Show()
    else
    GREEN_BUTTON:Hide()
    YELLOW_BUTTON:Hide()
    RED_BUTTON:Show()
    end

     Any help would would be great.

    Posted in: AddOn HELP!
  • 0

    posted a message on Help with button textures

    Hey Seerah 

     

    I have tried a number of different things trying to resolve this issue.

     

    The myTestingFrame:SetScale(2) increases the scale of the button itself not the textures, if I comment out the line I still get the same display issues just at its default size.

    I have also tried just defining the size of the button with myTestingFrame:SetSize(40,40) with no luck.

     

    I just have not been able to find out why.

    Posted in: AddOn HELP!
  • 0

    posted a message on Help with button textures

    Hi all 

     

    I have an issue with the textures on a button.

    Both the highlight and pushed textures fit the button frame without issue, but the normal texture always displays much bigger than the other two thus exceeding the button size. 

     

    I have attached an image of what I am seeing.

    buttons

     

    Here is my code.

     

    local myTestingFrame = CreateFrame("Button","myTestingFrame",UIParent, "SecureActionButtonTemplate,ActionButtonTemplate")
    myTestingFrame:SetScale(2)
    myTestingFrame:SetPoint("CENTER")

    myTestingFrame:SetPushedTexture("Interface\\Icons\\Inv_misc_archaeology_amburfly")
    myTestingFrame:SetHighlightTexture("Interface\\Icons\\Spell_shadow_carrionswarm")
    myTestingFrame:SetNormalTexture("Interface\\Icons\\Spell_druid_swarm")

    myTestingFrame:SetMovable(true)
    myTestingFrame:SetClampedToScreen(true)
    myTestingFrame:RegisterForDrag("RightButton")
    myTestingFrame:SetScript("OnDragStart",myTestingFrame.StartMoving)
    myTestingFrame:SetScript("OnDragStop",myTestingFrame.StopMovingOrSizing)
    myTestingFrame:SetToplevel(true)
    myTestingFrame:SetScript("OnClick",function(self)
    print("Button Clicked")
    end)

     

     Any help would be great.

    Posted in: AddOn HELP!
  • 0

    posted a message on SendChatMessage - Icon

    Thanks for the reply.

    Unfortunately that does not seem to work on General.

    I have tried variations such as

    SendChatMessage({rt4},"chatString", "CHANNEL", nil, 1)

    SendChatMessage({rt4}.."chatString", "CHANNEL", nil, 1)

    SendChatMessage("({rt4})chatString", "CHANNEL", nil, 1)

    SendChatMessage("{rt4}chatString", "CHANNEL", nil, 1)

    SendChatMessage("{rt4},chatString", "CHANNEL", nil, 1)

    SendChatMessage("{rt4}..chatString", "CHANNEL", nil, 1)
    all without success.

    Posted in: AddOn HELP!
  • 0

    posted a message on SendChatMessage - Icon

    Thanks for the link, but it only deals with macros.

     

    I am looking for help in how to use the wow api SendChatMessage to insert a target marker icon into chat

    Posted in: AddOn HELP!
  • 0

    posted a message on SendChatMessage - Icon

    Hi All

    Is there a way to add a target icon to a chat message using SendChatMessage?

    Posted in: AddOn HELP!
  • 0

    posted a message on Question about images
    Hi all

    I hope I have posted this in the right forum, if not please move.

    Is there a way to reorder the screenshot images that I have uploaded to my addon page?
    Posted in: Need Help?
  • 0

    posted a message on Aardvark
    Hi all

    I have made some changes to Aardvark that allow global lists, protected list, scaling and an action bar.

    http://wow.curseforge.com/addons/aardvark/

    I would love some help with localizations.
    Posted in: General AddOns
  • 0

    posted a message on Aardvark
    Hello all

    I am brand new to coding and this is my very first addon.

    Aardvark

    Aardvark is a farming / bag management addon that will auto allow you to auto repair, sell and destroy each time you visit a vendor.

    I don't come from a background of coding at all, I was actually a construction worker, but when a workplace accident forced me to cease work WoW was one of the things that gave me joy.

    My code is undoubtedly very messy, overly verbose and more than likely very inefficient, but I will continue to read and learn more about coding and hopefully clean up and reduce the code more and more.

    :)



    Posted in: General AddOns
  • To post a comment, please or register a new account.