mojo_client/bin/scripts/__core_internal.def
false_genesis 7780f608da * added experimental character movement (jump/strafe not yet done). press POS1/Home key to toggle camera/character WASD movement. camera NOT yet linked to character!!
* conf supports now client 2.4.2. no code changes.
* packets can now be sent not only from the PseuInstance main thread
* added new conf option "softquit" to disable instant terminate (+data loss) on win32 systems if user [X]'ed console window.
* misc fixes & code changes

(personal note: exams are over, back to coding, yay)
2008-06-08 19:49:00 +00:00

115 lines
2.9 KiB
Modula-2

// scripts used for configuration! DO NOT MODIFY unless you know what you do!!
#onload
log * Loading core scripts (internal config)...
#/onload
//--------------------------------------------------------
#script=exit
#permission=255
//--------------------------------------------------------
// just a name alternative
QUIT
//--------------------------------------------------------
#script=quit
#permission=255
//--------------------------------------------------------
SHDN
//-----------------------------------------------
#script=cleanupvars
//-----------------------------------------------
// purpose: unset all variables that could be abused by someone
LOGDETAIL * Cleaning up variables...
UNSET #ACCPASS
UNSET #ACCNAME
LOGDETAIL * Dangerous variables removed.
//-----------------------------------------------
#script=config
#permission=255
//-----------------------------------------------
#onload
// create empty variable. stores if config script was already run successfully once.
SET,DONE
#/onload
// Load all conf files from directory /conf/
// get all *.conf file names from /conf/ directory, store the names in list 'fl' and the amount in 'fcount'
LOG ** Configuring PseuWoW...
SET,fcount ?{LGETFILES,fl,conf conf}
// sort the list, load conf files alphabetically.
LSORT fl
IF ?{NOT ${fcount}}
LOGERROR No conf file found! Can't load.
RETURN
ENDIF
LOG * Loading ${fcount} conf files.
// iterate over all files and load them; if counter i is equal to the amount of files we are done.
SET,i 0
LOOP
IF ?{EQUAL,${i} ${fcount}}
EXITLOOP
ENDIF
SET,fn ?{LINDEX,fl ${i}}
LOG * Loading conf file [ ${fn} ]
LOADCONF ${fn}
ADD,i 1
ENDLOOP
UNSET fcount
UNSET i
UNSET fn
LDELETE fl
// Apply the configuration
APPLYCONF
LOG * Configuration applied.
// Apply user permissions
APPLYPERMISSIONS
// remove dangerous variables
CLEANUPVARS
// set permissions for internal functions
INTERNAL_PERM
// if its not set in the conf file, default it to "." (WoWEmu & MaNGOS style)
DEFAULT,#CMDCHAR .
LOG ** All Config done.
SET,DONE true
//--------------------------------------------------
#script=internal_perm
#permission=255
//--------------------------------------------------
// purpose: set script permissions for internal functions that cant be set otherwise.
// if you don't set a permission for a script manually, it will have permission 255 (highest)
LOG * Assigning permissions for internal functions...
// emotes are hard to abuse, allow for everyone
setscriptpermission,emote 0
// ... set more permissions here ...
// this dummy script does nothing actually but since its loaded last in this file it causes the config
// script to be run before all .def files are loaded
// (this is important for scripts that depend on the config already existing during load-time)
//-------------------------------------------------
#script=dummy
//-------------------------------------------------
#onload
if ?{not ${#config::DONE}}
config
endif
#/onload