Function arguments

104,993pages on
this wiki
Add New Page
Talk2 Share

It's quite simple really... Edit

Functions can have arbitrarily defined arguments defined in the opening line and subsequently used within the body of the function. Your parameters can be called any valid Lua name.

Below is a simple function without arguments, followed by another function that calls on the first:

function MyAddon_Mimic()
   DEFAULT_CHAT_FRAME:AddMessage("Hello World!")

function MyAddon_Call()

Now the same function with arguments (you can define any number of arguments):

function MyAddon_Mimic(arg1)
   DEFAULT_CHAT_FRAME:AddMessage("Hello " .. arg1)

 function MyAddon_Call()

Whereas the first example would've simply printed "Hello World!" to the chat window, the second example will now print "Hello Buddy!" However, arg1 is a pretty non-discriptive argument name (and we only used one). Let's try something more interesting:

function MyAddon_Mimic(who, send)
   local posX, posY = GetPlayerMapPosition(who);
   if send==1 then
      DEFAULT_CHAT_FRAME:AddMessage(who .. " is currently at location " .. posX .. "," .. posY)

 function MyAddon_Call()
   MyAddon_Mimic("player", 1)
   MyAddon_Mimic("party1", 1)
   MyAddon_Mimic("party2", 0)

Here, our little addon will now print the location of our player and our first party member, but while it will get the location of party member 2, it won't print it.

Ad blocker interference detected!

Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.