1. Praise Addon

    What is this?
    Here is a praise (Good Boy) addon I made that plays an audio clip and shows an image if someone uses one of the following emotes on you:
    /applaud, /cheer, /commend, /cuddle, /encourage, /happy, /hug, /kiss, /love, /massage, /pat, /pet, /proud, /ruffle, /thank

    It also keeps track of how many times (since restart or /reload) it has been activated and prints the amount and has a set message every 5.

    Why did I make it?
    Due to a combination of boredom, wanting to figure out how to make an addon, and a desire for praise. Also my dk is literally Goodestboy.

    Commands include:
    /goodboy ban <player> (Bans the inputted play or targeted player if no player name is given from interacting with this addon)
    /goodboy unban <player> (Unbans the inputted play or targeted player if no player name is given from interacting with this addon)
    /goodboy whisper (Enables whispering players that trigger this addon with a msg automatically)
    /goodboy test (Tests the addon so triggers like someone used one of the emotes on you)
    /goodboy hide (Disables the addon so nothing triggers it)
    /goodboy show (Reenables the addon)
    /goodboy count (Disables or reenables the counting feature)

    Customizing it for yourself:

    What if you want to add your own audio?
    In the lua edit the line local soundFiles = {} that starts on line 11. You will just adjust the path and duration of the audio file. so it should look like this:
    Code:
    local soundFiles = {
        {path = "InterfaceAddOnsGoodBoySoundsYourSound1.ogg", duration = <Put duration in seconds>},
        {path = "InterfaceAddOnsGoodBoySoundsYourSound2.ogg", duration = <Put duration in seconds>},
    }
    Note: The sound files must be in .ogg format, I used audacity to make them this format.


    What if you want to change the image or add images?
    First convert the image you want to use into a tga file, I use: https://image.online-convert.com/convert-to-tga
    Make sure to set the chage size to be a power of 2 (2, 4, 8, 16, 32, 64, 128, 256, 512, 1024)
    Next you will edit the local imageFiles in the lua which starts on line 28. So yours should look like this:
    Code:
    local imageFiles = {
        "InterfaceAddOnsGoodBoyImagesImage1.tga",
        "InterfaceAddOnsGoodBoyImagesImage2.tga",
    }
    Note: Name the images whatever you want as long as they are the right format. Also you might need to fully restart your client to get the new images to properly appear as it might cache the old images.


    What if I want to change the messages or the counter?
    Head over to the local function playRandomSound() and adjust the text in quotes to whatever you want it to be!


    What if I want the images to be bigger/smaller on my screen?
    Go into the .xml file and adjust this line:
    Code:
    <AbsDimension x="128" y="128"/>
    you'll want to change the x and y.

    Download link:
    https://drive.google.com/drive/folde...lj?usp=sharing
    Edited: December 8, 2023

  2. Other Customizing that I forgot:

    What if you want to add your change the whisper?
    Goto line 160 where there is the SendChatMessage and edit the line like so:
    Code:
    SendChatMessage("<YourMessageHere>", "WHISPER", nil, playerName)
    
    or if you want to send the whispered person your current count:
    SendChatMessage("<YourMessageHere>".. soundPlayCount, "WHISPER", nil, playerName)
    
    That will put the number at the end of the message so I recommend puting a ": " at the end of the message then the number will be placed at the end

    What if you want to add other emotes to trigger it?
    First add the new triggers to the emoteList like this:
    Code:
    local emoteList = {
        "pets", "cheers", "applauds", "commends", "cuddles", 
        "encourages", "is happy with", "hugs", "kisses", "loves", 
        "massages", "pats", "is proud of", "ruffles", "thanks",
        "<your trigger1>", "<your trigger2>",
    }
    Note: Currently it looks for the word/words in the emoteList and checks to see if there is also the words "you." or "at you." to make sure it is targeting you. If you want to add other possible things instead of just if it has you or at you go to line 143 and add on like this:
    Code:
    if string.find(msg, "at you.") or string.find(msg, "you.") or string.find(msg, "<ThingYoureAdding>") then
    Note: Add whatever you want, its just checking the msg for it in combo with anything in emoteList


    Hey Goodestboy you forgot to add XYZ functionality:

    If there is something you think would be really good to add or I ****ed something up really bad let me know and I'll see what I can do.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •