How far (if at all) can you script things?
#2
Here's a list of the potentially available Blizzard designed global functions: wow wikki.

The general math, string, and table functions from LUA script API should be usable.


For string manipulation, try the following functions:

strchar(string,charindex)
example: strchar("1234567",6) == "7"

strfind(string,searchval,startindex)
example: strfind("abcdefcd","cd", 5) == 6

strlen(string)
example: strlen("1234567") == 7

strlower(string)
example: strlower("MyMixedCase") == "mymixedcase"

strsub(string, beginindex, endindex)
example: strsub("abcDef",2,4) == "cD"

strupper(string)
example: strupper("mYmiXEDcase") == "MYMIXEDCASE"

-------------
after you get the basic lua script infrastructre in (see the walkthrough stickied on the official UI forum), add the following function to barebones script.

Code:
function reverse(msg)
  myLength = strlen(msg);
  myString = "";
  myChar = "";
  myCounter = 0;

  if (msg) then
     -- fill myString with reversed text from the input msg
     for myCounter = 1, myLength do
        myChar = strsub(msg, (myLength - myCounter), (myLength - myCounter + 1));
        myString = (myString .. myChar);
     end
  end
  ChatFrame:AddMessage("the reverse of your message is: " .. myString);
  return( myString );
end

then from chat type:
"/script reverse(Hello World!)"

You could also add a slashcommand handler so it could be "/reverse Hello World!".

Code:
local function mySlashCommandHandler(msg)
  if (msg) then
     reverse(msg);
  else
     ChatFrame:AddMessage("correct use: /reverse YourTextHere");
  end
end
(still stuck at work)
Reply


Messages In This Thread
How far (if at all) can you script things? - by Olon97 - 01-13-2005, 03:40 AM

Forum Jump:


Users browsing this thread: 1 Guest(s)