Supports 2.6R3 and Beta
There's ways i'm trying to improve CCX in.
#1 Simplicity for the casual StealthBot user. - I want anyone to be able to make something neat with CCX.
#2 Power, for when people get the hang of things - I don't want them to be limited.
This update, was a Power update.
I was really happy with the changes in 1.91 - figured it was time to start making some games.
So, I tried making Tic-Tac-Toe (Which is no easy task - if you want a victory check and jazz).
I knocked a lot of walls down when making the game.
So, here's the change log. - I'll be posting my game soon.
'//1.92 Power Update.
'// This update was done when trying to write a Tic-Tac-Toe game - this was done to discover any coding weaknesses in CCX. And to simplyfy the advanced functions.
'//Fixed a bug where <> and != operators didn't work with all SecureEval functions (including %if)
'//Fixed a bug where %die wouldn't parse nested P2 functions.
'//Updated %for function. Loops will now go in reverse if you want them to. I.E. %for(5,1,##-) will result in 5-4-3-2-1.
'//Updated %for function. Removed the customizable intiger argument in favor of slashing-out for imbeded loops.
'//Updated %for function. %i is no longer case-sensitive in %for loops - however I recommend you use the newly added ##.
'//Updated %var's arguments to: %var( VARNAME, [SHOW IF NOT EXISTS] = Null)
'//Supported ## #R and #A (Roman and Alpha Intigers) in %for loops.
'//Supported & newline chars in /testcc.
'//Added a %foreach loop, to loop through a list.
'//Added a %showvar Priority 2 mimic of %var.
'//Fixed %instr to work properly when using a compare method- and defaulted the compare method to 1 (or "true").
'//Finally implemented the Anti-loop prevention. (This prevents infinite loops with %runcc)
'// Updated settings.ini
'// More aliases will be added %cmdlist %cclist on first-run.
'//Fixed an issue with the listcc command (Thanks FLux)
'// FUNCTION UPDATES:
'//Fixed issues with the list functions.
'//Removed %seco function - as it's easyily replaced by the new %now function.
'//Updated the %listdel function to support a string-exact-match delete. %listdel now returns the string or item # deleted.
'// Removed the ability categorize datalist (%var's) - as this only added confusion and missing variables.
'// Fixed a major bug which caused no arguments to be passed. - careless in 1.8
'// Fixed a major bug which only allowed command aliases to work -- whoops...
'// The %now function now has an optional arguement of seconds differnce. I.E. %now(60*60*24) will give the time + 1 day. Use negative numbers to subtract.
'// The %if statement now accurately compares time / date formats. %if(%now() <%now(1),True,False) will return true. - Used with %var this can be used for timed-events.
'// Added command AppendCC - adds additional text to an already existing command.
'//Created a RunCC Sub to improve CCX add-on friendlyness. - Also cleaned up and improved related code.
'//Place built-in CCX commands access in the plugin settings.ini - along with aliases. - This has removed the aliases that had existed. - But I do auto add addcmd and delcmd
'//Placed RemoveEscape within ParseFunctions.
'//Added %now() function.
'//Added rfunctions command to list out registered functions.
'//Removed functions: %speak %runfile %makecc %gethttp due to security issues, - These functions will be moved to a newly created plugin "CCXE" - CCX Extender
'//Fixed issues related to /me /w /kick /ban in commands and auto whisperback
'//Added security protection for custom-command executors see "security_usesafety" in the plugin settings.ini
'//Major overhaul on the CCX Engine code - fixing the comma and parenthesis issues related to nesting commands.
'//1.52 & 1.53
'//Improved effeciency w/ process functions by a decent measure.
'//Fixed a bug with %die
'//Included a file sort for the CC's.
'//Created /sortcc command
'//Fixed command-case issues.
'//Fixed an issue when adding duplicate commands from another plugin.
Created a new method of registering functions. The old "RegisterFunction" method still operates correctly.
To register a function you'll use the GetRef method, like so:
'// .Register Name, FunctionReference, Priority
CCX.Register "test", GetRef("mytest"), 1
Function MyTest(This, That, Doodle, De)
MyTest = "Wazzup?"
This will make things a lot easier registering functions when writing in Script format.
There are 4 categories of commands.
Battle.net, StealthBot Internal, CCX Commands, Plugin Commands.
The first 3 can now be executed like normal within a CCX command.
Plugin commands require a little more work - you have to use the prefix. -
/addcc turntriviaon 30 Turning trivia on.... & /st trivia on
/addcc whatsmyscore 30 /st score
/addcc spell 30 /checkw checkword %rest
Me: !spell fretfuly
Bot: Did you mean: fretfully, etc
These things work with !testcc too, so you can test them all out.
Enjoy. - Post me a w00t topic here if you're liking these updates.
'//Completely rebuilt the "CCX_R" subroutine, see below.
'//Plugin commands can be issued like /prefix command args. These commands are issued as if the command-issuer issued them externally. (through usertalk)
' EXAMPLE: /st trivia on
'//Commands can now be executed like /command within a custom command. This works for Custom Commands and Bot commands. All commands are executed as if the user who used the CC executed the command.
'//Fixed spelling mistake, "Skiped" -> "Skipped" - Thanks FuhrerŽ.
'//Fixed %listdel(list,STRING) now works.
Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)