<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://graalonline.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Novo</id>
	<title>Graal Bible - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://graalonline.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Novo"/>
	<link rel="alternate" type="text/html" href="https://graalonline.net/Special:Contributions/Novo"/>
	<updated>2026-04-08T20:25:26Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.4</generator>
	<entry>
		<id>https://graalonline.net/index.php?title=Creation/Dev/Script/Clientside_Functions&amp;diff=7672</id>
		<title>Creation/Dev/Script/Clientside Functions</title>
		<link rel="alternate" type="text/html" href="https://graalonline.net/index.php?title=Creation/Dev/Script/Clientside_Functions&amp;diff=7672"/>
		<updated>2006-11-26T20:51:17Z</updated>

		<summary type="html">&lt;p&gt;Novo: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Global:&lt;br /&gt;
  $pref::audio::choosenvoicecodec - integer&lt;br /&gt;
  $pref::audio::microactivatebyvolume - boolean&lt;br /&gt;
  $pref::audio::microactivationlevel - integer&lt;br /&gt;
  $pref::audio::microinputdevice - integer&lt;br /&gt;
  $pref::audio::microon - boolean&lt;br /&gt;
  $pref::audio::microvolumefactor - integer&lt;br /&gt;
  $pref::audio::midivolume - integer&lt;br /&gt;
  $pref::audio::mp3volume - integer&lt;br /&gt;
  $pref::audio::radiovolume - integer&lt;br /&gt;
  $pref::audio::reversestereo - boolean&lt;br /&gt;
  $pref::audio::sfxvolume - integer&lt;br /&gt;
  $pref::audio::voicevolume - integer&lt;br /&gt;
  $pref::graal::allowglobalpms - boolean&lt;br /&gt;
  $pref::graal::automapping - boolean&lt;br /&gt;
  $pref::graal::defaultfontname - string&lt;br /&gt;
  $pref::graal::defaultfontsize - integer&lt;br /&gt;
  $pref::graal::dontconnectlevels - boolean&lt;br /&gt;
  $pref::graal::dontloadlistheads - boolean&lt;br /&gt;
  $pref::graal::dontsavepasswords - boolean&lt;br /&gt;
  $pref::graal::dontsavepms - boolean&lt;br /&gt;
  $pref::graal::fixedport - boolean&lt;br /&gt;
  $pref::graal::fixedudpport - integer&lt;br /&gt;
  $pref::graal::language - string&lt;br /&gt;
  $pref::graal::limitnicknames - boolean&lt;br /&gt;
  $pref::graal::loadbuddylistfromserver - boolean&lt;br /&gt;
  $pref::graal::nicknamelimit - integer&lt;br /&gt;
  $pref::graal::nomassmessages - boolean&lt;br /&gt;
  $pref::graal::notoalls - boolean&lt;br /&gt;
  $pref::graal::noudp - boolean&lt;br /&gt;
  $pref::graal::showyourselfonbuddylists - boolean&lt;br /&gt;
  $pref::input::mousesensitivity - float&lt;br /&gt;
  $pref::interior::lockarrays - boolean&lt;br /&gt;
  $pref::video::detailfactor - float&lt;br /&gt;
  $pref::video::fogdistance - float&lt;br /&gt;
  $pref::video::fullscreenmode - string&lt;br /&gt;
  $pref::video::screenshotformat - string&lt;br /&gt;
  $pref::video::truetypefonts - boolean&lt;br /&gt;
  $pref::video::visibledistance - float&lt;br /&gt;
  $pref::video::windowmode - string&lt;br /&gt;
  $scenelighting::lightingprogress - float (read only)&lt;br /&gt;
  allfeatures - integer (read only)&lt;br /&gt;
  allplayerscount - integer (read only)&lt;br /&gt;
  allstats - integer (read only)&lt;br /&gt;
  canspin - boolean (read only)&lt;br /&gt;
  carriesblackstone - boolean (read only)&lt;br /&gt;
  carriesbush - boolean (read only)&lt;br /&gt;
  carriesnpc - boolean (read only)&lt;br /&gt;
  carriessign - boolean (read only)&lt;br /&gt;
  carriesstone - boolean (read only)&lt;br /&gt;
  carriesvase - boolean (read only)&lt;br /&gt;
  downloadfile - string (read only)&lt;br /&gt;
  downloadpos - integer (read only)&lt;br /&gt;
  downloadsize - integer (read only)&lt;br /&gt;
  editingmission - boolean&lt;br /&gt;
  emoticonchar - string (read only)&lt;br /&gt;
  focusx - float (read only)&lt;br /&gt;
  focusy - float (read only)&lt;br /&gt;
  ghostsnear - boolean (read only)&lt;br /&gt;
  graalversion - float (read only)&lt;br /&gt;
  gravity - float&lt;br /&gt;
  isapplicationactive - boolean (read only)&lt;br /&gt;
  iscarrying - boolean (read only)&lt;br /&gt;
  isfocused - boolean (read only)&lt;br /&gt;
  isgraal3d - boolean (read only)&lt;br /&gt;
  isleader - boolean (read only)&lt;br /&gt;
  isonmap - boolean (read only)&lt;br /&gt;
  lastdownloadfile - string (read only)&lt;br /&gt;
  leftmousebutton - boolean (read only)&lt;br /&gt;
  leftmousebuttonglobal - boolean (read only)&lt;br /&gt;
  levelorgx - float (read only)&lt;br /&gt;
  levelorgy - float (read only)&lt;br /&gt;
  lighteffectsenabled - boolean&lt;br /&gt;
  middlemousebutton - boolean (read only)&lt;br /&gt;
  middlemousebuttonglobal - boolean (read only)&lt;br /&gt;
  mousebuttons - integer (read only)&lt;br /&gt;
  mousebuttonsglobal - integer (read only)&lt;br /&gt;
  mousepitch - float (read only)&lt;br /&gt;
  mousescreenx - integer&lt;br /&gt;
  mousescreeny - integer&lt;br /&gt;
  mousewheeldelta - integer (read only)&lt;br /&gt;
  mousex - float&lt;br /&gt;
  mousey - float&lt;br /&gt;
  mouseyaw - float (read only)&lt;br /&gt;
  musiclen - integer (read only)&lt;br /&gt;
  musicpos - integer (read only)&lt;br /&gt;
  particleeffectsenabled - boolean&lt;br /&gt;
  rightmousebutton - boolean (read only)&lt;br /&gt;
  rightmousebuttonglobal - boolean (read only)&lt;br /&gt;
  screenheight - integer (read only)&lt;br /&gt;
  screenwidth - integer (read only)&lt;br /&gt;
  scriptedcontrols - boolean (read only)&lt;br /&gt;
  scriptedplayerlist - boolean (read only)&lt;br /&gt;
  scriptlogwritetoreadonly - boolean&lt;br /&gt;
  selectedlistplayers - object&lt;br /&gt;
  selectedsword - integer&lt;br /&gt;
  selectedweapon - integer&lt;br /&gt;
  servername - string (read only)&lt;br /&gt;
  serverstartconnect - string&lt;br /&gt;
  serverstartparams - string&lt;br /&gt;
  shotbybaddy - boolean (read only)&lt;br /&gt;
  shotbyplayer - boolean (read only)&lt;br /&gt;
  showterraingrid - boolean&lt;br /&gt;
  timevar - integer (read only)&lt;br /&gt;
  timevar2 - float (read only)&lt;br /&gt;
  wasshooted - boolean (read only)&lt;br /&gt;
  waterheight - float&lt;br /&gt;
  weapons - object (read only)&lt;br /&gt;
  weaponsenabled - boolean&lt;br /&gt;
  weathereffectsenabled - boolean&lt;br /&gt;
  worldclockstopped - boolean&lt;br /&gt;
  worldhour - integer&lt;br /&gt;
  worldminute - float&lt;br /&gt;
  worldminutesofday - float&lt;br /&gt;
  worldrealsecondsperday - float&lt;br /&gt;
  addcontrol(obj)&lt;br /&gt;
  addmaterialmapping(str, str) - returns boolean&lt;br /&gt;
  addtiledef(str, str, int)&lt;br /&gt;
  addtiledef2(str, str, int, int)&lt;br /&gt;
  adventure_installgraal(str, bool, bool)&lt;br /&gt;
  adventure_openexternaloptions() - returns boolean&lt;br /&gt;
  adventure_openexternalpm(obj) - returns boolean&lt;br /&gt;
  adventure_openserverlist()&lt;br /&gt;
  adventure_quit()&lt;br /&gt;
  adventure_savegraaloptions()&lt;br /&gt;
  adventure_selectfileselect(str) - lets the select-file-dialog select the specified filename in the current folder&lt;br /&gt;
  adventure_selectfilesetfolder(int) - switches the select-file-dialog to the specified folder index&lt;br /&gt;
  adventure_selectfilesetfolderbytext(str) - switches the select-file-dialog to the specified folder name&lt;br /&gt;
  adventure_selectfileshowhiddenfiles(bool) - enables or disables the display of hidden files in the select-file-dialog&lt;br /&gt;
  adventure_selectpath(str) - returns object&lt;br /&gt;
  adventure_setaccountname(str)&lt;br /&gt;
  adventure_setchat(str)&lt;br /&gt;
  adventure_setcheatwindows(str)&lt;br /&gt;
  adventure_setnickname(str)&lt;br /&gt;
  adventure_setpassword(str)&lt;br /&gt;
  adventure_startbilliard()&lt;br /&gt;
  adventure_startfairyland()&lt;br /&gt;
  adventure_startofflinemode()&lt;br /&gt;
  adventure_updateaccountfield()&lt;br /&gt;
  adventure_updatemicroactivationlevel()&lt;br /&gt;
  adventure_updatemidivolume()&lt;br /&gt;
  adventure_updatemp3volume()&lt;br /&gt;
  adventure_updateplayermuted()&lt;br /&gt;
  adventure_updateplayerprofile(bool, str, str, int, str, str, str, str, str, str)&lt;br /&gt;
  adventure_updateradiovolume()&lt;br /&gt;
  aindexof(float, obj) - returns integer&lt;br /&gt;
  arccos(float) - returns float&lt;br /&gt;
  arcsin(float) - returns float&lt;br /&gt;
  attachplayertoobj(int, int)&lt;br /&gt;
  base64decode(str) - returns string&lt;br /&gt;
  base64encode(str) - returns string&lt;br /&gt;
  boxscale(str, str) - returns string&lt;br /&gt;
  callnpc(int, params...)&lt;br /&gt;
  callweapon(int, params...)&lt;br /&gt;
  checksum(str) - returns float&lt;br /&gt;
  contains(str, str) - returns boolean&lt;br /&gt;
  cursoroff()&lt;br /&gt;
  cursoron()&lt;br /&gt;
  degtorad(float) - returns float&lt;br /&gt;
  detachplayer()&lt;br /&gt;
  disabledefmovement()&lt;br /&gt;
  disablemap()&lt;br /&gt;
  disablepause()&lt;br /&gt;
  disableselectweapons()&lt;br /&gt;
  disableweapons()&lt;br /&gt;
  echo(str)&lt;br /&gt;
  enabledefmovement()&lt;br /&gt;
  enablefeatures(int)&lt;br /&gt;
  enablemap()&lt;br /&gt;
  enablepause()&lt;br /&gt;
  enableselectweapons()&lt;br /&gt;
  enableweapons()&lt;br /&gt;
  explodebomb(int)&lt;br /&gt;
  extractfilebase(str) - returns string&lt;br /&gt;
  extractfileext(str) - returns string&lt;br /&gt;
  extractfilename(str) - returns string&lt;br /&gt;
  extractfilepath(str) - returns string&lt;br /&gt;
  fileexists(str) - returns boolean&lt;br /&gt;
  filesize(str) - returns integer&lt;br /&gt;
  fileupdate(str) - returns boolean&lt;br /&gt;
  findani(str) - returns object&lt;br /&gt;
  findfiles(str, int) - returns object&lt;br /&gt;
  findfirstfile(str) - returns string&lt;br /&gt;
  findlevel(str) - returns object&lt;br /&gt;
  findnextfile(str) - returns string&lt;br /&gt;
  findnpcbyid(int) - returns object&lt;br /&gt;
  findplayer(str) - returns object&lt;br /&gt;
  findplayerbyid(int) - returns object&lt;br /&gt;
  findweapon(str) - returns object&lt;br /&gt;
  freezeplayer(float)&lt;br /&gt;
  getanglesfromvector(str) - returns object&lt;br /&gt;
  getascii(str) - returns integer&lt;br /&gt;
  getbasepackage() - returns object&lt;br /&gt;
  getboxcenter(str) - returns string&lt;br /&gt;
  getdisplaydevicelist() - returns string&lt;br /&gt;
  getdownloadedupdatepackagesize() - returns integer&lt;br /&gt;
  getdownloadingpackage() - returns object&lt;br /&gt;
  getdownloadingpackagescount() - returns integer&lt;br /&gt;
  getextension(str) - returns string&lt;br /&gt;
  gethttprequest(str, int, str) - returns object&lt;br /&gt;
  getimgheight(str) - returns integer&lt;br /&gt;
  getimgpixel(str, int, int) - returns object&lt;br /&gt;
  getimgwidth(str) - returns integer&lt;br /&gt;
  getkeycode(str) - returns integer&lt;br /&gt;
  getmapx(str) - returns integer&lt;br /&gt;
  getmapy(str) - returns integer&lt;br /&gt;
  getmusicstatus() - returns string&lt;br /&gt;
  getmusictags() - returns object&lt;br /&gt;
  getpackagesdownloadcomplete() - returns boolean&lt;br /&gt;
  getpackagesdownloaded() - returns boolean&lt;br /&gt;
  getplatform() - returns string&lt;br /&gt;
  getresolutionlist(str) - returns string&lt;br /&gt;
  getservername() - returns string&lt;br /&gt;
  getstringkeys(str) - returns object&lt;br /&gt;
  getsurfacetype(float, float) - returns string&lt;br /&gt;
  getterraintexture(float, float) - returns string&lt;br /&gt;
  getterraintextureindex(float, float) - returns integer&lt;br /&gt;
  gettextheight(float, str, str) - returns integer&lt;br /&gt;
  gettextwidth(float, str, str, str) - returns integer&lt;br /&gt;
  gettotalupdatepackagesize() - returns integer&lt;br /&gt;
  getupdatepackage(str) - returns object&lt;br /&gt;
  getvectorfromangles(float, float) - returns string&lt;br /&gt;
  getz(float, float) - returns float&lt;br /&gt;
  hideplayer(float)&lt;br /&gt;
  hidesword(float)&lt;br /&gt;
  hitnpc(int, float, float, float)&lt;br /&gt;
  hitobjects(float, float, float)&lt;br /&gt;
  hitplayer(int, float, float, float)&lt;br /&gt;
  isadminguild(str) - returns boolean&lt;br /&gt;
  iscursoron() - returns boolean&lt;br /&gt;
  isdevicefullscreenonly(str) - returns boolean&lt;br /&gt;
  isdownloading(str) - returns boolean - checks if a file is currently downloaded or requested from the server&lt;br /&gt;
  isimgpixeltransparent(str, int, int) - returns boolean&lt;br /&gt;
  isimgrectangletransparent(str, int, int, int, int) - returns boolean&lt;br /&gt;
  isobject(str) - returns boolean&lt;br /&gt;
  keydown(int) - returns boolean&lt;br /&gt;
  keydown2(int, bool) - returns boolean&lt;br /&gt;
  keyname(int) - returns string&lt;br /&gt;
  lay2(str, float, float)&lt;br /&gt;
  lightscene() - returns boolean&lt;br /&gt;
  loadmap(str)&lt;br /&gt;
  lowercase(str) - returns string&lt;br /&gt;
  ltmfs(bool)&lt;br /&gt;
  ltmmax(float, float)&lt;br /&gt;
  ltmmin(float, float)&lt;br /&gt;
  matrixcreate(str, str) - returns string&lt;br /&gt;
  matrixcreatefromeuler(str) - returns string&lt;br /&gt;
  matrixmulpoint(str, str) - returns string&lt;br /&gt;
  matrixmultiply(str, str) - returns string&lt;br /&gt;
  matrixmulvector(str, str) - returns string&lt;br /&gt;
  md5(str) - returns string&lt;br /&gt;
  noplayerkilling()&lt;br /&gt;
  onwall(float, float) - returns boolean&lt;br /&gt;
  onwall2(float, float, float, float) - returns boolean&lt;br /&gt;
  onwater(float, float) - returns boolean&lt;br /&gt;
  onwater2(float, float, float, float) - returns boolean&lt;br /&gt;
  opengraalurl(str)&lt;br /&gt;
  openurl(str)&lt;br /&gt;
  openurl2(str, int, int)&lt;br /&gt;
  play(str)&lt;br /&gt;
  play2(str, float, float, float)&lt;br /&gt;
  play3d(str, bool, str, str)&lt;br /&gt;
  playlooped(str)&lt;br /&gt;
  playlooped2(str, float, float, float)&lt;br /&gt;
  popdialog()&lt;br /&gt;
  pushdialog(obj)&lt;br /&gt;
  putleaps(int, float, float)&lt;br /&gt;
  radtodeg(float) - returns float&lt;br /&gt;
  randomstring(str) - returns string&lt;br /&gt;
  removetiledefs(str)&lt;br /&gt;
  replaceani(str, str)&lt;br /&gt;
  requestfiledeletion(str)&lt;br /&gt;
  requestfilerename(str, str)&lt;br /&gt;
  requestfilesmove(str, str)&lt;br /&gt;
  requesthttp(str, int, str) - returns object&lt;br /&gt;
  requestmysql(str, str, str, str, str) - returns object&lt;br /&gt;
  requesttext(str, str)&lt;br /&gt;
  requesturl(str) - returns object&lt;br /&gt;
  resetfocus()&lt;br /&gt;
  rotationadd(str, str) - returns string&lt;br /&gt;
  rotationaddeuler(str, str) - returns string&lt;br /&gt;
  rotationfromeuler(str) - returns string&lt;br /&gt;
  rotationsub(str, str) - returns string&lt;br /&gt;
  rotationtoeuler(str) - returns string&lt;br /&gt;
  savelog(str)&lt;br /&gt;
  say(int)&lt;br /&gt;
  say2(str)&lt;br /&gt;
  screenx(float, float) - returns integer&lt;br /&gt;
  screeny(float, float) - returns integer&lt;br /&gt;
  selectfilefordownload(str) - opens the select-file-dialog for the download location of files (from scripted RC)&lt;br /&gt;
  selectfileforupload() - opens the select-file-dialog for uploading of files (into scripted RC)&lt;br /&gt;
  sendrpgmessage(str)&lt;br /&gt;
  sendtext(str, str, params...)&lt;br /&gt;
  sendtorc(str)&lt;br /&gt;
  serverwarp(str)&lt;br /&gt;
  setani(str, str)&lt;br /&gt;
  setbeltcolor(str)&lt;br /&gt;
  setcoatcolor(str)&lt;br /&gt;
  setcontentcontrol(obj)&lt;br /&gt;
  setcursor2(str)&lt;br /&gt;
  seteffect(float, float, float, float)&lt;br /&gt;
  setfocus(float, float)&lt;br /&gt;
  setfogcolors(obj)&lt;br /&gt;
  setgender(str)&lt;br /&gt;
  sethead(str)&lt;br /&gt;
  setinteriorrendermode(int)&lt;br /&gt;
  setletters(str)&lt;br /&gt;
  setmap(str, str, float, float)&lt;br /&gt;
  setminimap(str, str, float, float)&lt;br /&gt;
  setmusicvolume(float, float)&lt;br /&gt;
  setplayerdir(str)&lt;br /&gt;
  setshield(str, int)&lt;br /&gt;
  setshoecolor(str)&lt;br /&gt;
  setshootparams(str)&lt;br /&gt;
  setskincolor(str)&lt;br /&gt;
  setskybandcolors(obj)&lt;br /&gt;
  setskybandsizes(obj)&lt;br /&gt;
  setsleevecolor(str)&lt;br /&gt;
  setsuncolors(obj)&lt;br /&gt;
  setsword(str, int)&lt;br /&gt;
  setterrainrendermode(int)&lt;br /&gt;
  showstats(int)&lt;br /&gt;
  spyfire(int, int)&lt;br /&gt;
  stopmidi()&lt;br /&gt;
  stopsound(str)&lt;br /&gt;
  strcmp(str, str) - returns integer&lt;br /&gt;
  strequals(str, str) - returns boolean&lt;br /&gt;
  synctimeofday(float, float)&lt;br /&gt;
  takeplayercarry()&lt;br /&gt;
  takeplayerhorse()&lt;br /&gt;
  testplayer(float, float) - returns integer&lt;br /&gt;
  triggeraction(float, float, str, params...)&lt;br /&gt;
  triggerserver(str, str)&lt;br /&gt;
  update3dterrain(float, float, float, float)&lt;br /&gt;
  updateboard(int, int, int, int)&lt;br /&gt;
  updateratings(obj) - returns object - updates an array of {rating1,ratingdeviation1, rating2,ratingdeviation2, ...}, init them at 1500 and 350&lt;br /&gt;
  updateterrain()&lt;br /&gt;
  updatevisibledistance()&lt;br /&gt;
  uppercase(str) - returns string&lt;br /&gt;
  vectoradd(str, str) - returns string&lt;br /&gt;
  vectorcross(str, str) - returns string&lt;br /&gt;
  vectordist(str, str) - returns float&lt;br /&gt;
  vectordot(str, str) - returns float&lt;br /&gt;
  vectorlen(str) - returns float&lt;br /&gt;
  vectornormalize(str) - returns string&lt;br /&gt;
  vectororthobasis(str) - returns string&lt;br /&gt;
  vectorscale(str, float) - returns string&lt;br /&gt;
  vectorsub(str, str) - returns string&lt;br /&gt;
  worldx(float, float) - returns float&lt;br /&gt;
  worldy(float, float) - returns float&lt;br /&gt;
  wraptext(int, str, str) - returns object&lt;br /&gt;
  wraptext2(int, float, str, str) - returns object&lt;br /&gt;
&lt;br /&gt;
TGraalVar:&lt;br /&gt;
  initialized - boolean (read only)&lt;br /&gt;
  ispaused - boolean&lt;br /&gt;
  joinedclasses - object&lt;br /&gt;
  name - string (read only)&lt;br /&gt;
  scriptlogmissingfunctions - boolean&lt;br /&gt;
  timeout - float&lt;br /&gt;
  addarray(obj) - adds another array to this variable&lt;br /&gt;
  cancelevents(str) - removes all previously scheduled events (scheduleevent) of the specified event name&lt;br /&gt;
  catchevent(str, str, str) - adds an event handler for the specified object and event, third parameter is the function which receives the event (first parameter of the event will be the object for which the event occured)&lt;br /&gt;
  copyfrom(obj) - copies all variables and array values from another object, doesn't work for protected variables like players though&lt;br /&gt;
  getdynamicvarnames() - returns object - gets the names of all dynamic (not built-in) subvariables of this object&lt;br /&gt;
  geteditvarnames() - returns object - gets the names of all dynamic variables which can be modified&lt;br /&gt;
  getfunctions() - returns object - gets the names of all functions of the object as array, also each entry has subvariables which give more information about the function (&amp;quot;parameters&amp;quot;, &amp;quot;description&amp;quot;, &amp;quot;scope&amp;quot;)&lt;br /&gt;
  getstaticvarnames() - returns object - gets the names of all static (built-in) subvariables of this object&lt;br /&gt;
  getvarnames() - returns object - gets the names of all subvariables of this object&lt;br /&gt;
  ignoreevent(str, str) - lets the object ignore an event (second parameter) of the specified object name&lt;br /&gt;
  ignoreevents(str) - lets the object ignore all previously catched events of the specified object name&lt;br /&gt;
  insertarray(int, obj) - inserts an array at the specified index&lt;br /&gt;
  isinclass(str) - returns float - checks if the object has joined the specified class&lt;br /&gt;
  join(str) - lets the object join a class and inherit all functions and event handlers of that class&lt;br /&gt;
  leave(str) - leaves a previously joined class&lt;br /&gt;
  loadfolder(str, int) - loads the content of a folder into the variable, you must specify the folder name and pattern (e.g. &amp;quot;levels/bodies/*.png&amp;quot;) and if it should be recursive&lt;br /&gt;
  loadlines(str) - loads a file and adds it line by line to the variable (as array)&lt;br /&gt;
  loadstring(str) - loads the content of a file into the variable&lt;br /&gt;
  loadvars(str) - loads the variables from a file where each line has the format varname=value&lt;br /&gt;
  loadvarsfromarray(obj) - loads the variables from a string list of the format varname=value&lt;br /&gt;
  objecttype() - returns string - returns the object type, which can be TGraalVar, TProjectile etc.&lt;br /&gt;
  savelines(str, int) - saves the array line by line into a file, the second parameter is the save mode (0 - overwrite, 1 - append)&lt;br /&gt;
  savestring(str, int) - saves the value as string into a file, the second parameter is the save mode (0 - overwrite, 1 - append)&lt;br /&gt;
  savevars(str, int) - saves the subvars in the format varname=value into a file, the second parameter is the save mode (0 - overwrite, 1 - append)&lt;br /&gt;
  savevarstoarray(bool) - returns object - saves the subvars in the format varname=value into an array, you must specify if it should be sorted&lt;br /&gt;
  scheduleevent(float, str, params...) - returns object - invokes an event (onEventname) after the specified delay (in seconds), second parameter is the event name, followed by the parameters&lt;br /&gt;
  settimer(float) - invokes a timeout event after the specified time, similar to 'timeout=value'&lt;br /&gt;
  sortascending() - sorts the array in ascending order (smallest value first)&lt;br /&gt;
  sortbyvalue(str, str, bool) - sorts the array by the specified variable name, you must also say what variable type it is (e.g. string) and if it should be sorted ascending&lt;br /&gt;
  sortdescending() - sorts the array in descending order (highest value first)&lt;br /&gt;
  timershow() - lets the npc show the timeout variable, deprecated&lt;br /&gt;
  trigger(str, params...) - invokes an event on the object (onEventname) with the specified event name and parameters, doesn't interrupt the current script&lt;br /&gt;
&lt;br /&gt;
  ActionMap (TGraalVar):&lt;br /&gt;
    bind(str, str, str)&lt;br /&gt;
    getbinding(str) - returns string&lt;br /&gt;
    getcommand(str, str) - returns string&lt;br /&gt;
    load() - returns boolean&lt;br /&gt;
    pop()&lt;br /&gt;
    push()&lt;br /&gt;
    save()&lt;br /&gt;
    unbind(str, str)&lt;br /&gt;
&lt;br /&gt;
  DTSAniThread (TGraalVar):&lt;br /&gt;
    aniindex - integer (read only)&lt;br /&gt;
    atend - boolean (read only)&lt;br /&gt;
    attack - boolean&lt;br /&gt;
    endpos - float&lt;br /&gt;
    hold - boolean&lt;br /&gt;
    sequence - string&lt;br /&gt;
    startpos - float&lt;br /&gt;
    state - string&lt;br /&gt;
    timescale - float&lt;br /&gt;
    transtitiontime - float&lt;br /&gt;
    play()&lt;br /&gt;
&lt;br /&gt;
  GameMovementInterpolate (TGraalVar):&lt;br /&gt;
    applyimpulse(str, str)&lt;br /&gt;
&lt;br /&gt;
    GameMovementRigid (GameMovementInterpolate):&lt;br /&gt;
&lt;br /&gt;
  GameMovementList (TGraalVar):&lt;br /&gt;
    finishmoves()&lt;br /&gt;
    move3d(str, float, int)&lt;br /&gt;
&lt;br /&gt;
  GameShape (TGraalVar):&lt;br /&gt;
    pixelshader - string&lt;br /&gt;
    vertexshader - string&lt;br /&gt;
&lt;br /&gt;
    GameShapeDIF (GameShape):&lt;br /&gt;
      showterraininside - boolean&lt;br /&gt;
      activatelight(str)&lt;br /&gt;
      deactivatelight(str)&lt;br /&gt;
&lt;br /&gt;
    GameShapeDTS (GameShape):&lt;br /&gt;
      getanimation(int) - returns object&lt;br /&gt;
      listnodes() - returns object&lt;br /&gt;
      pauseanimation(int)&lt;br /&gt;
      playanimation(int, str, int) - returns object&lt;br /&gt;
      playanimation2(int, str, int, float, float, float, float) - returns object&lt;br /&gt;
      stopanimation(int)&lt;br /&gt;
&lt;br /&gt;
    GameShapeFT (GameShape):&lt;br /&gt;
      levels - integer&lt;br /&gt;
      seed - integer&lt;br /&gt;
&lt;br /&gt;
  GuiControl (TGraalVar):&lt;br /&gt;
    active - boolean&lt;br /&gt;
    awake - boolean (read only)&lt;br /&gt;
    canmove - boolean&lt;br /&gt;
    canresize - boolean&lt;br /&gt;
    editing - boolean&lt;br /&gt;
    extent - string&lt;br /&gt;
    height - integer&lt;br /&gt;
    hint - string&lt;br /&gt;
    horizsizing - string&lt;br /&gt;
    layer - integer (read only)&lt;br /&gt;
    minextent - string&lt;br /&gt;
    minsize - string - the same like &amp;quot;minExtent&amp;quot;&lt;br /&gt;
    parent - object (read only)&lt;br /&gt;
    position - string&lt;br /&gt;
    profile - object&lt;br /&gt;
    resizeheight - boolean&lt;br /&gt;
    resizewidth - boolean&lt;br /&gt;
    scrolllinex - integer&lt;br /&gt;
    scrollliney - integer&lt;br /&gt;
    showhint - boolean&lt;br /&gt;
    useownprofile - boolean&lt;br /&gt;
    vertsizing - string&lt;br /&gt;
    visible - boolean&lt;br /&gt;
    width - integer&lt;br /&gt;
    x - integer&lt;br /&gt;
    y - integer&lt;br /&gt;
    addcontrol(obj)&lt;br /&gt;
    bringtofront()&lt;br /&gt;
    destroy()&lt;br /&gt;
    getparent() - returns object&lt;br /&gt;
    globaltolocalcoord(str) - returns string - converts global screen coordinates to a position relative to the controls origin (0,0), can be used to know where exactly the user has clicked inside a control&lt;br /&gt;
    hide()&lt;br /&gt;
    isactuallyvisible() - returns boolean&lt;br /&gt;
    isfirstresponder() - returns boolean&lt;br /&gt;
    localtoglobalcoord(str) - returns string - converts a position relative to the controls origin (0,0) to global screen coordinates, can be used to know where on the screen a control is displayed in case it is a child of another control (e.g. GuiWindowCtrl or GuiScrollCtrl)&lt;br /&gt;
    makefirstresponder(bool)&lt;br /&gt;
    pushtoback()&lt;br /&gt;
    resize(int, int, int, int)&lt;br /&gt;
    show()&lt;br /&gt;
    showtop() - calls show(), tabfirst() and bringtofront()&lt;br /&gt;
    startdrag()&lt;br /&gt;
    tabfirst() - returns object&lt;br /&gt;
&lt;br /&gt;
    EditManager (GuiControl):&lt;br /&gt;
&lt;br /&gt;
    GuiArrayCtrl (GuiControl):&lt;br /&gt;
      allowmultipleselections - boolean&lt;br /&gt;
&lt;br /&gt;
      GuiTextListCtrl (GuiArrayCtrl):&lt;br /&gt;
        clipcolumntext - boolean&lt;br /&gt;
        columns - string - of format &amp;quot;0 16&amp;quot;, offset of the tabulators&lt;br /&gt;
        enumerate - boolean&lt;br /&gt;
        fitparentwidth - boolean&lt;br /&gt;
        groupsortorder - string&lt;br /&gt;
        iconheight - integer (read only)&lt;br /&gt;
        iconwidth - integer (read only)&lt;br /&gt;
        resizecell - boolean&lt;br /&gt;
        selected - object (read only)&lt;br /&gt;
        sortcolumn - integer&lt;br /&gt;
        sortmode - string&lt;br /&gt;
        sortorder - string&lt;br /&gt;
        addrow(int, str) - returns object - the added row&lt;br /&gt;
        clearrows()&lt;br /&gt;
        clearselection()&lt;br /&gt;
        findtext(str) - returns integer - row index&lt;br /&gt;
        findtextid(str) - returns integer - row id&lt;br /&gt;
        getrowatpoint(int, int) - returns integer - row index&lt;br /&gt;
        getrowidatpoint(int, int) - returns integer - row id&lt;br /&gt;
        getrownumbyid(int) - returns integer&lt;br /&gt;
        getselectedid() - returns integer - row id&lt;br /&gt;
        getselectedids() - returns object - array of row ids&lt;br /&gt;
        getselectedrow() - returns integer - row index&lt;br /&gt;
        getselectedrows() - returns object - array of row indices&lt;br /&gt;
        getselectedtext() - returns string&lt;br /&gt;
        insertrow(int, int, str) - returns object - the inserted row&lt;br /&gt;
        isidselected(int) - returns boolean&lt;br /&gt;
        isrowselected(int) - returns boolean&lt;br /&gt;
        makevisible(int)&lt;br /&gt;
        makevisiblebyid(int)&lt;br /&gt;
        removerow(int)&lt;br /&gt;
        removerowbyid(int)&lt;br /&gt;
        rowcount() - returns integer&lt;br /&gt;
        seticonsize(int, int)&lt;br /&gt;
        setrowactivebyid(int, bool)&lt;br /&gt;
        setrowbyid(int, str)&lt;br /&gt;
        setselectedbyid(int)&lt;br /&gt;
        setselectedbytext(str)&lt;br /&gt;
        setselectedrow(int)&lt;br /&gt;
        sort()&lt;br /&gt;
&lt;br /&gt;
      GuiTreeViewCtrl (GuiArrayCtrl):&lt;br /&gt;
        boxwidth - integer&lt;br /&gt;
        clipcolumntext - boolean&lt;br /&gt;
        columns - string - of format &amp;quot;0 16&amp;quot;, offset of the tabulators&lt;br /&gt;
        expanded - boolean&lt;br /&gt;
        expandedimage - integer&lt;br /&gt;
        expandedselectedimage - integer&lt;br /&gt;
        expandondoubleclick - boolean&lt;br /&gt;
        extent - string (read only)&lt;br /&gt;
        firstlinevisible - boolean&lt;br /&gt;
        fitparentwidth - boolean&lt;br /&gt;
        groupsortorder - string&lt;br /&gt;
        height - integer (read only)&lt;br /&gt;
        hint - string&lt;br /&gt;
        image - integer&lt;br /&gt;
        level - integer (read only)&lt;br /&gt;
        name - string - same as 'text'&lt;br /&gt;
        nodes - object (read only)&lt;br /&gt;
        parent - object (read only)&lt;br /&gt;
        position - string (read only)&lt;br /&gt;
        profile - object&lt;br /&gt;
        selectedimage - integer&lt;br /&gt;
        sortgroup - integer&lt;br /&gt;
        sortmode - string&lt;br /&gt;
        sortorder - string&lt;br /&gt;
        sortvalue - integer&lt;br /&gt;
        statuswidth - integer&lt;br /&gt;
        text - string&lt;br /&gt;
        useownprofile - boolean&lt;br /&gt;
        visible - boolean&lt;br /&gt;
        width - integer (read only)&lt;br /&gt;
        x - integer (read only)&lt;br /&gt;
        y - integer (read only)&lt;br /&gt;
        addlines(obj, bool)&lt;br /&gt;
        addnode(str) - returns object&lt;br /&gt;
        addnodebypath(str, str) - returns object&lt;br /&gt;
        addvars(obj, bool)&lt;br /&gt;
        clearnodes()&lt;br /&gt;
        clearrows() - same as clearNodes()&lt;br /&gt;
        destroy()&lt;br /&gt;
        getfullname(str) - returns string&lt;br /&gt;
        getnode(str) - returns object&lt;br /&gt;
        getnodeat(int, int) - returns object&lt;br /&gt;
        getnodebypath(str, str) - returns object&lt;br /&gt;
        getselectednode() - returns object&lt;br /&gt;
        select()&lt;br /&gt;
        seticonsize(int, int)&lt;br /&gt;
        sort()&lt;br /&gt;
&lt;br /&gt;
    GuiBackgroundCtrl (GuiControl):&lt;br /&gt;
&lt;br /&gt;
    GuiBitmapBorderCtrl (GuiControl):&lt;br /&gt;
      tile - boolean&lt;br /&gt;
&lt;br /&gt;
    GuiBitmapButtonCtrl (GuiControl):&lt;br /&gt;
      mouseoverbitmap - string&lt;br /&gt;
      normalbitmap - string&lt;br /&gt;
      pressedbitmap - string&lt;br /&gt;
      text - string&lt;br /&gt;
      setbitmap(str, int)&lt;br /&gt;
&lt;br /&gt;
    GuiBitmapCtrl (GuiControl):&lt;br /&gt;
      bitmap - string&lt;br /&gt;
      wrap - boolean&lt;br /&gt;
      setbitmap(str)&lt;br /&gt;
      setvalue(int, int)&lt;br /&gt;
&lt;br /&gt;
      GuiMapOverviewCtrl (GuiBitmapCtrl):&lt;br /&gt;
        mapalpha - float&lt;br /&gt;
        pointsize - float&lt;br /&gt;
&lt;br /&gt;
    GuiButtonBaseCtrl (GuiControl):&lt;br /&gt;
      buttontype - string&lt;br /&gt;
      checked - boolean&lt;br /&gt;
      groupnum - integer&lt;br /&gt;
      text - string&lt;br /&gt;
      gettext() - returns string&lt;br /&gt;
      performclick()&lt;br /&gt;
      settext(str)&lt;br /&gt;
&lt;br /&gt;
      GuiBorderButtonCtrl (GuiButtonBaseCtrl):&lt;br /&gt;
&lt;br /&gt;
      GuiButtonCtrl (GuiButtonBaseCtrl):&lt;br /&gt;
        seticonsize(int, int)&lt;br /&gt;
&lt;br /&gt;
      GuiCheckBoxCtrl (GuiButtonBaseCtrl):&lt;br /&gt;
&lt;br /&gt;
        GuiRadioCtrl (GuiCheckBoxCtrl):&lt;br /&gt;
&lt;br /&gt;
    GuiChunkedBitmapCtrl (GuiControl):&lt;br /&gt;
      bitmap - string&lt;br /&gt;
      tile - boolean&lt;br /&gt;
&lt;br /&gt;
    GuiContextMenuCtrl (GuiControl):&lt;br /&gt;
      clipcolumntext - boolean&lt;br /&gt;
      columns - string - of format &amp;quot;0 16&amp;quot;, offset of the tabulators&lt;br /&gt;
      enumerate - boolean&lt;br /&gt;
      fitparentwidth - boolean&lt;br /&gt;
      groupsortorder - string&lt;br /&gt;
      iconheight - integer (read only)&lt;br /&gt;
      iconwidth - integer (read only)&lt;br /&gt;
      profile - object&lt;br /&gt;
      resizecell - boolean&lt;br /&gt;
      rows - object (read only)&lt;br /&gt;
      scrollprofile - object&lt;br /&gt;
      selected - object (read only)&lt;br /&gt;
      sortcolumn - integer&lt;br /&gt;
      sortmode - string&lt;br /&gt;
      sortorder - string&lt;br /&gt;
      textprofile - object&lt;br /&gt;
      width - integer&lt;br /&gt;
      addrow(int, str) - returns object - the added row&lt;br /&gt;
      clearrows()&lt;br /&gt;
      clearselection()&lt;br /&gt;
      close()&lt;br /&gt;
      findtext(str) - returns integer - row index&lt;br /&gt;
      findtextid(str) - returns integer - row id&lt;br /&gt;
      getrowatpoint(int, int) - returns integer - row index&lt;br /&gt;
      getrowidatpoint(int, int) - returns integer - row id&lt;br /&gt;
      getrownumbyid(int) - returns integer&lt;br /&gt;
      getselectedid() - returns integer - row id&lt;br /&gt;
      getselectedids() - returns object - array of row ids&lt;br /&gt;
      getselectedrow() - returns integer - row index&lt;br /&gt;
      getselectedrows() - returns object - array of row indices&lt;br /&gt;
      getselectedtext() - returns string&lt;br /&gt;
      insertrow(int, int, str) - returns object - the inserted row&lt;br /&gt;
      isidselected(int) - returns boolean&lt;br /&gt;
      isopen() - returns boolean&lt;br /&gt;
      isrowselected(int) - returns boolean&lt;br /&gt;
      makevisible(int)&lt;br /&gt;
      makevisiblebyid(int)&lt;br /&gt;
      open(int, int)&lt;br /&gt;
      removerow(int)&lt;br /&gt;
      removerowbyid(int)&lt;br /&gt;
      rowcount() - returns integer&lt;br /&gt;
      seticonsize(int, int)&lt;br /&gt;
      setrowactivebyid(int, bool)&lt;br /&gt;
      setrowbyid(int, str)&lt;br /&gt;
      setselectedbyid(int)&lt;br /&gt;
      setselectedbytext(str)&lt;br /&gt;
      setselectedrow(int)&lt;br /&gt;
      sort()&lt;br /&gt;
&lt;br /&gt;
    GuiDrawingPanel (GuiControl):&lt;br /&gt;
      parth - integer (read only)&lt;br /&gt;
      partw - integer (read only)&lt;br /&gt;
      partx - integer (read only)&lt;br /&gt;
      party - integer (read only)&lt;br /&gt;
      clearall()&lt;br /&gt;
      clearrectangle(int, int, int, int)&lt;br /&gt;
      drawimage(int, int, str)&lt;br /&gt;
      drawimagerectangle(int, int, str, int, int, int, int)&lt;br /&gt;
      drawimagestretched(int, int, int, int, str, int, int, int, int)&lt;br /&gt;
&lt;br /&gt;
    GuiFlash (GuiControl):&lt;br /&gt;
      backgroundalpha - float&lt;br /&gt;
      loopmovie - boolean&lt;br /&gt;
      moviename - string&lt;br /&gt;
      requiresactivex - boolean&lt;br /&gt;
      tryactivex - boolean&lt;br /&gt;
      getflashvariable(str) - returns string&lt;br /&gt;
      loadmovie(str, bool, float)&lt;br /&gt;
      playmovie()&lt;br /&gt;
      restartmovie()&lt;br /&gt;
      setbackgroundalpha(float)&lt;br /&gt;
      setflashvariable(str, str)&lt;br /&gt;
      setlooping(bool)&lt;br /&gt;
      stopmovie()&lt;br /&gt;
&lt;br /&gt;
    GuiFrameSetCtrl (GuiControl):&lt;br /&gt;
      autobalance - boolean&lt;br /&gt;
      bordercolor - string&lt;br /&gt;
      borderenable - string&lt;br /&gt;
      bordermovable - string&lt;br /&gt;
      borderwidth - integer&lt;br /&gt;
      columncount - integer&lt;br /&gt;
      fudgefactor - integer&lt;br /&gt;
      minextent - string&lt;br /&gt;
      rowcount - integer&lt;br /&gt;
      getcolumncount() - returns integer&lt;br /&gt;
      getcolumnoffset(int) - returns integer&lt;br /&gt;
      getrowcount() - returns integer&lt;br /&gt;
      getrowoffset(int) - returns integer&lt;br /&gt;
      setcolumncount(int)&lt;br /&gt;
      setcolumnoffset(int, int)&lt;br /&gt;
      setrowcount(int)&lt;br /&gt;
      setrowoffset(int, int)&lt;br /&gt;
&lt;br /&gt;
    GuiGraal3DCtrl (GuiControl):&lt;br /&gt;
&lt;br /&gt;
    GuiGraalCtrl (GuiControl):&lt;br /&gt;
&lt;br /&gt;
    GuiMenuCtrl (GuiControl):&lt;br /&gt;
      iconheight - integer (read only)&lt;br /&gt;
      iconwidth - integer (read only)&lt;br /&gt;
      addmenu(str) - returns object&lt;br /&gt;
      clearmenus()&lt;br /&gt;
      findmenu(str) - returns object&lt;br /&gt;
      removemenu(str)&lt;br /&gt;
      seticonsize(int, int)&lt;br /&gt;
&lt;br /&gt;
    GuiMLTextCtrl (GuiControl):&lt;br /&gt;
      allowcolorchars - boolean&lt;br /&gt;
      allowedtags - string&lt;br /&gt;
      alpha - float&lt;br /&gt;
      deniedsound - string&lt;br /&gt;
      disallowedtags - string&lt;br /&gt;
      maxchars - integer&lt;br /&gt;
      parsetags - boolean&lt;br /&gt;
      syntaxhighlighting - boolean&lt;br /&gt;
      text - string&lt;br /&gt;
      wordwrap - boolean&lt;br /&gt;
      addtext(str, bool)&lt;br /&gt;
      getcursorline() - returns integer&lt;br /&gt;
      getline(int) - returns string&lt;br /&gt;
      getlinecount() - returns integer&lt;br /&gt;
      getlines() - returns object - array of lines&lt;br /&gt;
      gettext() - returns string&lt;br /&gt;
      reflow()&lt;br /&gt;
      scrolltobottom()&lt;br /&gt;
      scrolltotag(int)&lt;br /&gt;
      scrolltotop()&lt;br /&gt;
      setlines(obj)&lt;br /&gt;
      settext(str)&lt;br /&gt;
&lt;br /&gt;
      GuiMLTextEditCtrl (GuiMLTextCtrl):&lt;br /&gt;
&lt;br /&gt;
        GuiPMEditCtrl (GuiMLTextEditCtrl):&lt;br /&gt;
          sendmasspm(obj)&lt;br /&gt;
          sendpm(obj)&lt;br /&gt;
&lt;br /&gt;
      GuiPMCtrl (GuiMLTextCtrl):&lt;br /&gt;
        showpm(obj)&lt;br /&gt;
&lt;br /&gt;
      GuiPMHistoryCtrl (GuiMLTextCtrl):&lt;br /&gt;
        showhistory(obj)&lt;br /&gt;
&lt;br /&gt;
    GuiMouseEventCtrl (GuiControl):&lt;br /&gt;
      lockmouse - boolean&lt;br /&gt;
&lt;br /&gt;
    GuiPlayerView (GuiControl):&lt;br /&gt;
      ambientcolor - string&lt;br /&gt;
      cameraz - float&lt;br /&gt;
      lightcolor - string&lt;br /&gt;
      lightdirection - string&lt;br /&gt;
      modelrotx - float&lt;br /&gt;
      modelrotz - float&lt;br /&gt;
      shape - string&lt;br /&gt;
      shapeobject - object (read only)&lt;br /&gt;
&lt;br /&gt;
    GuiProgressCtrl (GuiControl):&lt;br /&gt;
      progress - float&lt;br /&gt;
&lt;br /&gt;
    GuiScrollCtrl (GuiControl):&lt;br /&gt;
      childmargin - string&lt;br /&gt;
      constantthumbheight - boolean&lt;br /&gt;
      hscrollbar - string&lt;br /&gt;
      scrollpos - string&lt;br /&gt;
      tile - boolean&lt;br /&gt;
      vscrollbar - string&lt;br /&gt;
      wheelscrolllines - integer&lt;br /&gt;
      willfirstrespond - boolean&lt;br /&gt;
      scrolldelta(int, int)&lt;br /&gt;
      scrollto(int, int)&lt;br /&gt;
&lt;br /&gt;
    GuiShapeNameHud (GuiControl):&lt;br /&gt;
      alignbottom - boolean&lt;br /&gt;
      chatprofile - string&lt;br /&gt;
      damagealignbottom - boolean&lt;br /&gt;
      damageoffset - string&lt;br /&gt;
      damagetimeout - float&lt;br /&gt;
      distancefade - float&lt;br /&gt;
      fillcolor - string&lt;br /&gt;
      framecolor - string&lt;br /&gt;
      maxdistance - float&lt;br /&gt;
      showfill - boolean&lt;br /&gt;
      showframe - boolean&lt;br /&gt;
      useshapesize - boolean&lt;br /&gt;
      verticaldamageoffset - float&lt;br /&gt;
      verticaloffset - float&lt;br /&gt;
&lt;br /&gt;
    GuiShowImgCtrl (GuiControl):&lt;br /&gt;
      alpha - float&lt;br /&gt;
      ani - string&lt;br /&gt;
      ani - string&lt;br /&gt;
      attachnode - string&lt;br /&gt;
      attachoffset - string&lt;br /&gt;
      attachtoowner - boolean&lt;br /&gt;
      blue - float&lt;br /&gt;
      code - string - the old representation as 'font@style@text'&lt;br /&gt;
      dimension - integer&lt;br /&gt;
      dir - integer&lt;br /&gt;
      dir - integer&lt;br /&gt;
      emitter - object (read only)&lt;br /&gt;
      eulerrotation - string&lt;br /&gt;
      flashfile - string&lt;br /&gt;
      font - string&lt;br /&gt;
      green - float&lt;br /&gt;
      image - string&lt;br /&gt;
      imageindex - integer (read only)&lt;br /&gt;
      is3dlight - boolean&lt;br /&gt;
      layer - integer&lt;br /&gt;
      layer - integer&lt;br /&gt;
      mode - integer - the image drawing mode (0 - add, 1 - transparent, 2 - subtract)&lt;br /&gt;
      offsetx - integer&lt;br /&gt;
      offsety - integer&lt;br /&gt;
      playerlook - boolean - if the animation should take it's head, body, sword, shield and attr[] from the owner (playerlook), set this to false if you want to set the images yourself by changing showimg.actor.head etc.&lt;br /&gt;
      polygon - object&lt;br /&gt;
      position - string&lt;br /&gt;
      red - float&lt;br /&gt;
      rotation - float&lt;br /&gt;
      shape - string&lt;br /&gt;
      shapeobject - object (read only)&lt;br /&gt;
      stretchx - float&lt;br /&gt;
      stretchy - float&lt;br /&gt;
      style - string&lt;br /&gt;
      text - string&lt;br /&gt;
      x - float&lt;br /&gt;
      y - float&lt;br /&gt;
      z - float&lt;br /&gt;
      zoom - float&lt;br /&gt;
&lt;br /&gt;
    GuiSliderCtrl (GuiControl):&lt;br /&gt;
      range - string&lt;br /&gt;
      ticks - integer&lt;br /&gt;
      value - float&lt;br /&gt;
&lt;br /&gt;
    GuiStretchCtrl (GuiControl):&lt;br /&gt;
      clientextent - integer&lt;br /&gt;
      clientheight - integer&lt;br /&gt;
      clientwidth - integer&lt;br /&gt;
&lt;br /&gt;
    GuiTabCtrl (GuiControl):&lt;br /&gt;
      iconheight - integer (read only)&lt;br /&gt;
      iconwidth - integer (read only)&lt;br /&gt;
      leveling - integer&lt;br /&gt;
      maxvisibletabs - integer (read only)&lt;br /&gt;
      selected - object (read only)&lt;br /&gt;
      tabwidth - integer&lt;br /&gt;
      addrow(int, str) - returns object - the added row&lt;br /&gt;
      clearrows()&lt;br /&gt;
      clearselection()&lt;br /&gt;
      findtext(str) - returns integer - row index&lt;br /&gt;
      findtextid(str) - returns integer - row id&lt;br /&gt;
      getrowatpoint(int, int) - returns integer - row index&lt;br /&gt;
      getrowidatpoint(int, int) - returns integer - row id&lt;br /&gt;
      getrownumbyid(int) - returns integer&lt;br /&gt;
      getselectedid() - returns integer - row id&lt;br /&gt;
      getselectedrow() - returns integer - row index&lt;br /&gt;
      getselectedtext() - returns string&lt;br /&gt;
      insertrow(int, int, str) - returns object - the inserted row&lt;br /&gt;
      isidselected(int) - returns boolean&lt;br /&gt;
      isrowselected(int) - returns boolean&lt;br /&gt;
      makevisible(int)&lt;br /&gt;
      makevisiblebyid(int)&lt;br /&gt;
      removerow(int)&lt;br /&gt;
      removerowbyid(int)&lt;br /&gt;
      rowcount() - returns integer&lt;br /&gt;
      seticonsize(int, int)&lt;br /&gt;
      setselectedbyid(int)&lt;br /&gt;
      setselectedrow(int)&lt;br /&gt;
&lt;br /&gt;
    GuiTextCtrl (GuiControl):&lt;br /&gt;
      text - string&lt;br /&gt;
      gettext() - returns string&lt;br /&gt;
      settext(str)&lt;br /&gt;
&lt;br /&gt;
      GuiBubbleTextCtrl (GuiTextCtrl):&lt;br /&gt;
&lt;br /&gt;
      GuiPopUpEditCtrl (GuiTextCtrl):&lt;br /&gt;
        clipcolumntext - boolean&lt;br /&gt;
        columns - string - of format &amp;quot;0 16&amp;quot;, offset of the tabulators&lt;br /&gt;
        enumerate - boolean&lt;br /&gt;
        fitparentwidth - boolean&lt;br /&gt;
        groupsortorder - string&lt;br /&gt;
        iconheight - integer (read only)&lt;br /&gt;
        iconwidth - integer (read only)&lt;br /&gt;
        maxpopupheight - integer&lt;br /&gt;
        profile - object&lt;br /&gt;
        resizecell - boolean&lt;br /&gt;
        rows - object (read only)&lt;br /&gt;
        scrollprofile - object&lt;br /&gt;
        selected - object (read only)&lt;br /&gt;
        sortcolumn - integer&lt;br /&gt;
        sortmode - string&lt;br /&gt;
        sortorder - string&lt;br /&gt;
        textprofile - object&lt;br /&gt;
        width - integer&lt;br /&gt;
        addrow(int, str) - returns object - the added row&lt;br /&gt;
        addtext(str, int) - deprecated, use addRow() instead&lt;br /&gt;
        clearrows()&lt;br /&gt;
        clearselection()&lt;br /&gt;
        close()&lt;br /&gt;
        findtext(str) - returns integer&lt;br /&gt;
        findtext(str) - returns integer - row index&lt;br /&gt;
        findtextid(str) - returns integer - row id&lt;br /&gt;
        forceclose()&lt;br /&gt;
        forceonaction()&lt;br /&gt;
        getrowatpoint(int, int) - returns integer - row index&lt;br /&gt;
        getrowidatpoint(int, int) - returns integer - row id&lt;br /&gt;
        getrownumbyid(int) - returns integer&lt;br /&gt;
        getselected() - returns integer&lt;br /&gt;
        getselectedid() - returns integer - row id&lt;br /&gt;
        getselectedids() - returns object - array of row ids&lt;br /&gt;
        getselectedrow() - returns integer - row index&lt;br /&gt;
        getselectedrows() - returns object - array of row indices&lt;br /&gt;
        getselectedtext() - returns string&lt;br /&gt;
        insertrow(int, int, str) - returns object - the inserted row&lt;br /&gt;
        isidselected(int) - returns boolean&lt;br /&gt;
        isopen() - returns boolean&lt;br /&gt;
        isrowselected(int) - returns boolean&lt;br /&gt;
        makevisible(int)&lt;br /&gt;
        makevisiblebyid(int)&lt;br /&gt;
        open(int, int)&lt;br /&gt;
        removerow(int)&lt;br /&gt;
        removerowbyid(int)&lt;br /&gt;
        rowcount() - returns integer&lt;br /&gt;
        rowcount() - returns integer&lt;br /&gt;
        seticonsize(int, int)&lt;br /&gt;
        setrowactivebyid(int, bool)&lt;br /&gt;
        setrowbyid(int, str)&lt;br /&gt;
        setselected(int)&lt;br /&gt;
        setselectedbyid(int)&lt;br /&gt;
        setselectedbytext(str)&lt;br /&gt;
        setselectedbytext(str)&lt;br /&gt;
        setselectedrow(int)&lt;br /&gt;
        sort()&lt;br /&gt;
&lt;br /&gt;
      GuiPopUpMenuCtrl (GuiTextCtrl):&lt;br /&gt;
        clipcolumntext - boolean&lt;br /&gt;
        columns - string - of format &amp;quot;0 16&amp;quot;, offset of the tabulators&lt;br /&gt;
        enumerate - boolean&lt;br /&gt;
        fitparentwidth - boolean&lt;br /&gt;
        groupsortorder - string&lt;br /&gt;
        iconheight - integer (read only)&lt;br /&gt;
        iconwidth - integer (read only)&lt;br /&gt;
        maxpopupheight - integer&lt;br /&gt;
        profile - object&lt;br /&gt;
        resizecell - boolean&lt;br /&gt;
        rows - object (read only)&lt;br /&gt;
        rows - object (read only)&lt;br /&gt;
        scrollprofile - object&lt;br /&gt;
        selected - object (read only)&lt;br /&gt;
        sortcolumn - integer&lt;br /&gt;
        sortmode - string&lt;br /&gt;
        sortorder - string&lt;br /&gt;
        textprofile - object&lt;br /&gt;
        width - integer&lt;br /&gt;
        addrow(int, str) - returns object - the added row&lt;br /&gt;
        addtext(str, int) - deprecated, use addRow() instead&lt;br /&gt;
        clearrows()&lt;br /&gt;
        clearselection()&lt;br /&gt;
        close()&lt;br /&gt;
        findtext(str) - returns integer&lt;br /&gt;
        findtext(str) - returns integer - row index&lt;br /&gt;
        findtextid(str) - returns integer - row id&lt;br /&gt;
        forceclose()&lt;br /&gt;
        forceonaction()&lt;br /&gt;
        getrowatpoint(int, int) - returns integer - row index&lt;br /&gt;
        getrowidatpoint(int, int) - returns integer - row id&lt;br /&gt;
        getrownumbyid(int) - returns integer&lt;br /&gt;
        getselected() - returns integer&lt;br /&gt;
        getselectedid() - returns integer - row id&lt;br /&gt;
        getselectedids() - returns object - array of row ids&lt;br /&gt;
        getselectedrow() - returns integer - row index&lt;br /&gt;
        getselectedrows() - returns object - array of row indices&lt;br /&gt;
        getselectedtext() - returns string&lt;br /&gt;
        insertrow(int, int, str) - returns object - the inserted row&lt;br /&gt;
        isidselected(int) - returns boolean&lt;br /&gt;
        isopen() - returns boolean&lt;br /&gt;
        isrowselected(int) - returns boolean&lt;br /&gt;
        makevisible(int)&lt;br /&gt;
        makevisiblebyid(int)&lt;br /&gt;
        open(int, int)&lt;br /&gt;
        removerow(int)&lt;br /&gt;
        removerowbyid(int)&lt;br /&gt;
        rowcount() - returns integer&lt;br /&gt;
        rowcount() - returns integer&lt;br /&gt;
        seticonsize(int, int)&lt;br /&gt;
        setrowactivebyid(int, bool)&lt;br /&gt;
        setrowbyid(int, str)&lt;br /&gt;
        setselected(int)&lt;br /&gt;
        setselectedbyid(int)&lt;br /&gt;
        setselectedbytext(str)&lt;br /&gt;
        setselectedbytext(str)&lt;br /&gt;
        setselectedrow(int)&lt;br /&gt;
        sort()&lt;br /&gt;
&lt;br /&gt;
      GuiTextEditCtrl (GuiTextCtrl):&lt;br /&gt;
        deniedsound - string&lt;br /&gt;
        historysize - integer&lt;br /&gt;
        password - boolean&lt;br /&gt;
        tabcomplete - boolean&lt;br /&gt;
        setselection(int, int)&lt;br /&gt;
        undo()&lt;br /&gt;
&lt;br /&gt;
        GuiTextEditSliderCtrl (GuiTextEditCtrl):&lt;br /&gt;
          allowedit - string&lt;br /&gt;
          format - string&lt;br /&gt;
          increment - float&lt;br /&gt;
          range - string&lt;br /&gt;
          value - float&lt;br /&gt;
&lt;br /&gt;
      GuiWindowCtrl (GuiTextCtrl):&lt;br /&gt;
        canclose - boolean&lt;br /&gt;
        canmaximize - boolean&lt;br /&gt;
        canminimize - boolean&lt;br /&gt;
        closequery - boolean&lt;br /&gt;
        destroyonhide - boolean&lt;br /&gt;
        extent - string&lt;br /&gt;
        maximized - boolean&lt;br /&gt;
        minimized - boolean&lt;br /&gt;
        tile - boolean&lt;br /&gt;
&lt;br /&gt;
    TerrainEditor (GuiControl):&lt;br /&gt;
      adjustheightmousescale - float&lt;br /&gt;
      adjustheightval - float&lt;br /&gt;
      borderfillcolor - string&lt;br /&gt;
      borderframecolor - string&lt;br /&gt;
      borderheight - float&lt;br /&gt;
      borderlinemode - boolean&lt;br /&gt;
      brushpos - string&lt;br /&gt;
      enablesoftbrushes - boolean&lt;br /&gt;
      isdirty - boolean&lt;br /&gt;
      ismissiondirty - boolean&lt;br /&gt;
      materialgroup - integer&lt;br /&gt;
      paintmaterial - string&lt;br /&gt;
      processusesbrush - boolean&lt;br /&gt;
      renderborder - boolean&lt;br /&gt;
      rendervertexselection - boolean&lt;br /&gt;
      scaleval - float&lt;br /&gt;
      selectionhidden - boolean&lt;br /&gt;
      setheightval - float&lt;br /&gt;
      smoothfactor - float&lt;br /&gt;
      softselectdefaultfilter - string&lt;br /&gt;
      softselectfilter - string&lt;br /&gt;
      softselectradius - float&lt;br /&gt;
      attachterrain(str)&lt;br /&gt;
      buildmaterialmap()&lt;br /&gt;
      clearmodifiedflags()&lt;br /&gt;
      clearselection()&lt;br /&gt;
      getactionname(int) - returns string&lt;br /&gt;
      getbrushpos() - returns string&lt;br /&gt;
      getcurrentaction() - returns string&lt;br /&gt;
      getnumactions() - returns integer&lt;br /&gt;
      getnumtextures() - returns integer&lt;br /&gt;
      getterrainmaterials() - returns object&lt;br /&gt;
      gettexturename(int) - returns string&lt;br /&gt;
      markemptysquares()&lt;br /&gt;
      mirrorterrain(int)&lt;br /&gt;
      popbasematerialinfo()&lt;br /&gt;
      processaction(str)&lt;br /&gt;
      pushbasematerialinfo()&lt;br /&gt;
      redo()&lt;br /&gt;
      resetselweights(bool)&lt;br /&gt;
      setaction(str)&lt;br /&gt;
      setbrushpos(str)&lt;br /&gt;
      setbrushsize(int, int)&lt;br /&gt;
      setbrushtype(str)&lt;br /&gt;
      setlonebasematerial(str)&lt;br /&gt;
      setterrainmaterials(str)&lt;br /&gt;
      undo()&lt;br /&gt;
&lt;br /&gt;
    WorldEditor (GuiControl):&lt;br /&gt;
      automaticsync - boolean&lt;br /&gt;
      axisgizmoactive - boolean&lt;br /&gt;
      axisgizmomaxscreenlen - integer&lt;br /&gt;
      boundingboxcollision - boolean&lt;br /&gt;
      defaulthandle - string&lt;br /&gt;
      dragrectcolor - string&lt;br /&gt;
      droptype - string&lt;br /&gt;
      faceselectcolor - string&lt;br /&gt;
      gridcolor - string&lt;br /&gt;
      gridsize - string&lt;br /&gt;
      isdirty - boolean&lt;br /&gt;
      lockedhandle - string&lt;br /&gt;
      maxscalefactor - float&lt;br /&gt;
      minscalefactor - float&lt;br /&gt;
      mousemovescale - float&lt;br /&gt;
      mouserotatescale - float&lt;br /&gt;
      mousescalescale - float&lt;br /&gt;
      namedistancefade - float&lt;br /&gt;
      namemaxdistance - float&lt;br /&gt;
      objectsuseboxcenter - boolean&lt;br /&gt;
      objecttextcolor - string&lt;br /&gt;
      objmouseovercolor - string&lt;br /&gt;
      objmouseoverselectcolor - string&lt;br /&gt;
      objselectcolor - string&lt;br /&gt;
      objtextformat - string&lt;br /&gt;
      planarmovement - boolean&lt;br /&gt;
      planedim - float&lt;br /&gt;
      popupbackgroundcolor - string&lt;br /&gt;
      popuptextcolor - string&lt;br /&gt;
      projectdistance - float&lt;br /&gt;
      rendernav - boolean&lt;br /&gt;
      renderobjhandle - boolean&lt;br /&gt;
      renderobjtext - boolean&lt;br /&gt;
      renderplane - boolean&lt;br /&gt;
      renderplanehashes - boolean&lt;br /&gt;
      renderpopupbackground - boolean&lt;br /&gt;
      renderselectionbox - boolean&lt;br /&gt;
      rotationsnap - float&lt;br /&gt;
      selecthandle - string&lt;br /&gt;
      selectionboxcolor - string&lt;br /&gt;
      selectionlocked - boolean&lt;br /&gt;
      showmousepopupinfo - boolean&lt;br /&gt;
      snaprotations - boolean&lt;br /&gt;
      snaptogrid - boolean&lt;br /&gt;
      toggleignorelist - boolean&lt;br /&gt;
      undolimit - integer&lt;br /&gt;
      addundostate()&lt;br /&gt;
      clearignorelist()&lt;br /&gt;
      clearselection()&lt;br /&gt;
      deleteselection()&lt;br /&gt;
      dropselection()&lt;br /&gt;
      getmode() - returns string&lt;br /&gt;
      getselectedobject(int) - returns object&lt;br /&gt;
      getselectioncentroid() - returns string&lt;br /&gt;
      getselectionsize() - returns integer&lt;br /&gt;
      hideselection(bool)&lt;br /&gt;
      ignoreobjclass(str)&lt;br /&gt;
      lightselection()&lt;br /&gt;
      lockselection(bool)&lt;br /&gt;
      redo()&lt;br /&gt;
      reloadselection()&lt;br /&gt;
      selectobject(obj)&lt;br /&gt;
      setmode(str)&lt;br /&gt;
      syncselection()&lt;br /&gt;
      undo()&lt;br /&gt;
      unselectobject(obj)&lt;br /&gt;
&lt;br /&gt;
  GuiControlProfile (TGraalVar):&lt;br /&gt;
    align - string&lt;br /&gt;
    autosizeheight - boolean&lt;br /&gt;
    autosizewidth - boolean&lt;br /&gt;
    backgroundinset - string&lt;br /&gt;
    bitmap - string&lt;br /&gt;
    border - integer&lt;br /&gt;
    bordercolor - string&lt;br /&gt;
    bordercolorhl - string&lt;br /&gt;
    bordercolorna - string&lt;br /&gt;
    borderthickness - integer&lt;br /&gt;
    cankeyfocus - boolean&lt;br /&gt;
    cursorcolor - string&lt;br /&gt;
    fillcolor - string&lt;br /&gt;
    fillcolorhl - string&lt;br /&gt;
    fillcolorna - string&lt;br /&gt;
    fontcolor - string&lt;br /&gt;
    fontcolorhl - string&lt;br /&gt;
    fontcolorlink - string&lt;br /&gt;
    fontcolorlinkhl - string&lt;br /&gt;
    fontcolorna - string&lt;br /&gt;
    fontcolorsel - string&lt;br /&gt;
    fontsize - integer&lt;br /&gt;
    fontstyle - string&lt;br /&gt;
    fonttype - string&lt;br /&gt;
    justify - string - the same like &amp;quot;align&amp;quot;&lt;br /&gt;
    linespacing - integer&lt;br /&gt;
    modal - boolean&lt;br /&gt;
    mouseoverselected - boolean&lt;br /&gt;
    numbersonly - boolean&lt;br /&gt;
    opaque - boolean&lt;br /&gt;
    returntab - boolean&lt;br /&gt;
    shadowcolor - string&lt;br /&gt;
    shadowoffset - string&lt;br /&gt;
    soundbuttondown - string&lt;br /&gt;
    soundbuttonover - string&lt;br /&gt;
    tab - boolean&lt;br /&gt;
    textoffset - string&lt;br /&gt;
    textshadow - boolean&lt;br /&gt;
    transparency - float&lt;br /&gt;
&lt;br /&gt;
  GuiCursor (TGraalVar):&lt;br /&gt;
&lt;br /&gt;
  GuiTabCtrlEntry (TGraalVar):&lt;br /&gt;
    hint - string&lt;br /&gt;
    id - integer&lt;br /&gt;
    text - string&lt;br /&gt;
    gettext() - returns string&lt;br /&gt;
    settext(str)&lt;br /&gt;
&lt;br /&gt;
  GuiTextListEntry (TGraalVar):&lt;br /&gt;
    active - boolean&lt;br /&gt;
    extent - string (read only)&lt;br /&gt;
    flickering - boolean&lt;br /&gt;
    height - integer (read only)&lt;br /&gt;
    hint - string&lt;br /&gt;
    id - integer&lt;br /&gt;
    image - integer&lt;br /&gt;
    position - string (read only)&lt;br /&gt;
    profile - object&lt;br /&gt;
    selectedimage - integer&lt;br /&gt;
    sortgroup - integer&lt;br /&gt;
    sortvalue - integer&lt;br /&gt;
    text - string&lt;br /&gt;
    useownprofile - boolean&lt;br /&gt;
    width - integer (read only)&lt;br /&gt;
    x - integer (read only)&lt;br /&gt;
    y - integer (read only)&lt;br /&gt;
    gettext() - returns string&lt;br /&gt;
    settext(str)&lt;br /&gt;
&lt;br /&gt;
  GuiTreeViewNode (TGraalVar):&lt;br /&gt;
    expanded - boolean&lt;br /&gt;
    expandedimage - integer&lt;br /&gt;
    expandedselectedimage - integer&lt;br /&gt;
    extent - string (read only)&lt;br /&gt;
    height - integer (read only)&lt;br /&gt;
    hint - string&lt;br /&gt;
    image - integer&lt;br /&gt;
    level - integer (read only)&lt;br /&gt;
    name - string - same as 'text'&lt;br /&gt;
    parent - object (read only)&lt;br /&gt;
    position - string (read only)&lt;br /&gt;
    profile - object&lt;br /&gt;
    selectedimage - integer&lt;br /&gt;
    sortgroup - integer&lt;br /&gt;
    sortvalue - integer&lt;br /&gt;
    text - string&lt;br /&gt;
    useownprofile - boolean&lt;br /&gt;
    visible - boolean&lt;br /&gt;
    width - integer (read only)&lt;br /&gt;
    x - integer (read only)&lt;br /&gt;
    y - integer (read only)&lt;br /&gt;
    addlines(obj, bool)&lt;br /&gt;
    addnode(str) - returns object&lt;br /&gt;
    addnodebypath(str, str) - returns object&lt;br /&gt;
    addvars(obj, bool)&lt;br /&gt;
    clearnodes()&lt;br /&gt;
    destroy()&lt;br /&gt;
    getfullname(str) - returns string&lt;br /&gt;
    getnode(str) - returns object&lt;br /&gt;
    getnodebypath(str, str) - returns object&lt;br /&gt;
    select()&lt;br /&gt;
&lt;br /&gt;
  MRandomGenerator (TGraalVar):&lt;br /&gt;
    seed - integer&lt;br /&gt;
    destroy()&lt;br /&gt;
    randfloat() - returns float&lt;br /&gt;
    randint() - returns integer&lt;br /&gt;
&lt;br /&gt;
    MRandomLCG (MRandomGenerator):&lt;br /&gt;
&lt;br /&gt;
    MRandomR250 (MRandomGenerator):&lt;br /&gt;
&lt;br /&gt;
  SimObject (TGraalVar):&lt;br /&gt;
&lt;br /&gt;
    SceneObject (SimObject):&lt;br /&gt;
      eulerrotation - string&lt;br /&gt;
      forwardvector - string&lt;br /&gt;
      objectbox - string (read only)&lt;br /&gt;
      position - string&lt;br /&gt;
      renderposition - string&lt;br /&gt;
      rightvector - string&lt;br /&gt;
      rotation - string&lt;br /&gt;
      scale - string&lt;br /&gt;
      scaledobjectbox - string (read only)&lt;br /&gt;
      transform - string&lt;br /&gt;
      upvector - string&lt;br /&gt;
      worldbox - string (read only)&lt;br /&gt;
      worldboxcenter - string (read only)&lt;br /&gt;
      x - float&lt;br /&gt;
      y - float&lt;br /&gt;
      z - float&lt;br /&gt;
      getforwardvector() - returns string&lt;br /&gt;
      getobjectbox() - returns string&lt;br /&gt;
      getposition() - returns string&lt;br /&gt;
      getrightvector() - returns string&lt;br /&gt;
      getscale() - returns string&lt;br /&gt;
      gettransform() - returns string&lt;br /&gt;
      getupvector() - returns string&lt;br /&gt;
      getworldbox() - returns string&lt;br /&gt;
      getworldboxcenter() - returns string&lt;br /&gt;
      light()&lt;br /&gt;
      setforwardvector(str)&lt;br /&gt;
      setposition(str)&lt;br /&gt;
      setrightvector(str)&lt;br /&gt;
      setscale(str)&lt;br /&gt;
      settransform(str)&lt;br /&gt;
      setupvector(str)&lt;br /&gt;
&lt;br /&gt;
      fxSunLight (SceneObject):&lt;br /&gt;
&lt;br /&gt;
      GameObject (SceneObject):&lt;br /&gt;
        alpha - float&lt;br /&gt;
        attr - object&lt;br /&gt;
        attrobjects - object (read only)&lt;br /&gt;
        chat - string&lt;br /&gt;
        iseditorobject - boolean&lt;br /&gt;
        liquidheight - float (read only)&lt;br /&gt;
        liquidtype - string (read only)&lt;br /&gt;
        movetype - string&lt;br /&gt;
        nickcolor - string&lt;br /&gt;
        nickname - string&lt;br /&gt;
        scaledshapebox - string (read only)&lt;br /&gt;
        shape - string&lt;br /&gt;
        shapebox - string (read only)&lt;br /&gt;
        skin - string&lt;br /&gt;
        solid - boolean&lt;br /&gt;
        transform - string&lt;br /&gt;
        velocity - string&lt;br /&gt;
        watercoverage - float (read only)&lt;br /&gt;
        checkcollision(str, str) - returns object&lt;br /&gt;
        checkcollisionbybox(str, str, str) - returns object&lt;br /&gt;
        clippolygons(str) - returns object&lt;br /&gt;
        findimg(int) - returns object&lt;br /&gt;
        getcontrollingclient() - returns object&lt;br /&gt;
        getcontrollingobject() - returns object&lt;br /&gt;
        getmountedobject(int) - returns object&lt;br /&gt;
        getmountedobjectcount() - returns integer&lt;br /&gt;
        getmountedobjectnode(int) - returns integer&lt;br /&gt;
        getmountnodeobject(int) - returns object&lt;br /&gt;
        getmountposition(int) - returns string&lt;br /&gt;
        getmounttransform(int) - returns string&lt;br /&gt;
        getnodeposition(str) - returns string&lt;br /&gt;
        getnodetransform(str) - returns string&lt;br /&gt;
        getobjectmount() - returns object&lt;br /&gt;
        hideimg(int)&lt;br /&gt;
        hideimgs(int, int)&lt;br /&gt;
        ismounted() - returns boolean&lt;br /&gt;
        mountobject(obj, int) - returns boolean&lt;br /&gt;
        setdirection(str)&lt;br /&gt;
        unmount()&lt;br /&gt;
        unmountobject(obj) - returns boolean&lt;br /&gt;
&lt;br /&gt;
        Camera (GameObject):&lt;br /&gt;
          cameramode - string&lt;br /&gt;
          eulerrotation - string&lt;br /&gt;
          lookatposition - string&lt;br /&gt;
          lookvector - string&lt;br /&gt;
          updateposition()&lt;br /&gt;
&lt;br /&gt;
        DynamicShapeReplicator (GameObject):&lt;br /&gt;
          boxmax - string&lt;br /&gt;
          boxmin - string&lt;br /&gt;
          maxgridobjects - integer&lt;br /&gt;
          mingridobjects - integer&lt;br /&gt;
          radius - integer&lt;br /&gt;
          shapefiles - string&lt;br /&gt;
          surfacetype - string&lt;br /&gt;
&lt;br /&gt;
          DynamicGrass (DynamicShapeReplicator):&lt;br /&gt;
&lt;br /&gt;
          DynamicGrassReplicator (DynamicShapeReplicator):&lt;br /&gt;
&lt;br /&gt;
      Sky (SceneObject):&lt;br /&gt;
        materiallist - string&lt;br /&gt;
        skyfadetime - float&lt;br /&gt;
        windvelocity - string&lt;br /&gt;
        getwindowvelocity() - returns string&lt;br /&gt;
        realfog(bool, float, float, float) - specify if it should show, and max, min and speed values&lt;br /&gt;
        stormclouds(bool, float) - specify if it should show, and the duration&lt;br /&gt;
        stormcloudsshow(bool)&lt;br /&gt;
        stormfog(float, float) - percent and duration of the fog&lt;br /&gt;
        stormfogshow(bool)&lt;br /&gt;
&lt;br /&gt;
      TerrainBlock (SceneObject):&lt;br /&gt;
        bumpoffset - float&lt;br /&gt;
        bumpscale - float&lt;br /&gt;
        bumptexture - string&lt;br /&gt;
        squaresize - integer&lt;br /&gt;
        terrainfile - string&lt;br /&gt;
        zerobumpscale - integer&lt;br /&gt;
&lt;br /&gt;
      twSurfaceReference (SceneObject):&lt;br /&gt;
&lt;br /&gt;
      WaterBlock (SceneObject):&lt;br /&gt;
        density - float&lt;br /&gt;
        depthgradient - float&lt;br /&gt;
        distortgridscale - float&lt;br /&gt;
        distortmag - float&lt;br /&gt;
        distorttime - float&lt;br /&gt;
        envmapintensity - float&lt;br /&gt;
        envmapovertexture - string&lt;br /&gt;
        envmapundertexture - string&lt;br /&gt;
        flowangle - float&lt;br /&gt;
        flowrate - float&lt;br /&gt;
        liquidtype - string&lt;br /&gt;
        maxalpha - float&lt;br /&gt;
        minalpha - float&lt;br /&gt;
        removewetedges - boolean&lt;br /&gt;
        shoredepth - float&lt;br /&gt;
        shoretexture - string&lt;br /&gt;
        specularcolor - string&lt;br /&gt;
        specularmasktex - string&lt;br /&gt;
        specularpower - float&lt;br /&gt;
        submergetexture0 - string&lt;br /&gt;
        submergetexture1 - string&lt;br /&gt;
        surfaceopacity - float&lt;br /&gt;
        surfaceparallax - float&lt;br /&gt;
        surfacetexture - string&lt;br /&gt;
        tessshore - float&lt;br /&gt;
        tesssurface - float&lt;br /&gt;
        usedepthmask - boolean&lt;br /&gt;
        viscosity - float&lt;br /&gt;
        wavemagnitude - float&lt;br /&gt;
&lt;br /&gt;
    SimGroup (SimObject):&lt;br /&gt;
      addcontrol(obj)&lt;br /&gt;
&lt;br /&gt;
      GameConnection (SimGroup):&lt;br /&gt;
        account - string (read only)&lt;br /&gt;
        camera - object (read only)&lt;br /&gt;
        nick - string (read only)&lt;br /&gt;
        objecttype() - returns string - returns the object type, which can be TGraalVar, TProjectile etc.&lt;br /&gt;
&lt;br /&gt;
    Sun (SimObject):&lt;br /&gt;
&lt;br /&gt;
  TDrawableObject (TGraalVar):&lt;br /&gt;
    layer - integer (read only)&lt;br /&gt;
&lt;br /&gt;
    TBaddy (TDrawableObject):&lt;br /&gt;
      dir - integer&lt;br /&gt;
      headdir - integer&lt;br /&gt;
      mode - integer&lt;br /&gt;
      power - integer&lt;br /&gt;
      type - integer&lt;br /&gt;
      x - float&lt;br /&gt;
      y - float&lt;br /&gt;
&lt;br /&gt;
    TLevelObject (TDrawableObject):&lt;br /&gt;
      level - object (read only)&lt;br /&gt;
      x - float&lt;br /&gt;
      y - float&lt;br /&gt;
      z - float&lt;br /&gt;
&lt;br /&gt;
      TExplosion (TLevelObject):&lt;br /&gt;
        dir - integer (read only)&lt;br /&gt;
        power - integer (read only)&lt;br /&gt;
        time - float (read only)&lt;br /&gt;
&lt;br /&gt;
      TGaniObject (TLevelObject):&lt;br /&gt;
        ani - object (read only)&lt;br /&gt;
        aniparams - string (read only)&lt;br /&gt;
        anistep - integer (read only)&lt;br /&gt;
        attachid - integer (read only)&lt;br /&gt;
        attachtype - integer (read only)&lt;br /&gt;
        attr - object (read only)&lt;br /&gt;
        body - string&lt;br /&gt;
        bodyimg - string&lt;br /&gt;
        colors - object (read only)&lt;br /&gt;
        dir - integer&lt;br /&gt;
        gmap - object (read only)&lt;br /&gt;
        head - string&lt;br /&gt;
        headimg - string&lt;br /&gt;
        rotation - float&lt;br /&gt;
        shield - string&lt;br /&gt;
        sprite - integer&lt;br /&gt;
        stretchx - float&lt;br /&gt;
        stretchy - float&lt;br /&gt;
        sword - string&lt;br /&gt;
        zoom - float&lt;br /&gt;
        getimageforsprite(obj) - returns string&lt;br /&gt;
        getsprite(str) - returns object&lt;br /&gt;
        getspriteforspritepos(obj) - returns object&lt;br /&gt;
&lt;br /&gt;
        TProjectile (TGaniObject):&lt;br /&gt;
          angle - float (read only)&lt;br /&gt;
          fromplayer - object (read only)&lt;br /&gt;
          horiz - boolean (read only)&lt;br /&gt;
          params - object (read only)&lt;br /&gt;
          speed - float (read only)&lt;br /&gt;
          x - float (read only)&lt;br /&gt;
          y - float (read only)&lt;br /&gt;
          z - float (read only)&lt;br /&gt;
          zspeed - float (read only)&lt;br /&gt;
&lt;br /&gt;
        TServerHorse (TGaniObject):&lt;br /&gt;
          bombpower - integer&lt;br /&gt;
          bombs - integer&lt;br /&gt;
          bushes - integer&lt;br /&gt;
          dir - integer&lt;br /&gt;
          type - integer&lt;br /&gt;
&lt;br /&gt;
        TServerPlayer (TGaniObject):&lt;br /&gt;
          account - string (read only)&lt;br /&gt;
          ap - integer&lt;br /&gt;
          attached - boolean (read only)&lt;br /&gt;
          bombs - integer&lt;br /&gt;
          chat - string&lt;br /&gt;
          darts - integer&lt;br /&gt;
          fullhearts - integer (read only)&lt;br /&gt;
          glovepower - integer&lt;br /&gt;
          gralats - integer&lt;br /&gt;
          guild - string (read only)&lt;br /&gt;
          headimg - string&lt;br /&gt;
          headset - integer&lt;br /&gt;
          hearts - float (read only)&lt;br /&gt;
          horseimg - string (read only)&lt;br /&gt;
          hp - float (read only)&lt;br /&gt;
          id - integer (read only)&lt;br /&gt;
          isadmin - boolean (read only)&lt;br /&gt;
          isbuddy - boolean&lt;br /&gt;
          ischannel - boolean (read only)&lt;br /&gt;
          ischannelopen - boolean (read only)&lt;br /&gt;
          ischanneluser - boolean (read only)&lt;br /&gt;
          isexternal - boolean (read only)&lt;br /&gt;
          isfemale - boolean (read only)&lt;br /&gt;
          isignored - boolean&lt;br /&gt;
          isignoring - boolean (read only)&lt;br /&gt;
          isloggedin - boolean (read only)&lt;br /&gt;
          ismale - boolean (read only)&lt;br /&gt;
          ismuted - boolean (read only)&lt;br /&gt;
          ismuting - boolean (read only)&lt;br /&gt;
          language - string (read only)&lt;br /&gt;
          languagedomain - string (read only)&lt;br /&gt;
          maxhp - integer (read only)&lt;br /&gt;
          messagebubble - integer (read only)&lt;br /&gt;
          mp - integer&lt;br /&gt;
          nick - string&lt;br /&gt;
          platform - string (read only)&lt;br /&gt;
          playersindex - integer (read only)&lt;br /&gt;
          rating - float (read only)&lt;br /&gt;
          ratingd - float (read only)&lt;br /&gt;
          rupees - integer - better use 'gralats'&lt;br /&gt;
          shieldimg - string&lt;br /&gt;
          shieldpower - integer (read only)&lt;br /&gt;
          swordimg - string&lt;br /&gt;
          swordpower - integer (read only)&lt;br /&gt;
          x - float&lt;br /&gt;
          y - float&lt;br /&gt;
          isguildpm() - returns boolean&lt;br /&gt;
          ismasspm() - returns boolean&lt;br /&gt;
          openexternalhistory() - returns boolean&lt;br /&gt;
          openexternalpm(bool) - returns boolean&lt;br /&gt;
          pmswaiting() - returns boolean&lt;br /&gt;
          showprofile()&lt;br /&gt;
&lt;br /&gt;
          TPlayer (TServerPlayer):&lt;br /&gt;
            ap - integer&lt;br /&gt;
            chat - string&lt;br /&gt;
            freezetime - float&lt;br /&gt;
            hearts - float&lt;br /&gt;
            horseimg - string&lt;br /&gt;
            hp - float&lt;br /&gt;
            hurt - boolean (read only)&lt;br /&gt;
            hurtdx - float (read only)&lt;br /&gt;
            hurtdy - float (read only)&lt;br /&gt;
            hurted - boolean (read only)&lt;br /&gt;
            hurtpower - float (read only)&lt;br /&gt;
            isfemale - boolean (read only)&lt;br /&gt;
            ismale - boolean (read only)&lt;br /&gt;
            letters - string&lt;br /&gt;
            map - boolean (read only)&lt;br /&gt;
            nick - string (read only)&lt;br /&gt;
            onhorse - boolean (read only)&lt;br /&gt;
            online - boolean (read only)&lt;br /&gt;
            paused - boolean (read only)&lt;br /&gt;
            reading - boolean (read only)&lt;br /&gt;
            shieldimg - string&lt;br /&gt;
            sprite - integer&lt;br /&gt;
            swimming - boolean (read only)&lt;br /&gt;
            swordimg - string&lt;br /&gt;
            transform - string&lt;br /&gt;
            weapon - object (read only)&lt;br /&gt;
            weapons - object (read only)&lt;br /&gt;
&lt;br /&gt;
          TServerNPC (TServerPlayer):&lt;br /&gt;
            actionplayer - integer (read only)&lt;br /&gt;
            hearts - float&lt;br /&gt;
            height - float (read only)&lt;br /&gt;
            horseimg - string&lt;br /&gt;
            hp - float&lt;br /&gt;
            hurtdx - float&lt;br /&gt;
            hurtdy - float&lt;br /&gt;
            image - string&lt;br /&gt;
            isblocking - boolean&lt;br /&gt;
            isblockingprojectiles - boolean&lt;br /&gt;
            layer - integer&lt;br /&gt;
            npcsindex - integer (read only)&lt;br /&gt;
            peltwithblackstone - boolean (read only)&lt;br /&gt;
            peltwithbush - boolean (read only)&lt;br /&gt;
            peltwithnpc - boolean (read only)&lt;br /&gt;
            peltwithsign - boolean (read only)&lt;br /&gt;
            peltwithstone - boolean (read only)&lt;br /&gt;
            peltwithvase - boolean (read only)&lt;br /&gt;
            save - object (read only)&lt;br /&gt;
            shieldpower - integer&lt;br /&gt;
            sprite - integer&lt;br /&gt;
            swordpower - integer&lt;br /&gt;
            visible - boolean&lt;br /&gt;
            width - float (read only)&lt;br /&gt;
            x - float&lt;br /&gt;
            y - float&lt;br /&gt;
            blockagain()&lt;br /&gt;
            blockagainlocal()&lt;br /&gt;
            canbecarried()&lt;br /&gt;
            canbepulled()&lt;br /&gt;
            canbepushed()&lt;br /&gt;
            cannotbecarried()&lt;br /&gt;
            cannotbepulled()&lt;br /&gt;
            cannotbepushed()&lt;br /&gt;
            carryobject(str)&lt;br /&gt;
            changeimgcolors(int, float, float, float, float)&lt;br /&gt;
            changeimgmode(int, int)&lt;br /&gt;
            changeimgpart(int, int, int, int, int)&lt;br /&gt;
            changeimgvis(int, int)&lt;br /&gt;
            changeimgzoom(int, float)&lt;br /&gt;
            destroy()&lt;br /&gt;
            dontblock()&lt;br /&gt;
            dontblocklocal()&lt;br /&gt;
            drawaslight()&lt;br /&gt;
            drawoverplayer()&lt;br /&gt;
            drawunderplayer()&lt;br /&gt;
            findimg(int) - returns object&lt;br /&gt;
            hide()&lt;br /&gt;
            hideimg(int)&lt;br /&gt;
            hideimgs(int, int)&lt;br /&gt;
            hidelocal()&lt;br /&gt;
            hurt(int)&lt;br /&gt;
            lay(str)&lt;br /&gt;
            message(str)&lt;br /&gt;
            move( dx, dy, time, options ) - options: cachetype(0,1,2) + blockchec(4) + eventwhendone(8) + applydir(16)&lt;br /&gt;
            setbow(str)&lt;br /&gt;
            setcharani(str, str)&lt;br /&gt;
            setchargender(str)&lt;br /&gt;
            setcoloreffect(float, float, float, float)&lt;br /&gt;
            seteffectmode(int)&lt;br /&gt;
            setimg(str)&lt;br /&gt;
            setimgpart(str, int, int, int, int)&lt;br /&gt;
            setshape(int, int, int)&lt;br /&gt;
            setshape2(int, int, obj)&lt;br /&gt;
            setzoomeffect(float)&lt;br /&gt;
            shootarrow(int)&lt;br /&gt;
            shootball()&lt;br /&gt;
            shootfireball(int)&lt;br /&gt;
            shootfireblast(int)&lt;br /&gt;
            shootnuke(int)&lt;br /&gt;
            show()&lt;br /&gt;
            showani(int, float, float, int, str) - returns object&lt;br /&gt;
            showani2(int, float, float, float, int, str) - returns object&lt;br /&gt;
            showcharacter()&lt;br /&gt;
            showimg(int, str, float, float) - returns object&lt;br /&gt;
            showimg2(int, str, float, float, float) - returns object&lt;br /&gt;
            showlocal()&lt;br /&gt;
            showpoly(int, obj) - returns object&lt;br /&gt;
            showpoly2(int, obj) - returns object&lt;br /&gt;
            showtext(int, float, float, str, str, str) - returns object&lt;br /&gt;
            showtext2(int, float, float, float, str, str, str) - returns object&lt;br /&gt;
            take(str)&lt;br /&gt;
            take2(int)&lt;br /&gt;
            takehorse(int)&lt;br /&gt;
            throwcarry()&lt;br /&gt;
            timereverywhere()&lt;br /&gt;
            toweapons(str)&lt;br /&gt;
&lt;br /&gt;
            TServerWeapon (TServerNPC):&lt;br /&gt;
              isweapon - boolean (read only)&lt;br /&gt;
&lt;br /&gt;
      TServerBomb (TLevelObject):&lt;br /&gt;
        power - integer&lt;br /&gt;
        time - float&lt;br /&gt;
&lt;br /&gt;
      TServerCarry (TLevelObject):&lt;br /&gt;
&lt;br /&gt;
      TServerChest (TLevelObject):&lt;br /&gt;
        isopen - boolean (read only)&lt;br /&gt;
        item - string (read only)&lt;br /&gt;
&lt;br /&gt;
      TServerExtra (TLevelObject):&lt;br /&gt;
        time - float (read only)&lt;br /&gt;
        type - integer (read only)&lt;br /&gt;
&lt;br /&gt;
      TServerFlying (TLevelObject):&lt;br /&gt;
        dir - integer (read only)&lt;br /&gt;
        dx - float&lt;br /&gt;
        dy - float&lt;br /&gt;
        from - integer (read only)&lt;br /&gt;
        type - integer (read only)&lt;br /&gt;
&lt;br /&gt;
      TServerLeap (TLevelObject):&lt;br /&gt;
&lt;br /&gt;
      TServerSign (TLevelObject):&lt;br /&gt;
        text - string&lt;br /&gt;
&lt;br /&gt;
      TShowImg (TLevelObject):&lt;br /&gt;
        alpha - float&lt;br /&gt;
        ani - string&lt;br /&gt;
        attachnode - string&lt;br /&gt;
        attachoffset - string&lt;br /&gt;
        attachtoowner - boolean&lt;br /&gt;
        blue - float&lt;br /&gt;
        code - string - the old representation as 'font@style@text'&lt;br /&gt;
        dimension - integer&lt;br /&gt;
        dir - integer&lt;br /&gt;
        emitter - object (read only)&lt;br /&gt;
        eulerrotation - string&lt;br /&gt;
        flashfile - string&lt;br /&gt;
        font - string&lt;br /&gt;
        green - float&lt;br /&gt;
        image - string&lt;br /&gt;
        imageindex - integer (read only)&lt;br /&gt;
        is3dlight - boolean&lt;br /&gt;
        layer - integer&lt;br /&gt;
        mode - integer - the image drawing mode (0 - add, 1 - transparent, 2 - subtract)&lt;br /&gt;
        playerlook - boolean - if the animation should take it's head, body, sword, shield and attr[] from the owner (playerlook), set this to false if you want to set the images yourself by changing showimg.actor.head etc.&lt;br /&gt;
        polygon - object&lt;br /&gt;
        position - string&lt;br /&gt;
        red - float&lt;br /&gt;
        rotation - float&lt;br /&gt;
        shape - string&lt;br /&gt;
        shapeobject - object (read only)&lt;br /&gt;
        stretchx - float&lt;br /&gt;
        stretchy - float&lt;br /&gt;
        style - string&lt;br /&gt;
        text - string&lt;br /&gt;
        x - float&lt;br /&gt;
        y - float&lt;br /&gt;
        z - float&lt;br /&gt;
        zoom - float&lt;br /&gt;
&lt;br /&gt;
  TDrawingPanel (TGraalVar):&lt;br /&gt;
    height - integer (read only)&lt;br /&gt;
    parth - integer (read only)&lt;br /&gt;
    partw - integer (read only)&lt;br /&gt;
    partx - integer (read only)&lt;br /&gt;
    party - integer (read only)&lt;br /&gt;
    width - integer (read only)&lt;br /&gt;
    clearall()&lt;br /&gt;
    clearrectangle(int, int, int, int) - x, y, width and height&lt;br /&gt;
    drawimage(int, int, str) - x, y, source image&lt;br /&gt;
    drawimagerectangle(int, int, str, int, int, int, int) - destination x and y, source image, source x,y,width and height&lt;br /&gt;
    drawimagestretched(int, int, int, int, str, int, int, int, int) - destination x,y,width and height, source image, source x,y,width and height&lt;br /&gt;
&lt;br /&gt;
  Terraformer (TGraalVar):&lt;br /&gt;
    loadgrayscale(int, str) - returns boolean&lt;br /&gt;
    loadgreyscale(int, str) - returns boolean&lt;br /&gt;
    savegreyscale(int, str) - returns boolean&lt;br /&gt;
    setterrain(int) - returns boolean&lt;br /&gt;
&lt;br /&gt;
  TFlashInstance (TGraalVar):&lt;br /&gt;
    frame - integer&lt;br /&gt;
    height - float (read only)&lt;br /&gt;
    looping - boolean&lt;br /&gt;
    object - string&lt;br /&gt;
    playing - boolean&lt;br /&gt;
    width - float (read only)&lt;br /&gt;
    play()&lt;br /&gt;
    stop()&lt;br /&gt;
&lt;br /&gt;
  TFrameDetail (TGraalVar):&lt;br /&gt;
    bordercolor - string&lt;br /&gt;
    borderenable - string&lt;br /&gt;
    bordermovable - string&lt;br /&gt;
    borderwidth - integer&lt;br /&gt;
    minextent - string&lt;br /&gt;
&lt;br /&gt;
  TGameObjectAttr (TGraalVar):&lt;br /&gt;
&lt;br /&gt;
  TGaniParam (TGraalVar):&lt;br /&gt;
&lt;br /&gt;
  TGraalAni (TGraalVar):&lt;br /&gt;
    continuous - boolean&lt;br /&gt;
    ganitype - string (read only)&lt;br /&gt;
    loop - boolean&lt;br /&gt;
    movie - boolean&lt;br /&gt;
    setbackto - string&lt;br /&gt;
    singledirection - boolean&lt;br /&gt;
    addsprite(int) - returns object&lt;br /&gt;
    addstep() - returns object&lt;br /&gt;
    deletesprite(int)&lt;br /&gt;
    deletestep(int)&lt;br /&gt;
    getsprite(int) - returns object&lt;br /&gt;
    insertstep(int) - returns object&lt;br /&gt;
&lt;br /&gt;
  TGraalAniPart (TGraalVar):&lt;br /&gt;
    attr - integer&lt;br /&gt;
    dx - integer&lt;br /&gt;
    dy - integer&lt;br /&gt;
    param - integer&lt;br /&gt;
    sprite - object&lt;br /&gt;
&lt;br /&gt;
  TGraalAniSound (TGraalVar):&lt;br /&gt;
    delay - float&lt;br /&gt;
    dx - float&lt;br /&gt;
    dy - float&lt;br /&gt;
    sound - string&lt;br /&gt;
&lt;br /&gt;
  TGraalAniSprite (TGraalVar):&lt;br /&gt;
    alpha - float&lt;br /&gt;
    blue - float&lt;br /&gt;
    description - string&lt;br /&gt;
    green - float&lt;br /&gt;
    height - integer&lt;br /&gt;
    image - string&lt;br /&gt;
    imagetype - string (read only)&lt;br /&gt;
    mode - integer&lt;br /&gt;
    red - float&lt;br /&gt;
    rotation - float&lt;br /&gt;
    spriteindex - integer&lt;br /&gt;
    stretchx - float&lt;br /&gt;
    stretchy - float&lt;br /&gt;
    width - integer&lt;br /&gt;
    x - integer&lt;br /&gt;
    y - integer&lt;br /&gt;
    zoom - float&lt;br /&gt;
    addattachment() - returns object&lt;br /&gt;
    deleteattachment(int)&lt;br /&gt;
    insertattachment(int) - returns object&lt;br /&gt;
&lt;br /&gt;
  TGraalAniStep (TGraalVar):&lt;br /&gt;
    delay - float&lt;br /&gt;
    addpos(int) - returns object&lt;br /&gt;
    deletepos(int, int)&lt;br /&gt;
    insertpos(int, int) - returns object&lt;br /&gt;
&lt;br /&gt;
  TGraalSpriteAttachment (TGraalVar):&lt;br /&gt;
    behind - boolean&lt;br /&gt;
    dx - integer&lt;br /&gt;
    dy - integer&lt;br /&gt;
    sprite - object&lt;br /&gt;
&lt;br /&gt;
  THTTPRequest (TGraalVar):&lt;br /&gt;
    address - string (read only)&lt;br /&gt;
    contentlanguage - string (read only)&lt;br /&gt;
    contentlength - integer (read only)&lt;br /&gt;
    contenttype - string (read only)&lt;br /&gt;
    downloadcomplete - boolean (read only)&lt;br /&gt;
    file - string (read only)&lt;br /&gt;
    fulldata - string (read only)&lt;br /&gt;
    lastmodified - string (read only)&lt;br /&gt;
    port - integer (read only)&lt;br /&gt;
    returncode - integer (read only)&lt;br /&gt;
    returnmessage - string (read only)&lt;br /&gt;
    server - string (read only)&lt;br /&gt;
    url - string (read only)&lt;br /&gt;
&lt;br /&gt;
  TParticle (TGraalVar):&lt;br /&gt;
    angle - float&lt;br /&gt;
    lifetime - float&lt;br /&gt;
    movementvector - string&lt;br /&gt;
    sound - string&lt;br /&gt;
    speed - float&lt;br /&gt;
    spin - float&lt;br /&gt;
    zangle - float&lt;br /&gt;
&lt;br /&gt;
  TParticleEmitter (TGraalVar):&lt;br /&gt;
    attachposition - boolean&lt;br /&gt;
    autorotation - boolean&lt;br /&gt;
    checkbelowterrain - boolean&lt;br /&gt;
    clippingbox - string&lt;br /&gt;
    cliptoscreen - boolean&lt;br /&gt;
    continueafterdestroy - boolean&lt;br /&gt;
    currentparticlecount - integer (read only)&lt;br /&gt;
    delaymax - float&lt;br /&gt;
    delaymin - float&lt;br /&gt;
    dropemitter - object (read only)&lt;br /&gt;
    dropwateremitter - object (read only)&lt;br /&gt;
    emissionoffset - string&lt;br /&gt;
    emitatterrainheight - boolean&lt;br /&gt;
    emitautomatically - boolean&lt;br /&gt;
    emittedparticles - integer (read only)&lt;br /&gt;
    firstinfront - boolean&lt;br /&gt;
    isfrozen - boolean&lt;br /&gt;
    maxparticles - integer&lt;br /&gt;
    movementfactor - float&lt;br /&gt;
    nrofparticles - integer&lt;br /&gt;
    particle - object (read only)&lt;br /&gt;
    particletypes - integer&lt;br /&gt;
    wraptoclippingbox - boolean&lt;br /&gt;
    addemitmodifier(str, float, float, str, str, float, float) - returns object&lt;br /&gt;
    addglobalmodifier(str, float, float, str, str, float, float) - returns object&lt;br /&gt;
    addlocalmodifier(str, float, float, str, str, float, float) - returns object&lt;br /&gt;
    advancetime(float)&lt;br /&gt;
    emit()&lt;br /&gt;
    emitat(str)&lt;br /&gt;
    removemodifiers()&lt;br /&gt;
    removeparticles()&lt;br /&gt;
&lt;br /&gt;
  TParticleModifier (TGraalVar):&lt;br /&gt;
    addmod(str, str, float, float)&lt;br /&gt;
&lt;br /&gt;
  TServerLevel (TGraalVar):&lt;br /&gt;
    compsdead - boolean (read only)&lt;br /&gt;
    height - integer (read only)&lt;br /&gt;
    isnopkzone - boolean (read only)&lt;br /&gt;
    issparringzone - boolean (read only)&lt;br /&gt;
    nopkzone - boolean (read only) - same like 'isnopkzone'&lt;br /&gt;
    tilelayercount - integer&lt;br /&gt;
    width - integer (read only)&lt;br /&gt;
    findareanpcs(float, float, float, float) - returns object - returns an array of all npcs at the specified rectangle (x,y,width,height)&lt;br /&gt;
    getmappartfile(float, float) - returns string&lt;br /&gt;
    hitcompu(int, int, float, float)&lt;br /&gt;
    putbomb(int, float, float)&lt;br /&gt;
    putcomp(str, float, float)&lt;br /&gt;
    putexplosion(int, float, float)&lt;br /&gt;
    putexplosion2(int, int, float, float)&lt;br /&gt;
    puthorse(str, float, float)&lt;br /&gt;
    putnewcomp(str, float, float, str, int)&lt;br /&gt;
    reflectarrow(int)&lt;br /&gt;
    removearrow(int)&lt;br /&gt;
    removebomb(int)&lt;br /&gt;
    removecompus()&lt;br /&gt;
    removeexplo(int)&lt;br /&gt;
    removehorse(int)&lt;br /&gt;
    removeitem(int)&lt;br /&gt;
    setz(int, int, int, int, float, float, float, float)&lt;br /&gt;
    shoot(float, float, float, float, float, float, str, str) - shoots a projectile with x,y,z,angle,zangle,strength,ani,aniparams&lt;br /&gt;
    testbomb(float, float) - returns integer&lt;br /&gt;
    testexplo(float, float) - returns integer&lt;br /&gt;
    testhorse(float, float) - returns integer&lt;br /&gt;
    testitem(float, float) - returns integer&lt;br /&gt;
    testnpc(float, float) - returns integer&lt;br /&gt;
    testsign(float, float) - returns integer&lt;br /&gt;
    tiletype(float, float) - returns integer&lt;br /&gt;
&lt;br /&gt;
  TServerLevelLink (TGraalVar):&lt;br /&gt;
    destlevel - string (read only)&lt;br /&gt;
    destx - float (read only)&lt;br /&gt;
    desty - float (read only)&lt;br /&gt;
    height - float (read only)&lt;br /&gt;
    width - float (read only)&lt;br /&gt;
    x - float (read only)&lt;br /&gt;
    y - float (read only)&lt;br /&gt;
&lt;br /&gt;
  TShowImg_Values (TGraalVar):&lt;br /&gt;
    alpha - float&lt;br /&gt;
    blue - float&lt;br /&gt;
    green - float&lt;br /&gt;
    mode - integer - the image drawing mode (0 - add, 1 - transparent, 2 - subtract)&lt;br /&gt;
    red - float&lt;br /&gt;
    rotation - float&lt;br /&gt;
    stretchx - float&lt;br /&gt;
    stretchy - float&lt;br /&gt;
    zoom - float&lt;br /&gt;
&lt;br /&gt;
    TShowImg_Flash (TShowImg_Values):&lt;br /&gt;
      flash - object (read only)&lt;br /&gt;
&lt;br /&gt;
    TShowImg_Gani (TShowImg_Values):&lt;br /&gt;
      actor - object (read only)&lt;br /&gt;
&lt;br /&gt;
    TShowImg_Image (TShowImg_Values):&lt;br /&gt;
      height - float&lt;br /&gt;
      parth - integer&lt;br /&gt;
      partw - integer&lt;br /&gt;
      partx - integer&lt;br /&gt;
      party - integer&lt;br /&gt;
      width - float&lt;br /&gt;
&lt;br /&gt;
    TShowImg_Shape (TShowImg_Values):&lt;br /&gt;
&lt;br /&gt;
    TShowImg_Text (TShowImg_Values):&lt;br /&gt;
      parth - integer&lt;br /&gt;
      partw - integer&lt;br /&gt;
      partx - integer&lt;br /&gt;
      party - integer&lt;br /&gt;
      shadowcolor - string&lt;br /&gt;
      shadowoffset - string&lt;br /&gt;
      textshadow - boolean&lt;br /&gt;
&lt;br /&gt;
  TStaticVar (TGraalVar):&lt;br /&gt;
    destroy()&lt;br /&gt;
&lt;br /&gt;
  TTilesLayer (TGraalVar):&lt;br /&gt;
    alpha - float&lt;br /&gt;
    blue - float&lt;br /&gt;
    green - float&lt;br /&gt;
    layerindex - integer (read only)&lt;br /&gt;
    offset - string&lt;br /&gt;
    red - float&lt;br /&gt;
    x - float&lt;br /&gt;
    y - float&lt;br /&gt;
    z - float&lt;br /&gt;
    updateboard(int, int, int, int)&lt;br /&gt;
&lt;br /&gt;
  TUpdatePackage (TGraalVar):&lt;br /&gt;
    accounts - object (read only)&lt;br /&gt;
    description - string (read only)&lt;br /&gt;
    downloadcomplete - boolean (read only)&lt;br /&gt;
    downloadedsize - integer (read only)&lt;br /&gt;
    filecount - integer (read only)&lt;br /&gt;
    filedownloadedsize - integer (read only)&lt;br /&gt;
    filename - string (read only)&lt;br /&gt;
    filetotalsize - integer (read only)&lt;br /&gt;
    isuninstalled - boolean (read only)&lt;br /&gt;
    lastdownloadfile - string (read only)&lt;br /&gt;
    localversion - float (read only)&lt;br /&gt;
    mode - string (read only)&lt;br /&gt;
    name - string (read only)&lt;br /&gt;
    parent - object (read only)&lt;br /&gt;
    platform - string (read only)&lt;br /&gt;
    protectoverwrite - boolean (read only)&lt;br /&gt;
    totalsize - integer (read only)&lt;br /&gt;
    usechecksum - boolean (read only)&lt;br /&gt;
    version - float (read only)&lt;br /&gt;
    reinstall() - returns boolean&lt;br /&gt;
    uninstall() - returns boolean&lt;br /&gt;
    update() - returns boolean&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Novo</name></author>
	</entry>
	<entry>
		<id>https://graalonline.net/index.php?title=Creation/Dev/Script/Client&amp;diff=7146</id>
		<title>Creation/Dev/Script/Client</title>
		<link rel="alternate" type="text/html" href="https://graalonline.net/index.php?title=Creation/Dev/Script/Client&amp;diff=7146"/>
		<updated>2006-07-11T15:23:06Z</updated>

		<summary type="html">&lt;p&gt;Novo: /* Graal 2D */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Client Supported Script Features=&lt;br /&gt;
&lt;br /&gt;
==Settings==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| '''Name'''&lt;br /&gt;
| '''Type'''&lt;br /&gt;
| '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| $camera::movementspeed&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::choosenvoicecodec&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::microactivatebyvolume&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::microactivationlevel&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::microinputdevice&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::microon&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::microvolumefactor&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::midivolume&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::mp3volume&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::radiovolume&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::reversestereo&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::sfxvolume&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::voicevolume&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::allowglobalpms&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::automapping&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::defaultfontsize&lt;br /&gt;
| integer&lt;br /&gt;
| Change showtext zoom: $pref::graal::defaultfontsize/24&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::dontconnectlevels&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::dontloadlistheads&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::dontsavepasswords&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::dontsavepms&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::fixedport&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::fixedudpport&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::language&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::limitnicknames&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::loadbuddylistfromserver&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::nicknamelimit&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::nomassmessages&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::notoalls&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::noudp&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::showyourselfonbuddylists&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::input::mousesensitivity&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::interior::lockarrays&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::terrain::enabledetails&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::detailfactor&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::fogdistance&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::fullscreenmode&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::screenshotformat&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::visibledistance&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::windowmode&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $scenelighting::lightingprogress&lt;br /&gt;
| float (read only)&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Variables==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| '''Name'''&lt;br /&gt;
| '''Type'''&lt;br /&gt;
| '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| allfeatures&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| for use with enablefeatures(), it's the default unless it is changed.&lt;br /&gt;
|-&lt;br /&gt;
| allplayerscount&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| The size of the allplayers array.&lt;br /&gt;
|-&lt;br /&gt;
| allstats&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| A bitflag of all stats currently enabled&lt;br /&gt;
|-&lt;br /&gt;
| canspin&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player has spin attack&lt;br /&gt;
|-&lt;br /&gt;
| carriesblackstone&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player is carrying a black stone&lt;br /&gt;
|-&lt;br /&gt;
| carriesbush&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player is carrying a bush&lt;br /&gt;
|-&lt;br /&gt;
| carriesnpc&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player is carrying an NPC.&lt;br /&gt;
|-&lt;br /&gt;
| carriessign&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if a player is carrying a sign.&lt;br /&gt;
|-&lt;br /&gt;
| carriesstone&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if a player is carrying a stone.&lt;br /&gt;
|-&lt;br /&gt;
| carriesvase&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if a player is carrying a vase.&lt;br /&gt;
|-&lt;br /&gt;
| downloadfile&lt;br /&gt;
| string (read only)&lt;br /&gt;
| Name of the file currently being downloaded&lt;br /&gt;
|-&lt;br /&gt;
| downloadpos&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Amount of download file already downloaded&lt;br /&gt;
|-&lt;br /&gt;
| downloadsize&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Size of the file being downloaded&lt;br /&gt;
|-&lt;br /&gt;
| editingmission&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| emoticonchar&lt;br /&gt;
| string (read only)&lt;br /&gt;
| The letter of the emoticon being displayed by the player&lt;br /&gt;
|-&lt;br /&gt;
| focusx&lt;br /&gt;
| float (read only)&lt;br /&gt;
| X coordinate of the center of playing screen in the level, offset -1.5&lt;br /&gt;
|-&lt;br /&gt;
| focusy&lt;br /&gt;
| float (read only)&lt;br /&gt;
| Y coordinate of the center of playing screen in the level, offset -2&lt;br /&gt;
|-&lt;br /&gt;
| graalversion&lt;br /&gt;
| float (read only)&lt;br /&gt;
| Graal version&lt;br /&gt;
|-&lt;br /&gt;
| gravity&lt;br /&gt;
| float&lt;br /&gt;
| Downward acceleration for projectiles ejected with the shoot() function.&lt;br /&gt;
|-&lt;br /&gt;
| iscarrying&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player is carrying anything&lt;br /&gt;
|-&lt;br /&gt;
| isfocused&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| isgraal3d&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if you are running graal 3D&lt;br /&gt;
|-&lt;br /&gt;
| isleader&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| signifies that the player is the first person in the level&lt;br /&gt;
|-&lt;br /&gt;
| isonmap&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| signifies that the player is on a map&lt;br /&gt;
|-&lt;br /&gt;
| lastdownloadfile&lt;br /&gt;
| string (read only)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| leftmousebutton&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the left mouse button is down&lt;br /&gt;
|-&lt;br /&gt;
| levelorgx&lt;br /&gt;
| float (read only)&lt;br /&gt;
| The x-value of the levels' origin (may deviate with attachplayertoobj)&lt;br /&gt;
|-&lt;br /&gt;
| levelorgy&lt;br /&gt;
| float (read only)&lt;br /&gt;
| The x-value of the levels' origin (may deviate with attachplayertoobj)&lt;br /&gt;
|-&lt;br /&gt;
| lighteffectsenabled&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| signifies that the player has enabled light effects&lt;br /&gt;
|-&lt;br /&gt;
| weathereffectsenabled&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| signifies that the player has enabled weather effects&lt;br /&gt;
|-&lt;br /&gt;
| particleeffectsenabled&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| signifies that the player has enabled particle effects&lt;br /&gt;
|-&lt;br /&gt;
| middlemousebutton&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the middle mouse button is down&lt;br /&gt;
|-&lt;br /&gt;
| mousebuttons&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Counts the amount of mousebuttons pressed&lt;br /&gt;
|-&lt;br /&gt;
| mousescreenx&lt;br /&gt;
| integer&lt;br /&gt;
| X coordinate of the mouse on the GUI layer&lt;br /&gt;
|-&lt;br /&gt;
| mousescreeny&lt;br /&gt;
| integer&lt;br /&gt;
| Y coordinate of the mouse on the GUI layer&lt;br /&gt;
|-&lt;br /&gt;
| mousewheeldelta&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Amount that the mouse scroll wheel was scrolled [(-) is up, (+) is down]&lt;br /&gt;
|-&lt;br /&gt;
| mousex&lt;br /&gt;
| float&lt;br /&gt;
| X coordinate of the mouse on the tile layer&lt;br /&gt;
|-&lt;br /&gt;
| mousey&lt;br /&gt;
| float&lt;br /&gt;
| Y coordinate of the mouse on the tile layer&lt;br /&gt;
|-&lt;br /&gt;
| musiclen&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| The duration of the playing sound file&lt;br /&gt;
|-&lt;br /&gt;
| musicpos&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| The position in the file at which the sound file is&lt;br /&gt;
|-&lt;br /&gt;
| rightmousebutton&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the right mouse button is down&lt;br /&gt;
|-&lt;br /&gt;
| screenheight&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Height of the Graal window&lt;br /&gt;
|-&lt;br /&gt;
| screenwidth&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Width of the Graal window&lt;br /&gt;
|-&lt;br /&gt;
| scriptedcontrols&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| scriptedplayerlist&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| selectedlistplayers&lt;br /&gt;
| object&lt;br /&gt;
| an array of players highlighted on the playerlist&lt;br /&gt;
|-&lt;br /&gt;
| selectedsword&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| selectedweapon&lt;br /&gt;
| integer&lt;br /&gt;
| Index of player.weapons that references the player's current weapon&lt;br /&gt;
|-&lt;br /&gt;
| servername&lt;br /&gt;
| string (read only)&lt;br /&gt;
| Name of the current server&lt;br /&gt;
|-&lt;br /&gt;
| serverstartconnect&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| serverstartparams&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| shotbybaddy&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player was shot by a baddy&lt;br /&gt;
|-&lt;br /&gt;
| shotbyplayer&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player was shot by another player&lt;br /&gt;
|-&lt;br /&gt;
| showterraingrid&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| timevar&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| A timer which is increased each 5 seconds and is snychronized between server and clients&lt;br /&gt;
|-&lt;br /&gt;
| timevar2&lt;br /&gt;
| float (read only)&lt;br /&gt;
| Unix-time with a very high precision, not synchronized between server and client&lt;br /&gt;
|-&lt;br /&gt;
| wasshooted&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| waterheight&lt;br /&gt;
| float&lt;br /&gt;
| The height of water at the player's (x,y) on a terrain&lt;br /&gt;
|-&lt;br /&gt;
| weapons&lt;br /&gt;
| object (read only)&lt;br /&gt;
| An array of weapon objects&lt;br /&gt;
|-&lt;br /&gt;
| weaponsenabled&lt;br /&gt;
| boolean&lt;br /&gt;
| Are weapons enabled? (Player can trigger onWeaponFired...)&lt;br /&gt;
|-&lt;br /&gt;
| worldclockstopped&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| worldhour&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| worldminute&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| worldminutesofday&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| worldrealsecondsperday&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Variable Prefixes==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| '''Prefix'''&lt;br /&gt;
| '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| object.var&lt;br /&gt;
| accesses the variables of the object. The object can be retrieved by using the case-sensitive name of the object or a variable pointing to the object.&lt;br /&gt;
|-&lt;br /&gt;
| this.var&lt;br /&gt;
| variables that belong to the current script object, on the server-side they are saved to file when the object is a database npc&lt;br /&gt;
|-&lt;br /&gt;
| thiso.var&lt;br /&gt;
| refer to the this. variables of the executing npc ('o' stands for original) when you use the with () command: with (findnpc(&amp;quot;npc2&amp;quot;)) thiso.temp = this.temp; will copy 'this.temp' from npc2 to the current npc&lt;br /&gt;
|-&lt;br /&gt;
| player.var&lt;br /&gt;
| variables of the current player object, when the event was invoked by a player (e.g. playertouchsme), or you do with (findplayer(accountname))&lt;br /&gt;
|-&lt;br /&gt;
| playero.var&lt;br /&gt;
| variables of the original player object, in generally the player who has invoked the event (e.g. playertouchsme)&lt;br /&gt;
|-&lt;br /&gt;
| client.var&lt;br /&gt;
| short for player.client.var, variables that can be changed on server-side and client-side&lt;br /&gt;
|-&lt;br /&gt;
| clientr.var&lt;br /&gt;
| short for player.clientr.var, variables that can only be changed on server-side but can be read on client-side&lt;br /&gt;
|-&lt;br /&gt;
| server.var&lt;br /&gt;
| variables that only exists on server-side and can be accessed by all npcs&lt;br /&gt;
|-&lt;br /&gt;
| serverr.var&lt;br /&gt;
| variables that can only be changed on server-side and is server wide, but can also be read by all clients, so it can be used for storing the state of global activities that need client-side actions like displaying weather; like server. vars they can also be changed with remotecontrol.exe by administrators that have the right to change server. variables&lt;br /&gt;
|-&lt;br /&gt;
| level.var&lt;br /&gt;
| variables of the current level, which is the level the executing npc stands in (on server-side) or the player is in (on client-side)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
''Note: Currently this doesn't list the functions which are optimized at compile time, see [[Creation/Dev/Script/Starting_Guide#Standard_functions|Starting Guide: Standard functions]] for those.''&lt;br /&gt;
&lt;br /&gt;
===Common===&lt;br /&gt;
* aindexof(float, obj) - returns integer&lt;br /&gt;
* echo(str text)&lt;br /&gt;
* getbasepackage() - returns object&lt;br /&gt;
* getdisplaydevicelist() - returns string&lt;br /&gt;
* getdownloadedupdatepackagesize() - returns integer&lt;br /&gt;
* getdownloadingpackage() - returns object&lt;br /&gt;
* getdownloadingpackagescount() - returns integer&lt;br /&gt;
* gethttprequest(str, int, str) - returns [[Creation/Dev/Script/Client/THTTPRequest|THTTPRequest]] object&lt;br /&gt;
* getkeycode(str keyname) - returns integer&lt;br /&gt;
* getpackagesdownloadcomplete() - returns boolean&lt;br /&gt;
* getpackagesdownloaded() - returns boolean&lt;br /&gt;
* getplatform() - returns string&lt;br /&gt;
* getresolutionlist(str) - returns string&lt;br /&gt;
* getservername() - returns string&lt;br /&gt;
* gettotalupdatepackagesize() - returns integer&lt;br /&gt;
* getupdatepackage(str) - returns object&lt;br /&gt;
* isadminguild(str guildname) - returns boolean&lt;br /&gt;
* isdevicefullscreenonly(str devicename) - returns boolean&lt;br /&gt;
* isobject(str objectname) - returns boolean&lt;br /&gt;
* keydown(int keynumber) - returns if the specified key is pressed (0..10: up, left, down, right, S, A, D, M, tab, Q, P)&lt;br /&gt;
* keydown2(int keycode, bool ignorecase) - returns boolean&lt;br /&gt;
* keyname(int keycode) - returns string&lt;br /&gt;
* opengraalurl(str url)&lt;br /&gt;
* openurl(str url)&lt;br /&gt;
* openurl2(str url, int width, int height)&lt;br /&gt;
* requesthttp(str, int, str) - returns [[Creation/Dev/Script/Client/THTTPRequest|THTTPRequest]] object&lt;br /&gt;
* requestmysql(str, str, str, str, str) - returns object&lt;br /&gt;
* requesttext(str, str)&lt;br /&gt;
* requesturl(str url) - returns [[Creation/Dev/Script/Client/THTTPRequest|THTTPRequest]] object&lt;br /&gt;
* savelog(str text)&lt;br /&gt;
* sendrpgmessage(str text)&lt;br /&gt;
* sendtext(str, str, params...)&lt;br /&gt;
* sendtorc(str text)&lt;br /&gt;
* serverwarp(str serverunixname)&lt;br /&gt;
* synctimeofday(float, float)&lt;br /&gt;
&lt;br /&gt;
====Files====&lt;br /&gt;
* extractfilebase(str filepath) - returns string, '/an/example/path/and/file' would return '/an/example/path/and/'&lt;br /&gt;
* extractfileext(str filepath) - returns string, 'filename.ext' would return '.ext'&lt;br /&gt;
* extractfilename(str filepath) - returns string, '/an/example/path/and/file' would return 'file'&lt;br /&gt;
* extractfilepath(str filepath) - returns string, '/an/example/path/and/file' would return '/an/example/path/and/'&lt;br /&gt;
* fileexists(str filepath) - returns boolean, checks if a file exists&lt;br /&gt;
* filesize(str filepath) - returns integer, returns the size of a file&lt;br /&gt;
* fileupdate(str filepath) - returns boolean&lt;br /&gt;
* findfiles(str, int) - returns object&lt;br /&gt;
* findfirstfile(str) - returns string&lt;br /&gt;
* findnextfile(str) - returns string&lt;br /&gt;
* getextension(str filepath) - returns string, 'filename.ext' would return '.ext'&lt;br /&gt;
* reloadfile(str filepath)&lt;br /&gt;
* requestfiledeletion(str filepath), requests a file to be deleted on the server&lt;br /&gt;
* requestfilerename(str filepath, str newfilepath), requests a file to be renamed on the server&lt;br /&gt;
* requestfilesmove(str filepath, str newfilepath), requests a file to be moved on the server&lt;br /&gt;
* selectfilefordownload(str filter)&lt;br /&gt;
* selectfileforupload()&lt;br /&gt;
&lt;br /&gt;
''Watch the [[Creation/Dev/Script/Client/TGraalVar|TGraalVar]] object for loading and saving of files (loadlines etc.)''&lt;br /&gt;
&lt;br /&gt;
====Math====&lt;br /&gt;
* degtorad(float value) - returns float&lt;br /&gt;
* radtodeg(float value) - returns float&lt;br /&gt;
&lt;br /&gt;
=====Matrices=====&lt;br /&gt;
* matrixcreate(str, str) - returns string&lt;br /&gt;
* matrixcreatefromeuler(str) - returns string&lt;br /&gt;
* matrixmulpoint(str, str) - returns string&lt;br /&gt;
* matrixmultiply(str, str) - returns string&lt;br /&gt;
* matrixmulvector(str, str) - returns string&lt;br /&gt;
&lt;br /&gt;
=====Vectors=====&lt;br /&gt;
* vectoradd(str, str) - returns string&lt;br /&gt;
* vectorcross(str, str) - returns string&lt;br /&gt;
* vectordist(str, str) - returns float&lt;br /&gt;
* vectordot(str, str) - returns float&lt;br /&gt;
* vectorlen(str) - returns float&lt;br /&gt;
* vectornormalize(str) - returns string&lt;br /&gt;
* vectororthobasis(str) - returns string&lt;br /&gt;
* vectorscale(str, float) - returns string&lt;br /&gt;
* vectorsub(str, str) - returns string&lt;br /&gt;
&lt;br /&gt;
====Strings====&lt;br /&gt;
* base64decode(str text) - returns decoded string&lt;br /&gt;
* base64encode(str text) - returns encoded string&lt;br /&gt;
* checksum(str text) - returns checksum float&lt;br /&gt;
* contains(str haystack, str needle) - returns boolean, you should probably do haystack.contains(needle) instead&lt;br /&gt;
* getascii(str character) - returns ascii value integer&lt;br /&gt;
* getstringkeys(str) - returns object&lt;br /&gt;
* lowercase(str text) - returns lowercased string&lt;br /&gt;
* md5(str tet) - returns md5 hash string&lt;br /&gt;
* randomstring(str) - returns string&lt;br /&gt;
* strcmp(str text1, str text2) - returns integer&lt;br /&gt;
* strequals(str text1, str text2) - returns boolean, you probably should do text1.equals(text2) instead&lt;br /&gt;
* uppercase(str text) - returns uppercased stringg&lt;br /&gt;
&lt;br /&gt;
===GUI===&lt;br /&gt;
* addcontrol(obj)&lt;br /&gt;
* cursoroff()&lt;br /&gt;
* cursoron()&lt;br /&gt;
* iscursoron() - returns boolean&lt;br /&gt;
* popdialog()&lt;br /&gt;
* pushdialog(obj)&lt;br /&gt;
* setcontentcontrol(obj)&lt;br /&gt;
* setcursor2(str imagefilename)&lt;br /&gt;
&lt;br /&gt;
===Graal 2D===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| '''Name'''&lt;br /&gt;
| '''Type'''&lt;br /&gt;
| '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| addtiledef(str tilesetimage, str prefix, int tilesettype)&lt;br /&gt;
|&lt;br /&gt;
| Sets the tileset image for levels beginning with the specified prefix.&lt;br /&gt;
Tileset type 0 is for pics1.png style tilesets.&lt;br /&gt;
Tileset type 1 is for the new tileset format (Era's tiles for example)&lt;br /&gt;
|-&lt;br /&gt;
| addtiledef2(str tilesetimage, str prefix, int x, int y)&lt;br /&gt;
|&lt;br /&gt;
| Replaces a section of the tileset (x, y) image for levels beginning with the specified prefix.&lt;br /&gt;
|-&lt;br /&gt;
| attachplayertoobj(int objtype, int id)&lt;br /&gt;
|&lt;br /&gt;
| Attaches a player to the specified object. Using attachpayertoobj(0, id); the player will be attached to the current NPC.&lt;br /&gt;
|-&lt;br /&gt;
| callnpc(int npcindex, params...)&lt;br /&gt;
|&lt;br /&gt;
| Calls an npc function with name ''&amp;quot;on&amp;quot; @ params[0]'' in npc with index ''npcindex'' without moving from serverside to clientside or vise-versa.&lt;br /&gt;
|-&lt;br /&gt;
| callweapon(int weaponindex, params...)&lt;br /&gt;
|&lt;br /&gt;
| Calls an weapon function with name ''&amp;quot;on&amp;quot; @ params[0]'' in player weapon with index ''weaponindex'' without moving from serverside to clientside or vise-versa.&lt;br /&gt;
|-&lt;br /&gt;
| commandtoserver(str text)&lt;br /&gt;
|&lt;br /&gt;
| Graal 3D Command&lt;br /&gt;
|-&lt;br /&gt;
| detachplayer()&lt;br /&gt;
|&lt;br /&gt;
| Puts the player back on the level (after using attachplayertoobj).&lt;br /&gt;
|-&lt;br /&gt;
| disabledefmovement()&lt;br /&gt;
|&lt;br /&gt;
| Disables the default movement.&lt;br /&gt;
|-&lt;br /&gt;
| disablemap()&lt;br /&gt;
|&lt;br /&gt;
| Disables the default map&lt;br /&gt;
|-&lt;br /&gt;
| disablepause()&lt;br /&gt;
|&lt;br /&gt;
| Disables pausing.&lt;br /&gt;
|-&lt;br /&gt;
| disableselectweapons()&lt;br /&gt;
|&lt;br /&gt;
| Disables the default Q menu.&lt;br /&gt;
|-&lt;br /&gt;
| disableweapons()&lt;br /&gt;
|&lt;br /&gt;
| Disables weapons.&lt;br /&gt;
|-&lt;br /&gt;
| enabledefmovement()&lt;br /&gt;
|&lt;br /&gt;
| Enables default movement&lt;br /&gt;
|-&lt;br /&gt;
| enablefeatures(int flags)&lt;br /&gt;
| &lt;br /&gt;
| Enable/disable client features&lt;br /&gt;
&lt;br /&gt;
Flags can consist of:&lt;br /&gt;
  {| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
  | '''Value'''&lt;br /&gt;
  | '''Description'''&lt;br /&gt;
  |-&lt;br /&gt;
  | 1&lt;br /&gt;
  | M key (map)&lt;br /&gt;
  |-&lt;br /&gt;
  | 2&lt;br /&gt;
  | P key (pause)&lt;br /&gt;
  |-&lt;br /&gt;
  | 4&lt;br /&gt;
  | Q key (weapon select)&lt;br /&gt;
  |-&lt;br /&gt;
  | 8&lt;br /&gt;
  | R key (show ratings)&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x10&lt;br /&gt;
  | S+A key combination for dropping items&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x20&lt;br /&gt;
  | S+D key combination for switching weapons&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x40&lt;br /&gt;
  | TAB key (if disabled then you cannot switch to the chat field with TAB)&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x80&lt;br /&gt;
  | Display of chat text&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x100&lt;br /&gt;
  | Display of the hearts over player heads&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x200&lt;br /&gt;
  | Display of nicknames&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x400&lt;br /&gt;
  | Toall/PM-icons on the minimap&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x800&lt;br /&gt;
  | Right-click on players opens their profile&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x1000&lt;br /&gt;
  | Emoticons (disable it if you want to do other stuff with control+keys)&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x2000&lt;br /&gt;
  | Alt+5 for making snapshots  ''(deprecated)''&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x4000&lt;br /&gt;
  | Alt+8/9 for zooming ''(deprecated)''&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x8000&lt;br /&gt;
  | The logframe where savelog stuff is added&lt;br /&gt;
  |-&lt;br /&gt;
  | allfeatures&lt;br /&gt;
  | All of the previously stated feature flags enabled&lt;br /&gt;
  |}&lt;br /&gt;
|-&lt;br /&gt;
| enablemap()&lt;br /&gt;
|&lt;br /&gt;
| Enables default map.&lt;br /&gt;
|-&lt;br /&gt;
| enablepause()&lt;br /&gt;
|&lt;br /&gt;
| Enables pausing.&lt;br /&gt;
|-&lt;br /&gt;
| enableselectweapons()&lt;br /&gt;
|&lt;br /&gt;
| Enables default Q menu.&lt;br /&gt;
|-&lt;br /&gt;
| enableweapons()&lt;br /&gt;
|&lt;br /&gt;
| Enables weapons.&lt;br /&gt;
|-&lt;br /&gt;
| explodebomb(int bombindex)&lt;br /&gt;
|&lt;br /&gt;
| Explodes a bomb with the specified index.&lt;br /&gt;
|-&lt;br /&gt;
| findani(str)&lt;br /&gt;
| object&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| findlevel(str levelfilename)&lt;br /&gt;
| object&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| findplayer(str accountname)&lt;br /&gt;
| object&lt;br /&gt;
| Returns player object of Account specified. Player must be online.&lt;br /&gt;
|-&lt;br /&gt;
| findplayerbyid(int playerid)&lt;br /&gt;
| object&lt;br /&gt;
| Returns player object of id specified. If id isn't available, returns false.&lt;br /&gt;
|-&lt;br /&gt;
| findweapon(str weaponname)&lt;br /&gt;
| object&lt;br /&gt;
| Returns weapon object of name specified. Returns false if weapon doesn't exist.&lt;br /&gt;
|-&lt;br /&gt;
| freezeplayer(float seconds)&lt;br /&gt;
|&lt;br /&gt;
| Freezes player for a specific amount of time.&lt;br /&gt;
|-&lt;br /&gt;
| getimgheight(str imagefilename)&lt;br /&gt;
| integer&lt;br /&gt;
| Returns the height (in pixels) of an image.&lt;br /&gt;
|-&lt;br /&gt;
| getimgwidth(str imagefilename)&lt;br /&gt;
| integer&lt;br /&gt;
| Returns the width (in pixels) of an image.&lt;br /&gt;
|-&lt;br /&gt;
| getmapx(str levelname)&lt;br /&gt;
| integer&lt;br /&gt;
| X coordinate of the level on a map (top-left level is 0)&lt;br /&gt;
|-&lt;br /&gt;
| getmapy(str levelname)&lt;br /&gt;
| integer&lt;br /&gt;
| Y coordinate of the level on a map (top-left level is 0)&lt;br /&gt;
|-&lt;br /&gt;
| gettextheight(float, str, str)&lt;br /&gt;
| integer&lt;br /&gt;
| Returns the height of the font. Format:&lt;br /&gt;
  gettextheight(zoom, font, style)&lt;br /&gt;
|-&lt;br /&gt;
| gettextwidth(float, str, str, str)&lt;br /&gt;
| integer&lt;br /&gt;
| Returns the width of a specified text in a certain font. Format:&lt;br /&gt;
  gettextwidth(zoom, font, style, text)&lt;br /&gt;
|-&lt;br /&gt;
| getz(float x, float y)&lt;br /&gt;
| float&lt;br /&gt;
| Returns the z value of a terrain at (x,y).&lt;br /&gt;
|-&lt;br /&gt;
| hideplayer(float seconds)&lt;br /&gt;
|&lt;br /&gt;
| Hides the player for ''seconds'' seconds.&lt;br /&gt;
|-&lt;br /&gt;
| hidesword(float seconds)&lt;br /&gt;
|&lt;br /&gt;
| Hides the player's sword for ''seconds'' seconds.&lt;br /&gt;
|-&lt;br /&gt;
| hitnpc(int, float, float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| hitobjects(float, float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| hitplayer(int, float, float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| lay2(str extraname, float x, float y)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| loadmap(str mapfilename)&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| noplayerkilling()&lt;br /&gt;
|&lt;br /&gt;
| Disables killing of other players.&lt;br /&gt;
|-&lt;br /&gt;
| onwall(float x, float y)&lt;br /&gt;
| boolean&lt;br /&gt;
| Returns true if the specified x and y is a blocking tile.&lt;br /&gt;
|-&lt;br /&gt;
| onwall2(float x, float y, float width, float height)&lt;br /&gt;
| boolean&lt;br /&gt;
| Returns true if a blocking tile exists in the specified area.&lt;br /&gt;
|-&lt;br /&gt;
| onwater(float x, float y)&lt;br /&gt;
| boolean&lt;br /&gt;
| Returns true if the specified x and y is water.&lt;br /&gt;
|-&lt;br /&gt;
| onwater2(float x, float y, float width, float height)&lt;br /&gt;
| boolean&lt;br /&gt;
| Returns true if water exists in the specified area.&lt;br /&gt;
|-&lt;br /&gt;
| play(str soundfilename)&lt;br /&gt;
|&lt;br /&gt;
| Plays the specified sound file.&lt;br /&gt;
|-&lt;br /&gt;
| play2(str soundfilename, float x, float y, float volume)&lt;br /&gt;
|&lt;br /&gt;
| Plays the specified sound file at location x, y with the specified volume. Volume should be between 0 and 1, if volume is set to 1 default volume is used (depending on how far away the player is).&lt;br /&gt;
|-&lt;br /&gt;
| playlooped(str soundfilename)&lt;br /&gt;
|&lt;br /&gt;
| Plays the specified sound file in a loop until stopsound() is called.&lt;br /&gt;
|-&lt;br /&gt;
| playlooped2(str soundfile, float x, float y, float volume)&lt;br /&gt;
|&lt;br /&gt;
| Plays the specified sound file at location x, y with the specified volume in a loop until stopsound() is called. Volume should be between 0 and 1, if volume is set to 1 default volume is used (depending on how far away the player is).&lt;br /&gt;
|-&lt;br /&gt;
| putleaps(int leapstype, float x, float y)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| removetiledefs(str prefix)&lt;br /&gt;
|&lt;br /&gt;
| Remove tile definitions set by addtiledef and addtiledef2 for the specified prefix.&lt;br /&gt;
|-&lt;br /&gt;
| replaceani(str defaultaniname, str newaniname)&lt;br /&gt;
|&lt;br /&gt;
| replaces the player's default ani with the new ani.&lt;br /&gt;
|-&lt;br /&gt;
| resetfocus()&lt;br /&gt;
|&lt;br /&gt;
| Sets the screen focus to the player.&lt;br /&gt;
|-&lt;br /&gt;
| say(int signindex)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| say2(str text)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| screenx(float x, float y)&lt;br /&gt;
| integer&lt;br /&gt;
| returns the x of the screen layer for a location on the tiles layer.&lt;br /&gt;
|-&lt;br /&gt;
| screeny(float x, float y)&lt;br /&gt;
| integer&lt;br /&gt;
| returns the y of the screen layer for a location on the tiles layer.&lt;br /&gt;
|-&lt;br /&gt;
| worldx(float x, float y)&lt;br /&gt;
| float&lt;br /&gt;
| returns the x of the tiles layer for a location on the screen layer.&lt;br /&gt;
|-&lt;br /&gt;
| worldy(float x, float y)&lt;br /&gt;
| float&lt;br /&gt;
| returns the y of the tiles layer for a location on the screen layer.&lt;br /&gt;
|-&lt;br /&gt;
| setani(str aniname, str aniparams)&lt;br /&gt;
|&lt;br /&gt;
| Sets the gani of a player.&lt;br /&gt;
|-&lt;br /&gt;
| setbeltcolor(str color)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setcoatcolor(str color)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| seteffect(float r, float g, float b, float a)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setfocus(float x, float y)&lt;br /&gt;
|&lt;br /&gt;
| Sets the screen focus to the specified x and y.&lt;br /&gt;
|-&lt;br /&gt;
| setgender(str gendername)&lt;br /&gt;
|&lt;br /&gt;
| Sets the gender of a player.&lt;br /&gt;
|-&lt;br /&gt;
| sethead(str imagefilename)&lt;br /&gt;
|&lt;br /&gt;
| Sets the head of a player&lt;br /&gt;
|-&lt;br /&gt;
| setletters(str imagefilename)&lt;br /&gt;
|&lt;br /&gt;
| Sets the image to use for sign background and text.&lt;br /&gt;
|-&lt;br /&gt;
| setmap(str, str, float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setminimap(str, str, float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setmusicvolume(float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setplayerdir(str)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setshield(str imagefilename, int shieldpower)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setshoecolor(str color)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setshootparams(str params)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setskincolor(str color)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setsleevecolor(str color)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setsword(str imagefilename, int swordpower)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| showstats(int statsflag)&lt;br /&gt;
|&lt;br /&gt;
| With this you can show/hide parts of the status bar / game&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Shows all&lt;br /&gt;
showstats(allstats);&lt;br /&gt;
&lt;br /&gt;
// Enable everything except minimap&lt;br /&gt;
showstats(allstats &amp;amp; ~0x100);&lt;br /&gt;
&lt;br /&gt;
// Enable everything except AP and MP bars&lt;br /&gt;
showstats(allstats &amp;amp; ~(0x40 | 0x80));&lt;br /&gt;
&lt;br /&gt;
// Enable only players and right-click profile&lt;br /&gt;
showstats(0x400 | 0x800);&lt;br /&gt;
&lt;br /&gt;
// Hides all&lt;br /&gt;
showstats(0);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Flags can consist of:&lt;br /&gt;
  {| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
  | '''Value'''&lt;br /&gt;
  | '''Description'''&lt;br /&gt;
  |-&lt;br /&gt;
  | 1&lt;br /&gt;
  | ASD&lt;br /&gt;
  |-&lt;br /&gt;
  | 2&lt;br /&gt;
  | Icons (for rupees, bombs, arrows)&lt;br /&gt;
  |-&lt;br /&gt;
  | 4&lt;br /&gt;
  | Rupees count&lt;br /&gt;
  |-&lt;br /&gt;
  | 8&lt;br /&gt;
  | Bombs count&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x10&lt;br /&gt;
  | Arrows count&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x20&lt;br /&gt;
  | Hearts&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x40&lt;br /&gt;
  | Alignment (ap) bar&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x80&lt;br /&gt;
  | Magic points (mp) bar&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x100&lt;br /&gt;
  | Minimap (you can only hide it, you can't show it when the player pressed Alt+3)&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x200&lt;br /&gt;
  | Inventory NPCs&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x400&lt;br /&gt;
  | Players&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x800&lt;br /&gt;
  | Right-click on players opens their profile&lt;br /&gt;
  |-&lt;br /&gt;
  | allstats&lt;br /&gt;
  | All of the previously stated stats flags enabled&lt;br /&gt;
  |}&lt;br /&gt;
|-&lt;br /&gt;
| spyfire(int length, int power)&lt;br /&gt;
|&lt;br /&gt;
| Shoots a line of fire in the direction of the player with the specified tile length, and fire power (1 - bomb, 2 - super bomb, 3 - jolt bomb).&lt;br /&gt;
|-&lt;br /&gt;
| stopmidi()&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| stopsound(str soundfilename)&lt;br /&gt;
|&lt;br /&gt;
| Stop playing a sound started by playlooped&lt;br /&gt;
|-&lt;br /&gt;
| takeplayercarry()&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| takeplayerhorse()&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| testplayer(float x, float y)&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| triggeraction(float x, float y, str dest, params...)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| triggerserver(str dest, str params)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| updateboard(int x, int y, int width, int height)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| updateratings(obj)&lt;br /&gt;
| object&lt;br /&gt;
| Updates an array of {rating1,ratingdeviation1, rating2,ratingdeviation2, ...}, init them at 1500 and 350.&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
newratings = updateratings({winner.rating,winner.ratingd,loser.rating,loser.ratingd});&lt;br /&gt;
winner.rating = newratings[0];&lt;br /&gt;
winner.ratingd = newratings[1];&lt;br /&gt;
loser.rating = newratings[2];&lt;br /&gt;
loser.ratingd = newratings[3];&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| wraptext(int fontsize, str format, str text)&lt;br /&gt;
| object&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| wraptext2(int, float, str, str)&lt;br /&gt;
| object&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Graal 3D===&lt;br /&gt;
* addmaterialmapping(str, str) - returns boolean&lt;br /&gt;
* getboxcenter(str) - returns string&lt;br /&gt;
* getdatablocktypes() - returns object&lt;br /&gt;
* getobjectat(float, float) - returns object&lt;br /&gt;
* getobjectatmouse() - returns object&lt;br /&gt;
* getobjectbyray(str, str) - returns object&lt;br /&gt;
* getsurfacetype(float, float) - returns string&lt;br /&gt;
* lightscene() - returns boolean&lt;br /&gt;
* mapshapeanimation(str, str, str, float) - returns boolean&lt;br /&gt;
* setfogcolors(obj)&lt;br /&gt;
* setinteriorrendermode(int)&lt;br /&gt;
* setshadowdetaillevel(float)&lt;br /&gt;
* setskybandcolors(obj)&lt;br /&gt;
* setskybandsizes(obj)&lt;br /&gt;
* setsuncolors(obj)&lt;br /&gt;
* setterrainrendermode(int)&lt;br /&gt;
* updateterrain()&lt;br /&gt;
* updatevisibledistance()&lt;br /&gt;
&lt;br /&gt;
===Other===&lt;br /&gt;
* adventure_installgraal(str, bool, bool)&lt;br /&gt;
* adventure_openexternaloptions() - returns boolean&lt;br /&gt;
* adventure_openexternalpm(obj) - returns boolean&lt;br /&gt;
* adventure_openserverlist()&lt;br /&gt;
* adventure_quit()&lt;br /&gt;
* adventure_savegraaloptions()&lt;br /&gt;
* adventure_selectpath(str) - returns object&lt;br /&gt;
* adventure_setaccountname(str)&lt;br /&gt;
* adventure_setchat(str)&lt;br /&gt;
* adventure_setnickname(str)&lt;br /&gt;
* adventure_setpassword(str)&lt;br /&gt;
* adventure_startofflinemode()&lt;br /&gt;
* adventure_updateaccountfield()&lt;br /&gt;
* adventure_updatemicroactivationlevel()&lt;br /&gt;
* adventure_updatemidivolume()&lt;br /&gt;
* adventure_updatemp3volume()&lt;br /&gt;
* adventure_updateplayermuted()&lt;br /&gt;
* adventure_updateplayerprofile(bool, str, str, int, str, str, str, str, str, str)&lt;br /&gt;
* adventure_updateradiovolume()&lt;br /&gt;
&lt;br /&gt;
''(these functions are only available to privileged scripts from the Login server)''&lt;br /&gt;
&lt;br /&gt;
==Classes / Object Types==&lt;br /&gt;
* [[Creation/Dev/Script/Client/TGraalVar|TGraalVar]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/ActionMap|ActionMap]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiControl|GuiControl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiArrayCtrl|GuiArrayCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiTextListCtrl|GuiTextListCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiTreeViewCtrl|GuiTreeViewCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiBitmapButtonCtrl|GuiBitmapButtonCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiBitmapCtrl|GuiBitmapCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiCrossHairHud|GuiCrossHairHud]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiMapOverviewCtrl|GuiMapOverviewCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiButtonBaseCtrl|GuiButtonBaseCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiButtonCtrl|GuiButtonCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiCheckBoxCtrl|GuiCheckBoxCtrl]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/GuiRadioCtrl|GuiRadioCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiChunkedBitmapCtrl|GuiChunkedBitmapCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiContextMenuCtrl|GuiContextMenuCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiDrawingPanel|GuiDrawingPanel]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiFlash|GuiFlash]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiFrameSetCtrl|GuiFrameSetCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiGraal3DCtrl|GuiGraal3DCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiGraalCtrl|GuiGraalCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiMenuCtrl|GuiMenuCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiMLTextCtrl|GuiMLTextCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiMLTextEditCtrl|GuiMLTextEditCtrl]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/GuiPMEditCtrl|GuiPMEditCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiPMCtrl|GuiPMCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiPMHistoryCtrl|GuiPMHistoryCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiPlayerView|GuiPlayerView]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiProgressCtrl|GuiProgressCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiScrollCtrl|GuiScrollCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiShapeNameHud|GuiShapeNameHud]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiShowImgCtrl|GuiShowImgCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiSliderCtrl|GuiSliderCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiTabCtrl|GuiTabCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiTextCtrl|GuiTextCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiPopUpEditCtrl|GuiPopUpEditCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiPopUpMenuCtrl|GuiPopUpMenuCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiTextEditCtrl|GuiTextEditCtrl]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/GuiTextEditSliderCtrl|GuiTextEditSliderCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiWindowCtrl|GuiWindowCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TerrainEditor|TerrainEditor]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/WorldEditor|WorldEditor]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiControlProfile|GuiControlProfile]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiCursor|GuiCursor]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiTabCtrlEntry|GuiTabCtrlEntry]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiTextListEntry|GuiTextListEntry]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiTreeViewNode|GuiTreeViewNode]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/ShapeBaseHitBox|ShapeBaseHitBox]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/ShapeImageState|ShapeImageState]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/SimObject|SimObject]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/SceneObject|SceneObject]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/AudioEmitter|AudioEmitter]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/FractalTree|FractalTree]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/fxFoliageReplicator|fxFoliageReplicator]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/fxGrassReplicator|fxGrassReplicator]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/fxShapeReplicator|fxShapeReplicator]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/fxSunLight|fxSunLight]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GameBase|GameBase]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/DynamicShapeReplicator|DynamicShapeReplicator]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/DynamicGrass|DynamicGrass]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/DynamicGrassReplicator|DynamicGrassReplicator]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Explosion|Explosion]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/fxLight|fxLight]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Lightning|Lightning]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ParticleEmitter|ParticleEmitter]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ParticleEmitterNode|ParticleEmitterNode]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/PathedInterior|PathedInterior]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Precipitation|Precipitation]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Projectile|Projectile]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ShapeBase|ShapeBase]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/AdvancedCamera|AdvancedCamera]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/Camera|Camera]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/MissionMarker|MissionMarker]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/PathCamera|PathCamera]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/Player|Player]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/AIPlayer|AIPlayer]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/StaticShape|StaticShape]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/Vehicle|Vehicle]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/FlyingVehicle|FlyingVehicle]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/HoverVehicle|HoverVehicle]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/WheeledVehicle|WheeledVehicle]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/SpawnSphere|SpawnSphere]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Splash|Splash]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Trigger|Trigger]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/TSStatic|TSStatic]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/Item|Item]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/InteriorInstance|InteriorInstance]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/Marker|Marker]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/Shape3ds|Shape3ds]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/Sky|Sky]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TerrainBlock|TerrainBlock]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/twSurfaceReference|twSurfaceReference]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/volumeLight|volumeLight]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/WaterBlock|WaterBlock]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/SimDataBlock|SimDataBlock]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/AudioDescription|AudioDescription]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/AudioProfile|AudioProfile]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/DecalData|DecalData]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GameBaseData|GameBaseData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/DebrisData|DebrisData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ExplosionData|ExplosionData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/fxLightData|fxLightData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ItemData|ItemData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/LightningData|LightningData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ParticleEmitterData|ParticleEmitterData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ParticleEmitterNodeData|ParticleEmitterNodeData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/PathedInteriorData|PathedInteriorData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/PrecipitationData|PrecipitationData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ProjectileData|ProjectileData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ShapeBaseData|ShapeBaseData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/AdvancedCameraData|AdvancedCameraData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/CameraData|CameraData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/MissionMarkerData|MissionMarkerData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/PlayerData|PlayerData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/StaticShapeData|StaticShapeData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/VehicleData|VehicleData]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/FlyingVehicleData|FlyingVehicleData]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/HoverVehicleData|HoverVehicleData]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/WheeledVehicleData|WheeledVehicleData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ShapeBaseImageData|ShapeBaseImageData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/SplashData|SplashData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/TriggerData|TriggerData]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/ParticleData|ParticleData]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TSShapeConstructor|TSShapeConstructor]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/WheeledVehicleSpring|WheeledVehicleSpring]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/WheeledVehicleTire|WheeledVehicleTire]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/SimGroup|SimGroup]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GameConnection|GameConnection]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/Sun|Sun]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TDrawableObject|TDrawableObject]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TBaddy|TBaddy]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TLevelObject|TLevelObject]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TExplosion|TExplosion]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TGaniObject|TGaniObject]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/TProjectile|TProjectile]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/TServerHorse|TServerHorse]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/TServerPlayer|TServerPlayer]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/TPlayer|TPlayer]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/TServerNPC|TServerNPC]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/TServerWeapon|TServerWeapon]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerBomb|TServerBomb]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerCarry|TServerCarry]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerChest|TServerChest]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerExtra|TServerExtra]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerFlying|TServerFlying]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerLeap|TServerLeap]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerSign|TServerSign]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TShowImg|TShowImg]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TDrawingPanel|TDrawingPanel]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/Terraformer|Terraformer]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TFrameDetail|TFrameDetail]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGaniParam|TGaniParam]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalAni|TGraalAni]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalAniPart|TGraalAniPart]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalAniSound|TGraalAniSound]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalAniSprite|TGraalAniSprite]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalAniStep|TGraalAniStep]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalSpriteAttachment|TGraalSpriteAttachment]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/THTTPRequest|THTTPRequest]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TParticle|TParticle]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TParticleEmitter|TParticleEmitter]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TParticleModifier|TParticleModifier]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TServerLevel|TServerLevel]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TServerLevelLink|TServerLevelLink]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TShowImg_Values|TShowImg_Values]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TShowImg_Gani|TShowImg_Gani]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TShowImg_Image|TShowImg_Image]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TShowImg_Shape|TShowImg_Shape]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TShowImg_Text|TShowImg_Text]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TShowImgMount|TShowImgMount]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TStaticVar|TStaticVar]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TTilesLayer|TTilesLayer]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TUpdatePackage|TUpdatePackage]]&lt;/div&gt;</summary>
		<author><name>Novo</name></author>
	</entry>
	<entry>
		<id>https://graalonline.net/index.php?title=Creation/Dev/Script/Client&amp;diff=7145</id>
		<title>Creation/Dev/Script/Client</title>
		<link rel="alternate" type="text/html" href="https://graalonline.net/index.php?title=Creation/Dev/Script/Client&amp;diff=7145"/>
		<updated>2006-07-11T15:16:07Z</updated>

		<summary type="html">&lt;p&gt;Novo: /* Variable Prefixes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Client Supported Script Features=&lt;br /&gt;
&lt;br /&gt;
==Settings==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| '''Name'''&lt;br /&gt;
| '''Type'''&lt;br /&gt;
| '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| $camera::movementspeed&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::choosenvoicecodec&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::microactivatebyvolume&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::microactivationlevel&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::microinputdevice&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::microon&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::microvolumefactor&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::midivolume&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::mp3volume&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::radiovolume&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::reversestereo&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::sfxvolume&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::audio::voicevolume&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::allowglobalpms&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::automapping&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::defaultfontsize&lt;br /&gt;
| integer&lt;br /&gt;
| Change showtext zoom: $pref::graal::defaultfontsize/24&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::dontconnectlevels&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::dontloadlistheads&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::dontsavepasswords&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::dontsavepms&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::fixedport&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::fixedudpport&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::language&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::limitnicknames&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::loadbuddylistfromserver&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::nicknamelimit&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::nomassmessages&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::notoalls&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::noudp&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::graal::showyourselfonbuddylists&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::input::mousesensitivity&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::interior::lockarrays&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::terrain::enabledetails&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::detailfactor&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::fogdistance&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::fullscreenmode&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::screenshotformat&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::visibledistance&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $pref::video::windowmode&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| $scenelighting::lightingprogress&lt;br /&gt;
| float (read only)&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Variables==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| '''Name'''&lt;br /&gt;
| '''Type'''&lt;br /&gt;
| '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| allfeatures&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| for use with enablefeatures(), it's the default unless it is changed.&lt;br /&gt;
|-&lt;br /&gt;
| allplayerscount&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| The size of the allplayers array.&lt;br /&gt;
|-&lt;br /&gt;
| allstats&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| A bitflag of all stats currently enabled&lt;br /&gt;
|-&lt;br /&gt;
| canspin&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player has spin attack&lt;br /&gt;
|-&lt;br /&gt;
| carriesblackstone&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player is carrying a black stone&lt;br /&gt;
|-&lt;br /&gt;
| carriesbush&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player is carrying a bush&lt;br /&gt;
|-&lt;br /&gt;
| carriesnpc&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player is carrying an NPC.&lt;br /&gt;
|-&lt;br /&gt;
| carriessign&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if a player is carrying a sign.&lt;br /&gt;
|-&lt;br /&gt;
| carriesstone&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if a player is carrying a stone.&lt;br /&gt;
|-&lt;br /&gt;
| carriesvase&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if a player is carrying a vase.&lt;br /&gt;
|-&lt;br /&gt;
| downloadfile&lt;br /&gt;
| string (read only)&lt;br /&gt;
| Name of the file currently being downloaded&lt;br /&gt;
|-&lt;br /&gt;
| downloadpos&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Amount of download file already downloaded&lt;br /&gt;
|-&lt;br /&gt;
| downloadsize&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Size of the file being downloaded&lt;br /&gt;
|-&lt;br /&gt;
| editingmission&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| emoticonchar&lt;br /&gt;
| string (read only)&lt;br /&gt;
| The letter of the emoticon being displayed by the player&lt;br /&gt;
|-&lt;br /&gt;
| focusx&lt;br /&gt;
| float (read only)&lt;br /&gt;
| X coordinate of the center of playing screen in the level, offset -1.5&lt;br /&gt;
|-&lt;br /&gt;
| focusy&lt;br /&gt;
| float (read only)&lt;br /&gt;
| Y coordinate of the center of playing screen in the level, offset -2&lt;br /&gt;
|-&lt;br /&gt;
| graalversion&lt;br /&gt;
| float (read only)&lt;br /&gt;
| Graal version&lt;br /&gt;
|-&lt;br /&gt;
| gravity&lt;br /&gt;
| float&lt;br /&gt;
| Downward acceleration for projectiles ejected with the shoot() function.&lt;br /&gt;
|-&lt;br /&gt;
| iscarrying&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player is carrying anything&lt;br /&gt;
|-&lt;br /&gt;
| isfocused&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| isgraal3d&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if you are running graal 3D&lt;br /&gt;
|-&lt;br /&gt;
| isleader&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| signifies that the player is the first person in the level&lt;br /&gt;
|-&lt;br /&gt;
| isonmap&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| signifies that the player is on a map&lt;br /&gt;
|-&lt;br /&gt;
| lastdownloadfile&lt;br /&gt;
| string (read only)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| leftmousebutton&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the left mouse button is down&lt;br /&gt;
|-&lt;br /&gt;
| levelorgx&lt;br /&gt;
| float (read only)&lt;br /&gt;
| The x-value of the levels' origin (may deviate with attachplayertoobj)&lt;br /&gt;
|-&lt;br /&gt;
| levelorgy&lt;br /&gt;
| float (read only)&lt;br /&gt;
| The x-value of the levels' origin (may deviate with attachplayertoobj)&lt;br /&gt;
|-&lt;br /&gt;
| lighteffectsenabled&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| signifies that the player has enabled light effects&lt;br /&gt;
|-&lt;br /&gt;
| weathereffectsenabled&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| signifies that the player has enabled weather effects&lt;br /&gt;
|-&lt;br /&gt;
| particleeffectsenabled&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| signifies that the player has enabled particle effects&lt;br /&gt;
|-&lt;br /&gt;
| middlemousebutton&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the middle mouse button is down&lt;br /&gt;
|-&lt;br /&gt;
| mousebuttons&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Counts the amount of mousebuttons pressed&lt;br /&gt;
|-&lt;br /&gt;
| mousescreenx&lt;br /&gt;
| integer&lt;br /&gt;
| X coordinate of the mouse on the GUI layer&lt;br /&gt;
|-&lt;br /&gt;
| mousescreeny&lt;br /&gt;
| integer&lt;br /&gt;
| Y coordinate of the mouse on the GUI layer&lt;br /&gt;
|-&lt;br /&gt;
| mousewheeldelta&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Amount that the mouse scroll wheel was scrolled [(-) is up, (+) is down]&lt;br /&gt;
|-&lt;br /&gt;
| mousex&lt;br /&gt;
| float&lt;br /&gt;
| X coordinate of the mouse on the tile layer&lt;br /&gt;
|-&lt;br /&gt;
| mousey&lt;br /&gt;
| float&lt;br /&gt;
| Y coordinate of the mouse on the tile layer&lt;br /&gt;
|-&lt;br /&gt;
| musiclen&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| The duration of the playing sound file&lt;br /&gt;
|-&lt;br /&gt;
| musicpos&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| The position in the file at which the sound file is&lt;br /&gt;
|-&lt;br /&gt;
| rightmousebutton&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the right mouse button is down&lt;br /&gt;
|-&lt;br /&gt;
| screenheight&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Height of the Graal window&lt;br /&gt;
|-&lt;br /&gt;
| screenwidth&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| Width of the Graal window&lt;br /&gt;
|-&lt;br /&gt;
| scriptedcontrols&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| scriptedplayerlist&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| selectedlistplayers&lt;br /&gt;
| object&lt;br /&gt;
| an array of players highlighted on the playerlist&lt;br /&gt;
|-&lt;br /&gt;
| selectedsword&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| selectedweapon&lt;br /&gt;
| integer&lt;br /&gt;
| Index of player.weapons that references the player's current weapon&lt;br /&gt;
|-&lt;br /&gt;
| servername&lt;br /&gt;
| string (read only)&lt;br /&gt;
| Name of the current server&lt;br /&gt;
|-&lt;br /&gt;
| serverstartconnect&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| serverstartparams&lt;br /&gt;
| string&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| shotbybaddy&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player was shot by a baddy&lt;br /&gt;
|-&lt;br /&gt;
| shotbyplayer&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
| True if the player was shot by another player&lt;br /&gt;
|-&lt;br /&gt;
| showterraingrid&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| timevar&lt;br /&gt;
| integer (read only)&lt;br /&gt;
| A timer which is increased each 5 seconds and is snychronized between server and clients&lt;br /&gt;
|-&lt;br /&gt;
| timevar2&lt;br /&gt;
| float (read only)&lt;br /&gt;
| Unix-time with a very high precision, not synchronized between server and client&lt;br /&gt;
|-&lt;br /&gt;
| wasshooted&lt;br /&gt;
| boolean (read only)&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| waterheight&lt;br /&gt;
| float&lt;br /&gt;
| The height of water at the player's (x,y) on a terrain&lt;br /&gt;
|-&lt;br /&gt;
| weapons&lt;br /&gt;
| object (read only)&lt;br /&gt;
| An array of weapon objects&lt;br /&gt;
|-&lt;br /&gt;
| weaponsenabled&lt;br /&gt;
| boolean&lt;br /&gt;
| Are weapons enabled? (Player can trigger onWeaponFired...)&lt;br /&gt;
|-&lt;br /&gt;
| worldclockstopped&lt;br /&gt;
| boolean&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| worldhour&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| worldminute&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| worldminutesofday&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| worldrealsecondsperday&lt;br /&gt;
| float&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Variable Prefixes==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| '''Prefix'''&lt;br /&gt;
| '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| object.var&lt;br /&gt;
| accesses the variables of the object. The object can be retrieved by using the case-sensitive name of the object or a variable pointing to the object.&lt;br /&gt;
|-&lt;br /&gt;
| this.var&lt;br /&gt;
| variables that belong to the current script object, on the server-side they are saved to file when the object is a database npc&lt;br /&gt;
|-&lt;br /&gt;
| thiso.var&lt;br /&gt;
| refer to the this. variables of the executing npc ('o' stands for original) when you use the with () command: with (findnpc(&amp;quot;npc2&amp;quot;)) thiso.temp = this.temp; will copy 'this.temp' from npc2 to the current npc&lt;br /&gt;
|-&lt;br /&gt;
| player.var&lt;br /&gt;
| variables of the current player object, when the event was invoked by a player (e.g. playertouchsme), or you do with (findplayer(accountname))&lt;br /&gt;
|-&lt;br /&gt;
| playero.var&lt;br /&gt;
| variables of the original player object, in generally the player who has invoked the event (e.g. playertouchsme)&lt;br /&gt;
|-&lt;br /&gt;
| client.var&lt;br /&gt;
| short for player.client.var, variables that can be changed on server-side and client-side&lt;br /&gt;
|-&lt;br /&gt;
| clientr.var&lt;br /&gt;
| short for player.clientr.var, variables that can only be changed on server-side but can be read on client-side&lt;br /&gt;
|-&lt;br /&gt;
| server.var&lt;br /&gt;
| variables that only exists on server-side and can be accessed by all npcs&lt;br /&gt;
|-&lt;br /&gt;
| serverr.var&lt;br /&gt;
| variables that can only be changed on server-side and is server wide, but can also be read by all clients, so it can be used for storing the state of global activities that need client-side actions like displaying weather; like server. vars they can also be changed with remotecontrol.exe by administrators that have the right to change server. variables&lt;br /&gt;
|-&lt;br /&gt;
| level.var&lt;br /&gt;
| variables of the current level, which is the level the executing npc stands in (on server-side) or the player is in (on client-side)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
''Note: Currently this doesn't list the functions which are optimized at compile time, see [[Creation/Dev/Script/Starting_Guide#Standard_functions|Starting Guide: Standard functions]] for those.''&lt;br /&gt;
&lt;br /&gt;
===Common===&lt;br /&gt;
* aindexof(float, obj) - returns integer&lt;br /&gt;
* echo(str text)&lt;br /&gt;
* getbasepackage() - returns object&lt;br /&gt;
* getdisplaydevicelist() - returns string&lt;br /&gt;
* getdownloadedupdatepackagesize() - returns integer&lt;br /&gt;
* getdownloadingpackage() - returns object&lt;br /&gt;
* getdownloadingpackagescount() - returns integer&lt;br /&gt;
* gethttprequest(str, int, str) - returns [[Creation/Dev/Script/Client/THTTPRequest|THTTPRequest]] object&lt;br /&gt;
* getkeycode(str keyname) - returns integer&lt;br /&gt;
* getpackagesdownloadcomplete() - returns boolean&lt;br /&gt;
* getpackagesdownloaded() - returns boolean&lt;br /&gt;
* getplatform() - returns string&lt;br /&gt;
* getresolutionlist(str) - returns string&lt;br /&gt;
* getservername() - returns string&lt;br /&gt;
* gettotalupdatepackagesize() - returns integer&lt;br /&gt;
* getupdatepackage(str) - returns object&lt;br /&gt;
* isadminguild(str guildname) - returns boolean&lt;br /&gt;
* isdevicefullscreenonly(str devicename) - returns boolean&lt;br /&gt;
* isobject(str objectname) - returns boolean&lt;br /&gt;
* keydown(int keynumber) - returns if the specified key is pressed (0..10: up, left, down, right, S, A, D, M, tab, Q, P)&lt;br /&gt;
* keydown2(int keycode, bool ignorecase) - returns boolean&lt;br /&gt;
* keyname(int keycode) - returns string&lt;br /&gt;
* opengraalurl(str url)&lt;br /&gt;
* openurl(str url)&lt;br /&gt;
* openurl2(str url, int width, int height)&lt;br /&gt;
* requesthttp(str, int, str) - returns [[Creation/Dev/Script/Client/THTTPRequest|THTTPRequest]] object&lt;br /&gt;
* requestmysql(str, str, str, str, str) - returns object&lt;br /&gt;
* requesttext(str, str)&lt;br /&gt;
* requesturl(str url) - returns [[Creation/Dev/Script/Client/THTTPRequest|THTTPRequest]] object&lt;br /&gt;
* savelog(str text)&lt;br /&gt;
* sendrpgmessage(str text)&lt;br /&gt;
* sendtext(str, str, params...)&lt;br /&gt;
* sendtorc(str text)&lt;br /&gt;
* serverwarp(str serverunixname)&lt;br /&gt;
* synctimeofday(float, float)&lt;br /&gt;
&lt;br /&gt;
====Files====&lt;br /&gt;
* extractfilebase(str filepath) - returns string, '/an/example/path/and/file' would return '/an/example/path/and/'&lt;br /&gt;
* extractfileext(str filepath) - returns string, 'filename.ext' would return '.ext'&lt;br /&gt;
* extractfilename(str filepath) - returns string, '/an/example/path/and/file' would return 'file'&lt;br /&gt;
* extractfilepath(str filepath) - returns string, '/an/example/path/and/file' would return '/an/example/path/and/'&lt;br /&gt;
* fileexists(str filepath) - returns boolean, checks if a file exists&lt;br /&gt;
* filesize(str filepath) - returns integer, returns the size of a file&lt;br /&gt;
* fileupdate(str filepath) - returns boolean&lt;br /&gt;
* findfiles(str, int) - returns object&lt;br /&gt;
* findfirstfile(str) - returns string&lt;br /&gt;
* findnextfile(str) - returns string&lt;br /&gt;
* getextension(str filepath) - returns string, 'filename.ext' would return '.ext'&lt;br /&gt;
* reloadfile(str filepath)&lt;br /&gt;
* requestfiledeletion(str filepath), requests a file to be deleted on the server&lt;br /&gt;
* requestfilerename(str filepath, str newfilepath), requests a file to be renamed on the server&lt;br /&gt;
* requestfilesmove(str filepath, str newfilepath), requests a file to be moved on the server&lt;br /&gt;
* selectfilefordownload(str filter)&lt;br /&gt;
* selectfileforupload()&lt;br /&gt;
&lt;br /&gt;
''Watch the [[Creation/Dev/Script/Client/TGraalVar|TGraalVar]] object for loading and saving of files (loadlines etc.)''&lt;br /&gt;
&lt;br /&gt;
====Math====&lt;br /&gt;
* degtorad(float value) - returns float&lt;br /&gt;
* radtodeg(float value) - returns float&lt;br /&gt;
&lt;br /&gt;
=====Matrices=====&lt;br /&gt;
* matrixcreate(str, str) - returns string&lt;br /&gt;
* matrixcreatefromeuler(str) - returns string&lt;br /&gt;
* matrixmulpoint(str, str) - returns string&lt;br /&gt;
* matrixmultiply(str, str) - returns string&lt;br /&gt;
* matrixmulvector(str, str) - returns string&lt;br /&gt;
&lt;br /&gt;
=====Vectors=====&lt;br /&gt;
* vectoradd(str, str) - returns string&lt;br /&gt;
* vectorcross(str, str) - returns string&lt;br /&gt;
* vectordist(str, str) - returns float&lt;br /&gt;
* vectordot(str, str) - returns float&lt;br /&gt;
* vectorlen(str) - returns float&lt;br /&gt;
* vectornormalize(str) - returns string&lt;br /&gt;
* vectororthobasis(str) - returns string&lt;br /&gt;
* vectorscale(str, float) - returns string&lt;br /&gt;
* vectorsub(str, str) - returns string&lt;br /&gt;
&lt;br /&gt;
====Strings====&lt;br /&gt;
* base64decode(str text) - returns decoded string&lt;br /&gt;
* base64encode(str text) - returns encoded string&lt;br /&gt;
* checksum(str text) - returns checksum float&lt;br /&gt;
* contains(str haystack, str needle) - returns boolean, you should probably do haystack.contains(needle) instead&lt;br /&gt;
* getascii(str character) - returns ascii value integer&lt;br /&gt;
* getstringkeys(str) - returns object&lt;br /&gt;
* lowercase(str text) - returns lowercased string&lt;br /&gt;
* md5(str tet) - returns md5 hash string&lt;br /&gt;
* randomstring(str) - returns string&lt;br /&gt;
* strcmp(str text1, str text2) - returns integer&lt;br /&gt;
* strequals(str text1, str text2) - returns boolean, you probably should do text1.equals(text2) instead&lt;br /&gt;
* uppercase(str text) - returns uppercased stringg&lt;br /&gt;
&lt;br /&gt;
===GUI===&lt;br /&gt;
* addcontrol(obj)&lt;br /&gt;
* cursoroff()&lt;br /&gt;
* cursoron()&lt;br /&gt;
* iscursoron() - returns boolean&lt;br /&gt;
* popdialog()&lt;br /&gt;
* pushdialog(obj)&lt;br /&gt;
* setcontentcontrol(obj)&lt;br /&gt;
* setcursor2(str imagefilename)&lt;br /&gt;
&lt;br /&gt;
===Graal 2D===&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
| '''Name'''&lt;br /&gt;
| '''Type'''&lt;br /&gt;
| '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| addtiledef(str tilesetimage, str prefix, int tilesettype)&lt;br /&gt;
|&lt;br /&gt;
| Sets the tileset image for levels beginning with the specified prefix.&lt;br /&gt;
Tileset type 0 is for pics1.png style tilesets.&lt;br /&gt;
Tileset type 1 is for the new tileset format (Era's tiles for example)&lt;br /&gt;
|-&lt;br /&gt;
| addtiledef2(str tilesetimage, str prefix, int x, int y)&lt;br /&gt;
|&lt;br /&gt;
| Replaces a section of the tileset (x, y) image for levels beginning with the specified prefix.&lt;br /&gt;
|-&lt;br /&gt;
| attachplayertoobj(int objtype, int id)&lt;br /&gt;
|&lt;br /&gt;
| Attaches a player to the specified object. Using attachpayertoobj(0, id); the player will be attached to the current NPC.&lt;br /&gt;
|-&lt;br /&gt;
| callnpc(int npcindex, params...)&lt;br /&gt;
|&lt;br /&gt;
| Calls an npc function with name ''&amp;quot;on&amp;quot; @ params[0]'' in npc with index ''npcindex'' without moving from serverside to clientside or vise-versa.&lt;br /&gt;
|-&lt;br /&gt;
| callweapon(int weaponindex, params...)&lt;br /&gt;
|&lt;br /&gt;
| Calls an weapon function with name ''&amp;quot;on&amp;quot; @ params[0]'' in player weapon with index ''weaponindex'' without moving from serverside to clientside or vise-versa.&lt;br /&gt;
|-&lt;br /&gt;
| commandtoserver(str text)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| detachplayer()&lt;br /&gt;
|&lt;br /&gt;
| Puts the player back on the level (after using attachplayertoobj).&lt;br /&gt;
|-&lt;br /&gt;
| disabledefmovement()&lt;br /&gt;
|&lt;br /&gt;
| Disables the default movement.&lt;br /&gt;
|-&lt;br /&gt;
| disablemap()&lt;br /&gt;
|&lt;br /&gt;
| Disables the default map&lt;br /&gt;
|-&lt;br /&gt;
| disablepause()&lt;br /&gt;
|&lt;br /&gt;
| Disables pausing.&lt;br /&gt;
|-&lt;br /&gt;
| disableselectweapons()&lt;br /&gt;
|&lt;br /&gt;
| Disables the default Q menu.&lt;br /&gt;
|-&lt;br /&gt;
| disableweapons()&lt;br /&gt;
|&lt;br /&gt;
| Disables weapons.&lt;br /&gt;
|-&lt;br /&gt;
| enabledefmovement()&lt;br /&gt;
|&lt;br /&gt;
| Enables default movement&lt;br /&gt;
|-&lt;br /&gt;
| enablefeatures(int flags)&lt;br /&gt;
| &lt;br /&gt;
| Enable/disable client features&lt;br /&gt;
&lt;br /&gt;
Flags can consist of:&lt;br /&gt;
  {| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
  | '''Value'''&lt;br /&gt;
  | '''Description'''&lt;br /&gt;
  |-&lt;br /&gt;
  | 1&lt;br /&gt;
  | M key (map)&lt;br /&gt;
  |-&lt;br /&gt;
  | 2&lt;br /&gt;
  | P key (pause)&lt;br /&gt;
  |-&lt;br /&gt;
  | 4&lt;br /&gt;
  | Q key (weapon select)&lt;br /&gt;
  |-&lt;br /&gt;
  | 8&lt;br /&gt;
  | R key (show ratings)&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x10&lt;br /&gt;
  | S+A key combination for dropping items&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x20&lt;br /&gt;
  | S+D key combination for switching weapons&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x40&lt;br /&gt;
  | TAB key (if disabled then you cannot switch to the chat field with TAB)&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x80&lt;br /&gt;
  | Display of chat text&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x100&lt;br /&gt;
  | Display of the hearts over player heads&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x200&lt;br /&gt;
  | Display of nicknames&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x400&lt;br /&gt;
  | Toall/PM-icons on the minimap&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x800&lt;br /&gt;
  | Right-click on players opens their profile&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x1000&lt;br /&gt;
  | Emoticons (disable it if you want to do other stuff with control+keys)&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x2000&lt;br /&gt;
  | Alt+5 for making snapshots  ''(deprecated)''&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x4000&lt;br /&gt;
  | Alt+8/9 for zooming ''(deprecated)''&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x8000&lt;br /&gt;
  | The logframe where savelog stuff is added&lt;br /&gt;
  |-&lt;br /&gt;
  | allfeatures&lt;br /&gt;
  | All of the previously stated feature flags enabled&lt;br /&gt;
  |}&lt;br /&gt;
|-&lt;br /&gt;
| enablemap()&lt;br /&gt;
|&lt;br /&gt;
| Enables default map.&lt;br /&gt;
|-&lt;br /&gt;
| enablepause()&lt;br /&gt;
|&lt;br /&gt;
| Enables pausing.&lt;br /&gt;
|-&lt;br /&gt;
| enableselectweapons()&lt;br /&gt;
|&lt;br /&gt;
| Enables default Q menu.&lt;br /&gt;
|-&lt;br /&gt;
| enableweapons()&lt;br /&gt;
|&lt;br /&gt;
| Enables weapons.&lt;br /&gt;
|-&lt;br /&gt;
| explodebomb(int bombindex)&lt;br /&gt;
|&lt;br /&gt;
| Explodes a bomb with the specified index.&lt;br /&gt;
|-&lt;br /&gt;
| findani(str)&lt;br /&gt;
| object&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| findlevel(str levelfilename)&lt;br /&gt;
| object&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| findplayer(str accountname)&lt;br /&gt;
| object&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| findplayerbyid(int playerid)&lt;br /&gt;
| object&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| findweapon(str weaponname)&lt;br /&gt;
| object&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| freezeplayer(float seconds)&lt;br /&gt;
|&lt;br /&gt;
| Freezes player for a specific amount of time.&lt;br /&gt;
|-&lt;br /&gt;
| getimgheight(str imagefilename)&lt;br /&gt;
| integer&lt;br /&gt;
| Returns the height (in pixels) of an image.&lt;br /&gt;
|-&lt;br /&gt;
| getimgwidth(str imagefilename)&lt;br /&gt;
| integer&lt;br /&gt;
| Returns the width (in pixels) of an image.&lt;br /&gt;
|-&lt;br /&gt;
| getmapx(str levelname)&lt;br /&gt;
| integer&lt;br /&gt;
| X coordinate of the level on a map (top-left level is 0)&lt;br /&gt;
|-&lt;br /&gt;
| getmapy(str levelname)&lt;br /&gt;
| integer&lt;br /&gt;
| Y coordinate of the level on a map (top-left level is 0)&lt;br /&gt;
|-&lt;br /&gt;
| gettextheight(float, str, str)&lt;br /&gt;
| integer&lt;br /&gt;
| Returns the height of the font. Format:&lt;br /&gt;
  gettextheight(zoom, font, style)&lt;br /&gt;
|-&lt;br /&gt;
| gettextwidth(float, str, str, str)&lt;br /&gt;
| integer&lt;br /&gt;
| Returns the width of a specified text in a certain font. Format:&lt;br /&gt;
  gettextwidth(zoom, font, style, text)&lt;br /&gt;
|-&lt;br /&gt;
| getz(float x, float y)&lt;br /&gt;
| float&lt;br /&gt;
| Returns the z value of a terrain at (x,y).&lt;br /&gt;
|-&lt;br /&gt;
| hideplayer(float seconds)&lt;br /&gt;
|&lt;br /&gt;
| Hides the player for ''seconds'' seconds.&lt;br /&gt;
|-&lt;br /&gt;
| hidesword(float seconds)&lt;br /&gt;
|&lt;br /&gt;
| Hides the player's sword for ''seconds'' seconds.&lt;br /&gt;
|-&lt;br /&gt;
| hitnpc(int, float, float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| hitobjects(float, float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| hitplayer(int, float, float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| lay2(str extraname, float x, float y)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| loadmap(str mapfilename)&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| noplayerkilling()&lt;br /&gt;
|&lt;br /&gt;
| Disables killing of other players.&lt;br /&gt;
|-&lt;br /&gt;
| onwall(float x, float y)&lt;br /&gt;
| boolean&lt;br /&gt;
| Returns true if the specified x and y is a blocking tile.&lt;br /&gt;
|-&lt;br /&gt;
| onwall2(float x, float y, float width, float height)&lt;br /&gt;
| boolean&lt;br /&gt;
| Returns true if a blocking tile exists in the specified area.&lt;br /&gt;
|-&lt;br /&gt;
| onwater(float x, float y)&lt;br /&gt;
| boolean&lt;br /&gt;
| Returns true if the specified x and y is water.&lt;br /&gt;
|-&lt;br /&gt;
| onwater2(float x, float y, float width, float height)&lt;br /&gt;
| boolean&lt;br /&gt;
| Returns true if water exists in the specified area.&lt;br /&gt;
|-&lt;br /&gt;
| play(str soundfilename)&lt;br /&gt;
|&lt;br /&gt;
| Plays the specified sound file.&lt;br /&gt;
|-&lt;br /&gt;
| play2(str soundfilename, float x, float y, float volume)&lt;br /&gt;
|&lt;br /&gt;
| Plays the specified sound file at location x, y with the specified volume. Volume should be between 0 and 1, if volume is set to 1 default volume is used (depending on how far away the player is).&lt;br /&gt;
|-&lt;br /&gt;
| playlooped(str soundfilename)&lt;br /&gt;
|&lt;br /&gt;
| Plays the specified sound file in a loop until stopsound() is called.&lt;br /&gt;
|-&lt;br /&gt;
| playlooped2(str soundfile, float x, float y, float volume)&lt;br /&gt;
|&lt;br /&gt;
| Plays the specified sound file at location x, y with the specified volume in a loop until stopsound() is called. Volume should be between 0 and 1, if volume is set to 1 default volume is used (depending on how far away the player is).&lt;br /&gt;
|-&lt;br /&gt;
| putleaps(int leapstype, float x, float y)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| removetiledefs(str prefix)&lt;br /&gt;
|&lt;br /&gt;
| Remove tile definitions set by addtiledef and addtiledef2 for the specified prefix.&lt;br /&gt;
|-&lt;br /&gt;
| replaceani(str defaultaniname, str newaniname)&lt;br /&gt;
|&lt;br /&gt;
| replaces the player's default ani with the new ani.&lt;br /&gt;
|-&lt;br /&gt;
| resetfocus()&lt;br /&gt;
|&lt;br /&gt;
| Sets the screen focus to the player.&lt;br /&gt;
|-&lt;br /&gt;
| say(int signindex)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| say2(str text)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| screenx(float x, float y)&lt;br /&gt;
| integer&lt;br /&gt;
| returns the x of the screen layer for a location on the tiles layer.&lt;br /&gt;
|-&lt;br /&gt;
| screeny(float x, float y)&lt;br /&gt;
| integer&lt;br /&gt;
| returns the y of the screen layer for a location on the tiles layer.&lt;br /&gt;
|-&lt;br /&gt;
| worldx(float x, float y)&lt;br /&gt;
| float&lt;br /&gt;
| returns the x of the tiles layer for a location on the screen layer.&lt;br /&gt;
|-&lt;br /&gt;
| worldy(float x, float y)&lt;br /&gt;
| float&lt;br /&gt;
| returns the y of the tiles layer for a location on the screen layer.&lt;br /&gt;
|-&lt;br /&gt;
| setani(str aniname, str aniparams)&lt;br /&gt;
|&lt;br /&gt;
| Sets the gani of a player.&lt;br /&gt;
|-&lt;br /&gt;
| setbeltcolor(str color)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setcoatcolor(str color)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| seteffect(float r, float g, float b, float a)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setfocus(float x, float y)&lt;br /&gt;
|&lt;br /&gt;
| Sets the screen focus to the specified x and y.&lt;br /&gt;
|-&lt;br /&gt;
| setgender(str gendername)&lt;br /&gt;
|&lt;br /&gt;
| Sets the gender of a player.&lt;br /&gt;
|-&lt;br /&gt;
| sethead(str imagefilename)&lt;br /&gt;
|&lt;br /&gt;
| Sets the head of a player&lt;br /&gt;
|-&lt;br /&gt;
| setletters(str imagefilename)&lt;br /&gt;
|&lt;br /&gt;
| Sets the image to use for sign background and text.&lt;br /&gt;
|-&lt;br /&gt;
| setmap(str, str, float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setminimap(str, str, float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setmusicvolume(float, float)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setplayerdir(str)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setshield(str imagefilename, int shieldpower)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setshoecolor(str color)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setshootparams(str params)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setskincolor(str color)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setsleevecolor(str color)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| setsword(str imagefilename, int swordpower)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| showstats(int statsflag)&lt;br /&gt;
|&lt;br /&gt;
| With this you can show/hide parts of the status bar / game&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Shows all&lt;br /&gt;
showstats(allstats);&lt;br /&gt;
&lt;br /&gt;
// Enable everything except minimap&lt;br /&gt;
showstats(allstats &amp;amp; ~0x100);&lt;br /&gt;
&lt;br /&gt;
// Enable everything except AP and MP bars&lt;br /&gt;
showstats(allstats &amp;amp; ~(0x40 | 0x80));&lt;br /&gt;
&lt;br /&gt;
// Enable only players and right-click profile&lt;br /&gt;
showstats(0x400 | 0x800);&lt;br /&gt;
&lt;br /&gt;
// Hides all&lt;br /&gt;
showstats(0);&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Flags can consist of:&lt;br /&gt;
  {| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
  | '''Value'''&lt;br /&gt;
  | '''Description'''&lt;br /&gt;
  |-&lt;br /&gt;
  | 1&lt;br /&gt;
  | ASD&lt;br /&gt;
  |-&lt;br /&gt;
  | 2&lt;br /&gt;
  | Icons (for rupees, bombs, arrows)&lt;br /&gt;
  |-&lt;br /&gt;
  | 4&lt;br /&gt;
  | Rupees count&lt;br /&gt;
  |-&lt;br /&gt;
  | 8&lt;br /&gt;
  | Bombs count&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x10&lt;br /&gt;
  | Arrows count&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x20&lt;br /&gt;
  | Hearts&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x40&lt;br /&gt;
  | Alignment (ap) bar&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x80&lt;br /&gt;
  | Magic points (mp) bar&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x100&lt;br /&gt;
  | Minimap (you can only hide it, you can't show it when the player pressed Alt+3)&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x200&lt;br /&gt;
  | Inventory NPCs&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x400&lt;br /&gt;
  | Players&lt;br /&gt;
  |-&lt;br /&gt;
  | 0x800&lt;br /&gt;
  | Right-click on players opens their profile&lt;br /&gt;
  |-&lt;br /&gt;
  | allstats&lt;br /&gt;
  | All of the previously stated stats flags enabled&lt;br /&gt;
  |}&lt;br /&gt;
|-&lt;br /&gt;
| spyfire(int length, int power)&lt;br /&gt;
|&lt;br /&gt;
| Shoots a line of fire in the direction of the player with the specified tile length, and fire power (1 - bomb, 2 - super bomb, 3 - jolt bomb).&lt;br /&gt;
|-&lt;br /&gt;
| stopmidi()&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| stopsound(str soundfilename)&lt;br /&gt;
|&lt;br /&gt;
| Stop playing a sound started by playlooped&lt;br /&gt;
|-&lt;br /&gt;
| takeplayercarry()&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| takeplayerhorse()&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| testplayer(float x, float y)&lt;br /&gt;
| integer&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| triggeraction(float x, float y, str dest, params...)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| triggerserver(str dest, str params)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| updateboard(int x, int y, int width, int height)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| updateratings(obj)&lt;br /&gt;
| object&lt;br /&gt;
| Updates an array of {rating1,ratingdeviation1, rating2,ratingdeviation2, ...}, init them at 1500 and 350.&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
newratings = updateratings({winner.rating,winner.ratingd,loser.rating,loser.ratingd});&lt;br /&gt;
winner.rating = newratings[0];&lt;br /&gt;
winner.ratingd = newratings[1];&lt;br /&gt;
loser.rating = newratings[2];&lt;br /&gt;
loser.ratingd = newratings[3];&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| wraptext(int fontsize, str format, str text)&lt;br /&gt;
| object&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| wraptext2(int, float, str, str)&lt;br /&gt;
| object&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Graal 3D===&lt;br /&gt;
* addmaterialmapping(str, str) - returns boolean&lt;br /&gt;
* getboxcenter(str) - returns string&lt;br /&gt;
* getdatablocktypes() - returns object&lt;br /&gt;
* getobjectat(float, float) - returns object&lt;br /&gt;
* getobjectatmouse() - returns object&lt;br /&gt;
* getobjectbyray(str, str) - returns object&lt;br /&gt;
* getsurfacetype(float, float) - returns string&lt;br /&gt;
* lightscene() - returns boolean&lt;br /&gt;
* mapshapeanimation(str, str, str, float) - returns boolean&lt;br /&gt;
* setfogcolors(obj)&lt;br /&gt;
* setinteriorrendermode(int)&lt;br /&gt;
* setshadowdetaillevel(float)&lt;br /&gt;
* setskybandcolors(obj)&lt;br /&gt;
* setskybandsizes(obj)&lt;br /&gt;
* setsuncolors(obj)&lt;br /&gt;
* setterrainrendermode(int)&lt;br /&gt;
* updateterrain()&lt;br /&gt;
* updatevisibledistance()&lt;br /&gt;
&lt;br /&gt;
===Other===&lt;br /&gt;
* adventure_installgraal(str, bool, bool)&lt;br /&gt;
* adventure_openexternaloptions() - returns boolean&lt;br /&gt;
* adventure_openexternalpm(obj) - returns boolean&lt;br /&gt;
* adventure_openserverlist()&lt;br /&gt;
* adventure_quit()&lt;br /&gt;
* adventure_savegraaloptions()&lt;br /&gt;
* adventure_selectpath(str) - returns object&lt;br /&gt;
* adventure_setaccountname(str)&lt;br /&gt;
* adventure_setchat(str)&lt;br /&gt;
* adventure_setnickname(str)&lt;br /&gt;
* adventure_setpassword(str)&lt;br /&gt;
* adventure_startofflinemode()&lt;br /&gt;
* adventure_updateaccountfield()&lt;br /&gt;
* adventure_updatemicroactivationlevel()&lt;br /&gt;
* adventure_updatemidivolume()&lt;br /&gt;
* adventure_updatemp3volume()&lt;br /&gt;
* adventure_updateplayermuted()&lt;br /&gt;
* adventure_updateplayerprofile(bool, str, str, int, str, str, str, str, str, str)&lt;br /&gt;
* adventure_updateradiovolume()&lt;br /&gt;
&lt;br /&gt;
''(these functions are only available to privileged scripts from the Login server)''&lt;br /&gt;
&lt;br /&gt;
==Classes / Object Types==&lt;br /&gt;
* [[Creation/Dev/Script/Client/TGraalVar|TGraalVar]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/ActionMap|ActionMap]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiControl|GuiControl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiArrayCtrl|GuiArrayCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiTextListCtrl|GuiTextListCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiTreeViewCtrl|GuiTreeViewCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiBitmapButtonCtrl|GuiBitmapButtonCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiBitmapCtrl|GuiBitmapCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiCrossHairHud|GuiCrossHairHud]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiMapOverviewCtrl|GuiMapOverviewCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiButtonBaseCtrl|GuiButtonBaseCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiButtonCtrl|GuiButtonCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiCheckBoxCtrl|GuiCheckBoxCtrl]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/GuiRadioCtrl|GuiRadioCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiChunkedBitmapCtrl|GuiChunkedBitmapCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiContextMenuCtrl|GuiContextMenuCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiDrawingPanel|GuiDrawingPanel]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiFlash|GuiFlash]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiFrameSetCtrl|GuiFrameSetCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiGraal3DCtrl|GuiGraal3DCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiGraalCtrl|GuiGraalCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiMenuCtrl|GuiMenuCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiMLTextCtrl|GuiMLTextCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiMLTextEditCtrl|GuiMLTextEditCtrl]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/GuiPMEditCtrl|GuiPMEditCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiPMCtrl|GuiPMCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiPMHistoryCtrl|GuiPMHistoryCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiPlayerView|GuiPlayerView]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiProgressCtrl|GuiProgressCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiScrollCtrl|GuiScrollCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiShapeNameHud|GuiShapeNameHud]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiShowImgCtrl|GuiShowImgCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiSliderCtrl|GuiSliderCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiTabCtrl|GuiTabCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/GuiTextCtrl|GuiTextCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiPopUpEditCtrl|GuiPopUpEditCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiPopUpMenuCtrl|GuiPopUpMenuCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiTextEditCtrl|GuiTextEditCtrl]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/GuiTextEditSliderCtrl|GuiTextEditSliderCtrl]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GuiWindowCtrl|GuiWindowCtrl]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TerrainEditor|TerrainEditor]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/WorldEditor|WorldEditor]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiControlProfile|GuiControlProfile]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiCursor|GuiCursor]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiTabCtrlEntry|GuiTabCtrlEntry]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiTextListEntry|GuiTextListEntry]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/GuiTreeViewNode|GuiTreeViewNode]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/ShapeBaseHitBox|ShapeBaseHitBox]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/ShapeImageState|ShapeImageState]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/SimObject|SimObject]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/SceneObject|SceneObject]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/AudioEmitter|AudioEmitter]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/FractalTree|FractalTree]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/fxFoliageReplicator|fxFoliageReplicator]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/fxGrassReplicator|fxGrassReplicator]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/fxShapeReplicator|fxShapeReplicator]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/fxSunLight|fxSunLight]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GameBase|GameBase]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/DynamicShapeReplicator|DynamicShapeReplicator]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/DynamicGrass|DynamicGrass]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/DynamicGrassReplicator|DynamicGrassReplicator]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Explosion|Explosion]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/fxLight|fxLight]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Lightning|Lightning]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ParticleEmitter|ParticleEmitter]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ParticleEmitterNode|ParticleEmitterNode]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/PathedInterior|PathedInterior]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Precipitation|Precipitation]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Projectile|Projectile]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ShapeBase|ShapeBase]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/AdvancedCamera|AdvancedCamera]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/Camera|Camera]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/MissionMarker|MissionMarker]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/PathCamera|PathCamera]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/Player|Player]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/AIPlayer|AIPlayer]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/StaticShape|StaticShape]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/Vehicle|Vehicle]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/FlyingVehicle|FlyingVehicle]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/HoverVehicle|HoverVehicle]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/WheeledVehicle|WheeledVehicle]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/SpawnSphere|SpawnSphere]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Splash|Splash]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/Trigger|Trigger]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/TSStatic|TSStatic]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/Item|Item]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/InteriorInstance|InteriorInstance]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/Marker|Marker]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/Shape3ds|Shape3ds]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/Sky|Sky]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TerrainBlock|TerrainBlock]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/twSurfaceReference|twSurfaceReference]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/volumeLight|volumeLight]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/WaterBlock|WaterBlock]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/SimDataBlock|SimDataBlock]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/AudioDescription|AudioDescription]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/AudioProfile|AudioProfile]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/DecalData|DecalData]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GameBaseData|GameBaseData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/DebrisData|DebrisData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ExplosionData|ExplosionData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/fxLightData|fxLightData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ItemData|ItemData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/LightningData|LightningData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ParticleEmitterData|ParticleEmitterData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ParticleEmitterNodeData|ParticleEmitterNodeData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/PathedInteriorData|PathedInteriorData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/PrecipitationData|PrecipitationData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ProjectileData|ProjectileData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ShapeBaseData|ShapeBaseData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/AdvancedCameraData|AdvancedCameraData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/CameraData|CameraData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/MissionMarkerData|MissionMarkerData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/PlayerData|PlayerData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/StaticShapeData|StaticShapeData]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/VehicleData|VehicleData]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/FlyingVehicleData|FlyingVehicleData]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/HoverVehicleData|HoverVehicleData]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/WheeledVehicleData|WheeledVehicleData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/ShapeBaseImageData|ShapeBaseImageData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/SplashData|SplashData]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/TriggerData|TriggerData]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/ParticleData|ParticleData]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TSShapeConstructor|TSShapeConstructor]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/WheeledVehicleSpring|WheeledVehicleSpring]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/WheeledVehicleTire|WheeledVehicleTire]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/SimGroup|SimGroup]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/GameConnection|GameConnection]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/Sun|Sun]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TDrawableObject|TDrawableObject]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TBaddy|TBaddy]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TLevelObject|TLevelObject]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TExplosion|TExplosion]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TGaniObject|TGaniObject]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/TProjectile|TProjectile]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/TServerHorse|TServerHorse]]&lt;br /&gt;
***** [[Creation/Dev/Script/Client/TServerPlayer|TServerPlayer]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/TPlayer|TPlayer]]&lt;br /&gt;
****** [[Creation/Dev/Script/Client/TServerNPC|TServerNPC]]&lt;br /&gt;
******* [[Creation/Dev/Script/Client/TServerWeapon|TServerWeapon]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerBomb|TServerBomb]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerCarry|TServerCarry]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerChest|TServerChest]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerExtra|TServerExtra]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerFlying|TServerFlying]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerLeap|TServerLeap]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TServerSign|TServerSign]]&lt;br /&gt;
**** [[Creation/Dev/Script/Client/TShowImg|TShowImg]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TDrawingPanel|TDrawingPanel]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/Terraformer|Terraformer]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TFrameDetail|TFrameDetail]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGaniParam|TGaniParam]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalAni|TGraalAni]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalAniPart|TGraalAniPart]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalAniSound|TGraalAniSound]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalAniSprite|TGraalAniSprite]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalAniStep|TGraalAniStep]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TGraalSpriteAttachment|TGraalSpriteAttachment]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/THTTPRequest|THTTPRequest]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TParticle|TParticle]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TParticleEmitter|TParticleEmitter]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TParticleModifier|TParticleModifier]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TServerLevel|TServerLevel]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TServerLevelLink|TServerLevelLink]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TShowImg_Values|TShowImg_Values]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TShowImg_Gani|TShowImg_Gani]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TShowImg_Image|TShowImg_Image]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TShowImg_Shape|TShowImg_Shape]]&lt;br /&gt;
*** [[Creation/Dev/Script/Client/TShowImg_Text|TShowImg_Text]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TShowImgMount|TShowImgMount]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TStaticVar|TStaticVar]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TTilesLayer|TTilesLayer]]&lt;br /&gt;
** [[Creation/Dev/Script/Client/TUpdatePackage|TUpdatePackage]]&lt;/div&gt;</summary>
		<author><name>Novo</name></author>
	</entry>
	<entry>
		<id>https://graalonline.net/index.php?title=Creation/Dev/GScript&amp;diff=7144</id>
		<title>Creation/Dev/GScript</title>
		<link rel="alternate" type="text/html" href="https://graalonline.net/index.php?title=Creation/Dev/GScript&amp;diff=7144"/>
		<updated>2006-07-11T15:12:42Z</updated>

		<summary type="html">&lt;p&gt;Novo: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''GScript''' is [[Graal]]'s scripting language.&lt;br /&gt;
&lt;br /&gt;
Its syntax and some of its semantics might seem familiar to those who program in [[WikiPedia:C (Programming Language) | C]] or [[WikiPedia:Java_programming_language|Java]]. In some ways it is more dynamic, e.g. supporting dynamicly joining and leaving of classes, and brings support for easy management of online game content.&lt;br /&gt;
&lt;br /&gt;
GScript started as a very limited language ([[Creation/Dev/Old GScript|Old GScript]]) and has since kept up with improvements to the game engine and can now be used for pretty sophisticated scripts that greatly customise the gaming experience.&lt;br /&gt;
&lt;br /&gt;
It is used, with minor differences, for [[Clientside]] tasks like [[GUI | GUI programming]], special effects with nifty 3d lighting and custom [[NPC weapon|NPC Weapons]] or &amp;amp;quot;engines&amp;amp;quot;, and [[Serverside]] systems like player housing, complex baddies or pets.&lt;br /&gt;
&lt;br /&gt;
GScript can be discussed in the non-official [[GScript IRC channel]].&lt;br /&gt;
&lt;br /&gt;
'''If you would like to contribute to the GraalBible's GScript documentation, you might want to [[Creation/Dev/GScript/Contribute|read this article]].'''&lt;br /&gt;
&lt;br /&gt;
In your scripting quest, you may find the following articles to be of use:&lt;br /&gt;
&lt;br /&gt;
'''Starting Guide'''&lt;br /&gt;
* [[Creation/Dev/Script/Starting Guide|Starting Guide]]&lt;br /&gt;
&lt;br /&gt;
'''Script Functions'''&lt;br /&gt;
(to get the latest list run Graal with the -listscriptfunctions option)&lt;br /&gt;
* [[Creation/Dev/Script/Client|Script Functions: Client]] [[Creation/Dev/Script/Clientside_Functions|(2)]] (including info on GUI controls)&lt;br /&gt;
* [[Creation/Dev/Script Functions: NPC Server|Script Functions: NPC Server]]&lt;br /&gt;
&lt;br /&gt;
'''IRC Functionality'''&lt;br /&gt;
* [[Creation/Dev/Graal v4 IRC|Graal IRC Scripting: Graal v4 IRC Scripting Reference]]&lt;br /&gt;
* [[Creation/Dev/Troubleshooting Graal v4 IRC|Graal IRC Scripting: Troubleshooting Scripting Reference]]&lt;br /&gt;
&lt;br /&gt;
'''New-Engine Specific'''&lt;br /&gt;
* [[Particle Engine|Graal v4 Particle Engine]]&lt;br /&gt;
* [[Creation/Dev/GS1_To_GS2|GS1 To GS2: Guide for fixing scripts to work with the new engine]]&lt;br /&gt;
* [[Creation/Dev/Using Classes Effectively|GS2 Features: Effective ways to use classes]]&lt;br /&gt;
* [[Creation/Dev/Output Methods|GS2 Features: Output methods]]&lt;br /&gt;
* [[Creation/Dev/GScript/Constants|GS2 Features: Constants]]&lt;br /&gt;
&lt;br /&gt;
'''Tutorials'''&lt;br /&gt;
* [[Creation/Dev/Creating Tabbed Window Panes|Creating Tabbed Window Panes]]&lt;br /&gt;
* [[Creation/Dev/Database_Communication|Indexed Database Communication]]&lt;br /&gt;
&lt;br /&gt;
'''Index of all script-related articles'''&lt;br /&gt;
* [[Creation/Dev/Script/Index|Index]]&lt;/div&gt;</summary>
		<author><name>Novo</name></author>
	</entry>
	<entry>
		<id>https://graalonline.net/index.php?title=Creation/Dev/Script/Client/TShowImg&amp;diff=7143</id>
		<title>Creation/Dev/Script/Client/TShowImg</title>
		<link rel="alternate" type="text/html" href="https://graalonline.net/index.php?title=Creation/Dev/Script/Client/TShowImg&amp;diff=7143"/>
		<updated>2006-07-11T15:07:22Z</updated>

		<summary type="html">&lt;p&gt;Novo: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
      TShowImg (TLevelObject):&lt;br /&gt;
        actor - object - If playerlook is false, this object is what inherits the appearance aspect of the animations ( if applied )&lt;br /&gt;
        alpha - float&lt;br /&gt;
        ani - string&lt;br /&gt;
        attachoffset - string&lt;br /&gt;
        attachtoowner - boolean&lt;br /&gt;
        blue - float&lt;br /&gt;
        code - string - the old representation as 'font@style@text'&lt;br /&gt;
        dimension - integer&lt;br /&gt;
        dir - integer&lt;br /&gt;
        emitter - object (read only)&lt;br /&gt;
        eulerrotation - string&lt;br /&gt;
        font - string&lt;br /&gt;
        green - float&lt;br /&gt;
        image - string&lt;br /&gt;
        imageindex - integer (read only)&lt;br /&gt;
        layer - integer&lt;br /&gt;
        mode - integer - the image drawing mode (0 - add, 1 - transparent, 2 - subtract, 3 - daynight)&lt;br /&gt;
        playerlook - boolean - if the animation should take it's head, body, sword, shield and attr[] from the owner (playerlook), set this to false if you want to set the images yourself by changing showimg.actor.head etc.&lt;br /&gt;
        polygon - object&lt;br /&gt;
        red - float&lt;br /&gt;
        rotation - float&lt;br /&gt;
        shape - string&lt;br /&gt;
        stretchx - float&lt;br /&gt;
        stretchy - float&lt;br /&gt;
        style - string&lt;br /&gt;
        text - string&lt;br /&gt;
        x - float&lt;br /&gt;
        y - float&lt;br /&gt;
        zoom - float&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Novo</name></author>
	</entry>
</feed>