WOW Addon commands
Asked Answered
M

2

5

I'm learning about wow addons and I would like to create a command that shows in chat "Hello World" when I typed "/cht". I checked http://wowwiki.wikia.com/wiki/Creating_a_slash_command but my code does not work.

My code:

SLASH_CHAT = "/cht"
SlashCmdList["CHAT"] = function(msg)
        print("Hello World!")
end

Do you have any idea why is not working?

Thanks in advance.

Masaccio answered 23/7, 2017 at 11:9 Comment(3)
every single example on that page has a command like SLASH_<command_id><number>. like SLASH_HELLO1 for SlashCmdList["HELLO"]. do the examples from that page work for you? is it just your code that doesn't work (maybe due to that difference? you don't have a number after chat)Emblazonment
I forgot to put the number, thank you!Adz
sometimes its better to modify a working example. you can change it until it stops working. so you instantly know that your last modification must be the problem.Emblazonment
C
10

You need to change your global from SLASH_CHAT to SLASH_CHAT1, yes it's really that simple.

Ciborium answered 23/7, 2017 at 15:22 Comment(1)
I did not see the format for the variable well, I forgot the number, thank you very much!Adz
D
3

I've updated http://wowwiki.wikia.com/wiki/Creating_a_slash_command, fixing the examples and I added a simple starter example at the top with a condensed explanation of the mechanism and rules.

Some of the examples were unclear, but more importantly the actual rules for naming were fairly buried, which is where the OP was having issues.

The new top example reads:

SLASH_TEST1 = "/test1"
SLASH_TEST2 = "/addontest1"
SlashCmdList["TEST"] = function(msg)
   print("Hello World!")
end 

This was not totally your fault. :)


Before edit:

Same text as above basically, except I had misremembered and the code I used to spot check was complex and I misinterpreted it. I gave wrong information above on naming above (and edited the whole wiki article the same way). Both are fixed now. Comment below complaining was to the original answer I made here.

Diffident answered 23/7, 2017 at 20:41 Comment(2)
I'm pretty sure the key should not have a number, the number is used to differentiate multiple commands that have the same handler. Edit: A quick check in another source reveals that the info on wikia is now WRONG!Ciborium
@MiloChristiansen Fixed now. Thanks for the comment and letting me know.Diffident

© 2022 - 2024 — McMap. All rights reserved.