I know some things are currently being worked on and/or could be worked on by people outside of mote. Im hoping that Lee's team allows for patches that add these functionalities.
Here's the list:
note that functions that can be emulated by macros (and thus already exists as such) are marked with a *.
My personal favourites:
- setImageWidth() / setImageHight (I believe Jamztheman is working on these)
- getViewPortX() / getViewPortY() / getViewPortZ()
- setZoomLevel() or better: update [wfunc]goto[/wfunc](x,y) to goto(x,y,z, pixels/cellcount). Currently its cell count only.
these all should get one boolean as parameter: dimension in pixels (1) or number of cells (0), defaulting to 1 (pixels)
- extend [wfunc]getCurrentMapName[/wfunc] to getCurrentMapName("Username") (defaulting to current user/client as it currently does)
And in some not too far future:
- createLightSource(Name, Group, Range, shape, color, personal, lumens [can also be negative], rangeOffset, angle[in case of arc], angleOffset[so not centered on facing of token])
Given the high number of parameters I guess its better to go for a json object. Similar to copyToken. Also but not sure how light sources work at all in MT, if this function exists than they're not really required to be created in the same manner as they're now. Which would mean that if a source is created this way it does not need to show up in the campaign properties. But just as a lightsource on that token. In that case the function and parameters would become simpler:
lightSource(range[, properties]) where "properties" is a json object with optional parameters (default values): shape (circle), color (#FFFFFF), personal(0), lumens(0) , rangeOffset(0), angle(30), angleOffset(0)
onTimeEvent() [spoiler=ramble]not sure what form this should take but an event that is triggered at a certain point in time, whether that is 'after 5 seconds' or 'at 12:30' is open for debate as also the implementation form, but its usefull eitherway. Its particularly useful for certain bordgames e.g. chess where you show a clock and ofcourse 'times up'. But also to limit the time for someones turn during a rpg game. For that reason some counter would be nice but the onTimeEvent can help there as well. I guess that IF you ever get this far it would be prudent to discuss the eventual form.[/spoiler]
- setMapVisible(mapname, true/false)
- renameMap(oldmapname, newmapname OR currentmapname, newmapname)
*- debugInfo(vars [, oneLine, showTok, pause, macroName, macroLocation]) [spoiler=parameters]
Code: Select all
broadcasts all the listed variables and their current values either on one line (1) or beneath eachother (0)
- vars: list of variables you want to track while debuggin
- oneLine: (0) all variables in one column; (1) (default) all variables on one line
- showTok: (0) show nothing; (1) (default) show current token and impersonated token
- pause: (0) dont pause on debug line; (1) pause on debug line AND show a frame with the debug results
- macroName: to make use of this you need to enter getMacroName() as argument
- macroLocation: to make use of this you need to enter getMacroLocation() as argument
Example use: [bot_debugInfo( 'X, Y, Name, Strength', 0, 1, 1, getMacroName(), getMacroLocation() )]
Map diagnosis. This function checks ALL maps and ALL (lib)tokens for potential issues. It checks whether token names contain non-alphanumerical characters and checks the libs for the same and ownership and visibility. Any errors are rendered in a frame with hyperlinks that lead you to the token. I guess if you create this function you can add even more functionality to it.
- CreateUUID() create unique identifier
- encrypt("string") MD5 encryption
- A boolean parameter for Wiki: input() to disable forced focus (if possible).
- A non-hack onMouseOver event triggered macro.
- Functionality for JSON-WSP : http://en.wikipedia.org/wiki/Jsonwsp
- isFlipped(token) returns boolean value whether the image is flipped or not, maybe it should be:
- isHFlipped and isVFlipped to differentiate between horizontal and vertical...not sure though.
- flipToken(token) flips the token
- group(groupName, ["token1", "token2", etc.]) thus an array of tokens
- unGroup(groupName, optional: array of tokens to ungroup defaults to all tokens in the group)
- getImageNativeWidth() getImageNativeHeight() returns native sizes in pixels, which again can be fed to setImageWidth/Height
- table/database/sql(?) functions.
- extend [wfunc]getTokens[/wfunc]/[wfunc]getTokenNames[/wfunc] to allow mapname as well. Not sure if this is feasible. So basically add 'map' to the conditions. Potential pitfall when use icw e.g. 'range' condition.