EEex DocumentationRelease 1.0
Bubb, fearless, CrevsDaak, GrammarSalad
Nov 29, 2019
Contents
1 Introduction 3
2 EEex Functions 9
3 EEex Opcodes 145
4 EE Game Lua Functions 149
5 EE Game Structures (x86) 385
6 EE Game Classes (x86) 743
7 EE Game Functions (x86) 2419
8 Community 2427
9 Indices and tables 2453
i
ii
EEex Documentation, Release 1.0
Contents:
Contents 1
EEex Documentation, Release 1.0
2 Contents
CHAPTER 1
Introduction
1.1 Overview
EEex is an executable extender for Beamdog’s Enhanced Edition of the Infinity Engine. Its goal is to externalizecertain parts of the engine to grant modders a greater degree of control over otherwise hardcoded mechanics. EEexdoes not make any gameplay changes itself - it merely enables other mods to do so.
1.1.1 Download
The EEex project is available to download from the EEex github repository at github.com/Bubb13/EEex
Tip: Alpha versions of this project can be found at github.com/Bubb13/EEex/releases
Note: The current alpha version only supports Windows platforms, however, MacOS and Linux support is plannedfor release. Supported game versions include BG:EE v2.5.17.0, BG2:EE v2.5.16.6, and IWD:EE v2.5.17.0
1.1.2 Function
EEex, when installed, directly modifies the game’s executable in order to insert a loader. This loader is used to alterthe game’s code on startup; the modifications that are made depend on the version of EEex installed, and any installedmods that make use of EEex’s capabilities. For more in depth information about what the EEex loader does and howit does it, see: EEexLoader Technical Details
1.1.3 Installation
EEex is installed just as any other WeiDU mod. Simply extract the archive’s contents into your game’s base folder,and run the setup - it will take care of the rest. Please note that since EEex alters the game executable itself, you should
3
EEex Documentation, Release 1.0
ensure that the game is closed before running the installer!
See the Getting Started section for more details.
Note: EEex is currently in alpha, and as such the odd crash may occur. If you encounter a crash, please report theissue - stating any installed mods, steps that lead to the crash, and upload the generated crash dump file (.dmp) locatedin My Documents\<EE Game Folder>\crash.
1.1.4 Documentation
EEex makes extensive use of the EE Lua environment, with most of its functionality implemented as Lua code.Features include new Lua functions, opcodes, scripting actions, triggers, and objects.
The documentation also includes lua functions, structures and classes used in the EE games.
The documentation is a work in progress. If you wish to contribute, please follow the Contributing guide for detailson how to add to, or edit, the EEex documentation.
1.1.5 FAQ
Please visit the Frequently Asked Questions section for details.
1.2 Getting Started
Note: EEex officially supports Baldurs Gate II Enhanced Edition v2.5.16.6 currently. However EEex should becompatible with almost all Enhanced Edition games except for Plainscape Torment Enhanced Edition, which hassome notable differences from other Enhanced Edition games that prevents EEex from successfully working with it.
For all general users of EEex, please follow the relevant installation guide:
• Windows Installation
• Mac OS X Installation
• Linux Installation
For mod makers using EEex, please consult the developer guide for more technical details on integrating EEex withyour mod.
1.3 Installation
1.3.1 Windows Installation
EEex is distributed as a self-extracting archive and includes a WeiDU installer.
To install:
• Double-click the archive and follow the instructions on screen.
or alternatively:
4 Chapter 1. Introduction
EEex Documentation, Release 1.0
• Extract files into your game directory using 7zip or WinRAR. When properly extracted, your game directorywill contain setup-EEex.exe and the folder EEex.
• Double-click setup-EEex.exe and follow the instructions on screen.
Note: Once EEex is installed, you will not be able to start the game by clicking on the main game executable(Baldur.exe, Icewind.exe or SiegeOfDragonspear.exe) or using shortucts that link to those game exe-cutables. You must click on the EEex.exe, or create a shortcut that links to EEex.exe instead. EEex.exe can be foundin your game’s folder.
Note: Uninstall - You can run setup-EEex.exe in your game folder to reinstall, uninstall or otherwise changecomponents.
1.3.2 Mac OS X Installation
EEex for Mac OS X is distributed as a compressed tarball and includes a WeiDU installer.
To install:
• Extract the files from the tarball into your game directory. When properly extracted, your game directory willcontain setup-EEex, setup-EEex.command, and the folder EEex.
• Double-click setup-EEex.command and follow the instructions on screen.
Note: Once EEex is installed, you will not be able to start the game by executing the main game program (Baldur,Icewind or SiegeOfDragonspear) or using shortucts that link to those game programs. You must execute theEEex program, or create a shortcut that links to EEex program instead. EEex can be found in your game’s folder.
Note: Uninstall - You can run setup-EEex.command in your game folder to reinstall, uninstall or otherwisechange components.
1.3.3 Linux
EEex for Linux is distributed as a compressed tarball and does not include a WeiDU installer.
To install:
• Extract the contents of the mod to the folder of the game you wish to modify.
• Download the latest version of WeiDU for Linux from WeiDU.org and copy WeiDU and WeInstall to /usr/bin.
• Open a terminal, and change to your game installation directory, by using the cd command.
• Run tolower and answer Y to both queries. Note: you can avoid running the second option (linux.ini)if you’ve already ran it once in the same directory. To save time, the archive is already tolowered, so there’s noneed to run the first option (lowercasing file names) either if you’ve extracted only this mod since the last timeyou lowercased file names. If you’re unsure, running tolower and choosing both options is the safe bet.
• Run WeInstall EEex in your game folder.
• Run wine EEex.exe and start playing.
1.3. Installation 5
EEex Documentation, Release 1.0
Note: Once EEex is installed, you will not be able to start the game by clicking on the main game executable(Baldur.exe, Icewind.exe or SiegeOfDragonspear.exe) or using shortucts that link to those game exe-cutables. You must click on the EEex.exe, or create a shortcut that links to EEex.exe instead. EEex.exe can be foundin your game’s folder.
Note: Uninstall - In addition to the methods above for removing individual components, you can completely unin-stall the mod using setup-EEex --uninstall at the command line to remove all components without wadingthrough prompts.
Note: Siege of Dragonspear from Steam/GOG - Good Old Games (GOG) and Steam both package the additionalcontent for Siege of Dragonspear in a method that WeiDU, the tool used to install this mod, cannot access. You mustrun a program called Modmerge on your SoD installation before you can install this or any other WeiDU-based mod.
Note: Beamdog Enhanced Editions - The Enhanced Editions are actively supported games. Please note that everypatch update will wipe your current mod setup! If in the middle of a modded game you might want to delay the patchupdate (if possible) as even after reinstalling the mods, you might not be able to continue with your old savegames.Alternatively, copy the whole game’s folder into a new one that can be modded and will stay untouched by gamepatches. For BG:EE it is important that you install the mod to the language version you are playing the game in.Otherwise, the dialogues of the mod will not show but give error messages.
1.4 Frequently Asked Questions
• What does EEex do?
• What do I need to do to install EEex?
• I’m a modder, how do I use EEex?
• How do I add to the EEex documentation?
• How do I report a bug?
• What is EEex and why is it important?
• Would EEex allow for more than 6 characters in the party simultaneously?
• Does EEex allow the execution of arbitrary executable programs on the user’s computer?
• Would EEex allow for x?
1.4.1 What does EEex do?
EEex, when installed, directly modifies the game’s executable in order to insert a loader. This loader is used to alterthe game’s code on startup; the modifications that are made depend on the version of EEex installed, and any installedmods that make use of EEex’s capabilities. For more in depth information about what the EEex loader does and howit does it, see: EEexLoader Technical Details
6 Chapter 1. Introduction
EEex Documentation, Release 1.0
1.4.2 What do I need to do to install EEex?
EEex is installed just as any other WeiDU mod. Simply extract the archive’s contents into your game’s base folder,and run the setup - it will take care of the rest. Please note that since EEex alters the game executable itself, you shouldensure that the game is closed before running the installer! See the Getting Started section for more details.
Note: EEex is currently in alpha, and as such it is highly unstable. All immediate crashes are believed to be fixed,though you still risk a crash at any time. Use with care.
1.4.3 I’m a modder, how do I use EEex?
EEex makes changes to many different parts of the engine. Accessing and making use of new opcodes, actions,triggers, and objects is as simple as installing EEex.
The real power of EEex, however, comes from its ability to change hardcoded engine behavior. The hooks that enablethese alterations are completely defined and controlled by the Lua environment, and as such, modders wishing to usethese systems will have to either:
• Insert a M_*.lua file into the game’s override folder.
• Edit UI.MENU directly.
Note: The EEex weidu installer handles all of this automatically for you now, allowing you to leverage the use of theEEex framework in your own lua code
1.4.4 How do I add to the EEex documentation?
Please follow the Contributing guide for details on how to add to, or edit, the EEex documentation.
1.4.5 How do I report a bug?
If you should encounter any bugs, please report them to the authors at the EEex beamdog forum. In addition, EEex isavailable on GitHub, so fixes and changes can be submitted by the community.
When reporting, please state any installed mods, steps that lead to the crash, and upload the generated crash dump file(.dmp) located in My Documents\<EE Game Folder>\crash.
1.4.6 What is EEex and why is it important?
In short, EEex is a bit like what ToBEx is to the original games, an extender that allows temporarymodifications of the game’s executable, allowing changes to hardcoded mechanics. Since its inception,several actions that were previously beyond the reach of modders have been made possible.
—Shin
1.4.7 Would EEex allow for more than 6 characters in the party simultaneously?
No, due to engine hard coding many times in the executable.
1.4. Frequently Asked Questions 7
EEex Documentation, Release 1.0
1.4.8 Does EEex allow the execution of arbitrary executable programs on the user’scomputer?
Not any more than a weidu mod, a batch file, or any other mod related programs, or mod related setup/install tools youmight download and run.
1.4.9 Would EEex allow for x?
Mostly implementing or allowing for x is about a specific mod being created by a modder to handle x. So its up tomodders to implement if possible, which might take considerable time and effort, or it might not be feasable.
Please note, a lot of things that may be suggested, more than likely, can already be done in the EE game engine withoutthe use of EEex.
EEex might help in some cases or may not be relevant at all.
8 Chapter 1. Introduction
CHAPTER 2
EEex Functions
Note: The EEex functions are located in the lua files provided by the EEex weidu installer and installed into theoverride folder of the EE game. The functions have been organised into related categories to better navigate andbrowse.
2.1 2DA
2.1.1 EEex_2DAGetAtStrings
EEex_2DAGetAtStrings(C2DArray, columnString, rowString)
Returns a string from a 2D array based on the specified column and row
Parameters
• C2DArray - the 2D array C2DArray structure that stores the data
• columnString - the text of the column name to lookup and fetch string for
• rowString - the text of the row name to lookup and fetch string for
Return
Returns a string from the specified column and row in the 2D array
Example
EEex_xp = EEex_2DALoad("EEEX__XP")xpatlvl10 = EEex_2DAGetAtStrings(EEex_xp, "xp", "10")
See Also
EEex_2DALoad, C2DArray
9
EEex Documentation, Release 1.0
2.1.2 EEex_2DALoad
EEex_2DALoad(_2DAResref)
Loads a two dimensional (2D) resource - a .2da text based file that stores game data (typically rules etc) in columnsand rows - into a C2DArray structure
Parameters
• _2DAResref - resource reference of the 2da file to load into a C2DArray structure
Return
Returns a C2DArray
Example
EEex_Str = EEex_2DALoad("EEEX_STR")
See Also
EEex_2DAGetAtStrings, C2DArray
Function DescriptionEEex_2DAGetAtStrings Returns a string from a column and row of a 2DA arrayEEex_2DALoad Loads a .2DA file and returns a 2DA array
2.2 Action
2.2.1 EEex_AddActionHook
EEex_AddActionHook(func)
Add a function to an ActionHook
Parameters
• func
Return
None
Example
The following function is an example of how a modder could use this file’s hook to dynamically transform an actor-targeted spell into a point-targeted one instead. (Put the following function either in UI.MENU or a M_*.lua)
function B3SpellToPoint(actorID)EEex_AddActionHook(function(actionData)
local spellActions = {[31] = 95 , -- Spell => SpellPoint[113] = 114, -- ForceSpell => ForceSpellPoint[181] = 337, -- ReallyForceSpell => ReallyForceSpellPoint[191] = 192, -- SpellNoDec => SpellPointNoDec
}local newActionID = spellActions[EEex_GetActionID(actionData)]
(continues on next page)
10 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
(continued from previous page)
if newActionID thenEEex_SetActionID(actionData, newActionID)local targetID = EEex_GetActionTarget(actionData)local targetX, targetY = EEex_GetActorLocation(targetID)EEex_SetActionPointX(actionData, targetX)EEex_SetActionPointY(actionData, targetY)
endend)
end
Used from a script like so:
EEex_Lua("B3SpellToPoint")SpellNoDecRES("SPWI304",Player1)
See Also
EEex_InstallActionHook, EEex_HookAction
2.2.2 EEex_EvalActionsAsActor
EEex_EvalActionsAsActor(CAIScriptFile, actorID)
Executes compiled actions returned by EEex_ParseActionsString. Results practically identical to using C:Eval(),though note that executing compiled actions is significantly faster than parsing the actions string every call.
Parameters
• CAIScriptFile - compiled script object to evaluate
• actorID - id of actor that evaluation applies to
Return
None
Example
EEex_EvalActionsAsActor(CAIScriptFile, actorID)
See Also
EEex_ParseActionsString, EEex_EvalActionsStringAsActor
2.2.3 EEex_EvalActionsAsActorResume
EEex_EvalActionsAsActorResume(CAIScriptFile, actorID)
Executes compiled actions returned by EEex_ParseActionsString. Note that due to intentional design, the followingfunction attempts to resume the currently executing action after forcing the passed actions.
** ONLY WORKS CORRECTLY FOR ACTIONS DEFINED IN INSTANT.IDS **
Parameters
• CAIScriptFile - compiled script object to evaluate
• actorID - id of actor that evaluation applies to
2.2. Action 11
EEex Documentation, Release 1.0
Return
None
Example
EEex_EvalActionsAsActorResume()
See Also
EEex_ParseActionsString, EEex_EvalActionsAsActor, EEex_EvalActionsStringAsActor,EEex_EvalActionsStringAsActorResume
2.2.4 EEex_EvalActionsStringAsActor
EEex_EvalActionsStringAsActor(string, actorID)
Same as EEex_EvalActionsAsActor, though intead of passing a compiled script object, this function compiles the scriptfrom the given string and frees the resulting script object for you. Use this function sparingly, as compiling scriptstakes a good amount of time.
Parameters
• string - string containing script actions to evaluate
• actorID - id of actor that evaluation applies to
Return
None
Example
EEex_EvalActionsStringAsActor()
See Also
EEex_EvalActionsAsActor, EEex_EvalActionsStringAsActorResume
2.2.5 EEex_EvalActionsStringAsActorResume
EEex_EvalActionsStringAsActorResume(string, actorID)
Same as EEex_EvalActionsAsActorResume, though intead of passing a compiled script object, this function compilesthe script from the given string and frees the resulting script object for you. Use this function sparingly, as compilingscripts takes a good amount of time.
Parameters
• string - string containing script actions to evaluate
• actorID - id of actor that evaluation applies to
Return
Example
EEex_EvalActionsStringAsActorResume()
12 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
See Also
EEex_EvalActionsAsActor, EEex_EvalActionsStringAsActor, EEex_EvalActionsAsActorResume
2.2.6 EEex_FreeActions
EEex_FreeActions(CAIScriptFile)
Frees the compiled scripts returned by EEex_ParseActionsString. Ensure that the freed actions are never used again,as attempting to reference freed actions will result in a crash.
Parameters
• CAIScriptFile - compiled script object to free
Return
None
Example
EEex_FreeActions()
See Also
EEex_ParseActionsString, EEex_EvalActionsAsActor, EEex_EvalActionsStringAsActor,EEex_EvalActionsStringAsActorResume
2.2.7 EEex_GetActionID
EEex_GetActionID(actionData)
Get id of action data
Parameters
• actionData - action data to return id for
Return
Returns action id of action data
Example
EEex_GetActionID()
See Also
EEex_SetActionID, EEex_GetActionTarget, EEex_SetActionTarget
2.2.8 EEex_GetActionPointX
EEex_GetActionPointX(actionData)
Get x coordinate for action data
Parameters
• actionData - action data to return x coordinate for
2.2. Action 13
EEex Documentation, Release 1.0
Return
Returns x coordinate of action data
Example
EEex_GetActionPointX()
See Also
EEex_GetActionPointY , EEex_SetActionPointX, EEex_SetActionPointY
2.2.9 EEex_GetActionPointY
EEex_GetActionPointY(actionData)
Get y coordinate for action data
Parameters
• actionData - action data to return y coordinate for
Return
Returns y coordinate of action data
Example
EEex_GetActionPointY()
See Also
EEex_GetActionPointX, EEex_SetActionPointX, EEex_SetActionPointY
2.2.10 EEex_GetActionString1
EEex_GetActionString1(actionData)
Get action string for action data
Parameters
• actionData - action data to return action string for
Return
Returns action string of action data
Example
EEex_GetActionString1()
See Also
EEex_SetActionString1
14 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.2.11 EEex_GetActionTarget
EEex_GetActionTarget(actionData)
Get target for action data
Parameters
• actionData - action data to return target for
Return
Returns target of action data
Example
EEex_GetActionTarget()
See Also
EEex_GetActionID, EEex_SetActionID, EEex_SetActionTarget
2.2.12 EEex_GetActorCurrentAction
EEex_GetActorCurrentAction(actorID)
Returns the ID of the action the actor is currently doing, based on ACTION.IDS
Parameters
• actorID - the actor’s id to return the ID of the action the actor is currently doing
Return
Returns a WORD value indicating the action id based on ACTION.IDS
Notes
if the actor is currently moving to a point, it will return 23 because MoveToPoint() is action 23 in ACTION.IDS. Ifthe actor isn’t doing anything, it will return 0.
Example
local actionID = EEex_GetActorCurrentAction(actorID)
2.2.13 EEex_ParseActionsString
EEex_ParseActionsString(string)
Parses the given string as if it was fed through C:Eval() and returns the compiled script object, (only filled with actions).Use in conjunction with one of the EEex_EvalActions* functions.
Free compiled scripts by using EEex_FreeActions
Parameters
• string - string containing script actions to evaluate and compile
2.2. Action 15
EEex Documentation, Release 1.0
Return
Returns a compiled script object CAIScriptFile
Example
EEex_ParseActionsString()
See Also
EEex_EvalActionsAsActor, EEex_EvalActionsAsActorResume, EEex_EvalActionsStringAsActor,EEex_EvalActionsStringAsActorResume, EEex_FreeActions
2.2.14 EEex_SetActionID
EEex_SetActionID(actionData, newID)
Set new id of action data
Parameters
• actionData - action data to set id for
• newID - new action id to set
Return
Returns new action id of action data
Example
EEex_SetActionID()
See Also
EEex_GetActionID, EEex_GetActionTarget, EEex_SetActionTarget
2.2.15 EEex_SetActionPointX
EEex_SetActionPointX(actionData, newX)
Set x coordinate of action data
Parameters
• actionData - action data to set x coordinate for
• newX - new x coordinate to set
Return
Returns new x coordinate of action data
Example
EEex_SetActionPointX()
See Also
EEex_GetActionPointX, EEex_GetActionPointY , EEex_SetActionPointY
16 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.2.16 EEex_SetActionPointY
EEex_SetActionPointY(actionData, newY)
Set y coordinate of action data
Parameters
• actionData - action data to set y coordinate for
• newY - new y coordinate to set
Return
Returns new y coordinate of action data
Example
EEex_SetActionPointY()
See Also
EEex_GetActionPointX, EEex_GetActionPointY , EEex_SetActionPointX
2.2.17 EEex_SetActionString1
EEex_SetActionString1(actionData, newString1)
Set action string of action data
Parameters
• actionData - action data to set action string for
• newString1 - new action string to set
Return
Returns new action string of action data
Example
EEex_SetActionString1()
See Also
EEex_GetActionString1
2.2.18 EEex_SetActionTarget
EEex_SetActionTarget(actionData, newTarget)
Set target of action data
Parameters
• actionData - action data to set target for
• newTarget - new target to set
2.2. Action 17
EEex Documentation, Release 1.0
Return
Returns new target of action data
Example
EEex_SetActionTarget()
See Also
EEex_GetActionID, EEex_SetActionID, EEex_GetActionTarget
Function DescriptionEEex_AddActionHook Add a function to an action hookEEex_EvalActionsAsActor Evaluate compiled script actions as an actorEEex_EvalActionsAsActorResume Evaluate actions as an actor and continueEEex_EvalActionsStringAsActor Evaluate script actions string as an actorEEex_EvalActionsStringAsActorResume Evaluate actions strings as actor and continueEEex_FreeActions Free assigned actionsEEex_GetActionID Get action idEEex_GetActionPointX Get x coordinate of an actionEEex_GetActionPointY Get y coordinate of an actionEEex_GetActionString1 Get the action string for an actionEEex_GetActionTarget Get the target of an actionEEex_GetActorCurrentAction Get actors currently assigned actionEEex_ParseActionsString Parse action stringEEex_SetActionID Set action idEEex_SetActionPointX Set x coordinate of an actionEEex_SetActionPointY Set y coordinate of an actionEEex_SetActionString1 Set the action string of an actionEEex_SetActionTarget Set the target of an action
2.3 ActionBar
2.3.1 EEex_AddActionbarListener
EEex_AddActionbarListener(func)
Add a listener function to the actionbar
Parameters
• func - the Lua function to add as a listener for the actionbar
Return
None
Example
--[[
The following function is an example of how a modder could use this file'shook to dynamically change an Inquisitor's useless Turn Undead button forBard Song. Put the following function either in UI.MENU or a M_*.lua
(continues on next page)
18 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
(continued from previous page)
--]]
function B3ActionbarListener(config)local actorID = getActorIDSelected()if
config == 0x5and getActorClass(actorID) == 0x6and getActorKit(actorID) == 0x4005
thensetActionbarButton(0x5, ACTIONBAR_TYPE.BARD_SONG)
endendEEex_AddActionbarListener(B3ActionbarListener)
See Also
EEex_InstallActionbarHook, EEex_HookActionbar
2.3.2 EEex_GetActionbarButton
EEex_GetActionbarButton(buttonIndex)
Retrieves the button type of a specific button on the actionbar
Parameters
• buttonIndex - the index of the button on the actionbar
Return
Returns the type of the button, see Actionbar button types for details
Actionbar button types
Button Type ID Button Type Notes0 Left Arrow1 Right Arrow2 Bard Song3 Cast Spell4 Find Traps5 Talk6 Unknown / Blank7 Guard8 Attack9 Shape Change10 Special Abilities11 Stealth12 Thieving13 Turn Unded14 Use Item15 Stop16 Quick Formation - Rectangle17 Quick Formation - Defensive Wedge
Continued on next page
2.3. ActionBar 19
EEex Documentation, Release 1.0
Table 1 – continued from previous page18 Quick Formation - T-Shape19 Quick Formation - Offsensive Wedge20 Quick Formation - Circle21 Quick Item 122 Quick Item 223 Quick Item 324 Quick Spell 125 Quick Spell 226 Quick Spell 327 Quick Weapon 128 Quick Weapon 229 Quick Weapon 330 Quick Weapon 443 Left Arrow44 Right Arrow67 Crashes game - dont use100 None
Note: other button types not listed may be available, but typically are used internally for spell buttons and otherdynamic buttons for the game engine.
Example
btnType = EEex_GetActionbarButton(1)
See Also
EEex_SetActionbarButton
2.3.3 EEex_GetActionbarButtonFrame
EEex_GetActionbarButtonFrame(buttonIndex)
Returns the current frame of the actionbar button at buttonIndex, taking into account the click status.
Parameters
• buttonIndex - the index of the button on the actionbar
Return
Returns the current frame
Example
frame = EEex_GetActionbarButtonFrame(3)
See Also
EEex_GetActionbarButton, EEex_SetActionbarButton
2.3.4 EEex_GetActionbarState
20 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
EEex_GetActionbarState()
Gets the state of the actionbar
Parameters
None
Return
Returns the action bar state which can be one of the following:
Unique Config State(s) Notes[0] 1 Mage / Sorcerer[1] 2 Fighter[2] 3 Cleric[3] 4 Thief[4] 5 Bard[5] 6 Paladin[6] 7 Fighter Mage[7] 8 Fighter Cleric[8] 9 Fighter Thief[9] 10 Fighter Mage Thief[10] 11 Druid[11] 12 Ranger[12] 13 Mage Thief[13] 14 Cleric Mage[14] 15 Cleric Thief[15] 16 Fighter Druid[16] 17 Fighter Mage Cleric[17] 18 Cleric Ranger[18] 20 Monk[19] 21 Shaman[20] 101 Select Weapon Ability[21] 102 Spells (Select Quick Spell)[21] 103 Spells (Cast)[22] 104 Select Quick Item Ability[22] 105 Use Item[23] 106 Special Abilities[24] 107 Select Quick Formation[25] 108 Defunct Select Quick Formation (Not used)[26] 109 Group Selected[27] 110 Unknown (No buttons defined; not used?)[28] 111 Internal List (Opcode #214)[29] 112 Controlled (Class doesn’t have a dedicated state)[30] 113 Cleric / Mage Spells (Cast)[30] 114 Cleric / Mage Spells (Select Quick Spell)
Note: “Unique Config” refers to the button types that eventually get set from the state(s) on the right. In a fewinstances the engine reuses the same button configuration for multiple purposes. You can see this in the Spells config;one state is for setting a quick button, while another is actually for casting.
2.3. ActionBar 21
EEex Documentation, Release 1.0
Notes
Actionbar listeners now pass the state as the second param, like this
function B3DebugPrintActionbar(config, state)Infinity_DisplayString("config: "..config..", state: "..state)
endEEex_AddActionbarListener(B3DebugPrintActionbar)
You can catch the “Cast Spell” actionbar state like this:
function B3DetectCastSpell(config, state)if state == 103 then
-- Cast Spell opened, no matter the sourceend
endEEex_AddActionbarListener(B3DetectCastSpell)
Example
local state = EEex_GetActionbarState()
See Also
EEex_SetActionbarState
2.3.5 EEex_GetLastActionbarState
EEex_GetLastActionbarState()
Gets the last state of the actionbar
Parameters
None
Return
Returns the action bar state which can be one of the following:
Unique Config State(s) Notes[0] 1 Mage / Sorcerer[1] 2 Fighter[2] 3 Cleric[3] 4 Thief[4] 5 Bard[5] 6 Paladin[6] 7 Fighter Mage[7] 8 Fighter Cleric[8] 9 Fighter Thief[9] 10 Fighter Mage Thief[10] 11 Druid[11] 12 Ranger[12] 13 Mage Thief[13] 14 Cleric Mage[14] 15 Cleric Thief
Continued on next page
22 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Table 3 – continued from previous page[15] 16 Fighter Druid[16] 17 Fighter Mage Cleric[17] 18 Cleric Ranger[18] 20 Monk[19] 21 Shaman[20] 101 Select Weapon Ability[21] 102 Spells (Select Quick Spell)[21] 103 Spells (Cast)[22] 104 Select Quick Item Ability[22] 105 Use Item[23] 106 Special Abilities[24] 107 Select Quick Formation[25] 108 Defunct Select Quick Formation (Not used)[26] 109 Group Selected[27] 110 Unknown (No buttons defined; not used?)[28] 111 Internal List (Opcode #214)[29] 112 Controlled (Class doesn’t have a dedicated state)[30] 113 Cleric / Mage Spells (Cast)[30] 114 Cleric / Mage Spells (Select Quick Spell)
Note: “Unique Config” refers to the button types that eventually get set from the state(s) on the right. In a fewinstances the engine reuses the same button configuration for multiple purposes. You can see this in the Spells config;one state is for setting a quick button, while another is actually for casting.
Example
local laststate = EEex_GetLastActionbarState()
See Also
EEex_SetActionbarState, EEex_GetActionbarState
2.3.6 EEex_GetQuickButtons
Returns a list of quick slot buttons
EEex_GetQuickButtons(m_CGameSprite, buttonType, existenceCheck)
Parameters
• m_CGameSprite - pointer to game sprite object
• buttonType - type of button, see notes
• existenceCheck - boolean true or false
Returns
Returns a list of quick buttons
Notes
buttonType values can be one of the following:
2.3. ActionBar 23
EEex Documentation, Release 1.0
Button Type ID Button Type Notes0 Left Arrow1 Right Arrow2 Bard Song3 Cast Spell4 Find Traps5 Talk6 Unknown / Blank7 Guard8 Attack9 Shape Change10 Special Abilities11 Stealth12 Thieving13 Turn Unded14 Use Item15 Stop16 Quick Formation - Rectangle17 Quick Formation - Defensive Wedge18 Quick Formation - T-Shape19 Quick Formation - Offsensive Wedge20 Quick Formation - Circle21 Quick Item 122 Quick Item 223 Quick Item 324 Quick Spell 125 Quick Spell 226 Quick Spell 327 Quick Weapon 128 Quick Weapon 229 Quick Weapon 330 Quick Weapon 443 Left Arrow44 Right Arrow67 Crashes game - dont use100 None
Note: other button types not listed may be available, but typically are used internally for spell buttons and otherdynamic buttons for the game engine.
Example
local m_CGameButtonList = EEex_GetQuickButtons(m_CGameSprite, 2, 0)
See Also
EEex_UseCGameButtonList
2.3.7 EEex_IsActionbarButtonDown
EEex_IsActionbarButtonDown(buttonIndex)
24 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Determines whether a specific button in the actionbar is in the down state (being clicked)
Parameters
• buttonIndex - the index of the button on the actionbar
Return
Returns true if the actionbar button is being clicked, otherwise returns false
Example
EEex_IsActionbarButtonDown(1)
See Also
EEex_SetActionbarState, EEex_SetActionbarButton
2.3.8 EEex_SetActionbarButton
EEex_SetActionbarButton(buttonIndex, buttonType)
Sets the button type of a specific button on the actionbar
Parameters
• buttonIndex - the index of the button on the actionbar
• buttonType - the type of the button to set, see Actionbar button types for details
Return
None
Actionbar button types
• "BARD_SONG"
• "CAST_SPELL"
• "FIND_TRAPS"
• "TALK"
• "GUARD"
• "ATTACK"
• "SPECIAL_ABILITIES"
• "STEALTH"
• "THIEVING"
• "TURN_UNDEAD"
• "USE_ITEM"
• "STOP"
• "QUICK_ITEM_1"
• "QUICK_ITEM_2"
• "QUICK_ITEM_3"
• "QUICK_SPELL_1"
2.3. ActionBar 25
EEex Documentation, Release 1.0
• "QUICK_SPELL_2"
• "QUICK_SPELL_3"
• "QUICK_WEAPON_1"
• "QUICK_WEAPON_2"
• "QUICK_WEAPON_3"
• "QUICK_WEAPON_4"
• "NONE"
Example
EEex_SetActionbarButton(2, "TURN_UNDEAD")
See Also
EEex_GetActionbarButton
2.3.9 EEex_SetActionbarState
EEex_SetActionbarState(actionbarConfig)
Sets the state of the actionbar
Parameters
• actionbarConfig
Return
None
Example
EEex_SetActionbarState()
See Also
EEex_GetActionbarState
2.3.10 EEex_UpdateActionbar
EEex_UpdateActionbar()
Forces the actionbar to refresh its state. Use if making changes with EEex_SetActionbarButton outside of an actionbarlistener.
Parameters
None
Return
None
Example
26 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
EEex_UpdateActionbar()
See Also
EEex_SetActionbarButton, EEex_GetActionbarButton
2.3.11 EEex_UseCGameButtonList
Return the specified button’s action data
EEex_UseCGameButtonList(m_CGameSprite, m_CGameButtonList, resref, action)
Parameters
• m_CGameSprite - pointer to game sprite object
• m_CGameButtonList - pointer to button list data from EEex_GetQuickButtons
• resref - an existing button’s resource reference to return button action data for
• action - return button action data
Returns
None
Notes
Returns button action data via the action parameter
Example
EEex_UseCGameButtonList(m_CGameSprite, m_CGameButtonList, resref, function(m_→˓CButtonData)
See Also
EEex_GetQuickButtons, EEex_ReadySpell
Function DescriptionEEex_AddActionbarListener Add a listener function to the actionbarEEex_GetActionbarButton Retrieves the type of an actionbar buttonEEex_GetActionbarButtonFrame Returns the current frame of the actionbar buttonEEex_GetActionbarState Returns the state of the actionbarEEex_GetLastActionbarState Returns the last state of the actionbarEEex_GetQuickButtons Returns a list of quick slot buttonsEEex_IsActionbarButtonDown Determines if an actionbar button is being clickedEEex_SetActionbarButton Sets the type of an actionbar buttonEEex_SetActionbarState Sets the state of the actionbarEEex_UpdateActionbar Forces the actionbar to refresh its stateEEex_UseCGameButtonList Return the specified button’s action data
See Also
CInfButtonArray Class, CInfButtonArray Structure
2.3. ActionBar 27
EEex Documentation, Release 1.0
2.4 Retrieving actor IDs
2.4.1 EEex_GetActorIDArea
EEex_GetActorIDArea(actorID)
Returns an array of actor id’s in an area based on the area that the specified actorID is currently in
Parameters
• actorID - the id of the actor to use
Return
Returns array of actor ids
Notes
Offset 0x14 of CGameObject is m_pArea. Iterates through the actors in m_pArea via EEex_IterateActorIDs
Example
EEex_GetActorIDArea()
See Also
EEex_GetActorIDShare, EEex_IterateActorIDs
2.4.2 EEex_GetActorIDCursor
EEex_GetActorIDCursor()
Returns actor id that is currently under the cursor (mouse pointer)
Parameters
None
Return
Returns a DWORD value representing actor id or 0 if no actor is under the cursor
Notes
Reads
• CBaldurChitin.m_pObjectGame (m_pObjectGame is CInfGame*)
• CInfGame.m_visibleArea (offset 0x3DA0).
Uses m_visibleArea to read array index of CInfGame.m_gameAreas[12] (offset 0x3DA4). CIn-fGame.m_gameAreas[12] is an array of pointers to CGameArea structures.
Reads offset 0x21C of CGameArea and reads the value. If the value is -1 it will return 0, otherwise returns the valueread.
Example
local curid = EEex_GetActorIDCursor()
See Also
EEex_GetActorIDShare, EEex_IterateActorIDs
28 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.4.3 EEex_GetActorIDLoaded
EEex_GetActorIDLoaded()
Returns an array of actor id’s loaded in the current area
Parameters
None
Return
Returns array of actor ids
Example
EEex_GetActorIDLoaded()
See Also
EEex_GetActorIDShare, EEex_IterateActorIDs
2.4.4 EEex_GetActorIDPortrait
EEex_GetActorIDPortrait(slot)
Returns the actor id for the specified portrait slot
Parameters
• slot - slot id to return actor id for
Return
Returns the actor id for the specified portrait slot
Notes
Internally calls the CInfGame Class method: long CInfGame::GetCharacterId(short nPortrait)
Example
local charid = EEex_GetActorIDPortrait(1)
See Also
EEex_GetActorIDShare, EEex_IterateActorIDs, CInfGame Class, CInfGame::GetCharacterId
2.4.5 EEex_GetActorIDSelected
EEex_GetActorIDSelected()
Returns actor id of currently selected character
Parameters
None
Return
Returns the actor id of currently selected character or 0
2.4. Retrieving actor IDs 29
EEex Documentation, Release 1.0
Notes
Reads:
• CBaldurChitin.m_pObjectGame (m_pObjectGame is CInfGame*)
• CInfGame.m_group (m_group is CAIGroup*)
• CAIGroup.m_memberList (m_memberList is CTypedPtrList*)
• CTypedPtrList.m_cPtrList (m_cPtrList is CPtrList*)
• CPtrList.m_pNodeHead (m_pNodeHead is CPtrList::CNode*)
If m_pNodeHead is not 0 then reads CPtrList::CNode.data and returns the value as actor id otherwise returns 0
Example
EEex_GetActorIDSelected()
See Also
EEex_GetAllActorIDSelected, EEex_GetActorIDShare, EEex_IterateActorIDs
2.4.6 EEex_GetActorIDShare
EEex_GetActorIDShare(share)
Returns the actorID for the given share / creatureData.
Parameters
• share - pointer to the share (CGameObject)
Return
Returns a DWORD value from CGameObject.m_id
Notes
Similar to using this CAIObjectType Class method: CGameObject* CAIObjectType::GetShare(CGameAIBase*caller, int checkBackList) and reading offset 0x34 of the returned CGameObject
Example
EEex_GetActorIDShare()
See Also
EEex_IterateActorIDs, CGameObject, CAIObjectType Class, CAIObjectType::GetShare
2.4.7 EEex_GetAllActorIDSelected
EEex_GetAllActorIDSelected()
Returns an array of actor id’s that are selected
Parameters
None
Return
30 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Returns array of actor ids
Example
EEex_GetAllActorIDSelected()
See Also
EEex_GetActorIDSelected, EEex_GetActorIDShare, EEex_IterateActorIDs
2.4.8 EEex_IterateActorIDs
EEex_IterateActorIDs(m_gameArea, func)
Iterates through all actors in an area
Parameters
• m_gameArea - CGameArea
• func -
Return
Special
Example
EEex_IterateActorIDs()
See Also
EEex_GetActorIDShare
Function DescriptionEEex_GetActorIDArea Returns an array of actor id’s in an areaEEex_GetActorIDCursor Returns actor id that is currently under the cursorEEex_GetActorIDLoaded Returns an array of actor id’s loaded in areaEEex_GetActorIDPortrait Returns the actor id for specified portrait slotEEex_GetActorIDSelected Returns actor id of currently selected characterEEex_GetActorIDShare Returns the actorID for the share / creatureDataEEex_GetAllActorIDSelected Returns an array of actor id’s that are selectedEEex_IterateActorIDs Iterates through all actors in an area
2.5 Actor
2.5.1 EEex_AlterActorEffect
EEex_AlterActorEffect(actorID, match_table, set_table, multi_match)
This is basically like the WeiDU ALTER_EFFECT function, except that it alters effects in the middle of the game
Parameters
• actorID - actor id
2.5. Actor 31
EEex Documentation, Release 1.0
• match_table - match table
• set_table - set table
• multi_match - no of matches
Return
None
Example
EEex_AlterActorEffect(actorID, {{"opcode",232},{"parameter2",0},{"resource","SPWI304"}→˓}, {{"resource","SPWI502"}}, 2)
-- equals-- LPF ALTER_EFFECT INT_VAR multi_match=2 match_opcode=232 match_parameter2=0 STR_VAR→˓match_resource=~SPWI304~ resource=~SPWI502~ END
2.5.2 EEex_ApplyEffectToActor
EEex_ApplyEffectToActor(actorID, args)
Directly applies an effect to an actor based on the args table
Parameters
• actorID - the actor id to apply effect to
• args - args table
Return
None
Example
EEex_ApplyEffectToActor(damagerID, {["opcode"] = 146,["target"] = 2,["timing"] = 9,["parameter1"] = casterlvl,["parameter2"] = 2,["resource"] = hit_spell,["source_target"] = damagerID,["source_id"] = targetID
})
2.5.3 EEex_GetActorAlignment
EEex_GetActorAlignment(actorID)
Return alignment of actor
Parameters
• actorID - actor id to return alignment for
32 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Return
Returns a BYTE value indicating alignment
Example
local align = EEex_GetActorAlignment(actorID)
See Also
EEex_GetActorAlignment, EEex_GetActorAllegiance, EEex_GetActorClass, EEex_GetActorGender,EEex_GetActorKit, EEex_GetActorName, EEex_GetActorRace
2.5.4 EEex_GetActorAllegiance
EEex_GetActorAllegiance(actorID)
Returns the actor’s allegiance
Parameters
• actorID - actor id to return allegiance for
Return
Returns a BYTE value indicating allegiance
Example
local loyality = EEex_GetActorAllegiance(actorID)
See Also
EEex_GetActorAlignment, EEex_GetActorClass, EEex_GetActorGender, EEex_GetActorKit, EEex_GetActorName,EEex_GetActorRace
2.5.5 EEex_GetActorAnimation
EEex_GetActorAnimation(actorID)
Returns the actor’s animation, (as defined in ANIMATE.IDS; stored at offset 0x28 of the .CRE, or optionally overri-den by the actor structure at offset 0x30)
Parameters
• actorID - the actor id to return the animation for
Return
Example
EEex_GetActorAnimation()
2.5.6 EEex_GetActorAreaRes
EEex_GetActorAreaRes(actorID)
2.5. Actor 33
EEex Documentation, Release 1.0
Returns the actor’s current area resref as a string. If the game was just loaded, sometimes the actor doesn’t know whatarea they’re in yet, so it’ll return “” in that case.
Parameters
• actorID - the actor’s id to get the current area for
Return
Returns a string indicating the area for the current actor
Example
local area = EEex_GetActorAreaRes(actorID)
See Also
EEex_GetActorAreaSize
2.5.7 EEex_GetActorAreaSize
EEex_GetActorAreaSize(actorID)
Gets the maximum X and Y coordinates of the area the actor is in (for outside areas the numbers are usually in thethousands). If the game was just loaded, sometimes it will return 0 for both coordinates because the actor doesn’t havea pointer to the area yet.
Parameters
• actorID - the actor’s id to get the current max area coordinates for
Return
Returns an x and y value
Example
local areaX, areaY = EEex_GetActorAreaSize(actorID)
See Also
EEex_GetActorAreaRes
2.5.8 EEex_GetActorBaseCharisma
EEex_GetActorBaseCharisma(actorID)
Returns the actor’s base charisma, (defined at offset 0x23E of the .CRE)
Parameters
• actorID - the actor id to return the base charisma for
Return
Returns the base charisma as a byte value
Example
local bascharisma = EEex_GetActorBaseCharisma(actorID)
34 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
See Also
EEex_GetActorBaseConstitution, EEex_GetActorBaseDexterity, EEex_GetActorBaseIntelligence,EEex_GetActorBaseStrength, EEex_GetActorBaseWisdom
2.5.9 EEex_GetActorBaseConstitution
EEex_GetActorBaseConstitution(actorID)
Returns the actor’s base constitution, (defined at offset 0x23D of the .CRE)
Parameters
• actorID - the actor id to return the base constitution for
Return
Returns the base constitution as a byte value
Example
local basecon = EEex_GetActorBaseConstitution(actorID)
See Also
EEex_GetActorBaseCharisma, EEex_GetActorBaseDexterity, EEex_GetActorBaseIntelligence,EEex_GetActorBaseStrength, EEex_GetActorBaseWisdom
2.5.10 EEex_GetActorBaseDexterity
EEex_GetActorBaseDexterity(actorID)
Returns the actor’s base dexterity, (defined at offset 0x23C of the .CRE)
Parameters
• actorID - the actor id to return the base dexterity for
Return
Returns the base dexterity as a byte value
Example
local basedex = EEex_GetActorBaseDexterity(actorID)
See Also
EEex_GetActorBaseCharisma, EEex_GetActorBaseConstitution, EEex_GetActorBaseIntelligence,EEex_GetActorBaseStrength, EEex_GetActorBaseWisdom
2.5.11 EEex_GetActorBaseIntelligence
EEex_GetActorBaseIntelligence(actorID)
Returns the actor’s base intelligence, (defined at offset 0x23A of the .CRE)
Parameters
2.5. Actor 35
EEex Documentation, Release 1.0
• actorID - the actor id to return the base intelligence for
Return
Returns the base intelligence as a byte value
Example
local baseint = EEex_GetActorBaseIntelligence(actorID)
See Also
EEex_GetActorBaseCharisma, EEex_GetActorBaseConstitution, EEex_GetActorBaseDexterity,EEex_GetActorBaseStrength, EEex_GetActorBaseWisdom
2.5.12 EEex_GetActorBaseStrength
EEex_GetActorBaseStrength(actorID)
Returns the actor’s base strength, (defined at offset 0x238 of the .CRE)
Parameters
• actorID - the actor id to return the base strength for
Return
Returns the base strength as a byte value
Example
local basestength = EEex_GetActorBaseStrength(actorID)
See Also
EEex_GetActorBaseCharisma, EEex_GetActorBaseConstitution, EEex_GetActorBaseDexterity,EEex_GetActorBaseIntelligence, EEex_GetActorBaseWisdom
2.5.13 EEex_GetActorBaseWisdom
EEex_GetActorBaseWisdom(actorID)
Returns the actor’s base wisdom, (defined at offset 0x23B of the .CRE)
Parameters
• actorID - the actor id to return the base wisdom for
Return
Returns the base wisdom as a byte value
Example
local basewis = EEex_GetActorBaseWisdom(actorID)
See Also
EEex_GetActorBaseCharisma, EEex_GetActorBaseConstitution, EEex_GetActorBaseDexterity,EEex_GetActorBaseIntelligence, EEex_GetActorBaseStrength
36 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.5.14 EEex_GetActorCastTimer
EEex_GetActorCastTimer(actorID)
Returns cast counter value for the specified actor
Parameters
• actorID - actor id to return cast counter value for
Return
Returns a value between 0 and 100
Example
casttimervalue = EEex_GetActorCastTimer(actorID)
2.5.15 EEex_GetActorClass
EEex_GetActorClass(actorID)
Returns the actor’s class
Parameters
• actorID - actor id to return class for
Return
Returns a BYTE value indicating class
Example
local targetclass = EEex_GetActorClass(actorID)
See Also
EEex_GetActorAlignment, EEex_GetActorAllegiance, EEex_GetActorGender, EEex_GetActorKit,EEex_GetActorName, EEex_GetActorRace
2.5.16 EEex_GetActorClassScript
EEex_GetActorClassScript(actorID)
Returns the actor’s class script, (defined at offset 0x250 of the .CRE, or optionally overriden by the actor structure atoffset 0x60)
Parameters
• actorID - the actor’s id
Return
Returns a string
Example
local classscript = EEex_GetActorClassScript(actorID)
2.5. Actor 37
EEex Documentation, Release 1.0
See Also
EEex_GetActorDefaultScript, EEex_GetActorGeneralScript, EEex_GetActorOverrideScript,EEex_GetActorRaceScript, EEex_GetActorSpecificsScript
2.5.17 EEex_GetActorClassString
EEex_GetActorClassString(actorID)
Returns actor class as a string
Parameters
• actorID - actor id to return class string for
Return
Returns actor class as a string
Example
local classname = EEex_GetActorClassString()
See Also
EEex_GetActorClass, EEex_GetActorKit
2.5.18 EEex_GetActorCurrentDest
EEex_GetActorCurrentDest(actorID)
Returns actor current destination as an x, y point coordinate
Parameters
• actorID - the actor’s id to return the current destination for
Return
Returns an x, y point coordinate
Example
local destX, destY = EEex_GetActorCurrentDest(actorID)
See Also
EEex_GetActorPosDest, EEex_GetActorMovementRate, EEex_GetActorDirection, EEex_GetActorLocation
2.5.19 EEex_GetActorCurrentHP
EEex_GetActorCurrentHP(actorID)
Returns the actor’s current hit points (HP), (defined at offset 0x24 of the .CRE)
Parameters
• actorID - actor id to return current hit points for
38 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Return
A WORD value indicating the current hit points of the actor
Example
local hp = EEex_GetActorCurrentHP(actorID)
See Also
EEex_GetActorAlignment, EEex_GetActorAllegiance, EEex_GetActorClass, EEex_GetActorGender,EEex_GetActorName, EEex_GetActorKit, EEex_GetActorRace
2.5.20 EEex_GetActorDefaultScript
EEex_GetActorDefaultScript(actorID)
Returns the actor’s default script resref as a string, (defined at offset 0x268 of the .CRE, or optionally overriden bythe actor structure at offset 0x70).
Parameters
• actorID - the actor’s id
Return
Returns a string
Example
local defaultscript = EEex_GetActorDefaultScript(actorID)
See Also
EEex_GetActorClassScript, EEex_GetActorGeneralScript, EEex_GetActorOverrideScript,EEex_GetActorRaceScript, EEex_GetActorSpecificsScript
2.5.21 EEex_GetActorDialogue
EEex_GetActorDialogue(actorID)
Returns the actor’s dialogue resref as a string, (defined at offset 0x2CC of the .CRE, or optionally overriden by theactor structure at offset 0x48).
Parameters
• actorID - the actor’s id
Return
Returns a string
Example
EEex_GetActorDialogue()
2.5. Actor 39
EEex Documentation, Release 1.0
2.5.22 EEex_GetActorDirection
EEex_GetActorDirection(actorID)
Returns the actor’s direction, (as defined in DIR.IDS; stored at offset 0x34 of the actor structure)
Parameters
• actorID - the actor id to return the actor’s direction for
Return
A WORD value indicating direction as defined in DIR.IDS
Example
local attackerDirection = EEex_GetActorDirection(attackerID)local targetDirection = EEex_GetActorDirection(targetID)
See Also
EEex_GetActorRequiredDirection, EEex_GetActorLocation
2.5.23 EEex_GetActorEffectResrefs
EEex_GetActorEffectResrefs(actorID)
Returns a list of effects as resource references
Parameters
• actorID - actor id to return the list of effects for
Return
Returns a list (array/table) of resource references (resrefs)
Example
local effreslist = EEex_GetActorEffectResrefs(actorID)
2.5.24 EEex_GetActorGender
EEex_GetActorGender(actorID)
Returns the actor’s gender
Parameters
• actorID - actor id to return gender for
Return
Returns a BYTE value indicating gender
Example
local gender = EEex_GetActorGender(actorID)
40 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
See Also
EEex_GetActorAlignment, EEex_GetActorAllegiance, EEex_GetActorClass, EEex_GetActorKit,EEex_GetActorName, EEex_GetActorRace
2.5.25 EEex_GetActorGeneral
EEex_GetActorGeneral(actorID)
Returns general
Parameters
• actorID - actor id to return general for
Return
Returns a BYTE value indicating general value
Example
EEex_GetActorGeneral()
2.5.26 EEex_GetActorGeneralScript
EEex_GetActorGeneralScript(actorID)
Returns the actor’s general script resref as a string, (defined at offset 0x260 of the .CRE, or optionally overriden bythe actor structure at offset 0x58).
Parameters
• actorID - the actor’s id
Return
Returns a string
Example
local genscript = EEex_GetActorGeneralScript(actorID)
See Also
EEex_GetActorClassScript, EEex_GetActorDefaultScript, EEex_GetActorOverrideScript,EEex_GetActorRaceScript, EEex_GetActorSpecificsScript
2.5.27 EEex_GetActorKit
EEex_GetActorKit(actorID)
Returns the kit for the actor
Parameters
• actorID - actor id to return the kit for
2.5. Actor 41
EEex Documentation, Release 1.0
Return
Returns a BYTE value indicating kit value
Example
local kitid = EEex_GetActorKit(actorID)
See Also
EEex_GetActorClass, EEex_GetActorClassString
2.5.28 EEex_GetActorLocal
EEex_GetActorLocal(actorID, localName)
Gets a LOCALS variable in the actor’s .CRE as if a GetGlobal(<localName>, “LOCALS”, <value>) script action wasexecuted by the given actor.
Parameters
• actorID - the actor’s id to retrieve the local variable for
• localName - the variable name to retrieve as a local variable
Return
Returns the local variable value
Example
EEex_GetActorLocal(actorID, "quest1completed")
See Also
EEex_SetActorLocal, EEex_GetAreaGlobal, EEex_GetGlobal
2.5.29 EEex_GetActorLocation
EEex_GetActorLocation(actorID)
Returns an x, y point coordinate indicating actor’s location
Parameters
• actorID - the actor’s id to return the location for
Return
Returns an x and y point coordinate
Example
local targetX, targetY = EEex_GetActorLocation(targetID)
See Also
EEex_GetActorDirection, EEex_GetActorRequiredDirection
42 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.5.30 EEex_GetActorModalState
EEex_GetActorModalState(actorID)
Returns the actor’s current modal state, (as defined in MODAL.IDS; stored at offset 0x28 of the global-creaturestructure)
Parameters
• actorID - the actor’s id
Return
Returns the modal state
Example
local state = EEex_GetActorModalState(actorID)
2.5.31 EEex_GetActorModalTimer
EEex_GetActorModalTimer(actorID)
Returns the modal timer value for the actor
Parameters
• actorID - the actor’s id to return the modal timer for
Return
Returns a timer value
Example
EEex_GetActorModalTimer()
See Also
EEex_GetActorModalState
2.5.32 EEex_GetActorMovementRate
EEex_GetActorMovementRate(actorID, adjustForHaste)
Returns the actor’s movement rate
Parameters
• actorID - the actor’s id to return the movement rate for
• adjustForHaste - boolean to adjust movement rate if actor has hasted state
Return
Notes
If the actor has an effect (opcode 126 or 176) that sets their movement rate to 180, it will return 180. If the actor doesnot have a movement-modifying effect, it will return the “move_scale” number in the creature’s animation INI file. If
2.5. Actor 43
EEex Documentation, Release 1.0
adjustForHaste is true, the movement rate number will be doubled if the actor is hasted, and it will be halved if theactor is slowed.
Example
local hastespeed = EEex_GetActorMovementRate(actorID, true)
See Also
EEex_HasState, EEex_GetActorPosDest, EEex_GetActorModalState, EEex_GetActorLocation
2.5.33 EEex_GetActorName
EEex_GetActorName(actorID)
Returns actor’s name as a string
Parameters
• actorID - actor id to return name for
Return
Returns a string containing actor’s name
Example
local name = EEex_GetActorName(actorID)
See Also
EEex_GetActorAlignment, EEex_GetActorAllegiance, EEex_GetActorClass, EEex_GetActorGender,EEex_GetActorKit, EEex_GetActorRace
2.5.34 EEex_GetActorOverrideScript
EEex_GetActorOverrideScript(actorID)
Returns the actor’s override script resref as a string, (defined at offset 0x248 of the .CRE, or optionally overriden bythe actor structure at offset 0x50)
Parameters
• actorID - the actor’s id
Return
Returns a string
Example
local overridescript = EEex_GetActorOverrideScript(actorID)
See Also
EEex_GetActorClassScript, EEex_GetActorDefaultScript, EEex_GetActorGeneralScript, EEex_GetActorRaceScript,EEex_GetActorSpecificsScript
44 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.5.35 EEex_GetActorPosDest
EEex_GetActorPosDest(actorID)
Return the destination position of the actor as an x, y point coordinate
Parameters
• actorID - the actor’s id to return the destination position for
Return
Returns an x, y point coordinate
Example
local destX, destY = EEex_GetActorPosDest(actorID)
See Also
EEex_GetActorCurrentDest, EEex_GetActorMovementRate, EEex_GetActorDirection, EEex_GetActorLocation
2.5.36 EEex_GetActorRace
EEex_GetActorRace(actorID)
Returns the actor’s race
Parameters
• actorID - actor id to return race for
Return
Returns a BYTE value indicating race
Example
local race = EEex_GetActorRace(actorID)
See Also
EEex_GetActorAlignment, EEex_GetActorAllegiance, EEex_GetActorClass, EEex_GetActorGender,EEex_GetActorKit, EEex_GetActorName
2.5.37 EEex_GetActorRaceScript
EEex_GetActorRaceScript(actorID)
Returns the actor’s race script resref as a string, (defined at offset 0x258 of the .CRE, or optionally overriden by theactor structure at offset 0x68)
Parameters
• actorID - the actor’s id
Return
Returns a string
Example
2.5. Actor 45
EEex Documentation, Release 1.0
local racescript = EEex_GetActorRaceScript(actorID)
See Also
EEex_GetActorClassScript, EEex_GetActorDefaultScript, EEex_GetActorGeneralScript,EEex_GetActorOverrideScript, EEex_GetActorSpecificsScript
2.5.38 EEex_GetActorRequiredDirection
EEex_GetActorRequiredDirection(actorID, targetX, targetY)
Returns the direction, (as defined in DIR.IDS), required for the actor to face the given point
Parameters
• actorID - the actor id to return the actor’s direction for the point coordinates specified
• targetX - the x coordinate for actor to face
• targetY - the y coordinate for actor to face
Return
A WORD value indicating direction as defined in DIR.IDS
Example
function EEex_IsActorFacing(sourceID, targetID)local targetX, targetY = EEex_GetActorLocation(targetID)local currentDir = EEex_GetActorDirection(sourceID)local requiredDir = EEex_GetActorRequiredDirection(sourceID, targetX, targetY)return currentDir == requiredDir
end
See Also
EEex_GetActorDirection
2.5.39 EEex_GetActorScriptName
EEex_GetActorScriptName(actorID)
Returns the script name for the actor
Parameters
• actorID - the actor’s id to return the script name for
Return
Returns a string indicating the script name
Example
local sname = EEex_GetActorScriptName(actorID)
46 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.5.40 EEex_GetActorShare
EEex_GetActorShare(actorID)
Returns internal actor information which is used in other functions
Parameters
• actorID - the actor’s id
Return
Returns a pointer to the result of the CGameObjectArray::GetShare call
Examples
function EEex_GetActorIDArea(actorID)local ids = {}local actorShare = EEex_GetActorShare(actorID)local m_pArea = EEex_ReadDword(actorShare + 0x14)EEex_IterateActorIDs(m_pArea, function(areaActorID)
table.insert(ids, areaActorID)end)return ids
end
function EEex_GetActorAreaRes(actorID)if EEex_ReadDword(EEex_GetActorShare(actorID) + 0x14) > 0 then
return EEex_ReadLString(EEex_ReadDword(EEex_GetActorShare(actorID) +→˓0x14), 0x8)
elsereturn ""
endend
2.5.41 EEex_GetActorSpecific
EEex_GetActorSpecific()
Parameters
• 1
• 2
• 3
Return
Example
EEex_GetActorSpecific()
See Also
:ref:, :ref:
2.5. Actor 47
EEex Documentation, Release 1.0
2.5.42 EEex_GetActorSpecificsScript
EEex_GetActorSpecificsScript(actorID)
Returns the actor’s specifics script resref as a string, (defined at offset 0x78 of the actor structure).
Parameters
• actorID - the actor’s id
Return
Returns a string
Example
local specificsscript = EEex_GetActorSpecificsScript(actorID)
See Also
EEex_GetActorClassScript, EEex_GetActorDefaultScript, EEex_GetActorGeneralScript,EEex_GetActorOverrideScript, EEex_GetActorRaceScript
2.5.43 EEex_GetActorSpellRES
EEex_GetActorSpellRES(actorID)
Returns the resref of the spell the actor is either currently casting or is about to cast (waiting for its aura to be cleansed)
Parameters
• actorID - the actor’s id to return the spell resref for
Return
Returns a resource reference string, or “” if the actor is not casting a spell
Example
EEex_GetActorSpellRES()
See Also
EEex_GetActorAreaRes, EEex_GetActorCurrentAction
2.5.44 EEex_GetActorSpellState
Eex_GetActorSpellState(actorID, splstateID)
Returns spell state for the actor
Parameters
• actorID - the actor’s id to return the spell state for the actor
• splstateID - the id of the spell state
48 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Return
Returns the spell state
Example
EEex_GetActorSpellState()
2.5.45 EEex_GetActorSpellTimer
EEex_GetActorSpellTimer()
Parameters
• 1
• 2
• 3
Return
Example
EEex_GetActorSpellTimer()
See Also
:ref:, :ref:
2.5.46 EEex_GetActorStat
EEex_GetActorStat()
Parameters
• 1
• 2
• 3
Return
Example
EEex_GetActorStat()
See Also
:ref:, :ref:
2.5.47 EEex_GetActorTargetID
EEex_GetActorTargetID(actorID)
Returns the ID of the target of the actor’s current action
Parameters
2.5. Actor 49
EEex Documentation, Release 1.0
• actorID - the actor’s id to return the ID of the target of the actor’s current action
Return
Returns an actor id
Notes
If the actor is not targeting another creature (e.g. if the actor is doing nothing, targeting a point, or targeting a container,door, or trap), then it will return 0.
Example
local target = EEex_GetActorTargetID(actorID)
See Also
EEex_GetActorTargetPoint, EEex_GetActorDirection, EEex_GetActorLocation, EEex_IsActorFacing
2.5.48 EEex_GetActorTargetPoint
EEex_GetActorTargetPoint(actorID)
Return the target of the actor as an x, y point coordinate
Parameters
• actorID - the actor’s id to return the target point for
Return
Returns an x, y point coordinate
Example
local targetX, targetY = EEex_GetActorTargetPoint(actorID)
See Also
EEex_GetActorTargetID, EEex_GetActorDirection, EEex_GetActorLocation, EEex_IsActorFacing
2.5.49 EEex_GetImageMasterID
EEex_GetImageMasterID(actorID)
If the actor is an image created by Mislead, Project Image or Simulacrum, this returns the actor ID of the image’smaster. Otherwise, it returns 0
Parameters
• actorID - the actor’s id
Return
Returns actor id or 0
Notes
This first read will get the master ID even if the image doesn’t have a Puppet ID effect. However, that field (0x39F4)gets reset to -1 on a reload, so the function also checks a second field (0x1604)
Example
50 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
EEex_GetImageMasterID()
See Also
EEex_GetSummonerID
2.5.50 EEex_GetSummonerID
EEex_GetSummonerID(actorID)
If the actor is a summoned creature, this returns the actor ID of its summoner
Parameters
• actorID - the actor’s id
Return
Returns actor id or 0
Notes
If the actor is not a summoned creature, or if it’s an image created by Mislead, Project Image or Simulacrum, this willreturn 0. Also, this will return 0 if the creature had already been summoned before the save was loaded.
Example
EEex_GetSummonerID()
See Also
EEex_GetImageMasterID
2.5.51 EEex_HasState
EEex_HasState(actorID, state)
Returns true if the actor has the specified state, based on the numbers in STATE.IDS. For example, if the state parameteris set to 0x8000, it will return true if the actor is hasted or improved hasted, because STATE_HASTE is state 0x8000in STATE.IDS.
Parameters
• actorID - the actor id to check the state for
• state - the state to check
Return
True or false if the actor has the specified state
Example
if EEex_HasState(actorID, 0x8000) then -- If the actor is hastedspeed = speed * 2
endif EEex_HasState(actorID, 0x10000) then -- If the actor is slowed
speed = math.floor(speed / 2)end
2.5. Actor 51
EEex Documentation, Release 1.0
2.5.52 EEex_IsActorFacing
EEex_IsActorFacing(sourceID, targetID)
Returns true if the sourceID actor is facing the exact direction required to face the targetID actor
Parameters
• sourceID - the source actor’s id to check if facing the targetID
• targetID - the target actor’s id to check if sourceID is facing it
Return
Returns true or false
Example
local bFacing = EEex_IsActorFacing(sourceID, targetID)
See Also
EEex_GetActorTargetID, EEex_GetActorTargetPoint, EEex_GetActorDirection, EEex_GetActorLocation,EEex_IsActorFacing
2.5.53 EEex_IsActorInCombat
EEex_IsActorInCombat(actorID, includeDeadZone)
Returns true if the given actor is in combat
Parameters
• actorID - the actor’s id to check if in combat
• includeDeadZone - boolean value, see notes
Return
Returns true or false
Notes
If includeDeadZone is set to true, the time period will be extended to until the battle music fully fades out
Example
local incombat = EEex_IsActorInCombat(actorID, false)
2.5.54 EEex_IsImmuneToOpcode
EEex_IsImmuneToOpcode(actorID, opcode)
Returns true if the actor is immune to the specified opcode
Parameters
• actorID - the actor’s id to check if immune to the specified opcode
• opcode - the opcode to check if actor is immune to
52 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Return
Returns true or false
Example
local bImmune = EEex_IsImmuneToOpcode(actorID, 281)
See Also
EEex_IsImmuneToSpellLevel
2.5.55 EEex_IsImmuneToSpellLevel
EEex_IsImmuneToSpellLevel(actorID, level, includeSpellDeflection)
Returns true if the actor is immune to the specified spell level
Parameters
• actorID - the actor’s id to check if immune to the specified spell level
• level - spell level to check if immune to
• includeSpellDeflection - boolean value, see notes
Return
Returns true or false
Notes
If includeSpellDeflection is true, it will also return true if the actor has a Spell Deflection, Spell Turning or Spell Trapeffect for the specified spell level.
Example
local spelllevel4immune = EEex_IsImmuneToSpellLevel(actorID, 4, true)
See Also
EEex_IsImmuneToOpcode
2.5.56 EEex_IsSprite
EEex_IsSprite(actorID, allowDead)
Returns true if the actor is a creature. Returns false if the actor is BALDUR.BCS, an area script, a door, a container,or a region.
Parameters
• actorID - the actor id to check
• allowDead - a boolean value to allow check for dead creatures or only living ones.
Return
true or false
Notes
2.5. Actor 53
EEex Documentation, Release 1.0
If you get the sourceID of an effect of a fireball from a trap, and you do EEex_IsSprite(sourceID), it will return false.If the source had been a mage casting a fireball, it would’ve returned true.
Example
function EEex_GetActorName(actorID)if not EEex_IsSprite(actorID) then return "" endreturn EEex_ReadString(EEex_ReadDword(EEex_Call(EEex_Label("CGameSprite::GetName"),
→˓ {0x0}, EEex_GetActorShare(actorID), 0x0)))end
2.5.57 EEex_IterateActorEffects
EEex_IterateActorEffects(actorID, func)
For each effect on the actor, the function is passed offset 0x0 of the effect data. The offsets in the effect data are thesame as the offsets in an EFF file
Parameters
• actorID - actor id to iterate effects for
• func - function to call
Return
None
Notes
Table with the effect offsets, along with the size of each one. Names are based on WeiDU function variable namesunless not included in there.
EEex_effOff = {["opcode"] = {0x10, 4},["target"] = {0x14, 4},["power"] = {0x18, 4},["parameter1"] = {0x1C, 4},["parameter2"] = {0x20, 4},["timing"] = {0x24, 4},["duration"] = {0x28, 4},["probability1"] = {0x2C, 2},["probability2"] = {0x2E, 2},["resource"] = {0x30, 8},["dicenumber"] = {0x38, 4},["dicesize"] = {0x3C, 4},["savingthrow"] = {0x40, 4},["savebonus"] = {0x44, 4},["special"] = {0x48, 4},["school"] = {0x4C, 4},["lowestafflevel"] = {0x54, 4},["highestafflevel"] = {0x58, 4},["resist_dispel"] = {0x5C, 4},["parameter3"] = {0x60, 4},["parameter4"] = {0x64, 4},["time_applied"] = {0x6C, 4},["vvcresource"] = {0x70, 8},["resource2"] = {0x78, 8},
(continues on next page)
54 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
(continued from previous page)
["casterx"] = {0x80, 4},["source_x"] = {0x80, 4},["castery"] = {0x84, 4},["source_y"] = {0x84, 4},["targetx"] = {0x88, 4},["target_x"] = {0x88, 4},["targety"] = {0x8C, 4},["target_y"] = {0x8C, 4},["restype"] = {0x90, 4},["effsource"] = {0x94, 8},["parent_resource"] = {0x94, 8},["resource_flags"] = {0x9C, 4},["impact_projectile"] = {0xA0, 4},["sourceslot"] = {0xA4, 4},["effvar"] = {0xA8, 32},["casterlvl"] = {0xC8, 4},["internal_flags"] = {0xCC, 4},["sectype"] = {0xD0, 4},["source_id"] = {0x110, 4}}
Example
-- Will print the opcode number of each effect on the actor
EEex_IterateActorEffects(EEex_GetActorIDCursor(), function(eData)local opcode = EEex_ReadDword(eData + 0x10)Infinity_DisplayString(opcode)
end)
2.5.58 EEex_SetActorLocal
EEex_SetActorLocal(actorID, localName, value)
Sets a LOCALS variable in the actor’s .CRE as if a SetGlobal(<localName>, “LOCALS”, <value>) script action wasexecuted by the given actor.
Parameters
• actorID - the actor’s id to assign the local variable to
• localName - the variable name to set as a local variable
• value - the value to assign to the local variable
Return
Returns the local variable
Example
EEex_SetActorLocal(actorID, "quest1completed", true)
See Also
EEex_GetActorLocal, EEex_GetAreaGlobal, EEex_GetGlobal
2.5. Actor 55
EEex Documentation, Release 1.0
Function DescriptionEEex_AlterActorEffect Alters effects like WeiDU ALTER_EFFECT but ingameEEex_ApplyEffectToActor Directly applies an effect to actor from args tableEEex_GetActorAlignment Return alignment of actorEEex_GetActorAllegiance Returns the actor’s allegianceEEex_GetActorAnimation Returns the actor’s animationEEex_GetActorAreaRes Returns the actor’s current area resref as a stringEEex_GetActorAreaSize Gets the max X and Y coords of area the actor is inEEex_GetActorBaseCharisma Returns the actor’s base charismaEEex_GetActorBaseConstitution Returns the actor’s base constitutionEEex_GetActorBaseDexterity Returns the actor’s base dexterityEEex_GetActorBaseIntelligence Returns the actor’s base intelligenceEEex_GetActorBaseStrength Returns the actor’s base strengthEEex_GetActorBaseWisdom Returns the actor’s base wisdomEEex_GetActorCastTimer Returns cast counter value for the specified actorEEex_GetActorClass Returns the actor’s classEEex_GetActorClassScript Returns the actor’s class scriptEEex_GetActorClassString Returns actor class as a stringEEex_GetActorCurrentDest Returns actor current destinationEEex_GetActorCurrentHP Returns the actor’s current HPEEex_GetActorDefaultScript Returns actor’s default script resref as a stringEEex_GetActorDialogue Returns the actor’s dialogue resref as a stringEEex_GetActorDirection Returns the actor’s directionEEex_GetActorEffectResrefs Returns a list of effects as resource referencesEEex_GetActorGender Returns the actor’s genderEEex_GetActorGeneral Returns the actor’s generalEEex_GetActorGeneralScript Returns actor’s general script resref as a stringEEex_GetActorKit Returns the kit for the actorEEex_GetActorLocal Gets a LOCALS variable in the actor’s .CREEEex_GetActorLocation Returns a point coordinate indicating locationEEex_GetActorModalState Returns the actor’s current modal state (MODAL.IDS)EEex_GetActorModalTimer Returns the modal timer value for the actorEEex_GetActorMovementRate Returns the actor’s movement rateEEex_GetActorName Returns actor’s name as a stringEEex_GetActorOverrideScript Returns actor’s override script resref as a stringEEex_GetActorPosDest Return the destination position of the actorEEex_GetActorRace Returns the actor’s raceEEex_GetActorRaceScript Returns the actor’s race script resref as a stringEEex_GetActorRequiredDirection Returns the direction for the actor to face a pointEEex_GetActorScriptName Returns the script name for the actorEEex_GetActorShare Returns internal actor informationEEex_GetActorSpecificEEex_GetActorSpecificsScript Returns actor’s specifics script resref as a stringEEex_GetActorSpellRES Returns the resref of spell the actor is castingEEex_GetActorSpellState Returns spell state for the actorEEex_GetActorSpellTimerEEex_GetActorStatEEex_GetActorTargetID Returns the ID of the target of the actor’s actionEEex_GetActorTargetPoint Return the target of the actor as a pointEEex_GetImageMasterID Returns the actor ID of the image’s master
Continued on next page
56 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Table 5 – continued from previous pageEEex_GetSummonerID Returns summoner actor ID of a summoned creatureEEex_HasState Returns true if the actor has the specified stateEEex_IsActorFacing Returns true if actor is facing targetEEex_IsActorInCombat Returns true if the given actor is in combatEEex_IsImmuneToOpcode Returns true if actor is immune to specified opcodeEEex_IsImmuneToSpellLevel Returns true if actor is immune to spell levelEEex_IsSprite Returns true if the actor is a creatureEEex_IterateActorEffects Iterate actor effectsEEex_SetActorLocal Sets a LOCALS variable in the actor’s .CRE
2.6 Area
2.6.1 EEex_GetAreaGlobal
EEex_GetAreaGlobal(areaResref, globalName)
Fetches the value of an arearesref variable named globalName in an .ARE file.
Parameters
• areaResref- the area resource reference to fetch a global variable from
• globalName - the global variable name to fetch the value of
Return
Returns the global variable value
Example
testervalue = EEex_GetAreaGlobal("ARE0802", "Tester")
See Also
EEex_SetAreaGlobal, EEex_IterateAreas
2.6.2 EEex_IterateAreas
EEex_IterateAreas(func)
Iterate through all areas and pass each area to a callback function as a parameter
Parameters
• func - callback function to call on each iteration and to pass area parameter to
Return
None
Example
function EEex_GetActorIDLoaded()local ids = {}EEex_IterateAreas(function(m_gameArea)
(continues on next page)
2.6. Area 57
EEex Documentation, Release 1.0
(continued from previous page)
EEex_IterateActorIDs(m_gameArea, function(actorID)table.insert(ids, actorID)
end)end)return ids
end
See Also
EEex_GetAreaGlobal, EEex_SetAreaGlobal
2.6.3 EEex_SetAreaGlobal
EEex_SetAreaGlobal(areaResref, globalName, value)
Sets an arearesref variable named globalName to a value in an .ARE as if a SetGlobal(<globalName>,<areaResref>, <value>) script action was executed.
Parameters
• areaResref - the area resource reference to assign the global to
• globalName - the variable name to set as a global variable
• value - the value to assign to the global variable
Return
Returns the global variable
Example
EEex_SetAreaGlobal("ARE0802", "Tester", 1)
See Also
EEex_GetAreaGlobal, EEex_IterateAreas
Function DescriptionEEex_GetAreaGlobal Return a game area’s GLOBAL variableEEex_IterateAreas Loop through game area’s with a callback functionEEex_SetAreaGlobal Set the value of a game area’s GLOBAL variable
2.7 Bard
2.7.1 EEex_HookBardThieving
EEex_HookBardThieving()
Returns a class IDS that will be what the game engine treats the character as when they use their thieving abilities.
Parameters
None
Return
58 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Returns a class IDS
Example
function EEex_HookBardThieving()local actorID = EEex_GetActorIDSelected()local class = EEex_GetActorClass(actorID)return class
end
See Also
EEex_InstallBardThievingHook
Function DescriptionEEex_HookBardThieving Returns a class IDS for using thieving abilities
2.8 Game state
2.8.1 EEex_FetchVariable
EEex_FetchVariable(CVariableHash, variableName)
Returns the value of a variable in a hash table
Parameters
• CVariableHash - the hash table to add a lookup
• variableName - the variable name to return the value for
Return
Returns the value associated with the variableName
Example
function EEex_GetGlobal(globalName)local g_pBaldurChitin = EEex_ReadDword(EEex_Label("g_pBaldurChitin"))local m_pObjectGame = EEex_ReadDword(g_pBaldurChitin + EEex_Label(
→˓"CBaldurChitin::m_pObjectGame"))local m_variables = m_pObjectGame + 0x5BC8return EEex_FetchVariable(m_variables, globalName)
end
See Also
EEex_SetVariable, EEex_SetGlobal, EEex_GetGlobal
2.8.2 EEex_GetFPS
EEex_GetFPS()
Returns the frames per second of the internal game engine, as specified by the timer updates per second value in theCChittin object (CChitin::TIMER_UPDATES_PER_SECOND)
Parameters
2.8. Game state 59
EEex Documentation, Release 1.0
None
Return
Returns the frames per second of the internal game engine
Example
local fps = EEex_GetFPS()
See Also
EEex_GetGameTick
2.8.3 EEex_GetGameTick
EEex_GetGameTick()
Returns the game time tick (m_gameTime) value from m_pObjectGame
Parameters
None
Return
Returns the game time tick value
Example
local tick = EEex_GetGameTick()
See Also
EEex_GetFPS
2.8.4 EEex_GetGlobal
EEex_GetGlobal(globalName)
Gets a GLOBAL variable’s value from the .GAM
Parameters
• globalName - the variable name to fetch the value for
Return
Returns the global variable
Example
testervalue = EEex_GetGlobal("tester")
See Also
EEex_SetGlobal, EEex_FetchVariable, EEex_SetVariable
60 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.8.5 EEex_SetGlobal
EEex_SetGlobal(globalName, value)
Sets a GLOBAL variable’s value in the .GAM as if a SetGlobal(<globalName>, "GLOBAL", <value>)script action was executed.
Parameters
• globalName - the variable name to set as a global variable
• value - the value to assign to the global variable
Return
Returns the global variable
Example
EEex_SetGlobal("tester",1)
See Also
EEex_GetGlobal, EEex_FetchVariable, EEex_SetVariable
2.8.6 EEex_SetVariable
EEex_SetVariable(CVariableHash, variableName, value)
Sets a variable’s value in a hash table
Parameters
• CVariableHash - the hash table to add a key to
• variableName - the variable name to set
• value - the value to assign to the variable
Return
None
Example
function EEex_SetGlobal(globalName, value)local g_pBaldurChitin = EEex_ReadDword(EEex_Label("g_pBaldurChitin"))local m_pObjectGame = EEex_ReadDword(g_pBaldurChitin + EEex_Label(
→˓"CBaldurChitin::m_pObjectGame"))local m_variables = m_pObjectGame + 0x5BC8return EEex_SetVariable(m_variables, globalName, value)
end
See Also
EEex_FetchVariable, EEex_SetGlobal, EEex_GetGlobal
2.8. Game state 61
EEex Documentation, Release 1.0
Function DescriptionEEex_FetchVariable Returns a game variable valueEEex_GetFPS Returns the frames per second of the gameEEex_GetGameTick Returns the game tick valueEEex_GetGlobal Returns a game GLOBAL variable valueEEex_SetGlobal Sets the value of a game GLOBAL variableEEex_SetVariable Sets the value of a game variable
2.9 Key
2.9.1 EEex_AddKeyPressedListener
EEex_AddKeyPressedListener(func)
Add a listener for a keyboard key pressed event
Parameters
• func - function to add for the key press listener
Return
None
Example
function B3Hotkey_KeyPressedListener(key)-- function added for the key press listener-- see B3Hotke.lua for detailsend
EEex_AddKeyPressedListener(B3Hotkey_KeyPressedListener)
See Also
EEex_AddKeyReleasedListener, EEex_IsKeyDown
2.9.2 EEex_AddKeyReleasedListener
EEex_AddKeyReleasedListener(func)
Add a listener for a keyboard key released event
Parameters
• func - function to add for the key release listener
Return
None
Example
62 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
function B3Hotkey_KeyReleasedListener(key)-- function added for the key release listener-- see B3Hotke.lua for detailsend
EEex_AddKeyReleasedListener(B3Hotkey_KeyReleasedListener)
See Also
EEex_AddKeyPressedListener, EEex_IsKeyDown
2.9.3 EEex_IsKeyDown
EEEex_IsKeyDown(key)
Determines if a specific key is currently down. Requires that EEex_AddKeyPressedListener has been called to add akeypress listenener.
Parameters
• key - the key code to test
Return
Returns true if the specified key is currently down, otherwise returns false.
Example
EEex_IsKeyDown()
See Also
EEex_AddKeyPressedListener, EEex_AddKeyReleasedListener
Function DescriptionEEex_AddKeyPressedListener Add a listener for a keyboard key pressed eventEEex_AddKeyReleasedListener Add a listener for a keyboard key released eventEEex_IsKeyDown Determines if a specific key is currently down
2.10 Menu
2.10.1 EEex_AddPostResetListener
EEex_AddPostResetListener(listener)
Adds the specified listener function to be called after an F5 UI reload is executed.
Parameters
• listener - function to add
Return
None
Example
2.10. Menu 63
EEex Documentation, Release 1.0
EEex_AddPostResetListener()
See Also
EEex_LoadMenuFile, EEex_AddUIMenuLoadListener, EEex_AddResetListener
2.10.2 EEex_AddResetListener
EEex_AddResetListener(listener)
Adds the specified listener function to the EEex_ResetListeners list
Parameters
• listener - function to add
Return
None
Example
EEex_AddResetListener()
See Also
EEex_LoadMenuFile, EEex_AddUIMenuLoadListener, EEex_AddPostResetListener
2.10.3 EEex_AddUIMenuLoadListener
EEex_AddUIMenuLoadListener(listener)
Adds the specified listener function to be called after initial UI.MENU load an when an F5 UI reload is executed.
Parameters
• listener - function to add
Return
None
Example
EEex_AddUIMenuLoadListener()
See Also
EEex_LoadMenuFile, EEex_AddResetListener, EEex_AddPostResetListener
2.10.4 EEex_DestroyInjectedTemplate
EEex_DestroyInjectedTemplate(menuName, templateName, instanceId)
Destroys an instance injected into a menu via EEex_InjectTemplate
Parameters
64 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
• menuName - menu name
• templateName - template name
• instanceId - instance id
Return
None
Example
EEex_DestroyInjectedTemplate()
See Also
EEex_InjectTemplate
2.10.5 EEex_FetchMenuRes
EEex_FetchMenuRes(resref)
Fetch menu resource reference
Parameters
• resref - resource reference
Return
Retuns a DWORD value
Example
EEex_FetchMenuRes()
See Also
:ref:, :ref:
2.10.6 EEex_GetListScroll
EEex_GetListScroll(listName)
Get list scroll position
Parameters
• listName - list to return scroll positon for
Return
Returns scroll position
Example
local scrollpos = EEex_GetListScroll(listName)
See Also
EEex_SetListScroll
2.10. Menu 65
EEex Documentation, Release 1.0
2.10.7 EEex_GetMenuAddressFromItem
EEex_GetMenuAddressFromItem(menuItemName)
Return menu address from a menu item
Parameters
• menuItemName - menu item name to get menu address from
Return
Returns a DWORD value representing the menu address
Example
EEex_GetMenuAddressFromItem()
See Also
EEex_GetMenuItemAddress
2.10.8 EEex_GetMenuFunctionOffset
EEex_GetMenuFunctionOffset(typeName)
Returns an array of menu offsets related to onopen, onclose and enabled
Parameters
• typeName
Return
Returns an array of menu offsets
Example
EEex_GetMenuFunctionOffset()
See Also
EEex_GetMenuAddressFromItem, EEex_GetMenuItemAddress, EEex_GetMenuStructure
2.10.9 EEex_GetMenuItemAddress
EEex_GetMenuItemAddress(menuItemName)
Return an address of an menu item
Parameters
• menuItemName - menu item name to return address for
Return
Returns menu item address
Example
66 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
EEex_GetMenuItemAddress()
See Also
EEex_GetMenuAddressFromItem
2.10.10 EEex_GetMenuStructure
EEex_GetMenuStructure(menuName)
Returns menu structure
Parameters
• menuName - menu name to return structure for
Return
Returns a pointer to the menu structure
Example
local menu = EEex_GetMenuStructure(menuName)
See Also
EEex_GetMenuFunctionOffset
2.10.11 EEex_GetMenuVariantFunction
EEex_GetMenuVariantFunction(menuName, typeName)
Returns the internal Lua function associated with the given menu’s attribute.
Parameters
• menuName - a string representing the menu name to return the internal Lua function for, can be one of thefollowing: "WORLD_ACTIONBAR", "WORLD_QUICKLOOT", "WORLD_DIALOG", "WORLD_MESSAGES","WORLD_DEATH", "WORLD_CONTAINER", "WORLD_MAP" or "WORLD_PICKPARTY"
• typeName - the menu type to get, which can be one of the following: onopen, onclose or enabled
Return
Returns a Lua function
Example
local defaultOnopen = EEex_GetMenuVariantFunction("WORLD_ACTIONBAR", "onopen")defaultOnopen()
See Also
EEex_SetMenuVariantFunction
2.10. Menu 67
EEex Documentation, Release 1.0
2.10.12 EEex_GetTrueMousePos
EEex_GetTrueMousePos()
Returns x and y coordinate for mouse position
Parameters
None
Return
Returns and x and y coordinate representing the mouse position
Example
local mouseX, mouseY = EEex_GetTrueMousePos()
See Also
EEex_IsCursorWithin, EEex_IsCursorWithinMenu, EEex_ScreenToWorldXY
2.10.13 EEex_InjectTemplate
EEex_InjectTemplate(menuName, templateName, x, y, w, h)
Inject template into menu. Exactly the same as Infinity_InstanceAnimation, but allows said instance to be “injected”into the menu specified.
Parameters
• menuName - menu name to inject to
• templateName - template name to inject
• x - x position
• y - y position
• w - width
• h - height
Return
None
Example
EEex_InjectTemplate(menuName, templateName, x, y, w, h)
See Also
Infinity_InstanceAnimation
2.10.14 EEex_IsCursorWithin
EEex_IsCursorWithin(x, y, width, height)
68 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Determines if mouse position is within a specified rectangle
Parameters
• x - x position of rectangle
• y - y position of rectangle
• width - width of rectangle
• height - height of rectangle
Return
Returns true if mouse position is located withing the specified rectangle or false otherwise
Example
function EEex_IsCursorWithinMenu(menuName, menuItemName)local offsetX, offsetY = Infinity_GetOffset(menuName)local itemX, itemY, itemWidth, itemHeight = Infinity_GetArea(menuItemName)return EEex_IsCursorWithin(offsetX + itemX, offsetY + itemY, itemWidth,
→˓itemHeight)end
See Also
EEex_GetTrueMousePos, EEex_IsCursorWithinMenu
2.10.15 EEex_IsCursorWithinMenu
EEex_IsCursorWithinMenu(menuName, menuItemName)
Determines if mouse position is within a menu item’s bounding rectangle
Parameters
• menuName - menu name for the menu item to check
• menuItemName - menu item to check if mouse position is within
Return
Returns true if mouse position is located withing the menu item’s bounding rectangle or false otherwise
Example
EEex_IsCursorWithinMenu()
See Also
EEex_IsCursorWithin, EEex_GetTrueMousePos
2.10.16 EEex_LoadMenuFile
EEex_LoadMenuFile(resref)
Loads in the given .MENU file as if it were UI.MENU. Note that in order to keep the menu loaded in the event of anF5 UI reload, a post-reset listener (EEex_AddPostResetListener) must be used to reload the menu manually.
Parameters
2.10. Menu 69
EEex Documentation, Release 1.0
• resref - resource reference of menu to load
Return
None
Example
EEex_LoadMenuFile("B3_CuBar")
See Also
EEex_AddPostResetListener
2.10.17 EEex_ScreenToWorldXY
EEex_ScreenToWorldXY(screenX, screenY)
Translates the given screenX and screenY into a worldX and worldY. Use EEex_GetTrueMousePos to obtain validscreen coordinates.
Parameters
• screenX - x screen coordinate to translate
• screenY - y screen coordinate to translate
Return
Returns translated x and y world coordinates
Example
local WorldX, WorldY = EEex_ScreenToWorldXY(screenX, screenY)
See Also
EEex_GetTrueMousePos, EEex_TranslateGameXY
2.10.18 EEex_SetListScroll
EEex_SetListScroll(listName, scroll)
Set list scroll position
Parameters
• listName - list to set scroll positon for
• scroll - scroll positon to set
Return
Returns scroll position
Example
EEex_SetListScroll(listName, scroll)
See Also
EEex_GetListScroll
70 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.10.19 EEex_SetMenuVariantFunction
EEex_SetMenuVariantFunction(menuName, typeName, myFunction)
Overwrites the internal Lua function associated with the given menu’s attribute.
Parameters
• menuName - a string representing the menu name to set the internal Lua function for, can be one of thefollowing: "WORLD_ACTIONBAR", "WORLD_QUICKLOOT", "WORLD_DIALOG", "WORLD_MESSAGES","WORLD_DEATH", "WORLD_CONTAINER", "WORLD_MAP" or "WORLD_PICKPARTY"
• typeName - the menu type to set, which can be one of the following: onopen, onclose or enabled
• myFunction - a Lua function to replace the menu’s internal Lua function for
Return
None
Example
EEex_SetMenuVariantFunction("WORLD_ACTIONBAR", "onopen", function()Infinity_DisplayString("Override Running!")
end)
See Also
EEex_GetMenuVariantFunction
2.10.20 EEex_StoreTemplateInstance
EEex_StoreTemplateInstance(menuName, templateName, instanceID, storeIntoName)
Store a value into a menu template instance
Parameters
• menuName - menu name
• templateName - template name
• instanceID - instance id
• storeIntoName - value to store
Return
None
Example
EEex_StoreTemplateInstance()
2.10.21 EEex_TranslateGameXY
EEex_TranslateGameXY(mouseGameX, mouseGameY)
2.10. Menu 71
EEex Documentation, Release 1.0
Translates the given mouse coordinate to viewport coordinates
Parameters
• mouseGameX - x game coordinate to translate
• mouseGameY - y game coordinate to translate
Return
Returns translated x and y viewport coordinates
Example
EEex_TranslateGameXY()
See Also
EEex_ScreenToWorldXY , EEex_GetTrueMousePos
Function DescriptionEEex_AddPostResetListener Add function to be called after F5 UI reloadEEex_AddResetListener Add function to the EEex_ResetListeners listEEex_AddUIMenuLoadListener Add function to be called after initial UI.MENUEEex_DestroyInjectedTemplate Destroys an instance injected into a menuEEex_FetchMenuRes Fetch menu resource referenceEEex_GetListScroll Get list scroll positionEEex_GetMenuAddressFromItem Return menu address from a menu itemEEex_GetMenuFunctionOffset Returns an array of menu offsetsEEex_GetMenuItemAddress Return an address of an menu itemEEex_GetMenuStructure Returns menu structureEEex_GetMenuVariantFunction Returns lua function associated with menu’s attribEEex_GetTrueMousePos Returns x and y coordinate for mouse positionEEex_InjectTemplate Inject template into menuEEex_IsCursorWithin Determines if mouse position is within a rectangleEEex_IsCursorWithinMenu Determines if mouse position is within a menu itemEEex_LoadMenuFile Loads in the given .MENU file as if it were UI.MENUEEex_ScreenToWorldXY Translates screenX, screenY into worldX, worldYEEex_SetListScroll Set list scroll positionEEex_SetMenuVariantFunction Overwrite lua function for with menu’s attributeEEex_StoreTemplateInstance Store a value into a menu template instanceEEex_TranslateGameXY Translates mouseGameX, mouseGameY to viewX, viewY
2.11 Object
2.11.1 EEex_EvalObjectAsActor
EEex_EvalObjectAsActor(object, actorID)
Evaluates an object pointer, (returned by EEex_ParseObjectString), as if it was evaluated by the given actor.
Parameters
• object - object pointer to evaluate
• actorID - id of actor to evaluate as
72 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Return
Returns the matched id
Example
EEex_EvalObjectAsActor()
See Also
EEex_ParseObjectString, EEex_EvalObjectStringAsActor
2.11.2 EEex_EvalObjectStringAsActor
EEex_EvalObjectStringAsActor(string, actorID)
Evaluates an object string in standard BAF syntax as if it was evaluated by the given actor
Parameters
• string - object string to evaluate
• actorID - id of actor to evaluate as
Return
Returns the matched id
Example
EEex_EvalObjectStringAsActor(string, actorID)
See Also
EEex_ParseObjectString, EEex_EvalObjectAsActor
2.11.3 EEex_ParseObjectString
EEex_ParseObjectString(string)
Parses the given object string in standard BAF syntax and returns a pointer to the compiled CAIObjectType instance.Use EEex_EvalObjectAsActor to evaluate the compiled object instance in relation to an actor.
Parameters
• string - the string to evaluate
Return
Returns pointer to the object
Example
local object = EEex_ParseObjectString(string)
See Also
EEex_EvalObjectAsActor, EEex_EvalObjectStringAsActor
2.11. Object 73
EEex Documentation, Release 1.0
Function DescriptionEEex_EvalObjectAsActor Evaluate an object as an actorEEex_EvalObjectStringAsActor Evaluate an object string as an actorEEex_ParseObjectString Parse object string
2.12 Spells
2.12.1 EEex_GetKnownClericSpells
EEex_GetKnownClericSpells(actorID)
Returns an array of known cleric spells for specified actor.
Parameters
• actorID - id of actor to return known cleric spells for
Return
Returns an array of known cleric spells for specified actor. The returned array contains the following fields and valuesfor each spell returned: resref, icon, name, description, index
Example*
local knownspells = EEex_GetKnownClericSpells(actorID)
See Also
EEex_GetMemorizedClericSpells, EEex_GetKnownInnateSpells, EEex_GetKnownWizardSpells
2.12.2 EEex_GetKnownInnateSpells
EEex_GetKnownInnateSpells(actorID)
Returns an array of known innate spells for specified actor.
Parameters
• actorID - id of actor to return known innate spells for
Return
Returns an array of known innate spells for specified actor. The returned array contains the following fields and valuesfor each spell returned: resref, icon, name, description, index
Example
local knownspells = EEex_GetKnownInnateSpells(actorID)
See Also
EEex_GetMemorizedInnateSpells, EEex_GetKnownClericSpells, EEex_GetKnownWizardSpells
74 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.12.3 EEex_GetKnownWizardSpells
EEex_GetKnownWizardSpells(actorID)
Returns an array of known wizard spells for specified actor.
Parameters
• actorID - id of actor to return known wizard spells for
Return
Returns an array of known wizard spells for specified actor. The returned array contains the following fields and valuesfor each spell returned: resref, icon, name, description, index
Example
local knownspells = EEex_GetKnownWizardSpells(actorID)
See Also
EEex_GetMemorizedWizardSpells, EEex_GetKnownInnateSpells, EEex_GetKnownClericSpells
2.12.4 EEex_GetMaximumMemorizableClericSpells
EEex_GetMaximumMemorizableClericSpells(actorID, level)
Returns max number of memorizable cleric spells for the specified actor for a specific spell level
Parameters
• actorID - id of actor to return max memorizable spells for
• level - spell level to return max memorizable spells for
Return
Returns a WORD value representing the max memorizable spells for the spell level for the actor
Example
local maxpriest1st = EEex_GetMaximumMemorizableClericSpells(actorID, 1)
See Also
EEex_GetMaximumMemorizableInnateSpells, EEex_GetMaximumMemorizableWizardSpells
2.12.5 EEex_GetMaximumMemorizableInnateSpells
EEex_GetMaximumMemorizableInnateSpells(actorID, level)
Returns max number of memorizable innate spells for the specified actor for a specific spell level
Parameters
• actorID - id of actor to return max memorizable spells for
• level - spell level to return max memorizable spells for
2.12. Spells 75
EEex Documentation, Release 1.0
Return
Returns a WORD value representing the max memorizable spells for the spell level for the actor
Example
local maxinnate2nd = EEex_GetMaximumMemorizableInnateSpells(actorID, 2)
See Also
EEex_GetMaximumMemorizableClericSpells, EEex_GetMaximumMemorizableWizardSpells
2.12.6 EEex_GetMaximumMemorizableWizardSpells
EEex_GetMaximumMemorizableWizardSpells(actorID, level)
Returns max number of memorizable wizard spells for the specified actor for a specific spell level
Parameters
• actorID - id of actor to return max memorizable spells for
• level - spell level to return max memorizable spells for
Return
Returns a WORD value representing the max memorizable spells for the spell level for the actor
Example
local maxwizard3rd = EEex_GetMaximumMemorizableWizardSpells(actorID, 3)
See Also
EEex_GetMaximumMemorizableClericSpells, EEex_GetMaximumMemorizableInnateSpells
2.12.7 EEex_GetMemorizedClericSpells
EEex_GetMemorizedClericSpells(actorID)
Returns an array of memorized cleric spells for specified actor.
Parameters
• actorID - id of actor to return memorized cleric spells for
Return
Returns an array of memorized cleric spells for specified actor. The returned array contains the following fields andvalues for each spell returned: resref, icon, castable, index, name, description
Example
local mempriestspells = EEex_GetMemorizedClericSpells(actorID)
See Also
EEex_GetKnownClericSpells, EEex_GetMemorizedInnateSpells, EEex_GetMemorizedWizardSpells
76 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.12.8 EEex_GetMemorizedInnateSpells
EEex_GetMemorizedInnateSpells(actorID)
Returns an array of memorized innate spells for specified actor.
Parameters
• actorID - id of actor to return memorized innate spells for
Return
Returns an array of memorized innate spells for specified actor. The returned array contains the following fields andvalues for each spell returned: resref, icon, castable, index, name, description
Example
local meminnatespells = EEex_GetMemorizedInnateSpells()
See Also
EEex_GetKnownInnateSpells, EEex_GetMemorizedClericSpells, EEex_GetMemorizedWizardSpells
2.12.9 EEex_GetMemorizedWizardSpells
EEex_GetMemorizedWizardSpells(actorID)
Returns an array of memorized wizard spells for specified actor.
Parameters
• actorID - id of actor to return memorized wizard spells for
Return
Returns an array of memorized wizard spells for specified actor. The returned array contains the following fields andvalues for each spell returned: resref, icon, castable, index, name, description
Example
local memwizardspells = EEex_GetMemorizedWizardSpells(actorID)
See Also
EEex_GetKnownWizardSpells, EEex_GetMemorizedClericSpells, EEex_GetMemorizedInnateSpells
2.12.10 EEex_GetSpellAbilityData
Returns spell ability data for specified spell
EEex_GetSpellAbilityData(m_CGameSprite, resref)
Parameters
• m_CGameSprite - pointer to game sprite object
• resref - resource reference of spell to get ability data for
2.12. Spells 77
EEex Documentation, Release 1.0
Returns
Spell ability data
Notes
Example
EEex_GetSpellAbilityData()
See Also
EEex_GetSpellData
2.12.11 EEex_GetSpellData
EEex_GetSpellData(resref)
Returns a pointer to spell’s data and structure. See Spell_Header_st or spl_v1 for details
Parameters
• resref - resource reference of spell to fetch data for
Return
Returns a pointer to spell structure
Notes
Gets offset 0x0 of the data for the SPL file. The offsets after that are exactly the same as in a SPL file. For exam-ple: Infinity_DisplayString(EEex_ReadDword(EEex_GetSpellData("SPWI304") + 0x34))will print: 3 because offset 0x34 in the SPL file is the spell’s level.
Warning: this will crash if the spell is not in the game.
Example
local spell_level = EEex_ReadDword(EEex_GetSpellData("SPWI304") + 0x34)
See Also
Spell_Header_st, EEex_GetSpellDescription
2.12.12 EEex_GetSpellDescription
EEex_GetSpellDescription(resrefLocation)
Returns a string containing spell description
Parameters
• resrefLocation - resource reference of spell to return description for
Return
Returns a string
Example
78 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
local desc = EEex_GetSpellDescription("SPWI304")
See Also
EEex_GetSpellIcon, EEex_GetSpellName
2.12.13 EEex_GetSpellIcon
EEex_GetSpellIcon(resrefLocation)
Returns a string containing spell icon id
Parameters
• resrefLocation - resource reference of spell to return icon for
Return
Returns a string
Example
local icon = EEex_GetSpellIcon("SPWI304")
See Also
EEex_GetSpellDescription, EEex_GetSpellName
2.12.14 EEex_GetSpellName
EEex_GetSpellName(resrefLocation)
Returns a string containing spell name
Parameters
• resrefLocation - resource reference of spell to return name for
Return
Returns a string
Example
local name = EEex_GetSpellName("SPWI304")
See Also
EEex_GetSpellDescription, EEex_GetSpellIcon
2.12.15 EEex_IsSpellValid
EEex_IsSpellValid()
Returns true if resource is a valid spell
Parameters
• resrefLocation - resource reference to check if a valid spell
2.12. Spells 79
EEex Documentation, Release 1.0
Return
Returns true or false
Example
local bSpellvalid = EEex_IsSpellValid("SPWI304") -- true
See Also
EEex_GetSpellData
2.12.16 EEex_LearnClericSpell
EEex_LearnClericSpell(actorID, level, resref)
Adds a spell to known cleric spells for an actor
Parameters
• actorID - id of actor that is learning spell
• level - spell level
• resref - resource reference of spell to learn
Return
None
Example
EEex_LearnClericSpell()
See Also
EEex_LearnInnateSpell, EEex_LearnWizardSpell, EEex_UnlearnClericSpell, EEex_UnlearnInnateSpell,EEex_UnlearnWizardSpell
2.12.17 EEex_LearnInnateSpell
EEex_LearnInnateSpell(actorID, resref)
Adds a spell to known innate spells for an actor
Parameters
• actorID - id of actor that is learning spell
• resref - resource reference of spell to learn
Return
None
Example
EEex_LearnInnateSpell()
80 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
See Also
EEex_LearnClericSpell, EEex_LearnWizardSpell, EEex_UnlearnClericSpell, EEex_UnlearnInnateSpell,EEex_UnlearnWizardSpell
2.12.18 EEex_LearnWizardSpell
EEex_LearnWizardSpell(actorID, level, resref)
Adds a spell to known wizard spells for an actor
Parameters
• actorID - id of actor that is learning spell
• level - spell level
• resref - resource reference of spell to learn
Return
None
Example
EEex_LearnWizardSpell(actorID, 3, "SPWI304")
See Also
EEex_LearnClericSpell, EEex_LearnInnateSpell, EEex_UnlearnClericSpell, EEex_UnlearnInnateSpell,EEex_UnlearnWizardSpell
2.12.19 EEex_MemorizeClericSpell
EEex_MemorizeClericSpell(actorID, level, resref)
Memorize a cleric spell for an actor
Parameters
• actorID - id of actor that is memorizing spell
• level - spell level
• resref - resource reference of spell to memorize
Return
None
Example
EEex_MemorizeClericSpell()
See Also
EEex_MemorizeInnateSpell, EEex_MemorizeWizardSpell, EEex_UnmemorizeClericSpell,EEex_UnmemorizeInnateSpell, EEex_UnmemorizeWizardSpell
2.12. Spells 81
EEex Documentation, Release 1.0
2.12.20 EEex_MemorizeInnateSpell
EEex_MemorizeInnateSpell(actorID, resref)
Memorize an innate spell for an actor
Parameters
• actorID - id of actor that is memorizing spell
• resref - resource reference of spell to memorize
Return
None
Example
EEex_MemorizeInnateSpell()
See Also
EEex_MemorizeClericSpell, EEex_MemorizeWizardSpell, EEex_UnmemorizeClericSpell,EEex_UnmemorizeInnateSpell, EEex_UnmemorizeWizardSpell
2.12.21 EEex_MemorizeWizardSpell
EEex_MemorizeWizardSpell(actorID, level, resref)
Memorize a wizard spell for an actor
Parameters
• actorID - id of actor that is memorizing spell
• level - spell level
• resref - resource reference of spell to memorize
Return
None
Example
EEex_MemorizeWizardSpell()
See Also
EEex_MemorizeClericSpell, EEex_MemorizeInnateSpell, EEex_UnmemorizeClericSpell,EEex_UnmemorizeInnateSpell, EEex_UnmemorizeWizardSpell
2.12.22 EEex_PlayerCastResref
Casts the specified spell
EEex_PlayerCastResref(resref)
Parameters
• resref - resource reference of spell to cast
82 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Returns
None
Notes
Spell must be memorized and currently accessible
Example
EEex_PlayerCastResref("SPWI112")
See Also
EEex_PlayerCastResrefInternal, EEex_PlayerCastResrefNoDec
2.12.23 EEex_PlayerCastResrefInternal
Casts the specified spell from an active Opcode #214
EEex_PlayerCastResrefInternal(resref)
Parameters
• resref - resource reference of spell to cast
Returns
None
Notes
Opcode #214 must be active and the resref must be part of the Opcode #214 spell list
Example
EEex_PlayerCastResrefInternal("SPIN109")
See Also
EEex_PlayerCastResref , EEex_PlayerCastResrefNoDec
2.12.24 EEex_PlayerCastResrefNoDec
Casts the specified spell with no prerequisites
EEex_PlayerCastResrefNoDec()
Parameters
• resref - resource reference of spell to cast
Returns
None
Notes
Casting won’t decrement the spell if it is currently memorized.
Example
2.12. Spells 83
EEex Documentation, Release 1.0
EEex_PlayerCastResrefNoDec("SPWI112")
See Also
EEex_PlayerCastResref , EEex_PlayerCastResrefInternal
2.12.25 EEex_PlayerSetQuickSpellResref
Sets the quick spell slot with the specified spell
EEex_PlayerSetQuickSpellResref(resref)
Parameters
• resref - resource reference of spell to set currently configured quick slot button to
Returns
None
Notes
Example
EEex_PlayerSetQuickSpellResref()
See Also
EEex_ReadySpell, EEex_UseCGameButtonList
2.12.26 EEex_ProcessClericMemorization
EEex_ProcessClericMemorization(actorID, func)
Iterate memorized cleric spells for an actor
Parameters
• actorID - id of actor to iterate spells for
• func - return function that passes back spell
Return
Special
Example
EEex_ProcessClericMemorization()
See Also
EEex_ProcessInnateMemorization, EEex_ProcessKnownClericSpells, EEex_ProcessKnownInnateSpells,EEex_ProcessKnownWizardSpells, EEex_ProcessWizardMemorization
84 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.12.27 EEex_ProcessInnateMemorization
EEex_ProcessInnateMemorization(actorID, func)
Iterate memorized innate spells for an actor
Parameters
• actorID - id of actor to iterate spells for
• func - return function that passes back spell
Return
Special
Example
EEex_ProcessInnateMemorization()
See Also
EEex_ProcessClericMemorization, EEex_ProcessKnownClericSpells, EEex_ProcessKnownInnateSpells,EEex_ProcessKnownWizardSpells, EEex_ProcessWizardMemorization
2.12.28 EEex_ProcessKnownClericSpells
EEex_ProcessKnownClericSpells(actorID, func)
Iterate known cleric spells for an actor
Parameters
• actorID - id of actor to iterate spells for
• func - return function that passes back spell
Return
Example
EEex_ProcessKnownClericSpells()
See Also
EEex_ProcessClericMemorization, EEex_ProcessInnateMemorization, EEex_ProcessKnownInnateSpells,EEex_ProcessKnownWizardSpells, EEex_ProcessWizardMemorization
2.12.29 EEex_ProcessKnownInnateSpells
EEex_ProcessKnownInnateSpells(actorID, func)
Iterate known innate spells for an actor
Parameters
• actorID - id of actor to iterate spells for
• func - return function that passes back spell
2.12. Spells 85
EEex Documentation, Release 1.0
Return
Example
EEex_ProcessKnownInnateSpells()
See Also
EEex_ProcessClericMemorization, EEex_ProcessInnateMemorization, EEex_ProcessKnownClericSpells,EEex_ProcessKnownWizardSpells, EEex_ProcessWizardMemorization
2.12.30 EEex_ProcessKnownWizardSpells
EEex_ProcessKnownWizardSpells(actorID, func)
Iterate known wizard spells for an actor
Parameters
• actorID - id of actor to iterate spells for
• func - return function that passes back spell
Return
Example
EEex_ProcessKnownWizardSpells()
See Also
EEex_ProcessClericMemorization, EEex_ProcessInnateMemorization, EEex_ProcessKnownClericSpells,EEex_ProcessKnownInnateSpells, EEex_ProcessWizardMemorization
2.12.31 EEex_ProcessWizardMemorization
EEex_ProcessWizardMemorization(actorID, func)
Iterate memorized wizard spells for an actor
Parameters
• actorID - id of actor to iterate spells for
• func - return function that passes back spell
Return
Special
Example
EEex_ProcessWizardMemorization()
See Also
EEex_ProcessClericMemorization, EEex_ProcessInnateMemorization, EEex_ProcessKnownClericSpells,EEex_ProcessKnownInnateSpells, EEex_ProcessKnownWizardSpells
86 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.12.32 EEex_ReadySpell
Ready the spell associated with the button data
EEex_ReadySpell(m_CGameSprite, m_CButtonData, instantUse, offInternal)
Parameters
• m_CGameSprite - pointer to game sprite object
• m_CButtonData - pointer to button data
• instantUse - boolean true or false to use instantly
• offInternal - boolean true or false to use from an internal list
Returns
None
Notes
Used internally in EEex_PlayerCastResref , EEex_PlayerCastResrefInternal and EEex_PlayerCastResrefNoDec
Example
EEex_ReadySpell(m_CGameSprite, m_CButtonData, 1, false)
See Also
EEex_PlayerCastResref , EEex_PlayerCastResrefInternal, EEex_PlayerCastResrefNoDec,EEex_UseCGameButtonList, EEex_GetQuickButtons
2.12.33 EEex_UnlearnClericSpell
EEex_UnlearnClericSpell(actorID, level, resref)
Removes a spell from known cleric spells for an actor
Parameters
• actorID - id of actor that is unlearning spell
• level - spell level
• resref - resource reference of spell to unlearn
Return
None
Example
EEex_UnlearnClericSpell()
See Also
EEex_LearnClericSpell, EEex_LearnInnateSpell, EEex_LearnWizardSpell, EEex_UnlearnInnateSpell,EEex_UnlearnWizardSpell
2.12. Spells 87
EEex Documentation, Release 1.0
2.12.34 EEex_UnlearnInnateSpell
EEex_UnlearnInnateSpell(actorID, resref)
Removes a spell from known innate spells for an actor
Parameters
• actorID - id of actor that is unlearning spell
• resref - resource reference of spell to unlearn
Return
None
Example
EEex_UnlearnInnateSpell()
See Also
EEex_LearnClericSpell, EEex_LearnInnateSpell, EEex_LearnWizardSpell, EEex_UnlearnClericSpell,EEex_UnlearnWizardSpell
2.12.35 EEex_UnlearnWizardSpell
EEex_UnlearnWizardSpell(actorID, level, resref)
Removes a spell from known wizard spells for an actor
Parameters
• actorID - id of actor that is unlearning spell
• level - spell level
• resref - resource reference of spell to unlearn
Return
None
Example
EEex_UnlearnWizardSpell(actorID, 3, "SPWI304")
See Also
EEex_LearnClericSpell, EEex_LearnInnateSpell, EEex_LearnWizardSpell, EEex_UnlearnClericSpell,EEex_UnlearnInnateSpell
2.12.36 EEex_UnmemorizeClericSpell
EEex_UnmemorizeClericSpell(actorID, level, index)
Unmemorize a cleric spell for an actor
Parameters
• actorID - id of actor that is unmemorizing spell
88 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
• level - spell level
• resref - resource reference of spell to unmemorize
Return
None
Example
EEex_UnmemorizeClericSpell()
See Also
EEex_MemorizeClericSpell, EEex_MemorizeInnateSpell, EEex_MemorizeWizardSpell,EEex_UnmemorizeInnateSpell, EEex_UnmemorizeWizardSpell
2.12.37 EEex_UnmemorizeInnateSpell
EEex_UnmemorizeInnateSpell(actorID, index)
Unmemorize an innate spell for an actor
Parameters
• actorID - id of actor that is unmemorizing spell
• resref - resource reference of spell to unmemorize
Return
None
Example
EEex_UnmemorizeInnateSpell()
See Also
EEex_MemorizeClericSpell, EEex_MemorizeInnateSpell, EEex_MemorizeWizardSpell,EEex_UnmemorizeClericSpell, EEex_UnmemorizeWizardSpell
2.12.38 EEex_UnmemorizeWizardSpell
EEex_UnmemorizeWizardSpell(actorID, level, index)
Unmemorize a wizard spell for an actor
Parameters
• actorID - id of actor that is unmemorizing spell
• level - spell level
• resref - resource reference of spell to unmemorize
Return
None
Example
2.12. Spells 89
EEex Documentation, Release 1.0
EEex_UnmemorizeWizardSpell()
See Also
EEex_MemorizeClericSpell, EEex_MemorizeInnateSpell, EEex_MemorizeWizardSpell,EEex_UnmemorizeClericSpell, EEex_UnmemorizeInnateSpell
Function DescriptionEEex_GetKnownClericSpells Returns an array of known cleric spells for actorEEex_GetKnownInnateSpells Returns an array of known innate spells for actorEEex_GetKnownWizardSpells Returns an array of known wizard spells for actorEEex_GetMaximumMemorizableClericSpells Returns max no of spells for actor for spell levelEEex_GetMaximumMemorizableInnateSpells Returns max no of spells for actor for spell levelEEex_GetMaximumMemorizableWizardSpells Returns max no of spells for actor for spell levelEEex_GetMemorizedClericSpells Returns array of memorized cleric spells for actorEEex_GetMemorizedInnateSpells Returns array of memorized innate spells for actorEEex_GetMemorizedWizardSpells Returns array of memorized wizard spells for actorEEex_GetSpellAbilityData Returns spell ability data for specified spellEEex_GetSpellData Returns a pointer to spell dataEEex_GetSpellDescription Returns a string containing spell descriptionEEex_GetSpellIcon Returns a string containing spell icon idEEex_GetSpellName Returns a string containing spell nameEEex_IsSpellValid Returns true if resource is a valid spellEEex_LearnClericSpell Adds a spell to known cleric spells for an actorEEex_LearnInnateSpell Adds a spell to known innate spells for an actorEEex_LearnWizardSpell Adds a spell to known wizard spells for an actorEEex_MemorizeClericSpell Memorize a cleric spell for an actorEEex_MemorizeInnateSpell Memorize an innate spell for an actorEEex_MemorizeWizardSpell Memorize a wizard spell for an actorEEex_PlayerCastResref Casts the specified spellEEex_PlayerCastResrefInternal Casts the specified spell from active Opcode #214EEex_PlayerCastResrefNoDec Casts the specified spell with no prerequisitesEEex_PlayerSetQuickSpellResref Sets the quick spell slot with the specified spellEEex_ProcessClericMemorization Iterate memorized cleric spells for an actorEEex_ProcessInnateMemorization Iterate memorized innate spells for an actorEEex_ProcessKnownClericSpells Iterate known cleric spells for an actorEEex_ProcessKnownInnateSpells Iterate known innate spells for an actorEEex_ProcessKnownWizardSpells Iterate known wizard spells for an actorEEex_ProcessWizardMemorization Iterate memorized wizard spells for an actorEEex_ReadySpell Ready the spell associated with the button dataEEex_UnlearnClericSpell Removes a spell from known spells for an actorEEex_UnlearnInnateSpell Removes a spell from known spells for an actorEEex_UnlearnWizardSpell Removes a spell from known spells for an actorEEex_UnmemorizeClericSpell Unmemorize a cleric spell for an actorEEex_UnmemorizeInnateSpell Unmemorize an innate spell for an actorEEex_UnmemorizeWizardSpell Unmemorize a wizard spell for an actor
90 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.13 Stats
2.13.1 EEex_AccessComplexStat
EEex_AccessComplexStat(actorID, name)
Returns a pointer to the complex stat for the specified actor id
Parameters
• actorID - actor id to access the complex stat for
• name - name of the stat to access
Return
Returns a pointer to the complex stat for the specified actor id
Example
EEex_AccessComplexStat()
See Also
EEex_RegisterComplexListStat, EEex_RegisterComplexStat, EEex_RegisterSimpleListStat
2.13.2 EEex_RegisterComplexListStat
EEex_RegisterComplexListStat(name, attributeTable)
Registers complex list stat
Parameters
• name - name of complex list stat to register
• attributeTable - the attribute table to use
Return
None
Example
EEex_RegisterComplexListStat()
See Also
EEex_AccessComplexStat, EEex_RegisterComplexStat, EEex_RegisterSimpleListStat
2.13.3 EEex_RegisterComplexStat
EEex_RegisterComplexStat(name, attributeTable)
Returns offset to the complex stat being registered
Parameters
• name - name of complex stat to register
2.13. Stats 91
EEex Documentation, Release 1.0
• attributeTable - the attribute table to use
Return
Returns offset to the complex stat being registered
Example
EEex_RegisterComplexStat()
See Also
EEex_AccessComplexStat, EEex_RegisterComplexListStat, EEex_RegisterSimpleListStat
2.13.4 EEex_RegisterSimpleListStat
EEex_RegisterSimpleListStat(name, elementSize)
Registers simple list stat
Parameters
• name - name of simple list stat to register
• elementSize - size of the element
Return
None
Example
EEex_RegisterSimpleListStat()
See Also
EEex_AccessComplexStat, EEex_RegisterComplexListStat, EEex_RegisterComplexStat
Function DescriptionEEex_AccessComplexStat Returns a pointer to stat for the specified actorEEex_RegisterComplexListStat Registers complex list statEEex_RegisterComplexStat Returns offset to the complex stat being registeredEEex_RegisterSimpleListStat Registers simple list stat
2.14 Tooltip
2.14.1 EEex_IsActorTooltipDisabled
EEex_IsActorTooltipDisabled()
If EEex_IsActorTooltipDisabled is implemented, and it returns true, the engine will not display the tooltip as it wasattempting, otherwise it will.
Parameters
None
Return
92 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Returns true or false, depending on the implementation of the function.
Example
function EEex_IsActorTooltipDisabled()return false
end
See Also
EEex_InstallTooltipHook
Function DescriptionEEex_IsActorTooltipDisabled Display (or not) the tooltip if engine attempts to
2.15 Util
2.15.1 EEex_AreBitsSet
EEex_AreBitsSet(original, bitsString)
Returns true if bits set in bitString match bits set in original.
Parameters
• original - original bit settings to check against
• bitsString - the string containing bits to check
Return
true or false
Example
EEex_AreBitsSet()
See Also
EEex_IsMaskSet, EEex_IsMaskUnset, EEex_AreBitsUnset, EEex_IsBitSet
2.15.2 EEex_AreBitsUnset
EEex_AreBitsUnset(original, bitsString)
Returns true if bits set in bitString do not match bits set in original.
Parameters
• original - original bit settings to check against
• bitsString - the string containing bits to check
Return
true or false
Example
2.15. Util 93
EEex Documentation, Release 1.0
EEex_AreBitsUnset()
See Also
EEex_IsMaskSet, EEex_IsMaskUnset, EEex_AreBitsSet, EEex_IsBitSet
2.15.3 EEex_CharFind
EEex_CharFind(string, char, startingIndex)
Finds the first instance of the given char after or at the starting index.
Parameters
• string - string to search
• char - character byte to search for within string
• startingIndex - index position to start search from
Return
Returns the index position where char is found within string, or -1 otherwise
Example
EEex_CharFind()
See Also
EEex_StringStartsWith, EEex_SplitByChar
2.15.4 EEex_ConcatTables
EEex_ConcatTables(tables)
Flattens given table so that any nested tables are merged. Example: {"Hello", {"World"}} becomes{"Hello", "World"}.
Parameters
• tables - table containing any nested tables to merge
Return
Returns a table
Example
local mergedtable = EEex_ConcatTables(tables)
See Also
EEex_SplitByChar
94 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.15.5 EEex_CyclicBound
EEex_CyclicBound(num, lowerBound, upperBound)
Adjust a cyclical numeric value that is bounded by an lower and upper value. Sanity function to help work with numberranges that are cyclic, (like actor direction).
Parameters
• num - base numeric value to adjust for bounded values
• lowerBound - min lower value that base numeric wraps at
• upperBound - max upper value that base numeric wraps at
Return
Returns the adjusted value
Example
EEex_CyclicBound(num, 0, 15)-- defines a range of 0 to 15. num = 16 rolls over to 0, as does num = 32. num = -1→˓wraps around to 15, as does num = -17.
See Also
EEex_WithinCyclicRange
2.15.6 EEex_Flags
EEex_Flags(flags)
Performs bitwise OR to combine flag values. Operates on pairs of flag values
Parameters
• flags - flag values to combine
Return
Returns the combined value of the flags using OR
Example
function EEex_VirtualAlloc(dwSize, flProtect)-- 0x1000 = MEM_COMMIT-- 0x2000 = MEM_RESERVEreturn EEex_DllCall("Kernel32", "VirtualAlloc", {flProtect, EEex_Flags({0x1000,
→˓0x2000}), dwSize, 0x0}, nil, 0x0)end
See Also
EEex_IsBitSet, EEex_IsMaskSet, EEex_SetBits, EEex_SetMask
2.15.7 EEex_IsBitSet
2.15. Util 95
EEex Documentation, Release 1.0
EEex_IsBitSet(original, isSetIndex)
Determines if an indexed bit value is set, as specified by isSetIndex in original
Parameters
• original - original value to check
• isSetIndex - bit index into the value to check if set
Return
Returns true if bit is set
Example
EEex_IsBitSet(flags, 0x0) -- check if bit 0 is set to 1
See Also
EEex_IsBitUnset
2.15.8 EEex_IsBitUnset
EEex_IsBitUnset(original, isUnsetIndex)
Determines if an indexed bit value is not set, as specified by isUnsetIndex in original
Parameters
• original - original value to check
• isUnsetIndex - bit index into the value to check if not set
Return
Returns true if bit is not set
Example
EEex_IsBitUnset(flags, 0x0) -- check if bit 0 is not set to 1 (is 0)
See Also
EEex_IsBitSet
2.15.9 EEex_IsMaskSet
EEex_IsMaskSet(original, isSetMask)
Determines if a mask value matches
Parameters
• original - original bit settings to check against
• isSetMask - the mask value to match against
96 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Return
Returns true if mask value matches
Example
EEex_IsMaskSet()
See Also
EEex_IsMaskUnset
2.15.10 EEex_IsMaskUnset
EEex_IsMaskUnset(original, isUnsetMask)
Determines if a mask value does not match
Parameters
• original - original bit settings to check against
• isUnsetMask - the mask value to check does not match against
Return
Returns true if mask value does not match
Example
EEex_IsMaskUnset()
See Also
EEex_IsMaskSet
2.15.11 EEex_IsValidBackstabDirection
EEex_IsValidBackstabDirection(attackerID, targetID)
Returns true if the attackerID actor’s direction is sufficent to backstab the targetID actor
Parameters
• attackerID - attacking actor id to check for
• targetID - backstab target actor id
Return
true or false
Example
EEex_IsValidBackstabDirection()
See Also
EEex_GetActorDirection, EEex_GetActorRequiredDirection
2.15. Util 97
EEex Documentation, Release 1.0
2.15.12 EEex_RoundUp
EEex_RoundUp(numToRound, multiple)
Rounds the given number upwards to the nearest multiple.
Parameters
• numToRound - numeric value to round up
• multiple - value to round upwards to the nearest multiple
Return
Returns the adjusted and rounded up value
Example
size = EEex_RoundUp(size, allocGran)
See Also
EEex_CyclicBound, EEex_WithinCyclicRange
2.15.13 EEex_SetBit
EEex_SetBit(original, toSetIndex)
Sets the bit value to 1 as specified by toSetIndex in original value
Parameters
• original - original bits value
• **toSetIndex* - bit index into the value to set to 1
Return
Returns the original value adjusted with the new bit setting
Example
EEex_SetBit()
See Also
EEex_UnsetBit, EEex_SetBits, EEex_SetMask, EEex_UnsetBits, EEex_UnsetMask
2.15.14 EEex_SetBits
EEex_SetBits(original, bitsString)
Sets all the bit values in original to 1 that match the bitwise mask in the bitsString
Parameters
• original - original bits values
• bitsString - string containing a bitwise value to use as a bitwise mask
98 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Return
Returns the original value adjusted with the new bitsString mask
Example
EEex_SetBits()
See Also
EEex_UnsetBits, EEex_SetBit, EEex_SetMask, EEex_UnsetBit, EEex_UnsetMask
2.15.15 EEex_SetMask
EEex_SetMask(original, toSetMask)
Sets all the bit values in original to 1 that match the bitwise mask in the toSetMask
Parameters
• original
• toSetMask
Return
Returns the original value adjusted with the new bitsString mask
Example
EEex_SetMask()
See Also
EEex_UnsetMask, EEex_SetBit, EEex_SetBits, EEex_UnsetBit, EEex_UnsetBits
2.15.16 EEex_SplitByChar
EEex_SplitByChar(string, char)
Returns a table populated by the string sequences separated by the given char.
Parameters
• string - string to split
• char - character byte to split the string by
Return
Returns a table
Example
EEex_SplitByChar("Hello World", " ")-- returns {"Hello", "World"}.
See Also
EEex_ConcatTables
2.15. Util 99
EEex Documentation, Release 1.0
2.15.17 EEex_StringStartsWith
EEex_StringStartsWith(string, startsWith)
Checks the first character of a string.
Parameters
• string - string to check
• startsWith - character to check that the string begins with
Return
Returns true if the string begins with the character specified
Example
EEex_StringStartsWith()
See Also
EEex_CharFind
2.15.18 EEex_ToHex
EEex_ToHex(number, minLength, prefix)
Converts a numeric value to a hex string with or without the 0x prefix
Parameters
• number - numeric value to convert to hex
• minLength - min length of hex string to create
• prefix - true to include 0x prefix in hex string
Return
Returns a string containing the hex value
Example
EEex_ToHex()
2.15.19 EEex_UnsetBit
EEex_UnsetBit(original, toUnsetIndex)
Sets the bit value to 0 as specified by toUnsetIndex in original value
Parameters
• original - original bits value
• toUnsetIndex - bit index into the value to set to 0
100 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Return
Returns the original value adjusted with the new bit setting
Example
EEex_UnsetBit()
See Also
EEex_SetBit, EEex_SetBits, EEex_SetMask, EEex_UnsetBits, EEex_UnsetMask
2.15.20 EEex_UnsetBits
EEex_UnsetBits(original, bitsString)
Sets all the bit values in original to 0 that match the bitwise mask in the bitsString
Parameters
• original - original bits values
• bitsString - string containing a bitwise value to use as a bitwise mask
Return
Returns the original value adjusted with the new bitsString mask
Example
EEex_UnsetBits()
See Also
EEex_SetBits, EEex_SetBit, EEex_SetMask, EEex_UnsetBit, EEex_UnsetMask
2.15.21 EEex_UnsetMask
EEex_UnsetMask(original, toUnsetmask)
Sets all the bit values in original to 0 that match the bitwise mask in the toUnsetmask
Parameters
• original
• toUnsetmask
Return
Returns the original value adjusted with the new bitsString mask
Example
EEex_UnsetMask()
See Also
EEex_SetMask, EEex_SetBit, EEex_SetBits, EEex_UnsetBit, EEex_UnsetBits
2.15. Util 101
EEex Documentation, Release 1.0
2.15.22 EEex_WithinCyclicRange
EEex_WithinCyclicRange(num, num2, range, lowerBound, higherBound)
Returns true if num2 is within range positions of num in the cyclic bounds. See EEex_CyclicBound for more infoabout cyclic ranges.
Parameters
• num - base numeric value adjusted for bounded values
• num2 - numeric value to check is if within range of num
• range - range numeric value
• lowerBound - min lower value that base numeric wraps at
• higherBound - max upper value that base numeric wraps at
Return
Returns true or false
Example
EEex_WithinCyclicRange()
See Also
EEex_CyclicBound
Function DescriptionEEex_AreBitsSet Returns true if bits matchEEex_AreBitsUnset Returns true if bits dont matchEEex_CharFind Finds the first instance of the given char after or at the starting indexEEex_ConcatTables Flattens given table so that any nested tables are mergedEEex_CyclicBound Adjust a cyclical numeric value that is bounded by an lower and upper valueEEex_Flags Performs bitwise OR to combine flag valuesEEex_IsBitSet Determines if an indexed bit value is setEEex_IsBitUnset Determines if an indexed bit value is not setEEex_IsMaskSet Determines if a mask value matchesEEex_IsMaskUnset Determines if a mask value does not matchEEex_IsValidBackstabDirection Returns true if the attackerID actor’s direction is sufficent to backstab the targetID
actorEEex_RoundUp Rounds the given number upwards to the nearest multipleEEex_SetBit Sets a specific bit in a value to 1EEex_SetBits Sets all the bit values to 1 that match the bitwise maskEEex_SetMask Sets all the bit values to 1 that match the bitwise maskEEex_SplitByChar Returns a table of string sequences that where separated by a charEEex_StringStartsWith Checks the first character of a stringEEex_ToHex Converts a numeric value to a hex stringEEex_UnsetBit Sets a specific bit in a value to 0EEex_UnsetBits Sets all the bit values to 0 that match the bitwise maskEEex_UnsetMask Sets all the bit values to 0 that match the bitwise maskEEex_WithinCyclicRange Returns true if a cyclical numeric value is within range of another numeric value
102 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.16 Internal
2.16.1 EEex_AccessVolatileField
Access the volitile field in the specified actor
EEex_AccessVolatileField(actorID, name)
Parameters
• actorID
• name
Returns
Notes
Example
EEex_AccessVolatileField(actorID, name)
See Also
EEex_GetVolatileField, EEex_GetVolatileFieldOffset, EEex_RegisterVolatileField, EEex_SetVolatileField
2.16.2 EEex_AddMarshalRequestor
EEex_AddMarshalRequestor(fieldName, table)
Parameters
• fieldName
• table
Returns
Notes
Example
EEex_AddMarshalRequestor()
See Also
2.16.3 EEex_GetVolatileField
EEex_GetVolatileField(actorID, name)
Parameters
• actorID
• name
2.16. Internal 103
EEex Documentation, Release 1.0
Returns
Notes
Example
EEex_GetVolatileField(actorID, name)
See Also
EEex_AccessVolatileField, EEex_GetVolatileFieldOffset, EEex_RegisterVolatileField, EEex_SetVolatileField
2.16.4 EEex_GetVolatileFieldOffset
Retrieve the offset for the specified volitile field
EEex_GetVolatileFieldOffset(name)
Parameters
• name
Returns
Returns address of volatile field
Notes
Example
EEex_GetVolatileFieldOffset(name)
See Also
EEex_AccessVolatileField, EEex_GetVolatileField, EEex_RegisterVolatileField, EEex_SetVolatileField
2.16.5 EEex_HookAction
EEex_HookAction(actionData)
Hooks an action
Parameters
• actionData - action data to hook
Return
None
Example
EEex_HookAction()
See Also
EEex_InstallActionHook
104 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.16.6 EEex_HookActionbar
EEex_HookActionbar(config)
Begins the hook of the actionbar
Parameters
• config - unique config to hook for the actionbar
Return
Example
EEex_HookActionbar()
See Also
EEex_InstallActionbarHook, EEex_AddActionbarListener
2.16.7 EEex_HookCheckAddScreen
EEex_HookCheckAddScreen(effectData, creatureData)
Opcode #403 mechanics
Parameters
• effectData - effect data
• creatureData - creature data
Return
Returns true or false
Example
EEex_HookCheckAddScreen()
See Also
EEex_InstallOpcodeChanges, EEex Opcodes
2.16.8 EEex_HookConstructCreature
EEex_HookConstructCreature(fromFile, toStruct)
Constructs a creature
Parameters
• fromFile - ? not currently used
• toStruct - pointer to structure to use as basis for creating creature
Return
None
Example
2.16. Internal 105
EEex Documentation, Release 1.0
EEex_HookConstructCreature()
See Also
EEex_HookConstructCreature, EEex_HookCopyStats, EEex_HookReloadStats
2.16.9 EEex_HookCopyStats
EEex_HookCopyStats(cre)
Copy a creature’s stat
Parameters
• cre
Return
None
Example
EEex_HookCopyStats()
See Also
EEex_HookReloadStats
2.16.10 EEex_HookDeconstructCreature
EEex_HookDeconstructCreature(cre)
Destroys a previously created creature
Parameters
• cre
Return
None
Example
EEex_HookDeconstructCreature()
See Also
EEex_HookConstructCreature, EEex_HookCopyStats, EEex_HookReloadStats
2.16.11 EEex_HookMarshalCreature
Provides a hook for marshal of creatures
EEex_HookMarshalCreature(cre, allocatedMem)
Parameters
106 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
• cre
• allocatedMem
Returns
None
Notes
Example
EEex_HookMarshalCreature(cre, allocatedMem)
See Also
EEex_HookMarshalCreatureSize, EEex_HookMarshalDynamicStart, EEex_HookUnmarshalCreature,EEex_InstallCreatureHooks
2.16.12 EEex_HookMarshalCreatureSize
EEex_HookMarshalCreatureSize(cre)
Parameters
• cre
Returns
Returns additional size of space for EEex data in the creature
Notes
Example
EEex_HookMarshalCreatureSize()
See Also
EEex_HookMarshalCreature, EEex_HookMarshalDynamicStart, EEex_HookUnmarshalCreature,EEex_InstallCreatureHooks
2.16.13 EEex_HookMarshalDynamicStart
EEex_HookMarshalDynamicStart()
Parameters
None
Returns
Returns EEex_HookMarshalDynamicStartVal
Notes
Example
EEex_HookMarshalDynamicStart()
2.16. Internal 107
EEex Documentation, Release 1.0
See Also
EEex_HookMarshalCreature, EEex_HookMarshalCreatureSize, EEex_HookUnmarshalCreature,EEex_InstallCreatureHooks
2.16.14 EEex_HookReloadStats
EEex_HookReloadStats(cre)
Reload derived base stats for a specified creature
Parameters
• cre - cre
Return
None
Example
EEex_HookReloadStats()
See Also
EEex_HookCopyStats
2.16.15 EEex_HookUnmarshalCreature
Provides a hook for unmarshal of creatures
EEex_HookUnmarshalCreature(CGameSprite, pCreature)
Parameters
• CGameSprite
• pCreature
Returns
None
Notes
Example
EEex_HookUnmarshalCreature()
See Also
EEex_HookMarshalCreature, EEex_HookMarshalCreatureSize, EEex_HookMarshalDynamicStart,EEex_InstallCreatureHooks
2.16.16 EEex_InstallActionHook
EEex_InstallActionHook()
108 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Install a hook for action events
Parameters
None
Return
None
Example
EEex_InstallActionHook()
See Also
EEex_HookAction
2.16.17 EEex_InstallActionbarHook
EEex_InstallActionbarHook()
Install the hook for the actionbar
Parameters
None
Return
None
Example
EEex_InstallActionbarHook()
See Also
EEex_HookActionbar, EEex_AddActionbarListener
2.16.18 EEex_InstallBardThievingHook
EEex_InstallBardThievingHook()
Installs a hook for whenever the game engine attempts to look up a character’s class when they attempt to use theirthieving abilities.
Parameters
None
Return
None
Example
EEex_InstallBardThievingHook()
See Also
EEex_HookBardThieving
2.16. Internal 109
EEex Documentation, Release 1.0
2.16.19 EEex_InstallCreatureHooks
Installs hooks related to creatures
EEex_InstallCreatureHooks()
Parameters
None
Returns
None
Notes
Example
EEex_InstallCreatureHooks()
See Also
EEex_HookMarshalCreature, EEex_HookMarshalCreatureSize, EEex_HookMarshalDynamicStart,EEex_HookUnmarshalCreature
2.16.20 EEex_InstallFixes
EEex_InstallFixes()
Installs game engine bug fixes and other enhancements
Parameters
None
Return
None
Example
EEex_InstallFixes()
See Also
EEex_InstallLuaHooks, EEex_InstallOpcodeChanges
2.16.21 EEex_InstallKeyHook
EEex_InstallKeyHook()
Installs a hook for keyboard events: key press and key release
Parameters
None
Return
None
110 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Example
EEex_InstallKeyHook()
See Also
EEex_KeyPressed, EEex_KeyReleased, EEex_KeyReset
2.16.22 EEex_InstallLuaHooks
EEex_InstallLuaHooks()
Install a hook for lua
Parameters
None
Return
None
Example
EEex_InstallLuaHooks()
See Also
EEex_InstallMenuHooks, EEex_InstallFixes
2.16.23 EEex_InstallMenuHooks
EEex_InstallMenuHooks()
Installs a hook for menu events
Parameters
None
Return
None
Example
EEex_InstallMenuHooks()
See Also
EEex_ResetHook, EEex_AddUIMenuLoadListener, EEex_AddPostResetListener
2.16.24 EEex_InstallNewObjects
EEex_InstallNewObjects()
2.16. Internal 111
EEex Documentation, Release 1.0
Installs new CAIObjectType objects
Parameters
None
Return
None
Example
EEex_InstallNewObjects()
See Also
EEex_InstallNewTriggers, EEex_InstallOpcodeChanges
2.16.25 EEex_InstallNewTriggers
EEex_InstallNewTriggers()
Installs new triggers and functions related to triggers: EEex_LuaTrigger, EEex_IsImmuneToOpcode,EEex_MatchObject, EEex_HasDispellableEffect
Parameters
None
Return
None
Example
EEex_InstallNewTriggers()
See Also
EEex_LuaTrigger, EEex_IsImmuneToOpcode, EEex_MatchObject, EEex_HasDispellableEffect
2.16.26 EEex_InstallOpcodeChanges
EEex_InstallOpcodeChanges()
Installs newer and updated opcodes. See EEex Opcodes for details of the new and updated opcodes installed by EEex.
Parameters
None
Return
None
Example
EEex_InstallOpcodeChanges()
See Also
EEex_InstallFixes, EEex_InstallNewObjects, EEex_InstallNewTriggers, EEex Opcodes
112 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.16.27 EEex_InstallRenderHook
EEex_InstallRenderHook()
Installs a hook for rendering and drawing of primitive shapes, rectangles and lines
Parameters
None
Return
None
Example
EEex_InstallRenderHook()
See Also
EEex_ResetHook
2.16.28 EEex_InstallTooltipHook
EEex_InstallTooltipHook()
Installs a hook for whenever the game engine attempts to display a tooltip over a creature in the world screen.
Parameters
None
Return
None
Example
EEex_InstallTooltipHook()
See Also
EEex_IsActorTooltipDisabled
2.16.29 EEex_KeyPressed
EEex_KeyPressed(key)
Sets the pressed status of the specified key and calls each registered key press listener previously registered byEEex_AddKeyPressedListener
Parameters
• key - key code to set as pressed
Return
None
Example
2.16. Internal 113
EEex Documentation, Release 1.0
EEex_KeyPressed(key)
See Also
EEex_InstallKeyHook, EEex_KeyReleased, EEex_AddKeyReleasedListener, EEex_AddKeyPressedListener
2.16.30 EEex_KeyReleased
EEex_KeyReleased(key)
Sets the released status of the specified key and calls each registered key release listener previously registered byEEex_AddKeyReleasedListener
Parameters
• key - key code to set as released
Return
None
Example
EEex_KeyReleased(key)
See Also
EEex_InstallKeyHook, EEex_KeyPressed, EEex_AddKeyReleasedListener, EEex_AddKeyPressedListener
2.16.31 EEex_KeyReset
EEex_KeyReset()
Resets and removes all key listeners event callbacks
Parameters
None
Return
None
Example
EEex_KeyReset()
See Also
EEex_InstallKeyHook, EEex_KeyPressed, EEex_KeyReleased, EEex_AddKeyReleasedListener,EEex_AddKeyPressedListener
2.16.32 EEex_RegisterVolatileField
Registers a volitile field
EEex_RegisterVolatileField(name, attributeTable)
114 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Parameters
• name
• attributeTable
Returns
The offset of the volatile field registered
Notes
Example
EEex_RegisterVolatileField(name, attributeTable)
See Also
EEex_AccessVolatileField, EEex_GetVolatileField, EEex_GetVolatileFieldOffset, EEex_SetVolatileField
2.16.33 EEex_ResetHook
EEex_ResetHook()
Calls all registered UI listeners after initial UI.MENU load, post UI.MENU load or after reset of UI. Listeners calledby this function are registered via EEex_AddUIMenuLoadListener and/or EEex_AddPostResetListener
Parameters
None
Return
None
Example
EEex_ResetHook()
See Also
EEex_AddUIMenuLoadListener, EEex_AddPostResetListener
2.16.34 EEex_SetVolatileField
Sets the value of a volatile field
EEex_SetVolatileField(actorID, name, value)
Parameters
• actorID
• name
• value
Returns
Returns address of volatile field and value set
Notes
2.16. Internal 115
EEex Documentation, Release 1.0
Example
EEex_SetVolatileField(actorID, name, value)
See Also
EEex_AccessVolatileField, EEex_GetVolatileField, EEex_GetVolatileFieldOffset, EEex_RegisterVolatileField
Function DescriptionEEex_AccessVolatileField Access the volitile field in the specified actorEEex_AddMarshalRequestorEEex_GetVolatileFieldEEex_GetVolatileFieldOffset Retrieve the offset for the volitile fieldEEex_HookAction Hooks an actionEEex_HookActionbar Begins the hook of the actionbarEEex_HookCheckAddScreen Opcode #403 mechanicsEEex_HookConstructCreature Constructs a creatureEEex_HookCopyStats Copy a creature’s statEEex_HookDeconstructCreature Destroys a previously created creatureEEex_HookReloadStats Reload derived base stats for a specified creatureEEex_HookMarshalCreature Provides a hook for marshal of creaturesEEex_HookMarshalCreatureSizeEEex_HookMarshalDynamicStartEEex_HookUnmarshalCreature Provides a hook for unmarshal of creaturesEEex_InstallActionbarHook Install a hook for the actionbar eventsEEex_InstallActionHook Install a hook for action eventsEEex_InstallBardThievingHook Installs a hook for thieving abilitiesEEex_InstallCreatureHooks Installs hooks related to creaturesEEex_InstallFixes Installs game bug fixes and other enhancementsEEex_InstallKeyHook Installs a hook for keyboard eventsEEex_InstallLuaHooks Install a hook for luaEEex_InstallMenuHooks Installs a hook for menu eventsEEex_InstallNewObjects Installs new objectsEEex_InstallNewTriggers Installs new triggers functionsEEex_InstallOpcodeChanges Installs newer and updated opcodesEEex_InstallRenderHook Installs a hook for rendering and drawingEEex_InstallTooltipHook Installs a hook for displaying a tooltipEEex_KeyPressed Sets the pressed status of the specified keyEEex_KeyReleased Sets the released status of the specified keyEEex_KeyReset Resets and removes key listeners event callbacksEEex_RegisterVolatileField Registers a volitile fieldEEex_ResetHook Calls all registered UI listenersEEex_SetVolatileField Sets the value of a volatile field
2.17 Advanced low level functions
2.17.1 EEex_AddressList
A lua function to return an array of pattern database entries
116 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
EEex_AddressList()
Parameters
None
Return
Return a lua table of function and or variable names and global addresses from the pattern database entries. For detailson the pattern database used in the EEex loader please see this wiki page
Notes
This function, EEex_ExposeToLua, EEex_Init and EEex_WriteByte are implemented by the EEex loader in the processspace of the game executable as lua functions.
For more technical information on how the EEex loader works and how it implements these functions, please visit thiswiki page
Example
EEex_GlobalAssemblyLabels = EEex_AddressList()
See Also
EEex_Label, EEex_Init, EEex_ExposeToLua, EEex_WriteByte
2.17.2 EEex_AllocCodePage
Allocate additional code pages when needed
EEex_AllocCodePage(size)
Parameters
• size - memory size to allocate. Size is automatically rounded up to meet allocation granularity requirements
Return
Returns a code page entry
Notes
Please don’t call this directly. This is used internally by EEex_ReserveCodeMemory to allocate additional code pageswhen needed. If you ignore this message, god help you
Example
EEex_AllocCodePage()
See Also
EEex_ReserveCodeMemory, EEex_VirtualAlloc
2.17.3 EEex_CalcLabelOffset
Calculate the offset to a label, used internally with EEex_WriteAssembly, EEex_CalcWriteLength andEEex_ResolveMacroArg
2.17. Advanced low level functions 117
EEex Documentation, Release 1.0
EEex_CalcLabelOffset(address, args, label)
Parameters
• address - address
• args - arguments
• label - label name
Return
An integer value representing the offset to the label
Example
local offset = EEex_CalcLabelOffset(address, args, label)
See Also
EEex_Label, EEex_WriteAssembly, EEex_CalcWriteLength, EEex_ResolveMacroArg
2.17.4 EEex_CalcWriteLength
Calculate the length of data to write based on the arguments supplied
EEex_CalcWriteLength(address, args)
Parameters
• address
• args
Return
An integer value representing the write length
Example
writeLength = EEex_CalcWriteLength(allocEntry.address, assembly)
See Also
EEex_CalcLabelOffset
2.17.5 EEex_Call
Calls an internal function at the given address
EEex_Call(address, stackArgs, ecx, popSize)
Parameters
• address - address of function to call
• stackArgs - a table which includes the values to be pushed before the function is called
• ecx - Sets the ecx register to the given value directly before calling the internal function
• popSize - defines the size, (in bytes), that should be removed from the stack after the internal function is called
118 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Return
Return value depends on the function called and its behaviour in returning a value.
Notes
The stackArgs are pushed in the order they are defined, so in order to call a function properly these args should bedefined in reverse. The ecx register is most commonly used to pass the “this” pointer. Some internal functions don’tclean up the stackArgs pushed to them, hence the use of the popSize field to adjust and rebalance the stack after theinternal function has been called. Please note that if this value is wrong, the game WILL crash due to an imbalancedstack
Example
-- Lua wrapper for malloc()function EEex_Malloc(size)
return EEex_Call(EEex_Label("_malloc"), {size}, nil, 0x4)end
See Also
EEex_DllCall, EEex_Label
2.17.6 EEex_ClearCStringList
Clears a CStringList. Typically needed to clear CStringList from new creature stats and new temp stats
EEex_ClearCStringList(CStringList*)
Parameters
• CStringList* - pointer to a CStringList to clear
Return
None
Notes
Function is implemented by raw asm byte code via EEex_WriteAssemblyFunction
Example
EEex_ClearCStringList(pCStringList)
See Also
CStringList, EEex_CopyCStringList
2.17.7 EEex_ConstructCString
EEex_ConstructCString(string)
Constructs and returns a CString from the given Lua string
Parameters
• string - lua string to construct a CString for
2.17. Advanced low level functions 119
EEex Documentation, Release 1.0
Return
Returns a CString
Example
local variableNamePtr = EEex_ConstructCString(variableName)
See Also
EEex_CopyCString, EEex_FreeCString, CString
2.17.8 EEex_CopyCString
EEex_CopyCString(CString)
Copies the given CString and returns its pointer
Parameters
• CString - the CString to copy
Return
Returns a pointer to the copied CString
Example
local variableNamePtr = EEex_ConstructCString(variableName)local variableNameLookupPtr = EEex_CopyCString(variableNamePtr)
See Also
EEex_ConstructCString, EEex_FreeCString, CString
2.17.9 EEex_CopyCStringList
Copies a CStringList
EEex_CopyCStringList(srcCStringList*, destCStringList&)
Parameters
• srcCStringList* - pointer to CStringList to copy
• destCStringList* - address of variable to hold pointer to copy of CStringList
Return
None
Notes
Function is implemented by raw asm byte code via EEex_WriteAssemblyFunction
Example
EEex_CopyCStringList()
See Also
CStringList, EEex_ClearCStringList
120 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.17.10 EEex_DecodeAssembly
Decodes assembly
EEex_DecodeAssembly(address, args)
Parameters
• address - addres to start decoding assembly at
• args - arguments
Return
Example
EEex_DecodeAssembly()
See Also
EEex_WriteAssembly, EEex_WriteAssemblyAuto, EEex_WriteAssemblyFunction
2.17.11 EEex_DefineAssemblyLabel
Adds an entry into the EEex_GlobalAssemblyLabels global array for a text label and an address value. Typically thisis for storing and looking up known addresses of internal game functions using a text mnemonic or when creating newlow level assembler bytecode functions via EEex_WriteAssembly or other similar functions.
EEex_DefineAssemblyLabel(label, value)
Parameters
• label - the text to apply as a label to the array entry
• value - the address or other value associated with the label text
Return
None
Example
EEex_DefineAssemblyLabel("SomeFunc", 0x0123ABCD)
See Also
EEex_WriteAssembly
2.17.12 EEex_DefineAssemblyMacro
EEex_DefineAssemblyMacro()
Parameters
• 1
• 2
• 3
2.17. Advanced low level functions 121
EEex Documentation, Release 1.0
Return
Example
EEex_DefineAssemblyMacro()
See Also
:ref:, :ref:
2.17.13 EEex_DisableCodeProtection
EEex_DisableCodeProtection()
Reset RWX (Read, Write and eXecute) protection of memory address range
Parameters
None
Return
None
Notes
Windows OS specific. Don’t use this unless you REALLY know what you are doing. Enables writing to the .textsection of the game exe (code)
Example
EEex_DisableCodeProtection()-- add a hook or write something to .text sectionEEex_EnableCodeProtection()
See Also
EEex_EnableCodeProtection, EEex_VirtualAlloc, EEex_GetAllocGran, EEex_AllocCodePage,EEex_ReserveCodeMemory
2.17.14 EEex_DllCall
EEex_DllCall(dll, proc, args, ecx, pop)
Calls a function from a DLL. The DLL will be loaded into the process’s address space if it isn’t already.
Parameters
• dll - String containing dll’s name, not including the extension. Example: “User32”
• proc - String containing function name to call. Example: “MessageBoxA”
• args - Table containing function args, in reverse order. Example: {0x40, “Caption”, “Message”, 0x0}.
• ecx - Number representing the “this” register value. Should be nil if proc doesn’t use “this”.
• pop - Number of bytes, (should be an increment of 0x4), to pop off the stack after returning from proc.
122 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Return
Returns the result of the proc call. Please check the microsoft documentation for details regarding the specific returnvalues associated with the win32 api function that is called
Notes
Windows OS only. The stack must be balanced by the end of the call - if this value is wrong, the game will crash.
Example
local caption = "EEex"local messageAddress = EEex_Malloc(#message + 1 + #caption + 1)local captionAddress = messageAddress + #message + 1EEex_WriteString(messageAddress, message)EEex_WriteString(captionAddress, caption)EEex_DllCall("User32", "MessageBoxA", {EEex_Flags({0x40}), captionAddress,→˓messageAddress, 0x0}, nil, 0x0)EEex_Free(messageAddress)
See Also
EEex_Call
2.17.15 EEex_DumpDynamicCode
EEex_DumpDynamicCode()
Dumps the contents of dynamically allocated EEex code to the console window. For debugging.
Parameters
None
Return
None
Example
EEex_DumpDynamicCode()
See Also
EEex_DumpLuaStack, EEex_ReadDwordDebug
2.17.16 EEex_DumpLuaStack
EEex_DumpLuaStack()
Dumps the contents of the Lua stack to the console window. For debugging.
Parameters
None
Return
None
Example
2.17. Advanced low level functions 123
EEex Documentation, Release 1.0
EEex_DumpLuaStack()
See Also
EEex_Error
2.17.17 EEex_EnableCodeProtection
EEex_EnableCodeProtection()
Set RWX (Read, Write and eXecute) protection of memory address range
Parameters
None
Return
None
Notes
Windows OS specific. If you were crazy enough to use EEex_DisableCodeProtection(), please use this to reverse yourbad decisions. Reverts the .text section protections back to default.
Example
EEex_DisableCodeProtection()-- add a hook or write something to .text sectionEEex_EnableCodeProtection()
See Also
EEex_DisableCodeProtection, EEex_VirtualAlloc, EEex_GetAllocGran, EEex_AllocCodePage,EEex_ReserveCodeMemory
2.17.18 EEex_Error
EEex_Error(message)
Throws a Lua error, appending the current stacktrace to the end of the message
Parameters
• message - the text of the error message to output
Return
None
Example
EEex_Error("Why have you passed a label to a macro?")
See Also
EEex_FunctionLog, EEex_MessageBox
124 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.17.19 EEex_ExposeToLua
A lua function that registers an address of a function and a text string representing the function name, to be globallyavailable and visable to the internal lua state in the game.
EEex_ExposeToLua(functionAddress, functionName)
Parameters
• functionAddress - address of the function to expose to the lua state
• functionName - the registered name of the new lua function
Return
None
Notes
This function, EEex_Init, EEex_WriteByte and EEex_AddressList are implemented by the EEex loader in the processspace of the game executable as lua functions.
For more technical information on how the EEex loader works and how it implements these functions, please visit thiswiki page
When the newly registered lua function is used it will call the function at the associated address, in the same processspace as the game.
Example
EEex_ExposeToLua()
See Also
EEex_Init, EEex_WriteByte, EEex_AddressList
2.17.20 EEex_Free
Free memory that was previously allocated with EEex_Malloc
EEex_Free(address)
Parameters
• address - the location of the previously allocated memory to free
Return
Returns the result of the operation
Example
-- Displays a message box to the user.function EEex_MessageBox(message)
local caption = "EEex"local messageAddress = EEex_Malloc(#message + 1 + #caption + 1)local captionAddress = messageAddress + #message + 1EEex_WriteString(messageAddress, message)EEex_WriteString(captionAddress, caption)EEex_DllCall("User32", "MessageBoxA", {EEex_Flags({0x40}), captionAddress,
→˓messageAddress, 0x0}, nil, 0x0)
(continues on next page)
2.17. Advanced low level functions 125
EEex Documentation, Release 1.0
(continued from previous page)
EEex_Free(messageAddress)end
See Also
EEex_Malloc, EEex_Memset
2.17.21 EEex_FreeCPtrList
EEex_FreeCPtrList(CPtrList)
Frees the memory allocated by the given CPtrList pointer
Parameters
• CPtrList - pointer to the CPtrList to free
Return
None
Example
EEex_FreeCPtrList()
See Also
EEex_IterateCPtrList
2.17.22 EEex_FreeCString
EEex_FreeCString(CString)
Frees the memory allocated by the given CString pointer
Parameters
• CString - the CString to free
Return
None
Example
local variableNamePtr = EEex_ConstructCString(variableName)EEex_FreeCString(variableNamePtr)
See Also
EEex_ConstructCString, EEex_CopyCString, CString
2.17.23 EEex_FunctionLog
EEex_FunctionLog(message)
126 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Logs a message to the console window, prepending the message with the calling function’s name
Parameters
• message - text message to log output to the console
Return
None
Notes
Newline characters can be placed inside the message string by using: n
Example
EEex_FunctionLog("\n\nWriting some text to console window\n")
See Also
EEex_MessageBox, EEex_Error
2.17.24 EEex_GetAllocGran
EEex_GetAllocGran()
Returns the granularity for the starting address at which virtual memory can be allocated
Parameters
None
Return
Returns the minimum memory page size, typically 64k and 4k
Notes
Windows OS specific. See GetSystemInfo for details
Example
EEex_GetAllocGran()
See Also
EEex_VirtualAlloc
2.17.25 EEex_GetCurrentCInfinity
EEex_GetCurrentCInfinity()
Returns the current CInfinity instance - mostly contains fields pertaining to rendering and viewport
Parameters
None
Return
Returns the current CInfinity instance (m_cInfinity)
Example
2.17. Advanced low level functions 127
EEex Documentation, Release 1.0
local CInfinity = EEex_GetCurrentCInfinity()
2.17.26 EEex_GetEffectiveY
Returns Y
EEex_GetEffectiveY()
Parameters
• 1
• 2
• 3
Return
Returns Y
Notes
Function is implemented by raw asm byte code via EEex_WriteAssemblyFunction
Example
EEex_GetEffectiveY()
2.17.27 EEex_GetLuaRegistryIndex
Fetches a value held in the special Lua REGISTRY space.
<unknown_type> registryValue = EEex_GetLuaRegistryIndex(registryIndex)
Parameters
• registryIndex - registry index to lookup and return the value for
Return
Returns registryValue
Notes
Function is implemented by raw asm byte code via EEex_WriteAssemblyFunction
Note: Lua REGISTRY space - this is where compiled .MENU functions are held (the ones in actual menu definitions)
Example
EEex_GetLuaRegistryIndex()
2.17.28 EEex_Init
A lua function used to initialize the EEex project framework.
EEex_Init()
128 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Parameters
None
Return
Returns pointer to newly allocated memory for EEex to use in other internal functions
Notes
This function, EEex_ExposeToLua, EEex_WriteByte and EEex_AddressList are implemented by the EEex loader inthe process space of the game executable as lua functions.
EEex_Init does several things:
1. Exposes the hardcoded function EEex_WriteByte
2. Exposes the hardcoded function EEex_ExposeToLua
3. Calls VirtualAlloc with the following params: lpAddress = 0, dwSize = 0x1000, flAllocationType =MEM_COMMIT | MEM_RESERVE, flProtect = PAGE_EXECUTE_READWRITE
4. Passes along the VirtualAlloc return value
For more technical information on how the EEex loader works and how it implements these functions, please visit thiswiki page
Example
EEex_InitialMemory = EEex_Init()
See Also
EEex_ExposeToLua, EEex_WriteByte, EEex_AddressList
2.17.29 EEex_IterateCPtrList
EEex_IterateCPtrList(CPtrList, func)
Given a pointer to a CPtrList, iterates through every element and calls func() with element as argument. If func()returns true, the iteration breaks and instantly returns.
Parameters
• CPtrList - pointer to iterate through each element for
• func - function to call and pass the current iterated element to as a parameter
Return
None
Example
EEex_IterateCPtrList(actionList, function(CAIAction)
See Also
EEex_FreeCPtrList
2.17. Advanced low level functions 129
EEex Documentation, Release 1.0
2.17.30 EEex_Label
Returns a label value from the EEex_GlobalAssemblyLabels array. Typically the value returned is an address of avariable or function in the game executable as found by the EEex Loader as it procecess it’s pattern database.
EEex_Label(label)
Parameters
• label - the name assigned to the address value to lookup and return the value for
Return
Returns an integer value representing the address of a variable or function in the game process
Notes
For details on the pattern database used in the EEex loader please see this wiki page
Please see the EEex_AddressList function which is used to create the table used to store the variable and or functionnames and addresses associated with the name
Example
local g_pBaldurChitin = EEex_ReadDword(EEex_Label("g_pBaldurChitin")) --→˓(CBaldurChitin)
See Also
EEex_AddressList
2.17.31 EEex_Malloc
Allocates a block of memory and return a pointer to the newly allocated memory
EEex_Malloc(size)
Parameters
• size - size in bytes of memory to allocate
Return
Returns a pointer to the newly allocated memory
Notes
Once you have finished with the allocated memory it is good practice to free it using EEex_Free
Example
-- Displays a message box to the user.function EEex_MessageBox(message)
local caption = "EEex"local messageAddress = EEex_Malloc(#message + 1 + #caption + 1)local captionAddress = messageAddress + #message + 1EEex_WriteString(messageAddress, message)EEex_WriteString(captionAddress, caption)EEex_DllCall("User32", "MessageBoxA", {EEex_Flags({0x40}), captionAddress,
→˓messageAddress, 0x0}, nil, 0x0)EEex_Free(messageAddress)
end
130 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
See Also
EEex_Free, EEex_Memset
2.17.32 EEex_Memset
Sets the first num bytes of the block of memory pointed by ptr to the specified value
EEex_Memset(ptr, value, num)
Parameters
• ptr - Pointer to the block of memory to fill
• value - Value to be set
• num - Number of bytes to be set to the value
Return
Returns pointer as passed via the ptr parameter
Example
local C2DArray = EEex_Malloc(0x20)EEex_Memset(C2DArray, 0x20, 0x0)
See Also
EEex_Malloc, EEex_Free
2.17.33 EEex_MessageBox
EEex_MessageBox(message)
Displays a message box to the user. Note: Suspends game until closed, which can be useful for debugging
Parameters
• message - text string of the message to output to user
Return
None
Notes
Windows OS only
Example
EEex_MessageBox("Hello")
See Also
EEex_FunctionLog, EEex_Error
2.17. Advanced low level functions 131
EEex Documentation, Release 1.0
2.17.34 EEex_ReadByte
Read a single byte from an address location. Technically this function reads a dword from the given address, extractingand returning the “index”th byte
EEex_ReadByte(Address, index)
Parameters
• Address - the address in memory to read a DWORD value from
• index - the index of the DWORD to read and return as a BYTE value from
Return
Returns a BYTE value
Examples
local m_visibleArea = EEex_ReadByte(m_pObjectGame + 0x3DA0, 0) -- (byte)
EEex_ReadByte(EEex_GetActorShare(actorID) + 0x24, 0x2) -- index 2 (3rd byte) of dword
See Also
EEex_WriteByte, EEex_ReadWord, EEex_WriteWord, EEex_ReadDword, EEex_WriteDword
2.17.35 EEex_ReadDword
Read a dword from an address location.
EEex_ReadDword()
Parameters
• address - the address in memory to read a DWORD value from
Return
Returns a DWORD value
Notes
Function is implemented by raw asm byte code via EEex_WriteAssemblyFunction
Example
local area = EEex_ReadDword(EEex_GetActorShare(actorID) + 0x14)
See Also
EEex_WriteDword, EEex_ReadWord, EEex_WriteWord, EEex_ReadByte, EEex_WriteByte
2.17.36 EEex_ReadDwordDebug
EEex_ReadDwordDebug(reading, read)
Called by EEex_ReadDword() to help debug crashes. Disabled by default
Parameters
132 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
• reading
• read
Return
None
Notes
The variable EEex_ReadDwordDebug_Suppress is set to false. if true, prevents debug output
Example
EEex_ReadDwordDebug()
See Also
EEex_ReadDword, EEex_ReadWord, EEex_ReadByte
2.17.37 EEex_ReadLString
Reads a string from the given address until NULL is encountered, OR until it reaches the given length.
string result = EEex_ReadLString(address, maxLength)
Parameters
• address - location in memory of the string to read
• maxLength - max length to read if no null byte has been encountered
Return
Returns the string
Example
local spellRES = EEex_ReadLString(EEex_ReadDword(EEex_GetActorShare(actorID) + 0x344),→˓ 8)
See Also
EEex_ReadString, EEex_WriteString, EEex_WriteLString
2.17.38 EEex_ReadSignedWord
Read a signed word from an address location. Technically this function reads a dword from the given address, extract-ing and returning the “index”th word
EEex_ReadSignedWord(address, index)
Parameters
• Address - the address in memory to read a DWORD value from
• index - the index of the DWORD to read and return as a WORD value from
Return
Returns a WORD value
Examples
2.17. Advanced low level functions 133
EEex Documentation, Release 1.0
EEex_ReadSignedWord(EEex_GetActorShare(actorID) + 0x295D, 0x0)
EEex_ReadSignedWord(EEex_ReadDword(EEex_GetActorShare(actorID) + 0x8A0), 0x1)
See Also
EEex_WriteWord, EEex_ReadWord, EEex_ReadDword, EEex_WriteDword, EEex_ReadByte, EEex_WriteByte
2.17.39 EEex_ReadString
Reads a string from the given address until a NULL is encountered. NOTE: Certain game structures, (most commonlyresrefs), don’t necessarily end in a NULL. Regarding resrefs, if one uses all 8 characters of alloted space, no NULLwill be written. To read this properly, please use EEex_ReadLString with maxLength set to 8. In cases where thestring is guaranteed to have a terminating NULL, use this function.
string result = EEex_ReadString(address)
Parameters
• address - location in memory of the string to read
Return
Returns the string
Example
local luaString = EEex_ReadString(EEex_ReadDword(result))
See Also
EEex_ReadLString, EEex_WriteString, EEex_WriteLString
2.17.40 EEex_ReadUserdata
EEex_ReadUserdata()
Parameters
• 1
• 2
• 3
Return
Example
EEex_ReadUserdata()
See Also
:ref:, :ref:
134 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
2.17.41 EEex_ReadWord
Read a single word from an address location. Technically this function reads a dword from the given address, extractingand returning the “index”th word
EEex_ReadWord(address, index)
Parameters
• Address - the address in memory to read a DWORD value from
• index - the index of the DWORD to read and return as a WORD value from
Return
Returns a WORD value
Examples
EEex_ReadWord(EEex_GetActorShare(actorID) + 0x295D, 0x0)
EEex_ReadWord(EEex_ReadDword(EEex_GetActorShare(actorID) + 0x8A0), 0x1)
See Also
EEex_WriteWord, EEex_ReadSignedWord, EEex_ReadDword, EEex_WriteDword, EEex_ReadByte, EEex_WriteByte
2.17.42 EEex_ReserveCodeMemory
EEex_ReserveCodeMemory(assembly)
Dynamically allocates and reserves executable memory for new code
Parameters
• assembly - pointer to the assembler data to write to the newly allocated memory
Return
Returns the address of the reserved memory and the length of the reserver memory
Notes
No reason to use instead of EEex_WriteAssemblyAuto, unless you want to reserve memory for later use. Supportsfilling holes caused by freeing code reservations, (if you would ever want to do that?. . . ), though freeing is not currentlyimplemented.
Example
local reservedAddress, reservedLength = EEex_ReserveCodeMemory(assembly)
See Also
EEex_VirtualAlloc, EEex_GetAllocGran, EEex_AllocCodePage
2.17.43 EEex_Reset
EEex_Reset()
2.17. Advanced low level functions 135
EEex Documentation, Release 1.0
Executes the listeners in EEex_ResetListeners. Called by first line in UI.MENU - which should have been inserted bythe EEex WeiDU installer.
Parameters
None
Return
None
Notes
The EEex_IgnoreFirstReset variable is set to true, which is used by EEex_Reset() to ignore engine startup, (whichisn’t a “reset”)
Example
EEex_Reset()
2.17.44 EEex_ResolveMacro
EEex_ResolveMacro()
Parameters
• 1
• 2
• 3
Return
Example
EEex_ResolveMacro()
See Also
:ref:, :ref:
2.17.45 EEex_ResolveMacroArg
EEex_ResolveMacroArg()
Parameters
• 1
• 2
• 3
Return
Example
EEex_ResolveMacroArg()
136 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
See Also
:ref:, :ref:
2.17.46 EEex_SetLuaRegistryFunction
EEex_SetLuaRegistryFunction()
Parameters
• 1
• 2
• 3
Return
Example
EEex_SetLuaRegistryFunction()
See Also
:ref:, :ref:
2.17.47 EEex_ToLightUserdata
EEex_ToLightUserdata()
Parameters
• 1
• 2
• 3
Return
Example
EEex_ToLightUserdata()
See Also
:ref:, :ref:
2.17.48 EEex_VirtualAlloc
EEex_VirtualAlloc(dwSize, flProtect)
Allocate memory in the address space of the current process
Parameters
• dwSize - The size of the region to allocate, in bytes
• flProtect - The memory protection for the region of pages to be allocated
2.17. Advanced low level functions 137
EEex Documentation, Release 1.0
Return
Returns a pointer to the newly allocated memory in the address space of the current process
Notes
Windows OS specific. See VirtualAlloc for details
Example
local newmemory = EEex_VirtualAlloc(0x1000, 0x40) -- 0x40 == PAGE_EXECUTE_READWRITE
See Also
EEex_GetAllocGran, EEex_AllocCodePage, EEex_ReserveCodeMemory
2.17.49 EEex_WriteAssembly
Writes assembly declarations into memory.
EEex_WriteAssembly(address, args, funcOverride)
Parameters
• address - location in memory to write assembly byte code to
• args - table, containing arguments for the function
• funcOverride - function override?
Return
Notes
args MUST be a table. Acceptable sub-argument types:
a) string:
Every byte / operation MUST be seperated by some kind of whitespace. Syntax:
• number - Writes hex number as byte.
• :number - Writes relative offset to hex number. Depreciated; please use label operations instead.
• #number - Writes hex number as dword.
• +number - Writes address of relative offset. Depreciated; please use label operations instead.
• >label - Writes relative offset to label’s address.
• *label - Writes label’s address.
• @label - Defines a local label that can be used in the above two operations. (only in currentEEex_WriteAssembly call, use EEex_DefineAssemblyLabel() if you want to create a global label)
• $label - Defines a global label
• !macro - Writes macro’s bytes.
b) table:
Used to write the value of a Lua variable into memory.
• table[1] - Value to write.
• table[2] - How many bytes of table[1] to write.
138 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
• table[3] - If present, writes the relative offset to table[1] from table[3]. (Optional)
Example
EEex_WriteAssembly(EEex_Label("CChitin::GetVersionString()_versionStringPush"), {→˓{newVersionStringAddress, 4}})
See Also
EEex_WriteAssemblyAuto, EEex_Label
2.17.50 EEex_WriteAssemblyAuto
Writes assembly declarations to a dynamically allocated memory space, unlike EEex_WriteAssembly which writes toa provided address
EEex_WriteAssemblyAuto(assembly)
Parameters
• assembly - pointer to the assembler data to write to the newly allocated memory
Return
Returns a pointer to the reserved address that contains the assembler raw byte code
Example
See M__EEex.lua for examples
See Also
EEex_WriteAssembly, EEex_Label
2.17.51 EEex_WriteAssemblyFunction
Writes assembly declarations to a dynamically allocated memory space and exposes it to the lua state in the game
EEex_WriteAssemblyFunction(functionName, assembly)
Parameters
• functionName - text name to label function that will be registered as a new lua function
• assembly - pointer to the assembler data to write to the newly allocated memory
Return
Example
-- SIGNATURE:-- number result = EEex_ReadDword(number address)EEex_WriteAssemblyFunction("EEex_ReadDword", {
"55 8B EC 53 51 52 56 57 6A 00 6A 01 FF 75 08 \z!call >_lua_tonumberx \z83 C4 0C \z!call >__ftol2_sse \zFF 30 \z50 \z68", {debugHookAddress, 4},
(continues on next page)
2.17. Advanced low level functions 139
EEex Documentation, Release 1.0
(continued from previous page)
"FF 75 08 \z!call >_lua_getglobal \z83 C4 08 \zDB 04 24 83 EC 04 DD 1C 24 FF 75 08 \z!call >_lua_pushnumber \z83 C4 0C \zFF 34 24 \zDB 04 24 83 EC 04 DD 1C 24 FF 75 08 \z!call >_lua_pushnumber \z83 C4 0C \z6A 00 6A 00 6A 00 6A 00 6A 02 FF 75 08 \z!call >_lua_pcallk \z83 C4 18 \zDB 04 24 83 EC 04 DD 1C 24 FF 75 08 \z!call >_lua_pushnumber \z83 C4 0C B8 01 00 00 00 5F 5E 5A 59 5B 5D C3"
})
See Also
EEex_WriteAssembly, EEex_WriteAssemblyAuto, EEex_Label
2.17.52 EEex_WriteByte
A lua function to write a single byte to an address location
EEex_WriteByte(Address, Byte)
Parameters
• Address - the address in memory to write the Byte value to
• Byte - the BYTE value to write
Return
None
Notes
This function, EEex_ExposeToLua, EEex_Init and EEex_AddressList are implemented by the EEex loader in the pro-cess space of the game executable as lua functions.
For more technical information on how the EEex loader works and how it implements these functions, please visit thiswiki page
Example
EEex_WriteByte(0xFEDC3210, 0xFF)
See Also
EEex_ReadByte, EEex_ReadWord, EEex_WriteWord, EEex_ReadDword, EEex_WriteDword, EEex_Init,EEex_ExposeToLua, EEex_AddressList
2.17.53 EEex_WriteDword
Writes a dword at the given address.
140 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
EEex_WriteDword(address, value)
Parameters
• address - the address in memory to write the dword value to
• value - the DWORD value to write
Return
None
Example
EEex_WriteDword(EEex_Label("_nextStackMenuIdx"), 0x0)
See Also
EEex_ReadDword, EEex_ReadWord, EEex_WriteWord, EEex_ReadByte, EEex_WriteByte
2.17.54 EEex_WriteLString
EEex_WriteLString(address, toWrite, maxLength)
Writes a string to the given address, padding the end with 0’s to achieve desired length. If the string length exactlymatches the field length, terminating null is not written.
Parameters
• address - the address to write the string to
• toWrite - the string to write to the address
• maxLength - the max length of the string to write
Return
None
Notes
Can crash the game if the terminating null byte ends up outside of allocated memory.
Example
:: local resrefLocation = EEex_Malloc(0x8) EEex_WriteLString(resrefLocation + 0x0, resref, 8)
See Also
EEex_WriteString, EEex_ReadString, EEex_ReadLString
2.17.55 EEex_WriteString
Writes the given string at the specified address. NOTE: Writes a terminating NULL in addition to the raw string.
EEex_WriteString(address, toWrite)
Parameters
• address - the address to write the string to
• toWrite - the string to write to the address
2.17. Advanced low level functions 141
EEex Documentation, Release 1.0
Return
None
Example
EEex_WriteString(resrefAddress, resref)
See Also
EEex_WriteLString, EEex_ReadString, EEex_ReadLString
2.17.56 EEex_WriteWord
Writes a word at the given address.
EEex_WriteWord(address, value)
Parameters
• address - the address in memory to write the word value to
• value - the WORD value to write
Return
None
Example
EEex_WriteWord(Item_effect_st + 0x0, argOrError("opcode"))
See Also
EEex_ReadWord, EEex_ReadDword, EEex_WriteDword, EEex_ReadByte, EEex_WriteByte
Function DescriptionEEex_AddressList Returns an array of pattern database entriesEEex_AllocCodePage Allocate additional code pages when neededEEex_CalcLabelOffset Calculate the offset to a labelEEex_CalcWriteLength Calculate the write lengthEEex_Call Calls an internal function at the given addressEEex_ClearCStringList Clears a CStringListEEex_ConstructCString Constructs and returns CString from a Lua stringEEex_CopyCString Copies the given CString and returns its pointerEEex_CopyCStringList Copies a CStringListEEex_DecodeAssembly Decodes assemblyEEex_DefineAssemblyLabel Adds an array entry for a text label and an addressEEex_DefineAssemblyMacroEEex_DisableCodeProtection Reset RWX of memory address rangeEEex_DllCall Call a windows dll functionEEex_DumpDynamicCode Dumps contents of dynamically allocated EEex codeEEex_DumpLuaStack Display lua stack for debugging purposesEEex_EnableCodeProtection Set RWX of memory address rangeEEex_Error Throws a Lua errorEEex_ExposeToLua Registers a function name and address with lua
Continued on next page
142 Chapter 2. EEex Functions
EEex Documentation, Release 1.0
Table 8 – continued from previous pageEEex_Free Free memory allocated with EEex_MallocEEex_FreeCPtrList Frees memory allocated by the CPtrList pointerEEex_FreeCString Frees memory allocated by a CString pointerEEex_FunctionLog Logs a message to the console windowEEex_GetAllocGran Get memory granularity for allocating memoryEEex_GetCurrentCInfinity Returns the current CInfinity instanceEEex_GetEffectiveYEEex_GetLuaRegistryIndex Fetches a value held in the special lua registryEEex_Init Initialize EEex - called from loaderEEex_IterateCPtrList Iterates through every element and calls func()EEex_Label Returns an address from the global labels arrayEEex_Malloc Allocate a block of memory and return a pointerEEex_Memset Fills a block of memory with a specific valueEEex_MessageBox Show a message box to userEEex_ReadByte Read a BYTE value from a memory addressEEex_ReadDword Read a DWORD value from a memory addressEEex_ReadDwordDebug Read a DWORD value from a memory addressEEex_ReadLString Reads a string from address until null or max sizeEEex_ReadSignedWord Read a signed WORD value from a memory addressEEex_ReadString Reads a string from an address until nullEEex_ReadUserdataEEex_ReadWord Read an unsigned WORD value from an addressEEex_ReserveCodeMemory Dynamically allocates and reserves memory for codeEEex_Reset Executes the listeners in EEex_ResetListenersEEex_ResolveMacroEEex_ResolveMacroArgEEex_SetLuaRegistryFunctionEEex_ToLightUserdataEEex_VirtualAlloc Allocate memory using the win32 VirtualAlloc apiEEex_WriteAssembly Write raw assembly x86 opcodes to memory locationEEex_WriteAssemblyAuto Writes assembly declarations into dynamic memoryEEex_WriteAssemblyFunction Writes assembly into memory and exposes to luaEEex_WriteByte Write a BYTE value to a memory addressEEex_WriteDword Write a DWORD value to a memory addressEEex_WriteLString Writes a null padded string to the given addressEEex_WriteString Writes a string to the specified addressEEex_WriteWord Write a WORD value to a memory address
2.17. Advanced low level functions 143
EEex Documentation, Release 1.0
144 Chapter 2. EEex Functions
CHAPTER 3
EEex Opcodes
Note: Opcodes are used in .eff (effect) files - and in embedded versions in .itm (item) and .spl (spell) files - andprovide additional features and functionality in all the Infinity Engine games. The effect type field of the EFFV1.0 files and the Opcode number field of the EFF v2.0 files indicates the opcode in use for a particular .eff file.Modifying existing .eff files to change opcodes used, or creating new effects is usually done with modding tools suchas WeiDU or NearInfinity. For details on the different opcodes (effects) available in the Infinity Engine games, see theInfinity Engine Structures Description Project
EEex expands on the capability of some existing opcodes, and adds new opcodes for mod makers to make use of.
3.1 Opcode Listing
Opcode DescriptionOpcode #42 Wizard Spell Slots ModifierOpcode #62 Priest Spell Slots ModifierOpcode #218 Protection: StoneskinOpcode #280 Spell Effect: Wild MagicOpcode #319 Item UsabilityOpcode #324 Immunity from Spell and MessageOpcode #400* Set Temporary AI ScriptOpcode #401* Set Extended StatOpcode #402* Invoke Lua
* indicates new opcodes added via EEex
145
EEex Documentation, Release 1.0
3.2 Updated Opcodes
3.2.1 Opcode #42
Wizard Spell Slots Modifier
• Special: Force the slot modification - If Special parameter is non-zero, the slot modification ignores access toparticular spell level requirement.
3.2.2 Opcode #62
Priest Spell Slots Modifier
• Special: Force the slot modification
If Special parameter is non-zero, the slot modification ignores access to particular spell level requirement.
3.2.3 Opcode #218
Protection: Stoneskin
• Resource Key: Fire spell
Spell specified in resource key is fired when all layers are lost.
3.2.4 Opcode #280
Spell Effect: Wild Magic
• Parameter #1: Surge Roll
• Special: Show hardcoded graphical effects
‘Surge Roll’ field allows to force particular wild surge roll to occur if it is set to non-zero. If Special parameter isnon-zero, all hardcoded wild surge graphical effects are suppressed.
3.2.5 Opcode #319
Item Usability
• Power: Mode
• Parameter #1: IDS Entry / Value
• Parameter #2: IDS File / Stat Type
Known values for ‘Mode’ are:
• 0 item restricted if condition holds (‘Not usable by’ mode), parameters use IDS targets
• 1 item restricted if condition fails (‘Usable by’ mode), parameters use IDS targets
• 2 like 1 but parameters use splprot.2da
• 3 like 0 but parameters use splprot.2da
If ‘Mode’ is set to 2 or 3, then the creature type specified by the ‘Stat Type’ field will be affected by this opcode. Seeopcode #324 for more information.
146 Chapter 3. EEex Opcodes
EEex Documentation, Release 1.0
3.2.6 Opcode #324
Immunity from Spell and Message
• Special: Strref
Hardcoded enginest.2da strref can be optionally overridden by strref specified in Special field.
3.3 New Opcodes
3.3.1 Opcode #400
Set Temporary AI Script
• Parameter #1: Irrelevant
• Parameter #2: Type
• Description: Works exactly like Opcode #82 except:
A null resref can null a script slot The original script is restored when the duration runs out or the effect otherwiseends.
3.3.2 Opcode #401
Set Extended Stat
• Parameter #1: Statistic Modifier
• Parameter #2: Type
• Special: Stat
• Description: Applies the modifier value specified by the ‘Statistic Modifier’ field in the style specified by the‘Type’ field.
Known values for ‘Type’ are:
• 0 Cumulative Modifier -> Stat = Stat+ ‘Statistic Modifier’ value
• 1 Flat Value Modifier -> Stat= ‘Statistic Modifier’ value
• 2 Percentage Modifier -> Stat = (Stat* ‘Statistic Modifier’ value) / 100
Values for ‘Stat’ are taken from stats.ids (Note: EEex expands number of usable stats.ids entries to 65737).
3.3.3 Opcode #402
Invoke Lua
• Parameter #1: Lua Value 1
• Parameter #2: Lua Value 2
• Special: Lua Value 3
• Description: The targeted creature(s) calls a Lua function specified by the resource key. Maximum functionname length is 8, and function names must be completely upper-case.
3.3. New Opcodes 147
EEex Documentation, Release 1.0
Object that invoked the effect and values passed by the opcode can be used in the called Lua function.
Example: Click Here or see below
148 Chapter 3. EEex Opcodes
CHAPTER 4
EE Game Lua Functions
4.1 buttonArray Functions
4.1.1 buttonArray:GetButtonBam
buttonArray:GetButtonBam()
Parameters
• **
• **
• **
Returns
Notes
Example
buttonArray:GetButtonBam()
See Also
:ref:, :ref:
4.1.2 buttonArray:GetButtonEnabled
buttonArray:GetButtonEnabled()
Parameters
• **
149
EEex Documentation, Release 1.0
• **
• **
Returns
Notes
Example
buttonArray:GetButtonEnabled()
See Also
:ref:, :ref:
4.1.3 buttonArray:GetButtonSequence
buttonArray:GetButtonSequence()
Parameters
• **
• **
• **
Returns
Notes
Example
buttonArray:GetButtonSequence()
See Also
:ref:, :ref:
4.1.4 buttonArray:GetButtonType
buttonArray:GetButtonType()
Parameters
• **
• **
• **
Returns
Notes
Example
buttonArray:GetButtonType()
See Also
:ref:, :ref:
150 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.1.5 buttonArray:OnLButtonPressed
buttonArray:OnLButtonPressed()
Parameters
• **
• **
• **
Returns
Notes
Example
buttonArray:OnLButtonPressed()
See Also
:ref:, :ref:
4.1.6 buttonArray:OnRButtonPressed
buttonArray:OnRButtonPressed()
Parameters
• **
• **
• **
Returns
Notes
Example
buttonArray_OnRButtonPressed()
See Also
:ref:, :ref:
Function DescriptionbuttonArray:GetButtonBambuttonArray:GetButtonEnabledbuttonArray:GetButtonSequencebuttonArray:GetButtonTypebuttonArray:OnLButtonPressedbuttonArray:OnRButtonPressed
e = g_pBaldurChitingame = e:GetObjectGame()buttonArray = game:GetButtonArray()
4.1. buttonArray Functions 151
EEex Documentation, Release 1.0
4.2 C (CLUAConsole) Functions
4.2.1 C:AddGold
Adds gold to the party
C:AddGold(Gold)
Parameters
• string Gold - string containing the numeric amount of gold to add to party
Example
C:AddGold("1000")
See Also
C:AddSpell, C:CreateItem
4.2.2 C:AddSpell
Adds a spell to the specified character
C:AddSpell(SpellName)
Parameters
• string SpellName - string containing the resource reference (ResRef) of the spell to add to character
Notes
Spell resource reference (ResRef) used in SpellName must be 8 characters or less and must be valid.
A character must be selected for this to work.
To obtain the spell codes (ResRef) required for this command, please use Near Infinity to browse .spl files, or visitthe specific spell page from the BGII Wiki and look for the spell code in the right hand info bar - exclude the .splextension when using the spell code.
Example
C:AddSpell("SPWI112")
See Also
C:CreateItem, C:AddGold
4.2.3 C:AdvanceRealTime
Advance time
C:AdvanceRealTime(GameTime)
Parameters
• integer GameTime - amount of time in milliseconds to advance
152 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Notes
Can be used to trigger banters and love talks etc
Example
Speed up 1 hour real time:
C:AdvanceRealTime(60000)
See Also
C:GetGlobal, C:SetGlobal
4.2.4 C:CreateCreature
Creates the creature specified
C:CreateCreature(CreatureName)
Parameters
• string CreatureName - string containing resource reference (ResRef) of creature to spawn (create)
Notes
Creature resource reference (ResRef) used in CreatureName must be 8 characters or less and must be valid.
This spawns a creature to the center of the screen (or nearest valid point). If you?re spawning a creature you know willbe hostile, you may want to pause the game before entering this command for the safety of your party.
Example
Spawn a gibberling using GIBBER.CRE
C:CreateCreature("GIBBER")
See Also
C:CreateItem
4.2.5 C:CreateEngine
Unknown - seems to start a new single 0 or multi 1 player game
C:CreateEngine(nEngine)
Parameters
• integer nEngine - engine id number to create
Notes
Unknown
Example
C:CreateEngine(0)
See Also
C:new
4.2. C (CLUAConsole) Functions 153
EEex Documentation, Release 1.0
4.2.6 C:CreateItem
Create an item
C:CreateItem(ItemName,Usage)
Parameters
• string ItemName - string containing resource reference (ResRef) of the item to create
• integer Usage - amount / charges (optional parameter)
Notes
Item resource reference (ResRef) used in ItemName must be 8 characters or less and must be valid.
This spawns an item, based on its item file name, or a stack of the same item, in the inventory of the current partyleader.
Examples
Create a long sword:
C:CreateItem("SW1H01")
Create 10 potions of cure light wounds:
C:CreateItem("POTN08", 10)
Greenstone Amulet with 50 charges:
C:CreateItem("amul17", 50)
See Also
C:CreateCreature, C:AddGold, C:AddSpell
4.2.7 C:CreateVEFVidCell
Create VEFVidCell
C:CreateVEFVidCell(VidCell)
Parameters
• string VidCell - string containing resource reference (ResRef) of VEFVidCell to create
Notes
Unknown
Example
C:CreateVEFVidCell("????????")
See Also
C:AddSpell, C:CreateItem
154 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.2.8 C:DisplayAllBAMFiles
Display all BAM files
C:DisplayAllBAMFiles()
Parameters
None
Notes
Display all BAM files
Example
C:DisplayAllBAMFiles()
See Also
C:TestAllDialog
4.2.9 C:DisplayText
Displays the specified text on screen
C:DisplayText(text)
Parameters
• string text - string containing text to display
Notes
Example
C:DisplayText("This is some text to display")
See Also
C:StrrefOn, C:StrrefOff
4.2.10 C:EnableCheatKeys
Enables cheat keys
C:EnableCheatKeys()
Parameters
None
Notes
The following cheat key combination are available once cheat keys has been enabled:
Key NotesCTRL+1 Change armor level animation
Continued on next page
4.2. C (CLUAConsole) Functions 155
EEex Documentation, Release 1.0
Table 1 – continued from previous pageCTRL+2 Fade screen to blackCTRL+3 Fade screen to normalCTRL+4 Highlight background-interactive objectsCTRL+5 Displays animation informationCTRL+6 Change avatar animation previousCTRL+7 Change avatar animation nextCTRL+8 Highlights the text boxesCTRL+9 Highlight the spritesCTRL+0 UnknownCTRL+A Change Selected Animation SequenceCTRL+C Jump to next chapterCTRL+D Display some numbers (framerate related?)CTRL+E Alters visual rangeCTRL+F Turn the characterCTRL+G Display loaded area refCTRL+I Play Selected Animation effectCTRL+J Teleport to cursor positionCTRL+K Creature under cursor kick out partyCTRL+L Play Selected Animation effectCTRL+M (Followed by ENTER) Debug DumpCTRL+N Freeze screen for 5 secondsCTRL+O (Followed by ENTER) Write Debug To LogCTRL+P Center screen on selected characterCTRL+Q Creature under cursor joins partyCTRL+R Heals character under cursorCTRL+S Change Selected Animation SequenceCTRL+T Advances game time by 1 hourCTRL+U Highlight doors and ground objectsCTRL+X Extended position informationCTRL+Y Kills creature under cursor
In addition CTRL+8 during character creation will set all attributes to 18 (STR 18/00)
CTRL+SHIFT+Z while hovering over a character will grant every spell file in the game - may crash due to invalidspells
Example
C:EnableCheatKeys()
See Also
createCharScreen:OnCheatyMcCheaterson
4.2.11 C:Eval
Evaluate a string containing script actions for a character
C:Eval(Script)
Parameters
• string Script - string containing script actions to evaluate
156 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Notes
The whole string can be enclosed into single quotes (‘) so that double quotes can still be used within the script action.
See BG(2)EE Script Actions for a list of script actions.
Example
Move Cernd to the specified location using evaluated script actions.
C:Eval("ActionOverride(\"Cernd\",MoveGlobal(\"AR0406\",Myself,[1368.1922]))")
See Also
C:Exec
4.2.12 C:Exec
Execute console commands contained in the specified file
C:Exec(File)
Parameters
• string File - string containing filename to execute
Notes
Example
Execute all the commands in the file test.txt:
C:Eval("test.txt")
See Also
C:Eval
4.2.13 C:ExploreArea
Reveals the entire map for the current area
C:ExploreArea()
Parameters
None
Notes
This doesn?t remove the fog of war; if a creature is out of your field of vision it will still remain hidden
Example
C:ExploreArea()
See Also
C:MoveToArea
4.2. C (CLUAConsole) Functions 157
EEex Documentation, Release 1.0
4.2.14 C:GetGlobal
Gets a global variable value
C:GetGlobal(VariableName,AreaName)
Parameters
• string VariableName - string containing the name of the global variable to retrieve the value of
• string AreaName - string containing the resource reference (ResRef) of the area in which the variable isstored, or "GLOBAL" for all.
Returns
Value of the variable specified
Notes
Area resource reference (ResRef) used in AreaName must be 8 characters or less and must be valid.
Examples
Returns the value of CHAPTER variable:
C:GetGlobal("CHAPTER", "GLOBAL") Will display current GLOBAL setting
Returns the value of TestValue variable stored in area AR0600.ARE:
C:GetGlobal("TestValue", "AR0600")
See Also
C:SetGlobal
4.2.15 C:LogMessages
Enables logging output to console
C:LogMessages()
Parameters
None
Notes
See C:LogSet to output logging to a file instead
Example
C:LogMessages()
See Also
C:LogSet
158 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.2.16 C:LogSet
Sets logging to a file instead of to console if logging is enabled
C:LogSet(LogFile)
Parameters
• string LogFile - string containing log filename
Notes
See C:LogMessages to enable logging
Example
C:LogSet("output.txt")
See Also
C:LogMessages
4.2.17 C:MoveToArea
Move the selected characters to the area specified
C:MoveToArea(Area)
Parameters
• string Area - string containing the resource reference (ResRef) of the area to move players to
Notes
Area resource reference (ResRef) used in Area must be 8 characters or less and must be valid.
Example
Move the selected players to the Friendly Arms Inn AR2300.ARE:
C:MoveToArea("AR2300")
See Also
C:ExploreArea, C:Eval
4.2.18 C:PickDialog
Unknown
C:PickDialog(Table)
Parameters
• integer Table - Unknown
Notes
Unknown
Example
4.2. C (CLUAConsole) Functions 159
EEex Documentation, Release 1.0
C:PickDialog()
See Also
4.2.19 C:PlayMovie
Plays the specified movie
C:PlayMovie(Movie)
Parameters
• string Movie - string containing resource reference (ResRef) of the movie to play
Notes
Movie resource reference (ResRef) used in Movie must be 8 characters or less and must be valid.
Plays WebM file format movies (.wbm)
Example
Plays LOGO.WBM:
C:PlayMovie("LOGO")
See Also
C:PlaySound
4.2.20 C:PlaySound
Plays the specified sound
C:PlaySound(Sound)
Parameters
• string Sound - string containing resource reference (ResRef) of the sound, music, voices to play
Notes
Sound resource reference (ResRef) used in Sound must be 8 characters or less and must be valid.
Plays WAV file format audio (.wav)
Example
Play cow moo sound COW01.WAV:
C:PlaySound("COW01")
See Also
C:PlayMovie
160 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.2.21 C:ResetAchievements
Reset achievements
C:ResetAchievements()
Parameters
None
Notes
Applies to Steam installation only
Example
C:ResetAchievements()
4.2.22 C:SetCurrentXP
Sets the experience points (XP) of the selected character
C:SetCurrentXP(ExperiencePoints)
Parameters
• string ExperiencePoints - string containing the numeric value of experience points to set for selected character
Notes
This sets the total, rather than adding a value to your current experience points. A level up will be triggered forcharacters that qualify, based on the experince points table for the character’s class level.
Example
Set current character at 1000 experience points:
C:SetCurrentXP("1000")
See Also
C:AddGold, C:AddSpell, C:CreateItem
4.2.23 C:SetGlobal
Set a global variable to the specified value
C:SetGlobal(VariableName,AreaName,Value)
Parameters
• string VariableName - string containing the name of the global variable to set
• string AreaName - string containing the resource reference (ResRef) of the area in which the variable isstored, or "GLOBAL" for all.
• integer Value - new value to set the variable to
4.2. C (CLUAConsole) Functions 161
EEex Documentation, Release 1.0
Notes
Area resource reference (ResRef) used in AreaName must be 8 characters or less and must be valid.
Examples
Set the value of CHAPTER to 2 (and advance to Chapter 2):
C:SetGlobal("CHAPTER", "GLOBAL", 2)
Sets the value of TestValue variable stored in area AR0600.ARE to 16:
C:GetGlobal("TestValue", "AR0600", 16)
See Also
C:GetGlobal
4.2.24 C:SetWaterAlpha
Sets the alpha blend level for water transparency
C:SetWaterAlpha(AlphaLevel)
Parameters
• integer AlphaLevel - value to set for alpha blending of water transparency
Notes
Not tested / verified
Example
C:SetWaterAlpha(100)
See Also
C:SetWeather
4.2.25 C:SetWeather
Sets the current weather
C:SetWeather(WeatherID)
Parameters
• string WeatherID - string containing the weather id
Notes
Not tester / verified: may be an integer value for WeatherID
Valid values to set can be found in WEATHER.IDS:
0 NOWEATHER1 RAIN2 SNOW3 FOG
162 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Example
C:SetWeather("1")
See Also
C:SetWaterAlpha
4.2.26 C:StartStore
Starts the specified store
C:StartStore(StoreName)
Parameters
• string StoreName - string containing resource reference (ResRef) of store to start
Notes
Store resource reference (ResRef) used in StoreName must be 8 characters or less and must be valid.
May be unstable, leading to crashes.
Example
C:StartStore("INN0103")
4.2.27 C:StrrefOff
Strings are not displayed with their associated string reference (StrRef) id
C:StrrefOff()
Parameters
None
Notes
Example
C:StrrefOff()
See Also
C:StrrefOn, C:DisplayText
4.2.28 C:StrrefOn
Strings are displayed with their associated string reference (StrRef) id
C:StrrefOn()
Parameters
None
Notes
4.2. C (CLUAConsole) Functions 163
EEex Documentation, Release 1.0
Example
C:StrrefOn()
See Also
C:StrrefOff , C:DisplayText
4.2.29 C:TestAllDialog
Lists all dialog file in the game, and checks for errors
C:TestAllDialog()
Parameters
None
Notes
Example
C:TestAllDialog()
See Also
C:DisplayAllBAMFiles
4.2.30 C:WorkshopUpload
Upload a module to the Steam Workshop - Not tested or verified
C:WorkshopUpload(ModuleName,ModulePath)
Parameters
• string ModuleName - string containing name of the workshop module
• string ModulePath - string containing the full filepath to the module to upload
Notes
Applies to Steam installation only
Not tested or verified
Example
C:WorkshopUpload()
4.2.31 C:WriteScript
Output scripts to directory
C:WriteScript(Folder)
Parameters
• string Folder - string containing filepath of folder to output scripts to
164 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Notes
If the mouse is over a creature, the command will evaluate the scripts attached to that creature. Otherwise it willevaluate the area scripts.
Example
Output the script results to a folder called DebugScripts in the root of your game install:
C:WriteScript("DebugScripts")
See Also
C:Exec
4.2.32 C:new
Create a new instance of the CLUAConsole
C:new()
Parameters
None
Notes
This is used in the game engine to assign C: to CLUAConsole:
C = CLUAConsole:new()
Not recommended to use this
Example
C:new()
See Also
C:CreateEngine
Note: CLUAConsole functions are accessed via the C: prefix
Function DescriptionC:AddGold Adds gold to the partyC:AddSpell Adds a spell to the specified characterC:AdvanceRealTime Advance timeC:CreateCreature Creates the creature specifiedC:CreateEngine UnknownC:CreateItem Create an itemC:CreateVEFVidCell Create VEFVidCellC:DisplayAllBAMFiles Display all BAM filesC:DisplayText Displays the specified text on screenC:EnableCheatKeys Enable cheat keysC:Eval Evaluate a string containing script actions for a character
Continued on next page
4.2. C (CLUAConsole) Functions 165
EEex Documentation, Release 1.0
Table 2 – continued from previous pageC:Exec Execute console commands contained in the specified fileC:ExploreArea Reveals the entire map for the current areaC:GetGlobal Gets a global variable value for an areaC:LogMessages Enables or disables logging output to consoleC:LogSet Sets logging to a file instead of to console if logging is enabledC:MoveToArea Move the selected characters to the area specifiedC:PickDialog UnknownC:PlayMovie Plays the specified movieC:PlaySound Plays the specified soundC:ResetAchievements Reset achievements - applies to Steam installation onlyC:SetCurrentXP Sets the experience points (XP) of the selected characterC:SetGlobal Set a global variable to the specified valueC:SetWaterAlpha Sets the alpha blend level for water transparencyC:SetWeather Sets the current weatherC:StartStore Starts the specified storeC:StrrefOff Strings are not displayed with their associated string reference (StrRef)C:StrrefOn Strings are displayed with their associated string reference (StrRef)C:TestAllDialog Lists all dialog file in the game, and checks for errorsC:WorkshopUpload Upload a module to the Steam Workshop - applies to Steam installation onlyC:WriteScript Output scripts to directoryC:new Create a new instance of the CLUAConsole
C = CLUAConsole:new()
4.3 chapterScreen Functions
4.3.1 chapterScreen:IsDoneButtonClickable
Determines if the Done button is enabled and clickable by user
chapterScreen:IsDoneButtonClickable()
Parameters
None
Returns
Returns true 1 if successful or false 0 otherwise.
Pushes onto lua stack a lua boolean true if button is clickable or a lua boolean false otherwise.
Notes
The lua action occurs if the button is enabled (clickable) and is clicked
Calls the tolua_BaldurLUA_CScreenChapter_IsDoneButtonClickable00 function
Example
The Done button as defined in UI.MENU:
166 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
button{
area 532 714 234 44bam GUIOSTURtext "DONE_BUTTON"text style "button"clickable lua "chapterScreen:IsDoneButtonClickable()"action"
chapterScreen:OnDoneButtonClick()"
}
See Also
chapterScreen:OnDoneButtonClick
4.3.2 chapterScreen:IsReplayButtonClickable
Determines if the Replay button is enabled and clickable by user
chapterScreen:IsReplayButtonClickable()
Parameters
None
Returns
Returns true 1 if successful or false 0 otherwise.
Pushes onto lua stack a lua boolean true if button is clickable or a lua boolean false otherwise.
Notes
The lua action occurs if the button is enabled (clickable) and is clicked
Calls the tolua_BaldurLUA_CScreenChapter_IsReplayButtonClickable00 function which calls the CScreenChap-ter::IsReplayButtonClickable method
Example
The Replay button as defined in UI.MENU:
button{
area 280 714 234 44bam GUIOSTULtext "REPLAY_BUTTON"text style "button"clickable lua "chapterScreen:IsReplayButtonClickable()"action"
chapterScreen:OnReplayButtonClick()"
}
See Also
chapterScreen:OnReplayButtonClick
4.3. chapterScreen Functions 167
EEex Documentation, Release 1.0
4.3.3 chapterScreen:OnDoneButtonClick
Event action for when the Done button is clicked
chapterScreen:OnDoneButtonClick()
Parameters
None
Returns
None
Notes
Exits the chapter text screen when this button is clicked
The lua action occurs if the button is enabled (clickable) and is clicked
Calls the tolua_BaldurLUA_CScreenChapter_OnDoneButtonClick00 function which calls the CScreenChap-ter::OnDoneButtonClick method
Example
The Done button as defined in UI.MENU:
button{
area 532 714 234 44bam GUIOSTURtext "DONE_BUTTON"text style "button"clickable lua "chapterScreen:IsDoneButtonClickable()"action"
chapterScreen:OnDoneButtonClick()"
}
See Also
chapterScreen:IsDoneButtonClickable
4.3.4 chapterScreen:OnReplayButtonClick
Event action for when the Replay button is clicked
chapterScreen:OnReplayButtonClick()
Parameters
None
Returns
None
Notes
The lua action occurs if the button is enabled (clickable) and is clicked
168 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Calls the tolua_BaldurLUA_CScreenChapter_OnReplayButtonClick00 function which calls the CScreenChap-ter::OnReplayButtonClick method
Example
The Replay button as defined in UI.MENU:
button{
area 280 714 234 44bam GUIOSTULtext "REPLAY_BUTTON"text style "button"clickable lua "chapterScreen:IsReplayButtonClickable()"action"
chapterScreen:OnReplayButtonClick()"
}
See Also
chapterScreen:IsReplayButtonClickable
4.3.5 chapterScreen:StartTextScreen
Load chapter text into UI elements
chapterScreen:StartTextScreen()
Parameters
• string textscreenOverride - unknown, process custom 2DA?
Returns
None
Notes
Processes string references (StrRef) stored in CHPTXT?.2DA (where ? is the chapter number). For the DEFAULTrow in the 2DA file, column 0 stores the StrRef of the chapter number: “Chapter 1” and column 1 stores the StrRefof the chapter text: “Disaster comes on the heels of your victory in Baldur’s Gate”. . .
Assigns the strings loaded to UI elements.
Loads chapter backgrounds, starts music and the scrolling text (? - to be confirmed)
Calls the tolua_BaldurLUA_CScreenChapter_StartTextScreen00 function which calls the CScreenChap-ter:StartTextScreen method
Example
chapterScreen:StartTextScreen()
Note: The chapterScreen functions are related to the handling of chapter screens and dream transitions
4.3. chapterScreen Functions 169
EEex Documentation, Release 1.0
Function DescriptionchapterScreen:IsDoneButtonClickable Determines if the Done button is clickablechapterScreen:IsReplayButtonClickable Determines if the Replay button is clickablechapterScreen:OnDoneButtonClick Event action for when the Done button is clickedchapterScreen:OnReplayButtonClick Event action for when the Replay button is clickedchapterScreen:StartTextScreen Load chapter text into UI elements
e = g_pBaldurChitinchapterScreen = e:GetEngineChapter()
4.4 characterScreen Functions
4.4.1 characterScreen:GetTempSmartScriptLocal
characterScreen:GetTempSmartScriptLocal()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:GetTempSmartScriptLocal()
See Also
:ref:, :ref:
4.4.2 characterScreen:IsAppearanceButtonClickable
characterScreen:IsAppearanceButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:IsAppearanceButtonClickable()
170 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
See Also
:ref:, :ref:
4.4.3 characterScreen:IsCharacterViewable
characterScreen:IsCharacterViewable()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:IsCharacterViewable()
See Also
:ref:, :ref:
4.4.4 characterScreen:IsDoneButtonClickable
characterScreen:IsDoneButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:IsDoneButtonClickable()
See Also
:ref:, :ref:
4.4.5 characterScreen:IsDualClassButtonClickable
characterScreen:IsDualClassButtonClickable()
Parameters
• **
4.4. characterScreen Functions 171
EEex Documentation, Release 1.0
• **
• **
Returns
Notes
Example
characterScreen:IsDualClassButtonClickable()
See Also
:ref:, :ref:
4.4.6 characterScreen:IsExportButtonClickable
characterScreen:IsExportButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:IsExportButtonClickable()
See Also
:ref:, :ref:
4.4.7 characterScreen:IsInGame
characterScreen:IsInGame()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:IsInGame()
See Also
:ref:, :ref:
172 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.4.8 characterScreen:IsLevelUpButtonClickable
characterScreen:IsLevelUpButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:IsLevelUpButtonClickable()
See Also
:ref:, :ref:
4.4.9 characterScreen:IsMultiPlayerModifyable
characterScreen:IsMultiPlayerModifyable()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:IsMultiPlayerModifyable()
See Also
:ref:, :ref:
4.4.10 characterScreen:IsReformPartyButtonClickable
characterScreen:IsReformPartyButtonClickable()
Parameters
• **
• **
• **
4.4. characterScreen Functions 173
EEex Documentation, Release 1.0
Returns
Notes
Example
characterScreen:IsReformPartyButtonClickable()
See Also
:ref:, :ref:
4.4.11 characterScreen:OnAppearanceButtonClick
characterScreen:OnAppearanceButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnAppearanceButtonClick()
See Also
:ref:, :ref:
4.4.12 characterScreen:OnCancelButtonClick
characterScreen:OnCancelButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnCancelButtonClick()
See Also
:ref:, :ref:
174 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.4.13 characterScreen:OnCusomizeBiographyButtonClick
characterScreen:OnCusomizeBiographyButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnCusomizeBiographyButtonClick()
See Also
:ref:, :ref:
4.4.14 characterScreen:OnCustomizeButtonClick
characterScreen:OnCustomizeButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnCustomizeButtonClick()
See Also
:ref:, :ref:
4.4.15 characterScreen:OnDoneButtonClick
characterScreen:OnDoneButtonClick()
Parameters
• **
• **
• **
4.4. characterScreen Functions 175
EEex Documentation, Release 1.0
Returns
Notes
Example
characterScreen:OnDoneButtonClick()
See Also
:ref:, :ref:
4.4.16 characterScreen:OnDualClassButtonClick
characterScreen:OnDualClassButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnDualClassButtonClick()
See Also
:ref:, :ref:
4.4.17 characterScreen:OnErrorButtonClick
characterScreen:OnErrorButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnErrorButtonClick()
See Also
:ref:, :ref:
176 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.4.18 characterScreen:OnExportButtonClick
characterScreen:OnExportButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnExportButtonClick()
See Also
:ref:, :ref:
4.4.19 characterScreen:OnHairSkinButtonClick
characterScreen:OnHairSkinButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnHairSkinButtonClick()
See Also
:ref:, :ref:
4.4.20 characterScreen:OnLevelUpButtonClick
characterScreen:OnLevelUpButtonClick()
Parameters
• **
• **
• **
4.4. characterScreen Functions 177
EEex Documentation, Release 1.0
Returns
Notes
Example
characterScreen:OnLevelUpButtonClick()
See Also
:ref:, :ref:
4.4.21 characterScreen:OnPlayButtonClick
characterScreen:OnPlayButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnPlayButtonClick()
See Also
:ref:, :ref:
4.4.22 characterScreen:OnReformPartyButtonClick
characterScreen:OnReformPartyButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnReformPartyButtonClick()
See Also
:ref:, :ref:
178 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.4.23 characterScreen:OnScriptButtonClick
characterScreen:OnScriptButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnScriptButtonClick()
See Also
:ref:, :ref:
4.4.24 characterScreen:OnSoundsButtonClick
characterScreen:OnSoundsButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
characterScreen:OnSoundsButtonClick()
See Also
:ref:, :ref:
4.4.25 characterScreen:SetTempSmartScriptLocal
characterScreen:SetTempSmartScriptLocal()
Parameters
• **
• **
• **
4.4. characterScreen Functions 179
EEex Documentation, Release 1.0
Returns
Notes
Example
characterScreen:SetTempSmartScriptLocal()
See Also
:ref:, :ref:
Function DescriptioncharacterScreen:GetTempSmartScriptLocalcharacterScreen:IsAppearanceButtonClickablecharacterScreen:IsCharacterViewablecharacterScreen:IsDoneButtonClickablecharacterScreen:IsDualClassButtonClickablecharacterScreen:IsExportButtonClickablecharacterScreen:IsInGamecharacterScreen:IsLevelUpButtonClickablecharacterScreen:IsMultiPlayerModifyablecharacterScreen:IsReformPartyButtonClickablecharacterScreen:OnAppearanceButtonClickcharacterScreen:OnCancelButtonClickcharacterScreen:OnCusomizeBiographyButtonClickcharacterScreen:OnCustomizeButtonClickcharacterScreen:OnDoneButtonClickcharacterScreen:OnDualClassButtonClickcharacterScreen:OnErrorButtonClickcharacterScreen:OnExportButtonClickcharacterScreen:OnHairSkinButtonClickcharacterScreen:OnLevelUpButtonClickcharacterScreen:OnPlayButtonClickcharacterScreen:OnReformPartyButtonClickcharacterScreen:OnScriptButtonClickcharacterScreen:OnSoundsButtonClickcharacterScreen:SetTempSmartScriptLocal
e = g_pBaldurChitincharacterScreen = e:GetEngineCharacter()
4.5 connectionScreen Functions
4.5.1 connectionScreen:CancelJoinGame
connectionScreen:CancelJoinGame()
Parameters
• **
• **
180 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• **
Returns
Notes
Example
connectionScreen:CancelJoinGame()
See Also
:ref:, :ref:
4.5.2 connectionScreen:ClearSessions
connectionScreen:ClearSessions()
Parameters
• **
• **
• **
Returns
Notes
Example
connectionScreen:ClearSessions()
See Also
:ref:, :ref:
4.5.3 connectionScreen:HasServiceProvider
connectionScreen:HasServiceProvider()
Parameters
• **
• **
• **
Returns
Notes
Example
connectionScreen:HasServiceProvider()
See Also
:ref:, :ref:
4.5. connectionScreen Functions 181
EEex Documentation, Release 1.0
4.5.4 connectionScreen:IsValidAddress
connectionScreen:IsValidAddress()
Parameters
• **
• **
• **
Returns
Notes
Example
connectionScreen:IsValidAddress()
See Also
:ref:, :ref:
4.5.5 connectionScreen:JoinGame
connectionScreen:JoinGame()
Parameters
• **
• **
• **
Returns
Notes
Example
connectionScreen:JoinGame()
See Also
:ref:, :ref:
4.5.6 connectionScreen:JoinGameIPAddress
connectionScreen:JoinGameIPAddress()
Parameters
• **
• **
• **
182 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
connectionScreen:JoinGameIPAddress()
See Also
:ref:, :ref:
4.5.7 connectionScreen:OnJoinGameButtonClick
connectionScreen:OnJoinGameButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
connectionScreen:OnJoinGameButtonClick()
See Also
:ref:, :ref:
4.5.8 connectionScreen:OnLoadGameButtonClick
connectionScreen:OnLoadGameButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
connectionScreen:OnLoadGameButtonClick()
See Also
:ref:, :ref:
4.5. connectionScreen Functions 183
EEex Documentation, Release 1.0
4.5.9 connectionScreen:OnMainCancelButtonClick
connectionScreen:OnMainCancelButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
connectionScreen:OnMainCancelButtonClick()
See Also
:ref:, :ref:
4.5.10 connectionScreen:OnNewGameButtonClick
connectionScreen:OnNewGameButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
connectionScreen:OnNewGameButtonClick()
See Also
:ref:, :ref:
4.5.11 connectionScreen:SelectServiceProvider
connectionScreen:SelectServiceProvider()
Parameters
• **
• **
• **
184 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
connectionScreen:SelectServiceProvider()
See Also
:ref:, :ref:
4.5.12 connectionScreen:SetPlayerName
connectionScreen:SetPlayerName()
Parameters
• **
• **
• **
Returns
Notes
Example
connectionScreen:SetPlayerName()
See Also
:ref:, :ref:
4.5.13 connectionScreen:StopConnectingToProvider
connectionScreen:StopConnectingToProvider()
Parameters
• **
• **
• **
Returns
Notes
Example
connectionScreen:StopConnectingToProvider()
See Also
:ref:, :ref:
4.5. connectionScreen Functions 185
EEex Documentation, Release 1.0
Function DescriptionconnectionScreen:CancelJoinGameconnectionScreen:ClearSessionsconnectionScreen:HasServiceProviderconnectionScreen:IsValidAddressconnectionScreen:JoinGameconnectionScreen:JoinGameIPAddressconnectionScreen:OnJoinGameButtonClickconnectionScreen:OnLoadGameButtonClickconnectionScreen:OnMainCancelButtonClickconnectionScreen:OnNewGameButtonClickconnectionScreen:SelectServiceProviderconnectionScreen:SetPlayerNameconnectionScreen:StopConnectingToProvider
e = g_pBaldurChitinconnectionScreen = e:GetEngineConnection()
4.6 createCharScreen Functions
4.6.1 createCharScreen:AcceptCharacter
createCharScreen:AcceptCharacter()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:AcceptCharacter()
See Also
:ref:, :ref:
4.6.2 createCharScreen:DecCurrentPortrait
createCharScreen:DecCurrentPortrait()
Parameters
• **
• **
186 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• **
Returns
Notes
Example
createCharScreen:DecCurrentPortrait()
See Also
:ref:, :ref:
4.6.3 createCharScreen:GetCurrentPortrait
createCharScreen:GetCurrentPortrait()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:GetCurrentPortrait()
See Also
:ref:, :ref:
4.6.4 createCharScreen:GetCurrentStep
createCharScreen:GetCurrentStep()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:GetCurrentStep()
See Also
:ref:, :ref:
4.6. createCharScreen Functions 187
EEex Documentation, Release 1.0
4.6.5 createCharScreen:GetEngineState
createCharScreen:GetEngineState()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:GetEngineState()
See Also
:ref:, :ref:
4.6.6 createCharScreen:GetImportState
createCharScreen:GetImportState()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:GetImportState()
See Also
:ref:, :ref:
4.6.7 createCharScreen:GetImportableCharacters
createCharScreen:GetImportableCharacters()
Parameters
• **
• **
• **
188 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
createCharScreen:GetImportableCharacters()
See Also
:ref:, :ref:
4.6.8 createCharScreen:HasMoreMageLevels
createCharScreen:HasMoreMageLevels()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:HasMoreMageLevels()
See Also
:ref:, :ref:
4.6.9 createCharScreen:IncCurrentPortrait
createCharScreen:IncCurrentPortrait()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:IncCurrentPortrait()
See Also
:ref:, :ref:
4.6. createCharScreen Functions 189
EEex Documentation, Release 1.0
4.6.10 createCharScreen:IsAbilityRecallButtonClickable
createCharScreen:IsAbilityRecallButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:IsAbilityRecallButtonClickable()
See Also
:ref:, :ref:
4.6.11 createCharScreen:IsAdvancedButtonClickable
createCharScreen:IsAdvancedButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:IsAdvancedButtonClickable()
See Also
:ref:, :ref:
4.6.12 createCharScreen:IsChargenComplete
createCharScreen:IsChargenComplete()
Parameters
• **
• **
• **
190 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
createCharScreen:IsChargenComplete()
See Also
:ref:, :ref:
4.6.13 createCharScreen:IsDoneButtonClickable
createCharScreen:IsDoneButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:IsDoneButtonClickable()
See Also
:ref:, :ref:
4.6.14 createCharScreen:IsHighLevelAbilitiesButtonClickable
createCharScreen:IsHighLevelAbilitiesButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:IsHighLevelAbilitiesButtonClickable()
See Also
:ref:, :ref:
4.6. createCharScreen Functions 191
EEex Documentation, Release 1.0
4.6.15 createCharScreen:IsMainBackButtonClickable
createCharScreen:IsMainBackButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:IsMainBackButtonClickable()
See Also
:ref:, :ref:
4.6.16 createCharScreen:IsThiefSkillPlusMinusButtonClickable
createCharScreen:IsThiefSkillPlusMinusButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:IsThiefSkillPlusMinusButtonClickable()
See Also
:ref:, :ref:
4.6.17 createCharScreen:OnAbilityPlusMinusButtonClick
createCharScreen:OnAbilityPlusMinusButtonClick()
Parameters
• **
• **
• **
192 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
createCharScreen:OnAbilityPlusMinusButtonClick()
See Also
:ref:, :ref:
4.6.18 createCharScreen:OnAbilityReRollButtonClick
createCharScreen:OnAbilityReRollButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnAbilityReRollButtonClick()
See Also
:ref:, :ref:
4.6.19 createCharScreen:OnAbilityRecallButtonClick
createCharScreen:OnAbilityRecallButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnAbilityRecallButtonClick()
See Also
:ref:, :ref:
4.6. createCharScreen Functions 193
EEex Documentation, Release 1.0
4.6.20 createCharScreen:OnAbilityStoreButtonClick
createCharScreen:OnAbilityStoreButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnAbilityStoreButtonClick()
See Also
:ref:, :ref:
4.6.21 createCharScreen:OnAdvancedButtonClick
createCharScreen:OnAdvancedButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnAdvancedButtonClick()
See Also
:ref:, :ref:
4.6.22 createCharScreen:OnAlignmentSelectButtonClick
createCharScreen:OnAlignmentSelectButtonClick()
Parameters
• **
• **
• **
194 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
createCharScreen:OnAlignmentSelectButtonClick()
See Also
:ref:, :ref:
4.6.23 createCharScreen:OnBiographyButtonClick
createCharScreen:OnBiographyButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnBiographyButtonClick()
See Also
:ref:, :ref:
4.6.24 createCharScreen:OnCancelButtonClick
createCharScreen:OnCancelButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnCancelButtonClick()
See Also
:ref:, :ref:
4.6. createCharScreen Functions 195
EEex Documentation, Release 1.0
4.6.25 createCharScreen:OnCharacterExportItemSelect
createCharScreen:OnCharacterExportItemSelect()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnCharacterExportItemSelect()
See Also
:ref:, :ref:
4.6.26 createCharScreen:OnCheatyMcCheaterson
createCharScreen:OnCheatyMcCheaterson()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnCheatyMcCheaterson()
See Also
C:EnableCheatKeys
4.6.27 createCharScreen:OnClassSelectButtonClick
createCharScreen:OnClassSelectButtonClick()
Parameters
• **
• **
• **
196 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
createCharScreen:OnClassSelectButtonClick()
See Also
:ref:, :ref:
4.6.28 createCharScreen:OnDoneButtonClick
createCharScreen:OnDoneButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnDoneButtonClick()
See Also
:ref:, :ref:
4.6.29 createCharScreen:OnGenderSelectButtonClick
createCharScreen:OnGenderSelectButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnGenderSelectButtonClick()
See Also
:ref:, :ref:
4.6. createCharScreen Functions 197
EEex Documentation, Release 1.0
4.6.30 createCharScreen:OnHLAButtonClick
createCharScreen:OnHLAButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnHLAButtonClick()
See Also
:ref:, :ref:
4.6.31 createCharScreen:OnHighLevelAbilitiesButtonClick
createCharScreen:OnHighLevelAbilitiesButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnHighLevelAbilitiesButtonClick()
See Also
:ref:, :ref:
4.6.32 createCharScreen:OnImportCharacterButtonClick
createCharScreen:OnImportCharacterButtonClick()
Parameters
• **
• **
• **
198 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
createCharScreen:OnImportCharacterButtonClick()
See Also
:ref:, :ref:
4.6.33 createCharScreen:OnImportCharacterFileButtonClick
createCharScreen:OnImportCharacterFileButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnImportCharacterFileButtonClick()
See Also
:ref:, :ref:
4.6.34 createCharScreen:OnImportSaveButtonClick
createCharScreen:OnImportSaveButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnImportSaveButtonClick()
See Also
:ref:, :ref:
4.6. createCharScreen Functions 199
EEex Documentation, Release 1.0
4.6.35 createCharScreen:OnKitSelectButtonClick
createCharScreen:OnKitSelectButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnKitSelectButtonClick()
See Also
:ref:, :ref:
4.6.36 createCharScreen:OnLearnMageSpellButtonClick
createCharScreen:OnLearnMageSpellButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnLearnMageSpellButtonClick()
See Also
:ref:, :ref:
4.6.37 createCharScreen:OnMainBackButtonClick
createCharScreen:OnMainBackButtonClick()
Parameters
• **
• **
• **
200 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
createCharScreen:OnMainBackButtonClick()
See Also
:ref:, :ref:
4.6.38 createCharScreen:OnMainCancelButtonClick
createCharScreen:OnMainCancelButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnMainCancelButtonClick()
See Also
:ref:, :ref:
4.6.39 createCharScreen:OnMemorizeMageSpellButtonClick
createCharScreen:OnMemorizeMageSpellButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnMemorizeMageSpellButtonClick()
See Also
:ref:, :ref:
4.6. createCharScreen Functions 201
EEex Documentation, Release 1.0
4.6.40 createCharScreen:OnMemorizePriestSpellButtonClick
createCharScreen:OnMemorizePriestSpellButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnMemorizePriestSpellButtonClick()
See Also
:ref:, :ref:
4.6.41 createCharScreen:OnMenuButtonClick
createCharScreen:OnMenuButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnMenuButtonClick()
See Also
:ref:, :ref:
4.6.42 createCharScreen:OnPlayButtonClick
createCharScreen:OnPlayButtonClick()
Parameters
• **
• **
• **
202 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
createCharScreen:OnPlayButtonClick()
See Also
:ref:, :ref:
4.6.43 createCharScreen:OnPrerollCancelButtonClick
createCharScreen:OnPrerollCancelButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnPrerollCancelButtonClick()
See Also
:ref:, :ref:
4.6.44 createCharScreen:OnPrerollCharacterPick
createCharScreen:OnPrerollCharacterPick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnPrerollCharacterPick()
See Also
:ref:, :ref:
4.6. createCharScreen Functions 203
EEex Documentation, Release 1.0
4.6.45 createCharScreen:OnProficiencyPlusMinusButtonClick
createCharScreen:OnProficiencyPlusMinusButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnProficiencyPlusMinusButtonClick()
See Also
:ref:, :ref:
4.6.46 createCharScreen:OnRaceSelectButtonClick
createCharScreen:OnRaceSelectButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnRaceSelectButtonClick()
See Also
:ref:, :ref:
4.6.47 createCharScreen:OnRacialEnemySelectButtonClick
createCharScreen:OnRacialEnemySelectButtonClick()
Parameters
• **
• **
• **
204 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
createCharScreen:OnRacialEnemySelectButtonClick()
See Also
:ref:, :ref:
4.6.48 createCharScreen:OnSoundItemSelect
createCharScreen:OnSoundItemSelect()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnSoundItemSelect()
See Also
:ref:, :ref:
4.6.49 createCharScreen:OnThiefSkillPlusMinusButtonClick
createCharScreen:OnThiefSkillPlusMinusButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:OnThiefSkillPlusMinusButtonClick()
See Also
:ref:, :ref:
4.6. createCharScreen Functions 205
EEex Documentation, Release 1.0
4.6.50 createCharScreen:SetAbilityHelpInfo
Set tokens for ability score information
createCharScreen:SetAbilityHelpInfo(stat)
Parameters
• integer stat - value representing the ability score to set token information for
Returns
None
Notes
Sets ability score tokens <MINIMUM> and <MAXIMUM> for the panel that displays the specifics of each ability score,recommended scores and minimum required scores for specific classes.
Note: The full text and description for the ability score help information is fetched outside of this function. By usingthe Infinity_FetchString function in UI.MENU to fetch a string reference (StrRef) and combining with the ability scoretokens fetched by createCharScreen:SetAbilityHelpInfo, this full text is then output into the help panel.
The stat parameter can be one of the following values, which equate to the ability score to set information for:
Stat Ability1 Strength2 Dexterity3 Constitution4 Intelligence5 Wisdom6 Charisma
Examples
Set ability score help info for Dexterity:
createCharScreen:SetAbilityHelpInfo(2)DexterityAbilityInfo = Infinity_FetchString(9584)
Using a lua function and an array to dynamically set text for ability score information in UI.MENU:
`chargen.ability = {
{name = 'STRENGTH_LABEL', desc = 9582},{name = 'DEXTERITY_LABEL', desc = 9584},{name = 'CONSTITUTION_LABEL', desc = 9583},{name = 'INTELLIGENCE_LABEL', desc = 9585},{name = 'WISDOM_LABEL', desc = 9586},{name = 'CHARISMA_LABEL', desc = 9587},
}
function abilityOrGeneralHelp()ability = chargen.ability[currentChargenAbility]if ability and ability.desc ~= -1 then
createCharScreen:SetAbilityHelpInfo(currentChargenAbility)
(continues on next page)
206 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
(continued from previous page)
return Infinity_FetchString(ability.desc)else
return Infinity_FetchString(17247)end
end`
--[[This is a comment. Part of the code is excluded for example purposesLater on the function is used to fetch the ability score descriptionThe ability score description is stored as a ResRef in the array aboveThe text of the UI control is set via the lua abilityOrGeneralHelp
--]]
text{
area 582 196 404 400text lua "abilityOrGeneralHelp()"text style "normal"scrollbar 'GUISCRC'
}
4.6.51 createCharScreen:SetEngineState
createCharScreen:SetEngineState()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:SetEngineState()
See Also
:ref:, :ref:
4.6.52 createCharScreen:SetSpriteId
createCharScreen:SetSpriteId()
Parameters
• **
• **
• **
4.6. createCharScreen Functions 207
EEex Documentation, Release 1.0
Returns
Notes
Example
createCharScreen:SetSpriteId()
See Also
:ref:, :ref:
4.6.53 createCharScreen:ShowPortraitPanel
createCharScreen:ShowPortraitPanel()
Parameters
• **
• **
• **
Returns
Notes
Example
createCharScreen:ShowPortraitPanel()
See Also
:ref:, :ref:
Note: The createCharScreen functions are related to the handling of character generation
Function DescriptioncreateCharScreen:AcceptCharactercreateCharScreen:DecCurrentPortrait Decrement the current portrait selection for charactercreateCharScreen:GetCurrentPortrait Returns the current portrait set for the charactercreateCharScreen:GetCurrentStep Returns current stage of the character generationcreateCharScreen:GetEngineState Get the character creation engine statecreateCharScreen:GetImportStatecreateCharScreen:GetImportableCharacters Returns a list of character that can be importedcreateCharScreen:HasMoreMageLevelscreateCharScreen:IncCurrentPortrait Increment the current portrait selected for charactercreateCharScreen:IsAbilityRecallButtonClickable Determines if Recall button is clickablecreateCharScreen:IsAdvancedButtonClickable Determines if Advanced button is clickablecreateCharScreen:IsChargenComplete Determines if character generation is completecreateCharScreen:IsDoneButtonClickable Determines if Done button is clickablecreateCharScreen:IsHighLevelAbilitiesButtonClickable Determines if HLA button is clickablecreateCharScreen:IsMainBackButtonClickable Determines if main screen Back button is clickablecreateCharScreen:IsThiefSkillPlusMinusButtonClickable Determines if Thief + or - buttons are clickable
Continued on next page
208 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Table 3 – continued from previous pagecreateCharScreen:OnAbilityPlusMinusButtonClick Event action when ability + and - buttons clickedcreateCharScreen:OnAbilityReRollButtonClick Event action when Reroll button is clickedcreateCharScreen:OnAbilityRecallButtonClick Event action when Recall button is clickedcreateCharScreen:OnAbilityStoreButtonClick Event action when Store button is clickedcreateCharScreen:OnAdvancedButtonClick Event action when Advanced button is clickedcreateCharScreen:OnAlignmentSelectButtonClick Event action when an alignment is selectedcreateCharScreen:OnBiographyButtonClick Event action when Biography button is clickedcreateCharScreen:OnCancelButtonClick Event action when Cancel button is clickedcreateCharScreen:OnCharacterExportItemSelect Event action when Export Item button is clickedcreateCharScreen:OnCheatyMcCheaterson Event action when CTRL+8 cheat keys are pressedcreateCharScreen:OnClassSelectButtonClick Event action when a class button is selectedcreateCharScreen:OnDoneButtonClick Event action when Done button is clickedcreateCharScreen:OnGenderSelectButtonClick Event action when a gender button is selectedcreateCharScreen:OnHLAButtonClick Event action when HLA button is clickedcreateCharScreen:OnHighLevelAbilitiesButtonClick Event action when a HLA ability button is clickedcreateCharScreen:OnImportCharacterButtonClick Event action when Import Char button is clickedcreateCharScreen:OnImportCharacterFileButtonClick Event action when import file button is clickedcreateCharScreen:OnImportSaveButtonClick Event action when import Save button is clickedcreateCharScreen:OnKitSelectButtonClick Event action when a kit is selectedcreateCharScreen:OnLearnMageSpellButtonClick Event action when a mage learn spell button is clickedcreateCharScreen:OnMainBackButtonClick Event action when main Back button is clickedcreateCharScreen:OnMainCancelButtonClick Event action when main Cancel button is clickedcreateCharScreen:OnMemorizeMageSpellButtonClick Event action when a mage spell button is clickedcreateCharScreen:OnMemorizePriestSpellButtonClick Event action when a priest spell button is clickedcreateCharScreen:OnMenuButtonClick Event action when a menu button is clickedcreateCharScreen:OnPlayButtonClick Event action when Play button is clickedcreateCharScreen:OnPrerollCancelButtonClick Event action when preroll Cancel button is clickedcreateCharScreen:OnPrerollCharacterPick Event action when preroll character is selectedcreateCharScreen:OnProficiencyPlusMinusButtonClick Event action when proficiency + or - button clickedcreateCharScreen:OnRaceSelectButtonClick Event action when a race is selectedcreateCharScreen:OnRacialEnemySelectButtonClick Event action when a hated race is selectedcreateCharScreen:OnSoundItemSelect Event action when a soundset item is selectedcreateCharScreen:OnThiefSkillPlusMinusButtonClick Event action when thief skill + or - button clickedcreateCharScreen:SetAbilityHelpInfo Set tokens for ability score informationcreateCharScreen:SetEngineState Set the character creation engine statecreateCharScreen:SetSpriteId Set the paperdoll and avatar for charactercreateCharScreen:ShowPortraitPanel Show portrait selection panel
e = g_pBaldurChitincreateCharScreen = e:GetEngineCreateChar()
4.7 createPartyScreen Functions
4.7.1 createPartyScreen:OnBackButtonClick
Event action for when the Back button is clicked
createPartyScreen:OnBackButtonClick()
4.7. createPartyScreen Functions 209
EEex Documentation, Release 1.0
Parameters
None
Returns
None
Notes
Returns to previous menu when the back button is clicked
Calls the tolua_BaldurLUA_CScreenCreateParty_OnBackButtonClick00 function which calls the CScreenCre-ateParty::OnBackButtonClick method
Example
The back button as defined in UI.MENU:
button{
on escapearea 306 720 204 44bam 'GUIOSTUM'sequence 0text "BACK_BUTTON" -- Backtext style 'button'action"
createPartyScreen:OnBackButtonClick()"
}
See Also
createPartyScreen:OnDoneButtonClick, createPartyScreen:OnCreateDeleteButtonClick, createPar-tyScreen:OnPortraitButtonClick
4.7.2 createPartyScreen:OnCreateDeleteButtonClick
Event action for when the Delete button is clicked
createPartyScreen:OnCreateDeleteButtonClick()
Parameters
• integer Index - 0 based index of created character’s delete button clicked
Returns
None
Notes
The selected character, that has been previously created, is deleted when this button is clicked
Calls the tolua_BaldurLUA_CScreenCreateParty_OnCreateDeleteButtonClick00 function which calls the CScreen-CreateParty::OnCreateDeleteButtonClick method
Example
A delete party member button as defined in UI.MENU:
210 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
button{
area 155 452 300 44bam 'GUIOSTCL'sequence 1text lua "partyImport.character[3].createdelete"text style "button"action"
createPartyScreen:OnCreateDeleteButtonClick(2)"
}
See Also
createPartyScreen:OnDoneButtonClick, :createPartyScreen:OnBackButtonClick, createPar-tyScreen:OnPortraitButtonClick
4.7.3 createPartyScreen:OnDoneButtonClick
Event action for when the Done button is clicked
createPartyScreen:OnDoneButtonClick()
Parameters
None
Returns
None
Notes
Finishes the create party process
Calls the tolua_BaldurLUA_CScreenCreateParty_OnDoneButtonClick00 function which calls the CScreenCre-ateParty::OnDoneButtonClick method
Example
createPartyScreen:OnDoneButtonClick()
See Also
createPartyScreen:OnBackButtonClick, createPartyScreen:OnCreateDeleteButtonClick, createPar-tyScreen:OnPortraitButtonClick
4.7.4 createPartyScreen:OnPortraitButtonClick
Event action for when a portrait button is clicked
createPartyScreen:OnPortraitButtonClick(Index)
Parameters
• integer Index - 0 based index of portrait clicked
4.7. createPartyScreen Functions 211
EEex Documentation, Release 1.0
Returns
None
Notes
Selects the character for the portrait that is clicked
Lua arrays use 1 based index when accessing arrays
Calls the tolua_BaldurLUA_CScreenCreateParty_OnPortraitButtonClick00 function which calls the CScreenCre-ateParty::OnPortraitButtonClick method
Example
A portrait button as defined in UI.MENU for the 5th character:
button{
area 561 317 56 86bitmap lua "partyImport.character[5].portrait"clickable lua "partyImport.character[5].name ~= ''"action"
createPartyScreen:OnPortraitButtonClick(4)"
}
See Also
createPartyScreen:OnDoneButtonClick, createPartyScreen:OnBackButtonClick, createPar-tyScreen:OnCreateDeleteButtonClick
Note: The createPartyScreen functions are related to the handling of party and character generation
Function DescriptioncreatePartyScreen:OnBackButtonClick Event action for when the Back button is clickedcreatePartyScreen:OnCreateDeleteButtonClick Event action for when the Delete button is clickedcreatePartyScreen:OnDoneButtonClick Event action for when the Done button is clickedcreatePartyScreen:OnPortraitButtonClick Event action for when a portrait button is clicked
e = g_pBaldurChitincreatePartyScreen = e:GetEngineCreateParty()
4.8 dlcScreen Functions
4.8.1 dlcScreen:DecrementDLCIndex
dlcScreen:DecrementDLCIndex()
Parameters
• **
• **
212 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• **
Returns
Notes
Example
dlcScreen:DecrementDLCIndex()
See Also
:ref:, :ref:
4.8.2 dlcScreen:GetDLCBought
dlcScreen:GetDLCBought()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:GetDLCBought()
See Also
:ref:, :ref:
4.8.3 dlcScreen:GetDLCCount
dlcScreen:GetDLCCount()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:GetDLCCount()
See Also
:ref:, :ref:
4.8. dlcScreen Functions 213
EEex Documentation, Release 1.0
4.8.4 dlcScreen:GetDLCDescription
dlcScreen:GetDLCDescription()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:GetDLCDescription()
See Also
:ref:, :ref:
4.8.5 dlcScreen:GetDLCImage
dlcScreen:GetDLCImage()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:GetDLCImage()
See Also
:ref:, :ref:
4.8.6 dlcScreen:GetDLCIndex
dlcScreen:GetDLCIndex()
Parameters
• **
• **
• **
214 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
dlcScreen:GetDLCIndex()
See Also
:ref:, :ref:
4.8.7 dlcScreen:GetDLCName
dlcScreen:GetDLCName()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:GetDLCName()
See Also
:ref:, :ref:
4.8.8 dlcScreen:GetDLCState
dlcScreen:GetDLCState()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:GetDLCState()
See Also
:ref:, :ref:
4.8. dlcScreen Functions 215
EEex Documentation, Release 1.0
4.8.9 dlcScreen:GetDLCTitle
dlcScreen:GetDLCTitle()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:GetDLCTitle()
See Also
:ref:, :ref:
4.8.10 dlcScreen:GetDownloadString
dlcScreen:GetDownloadString()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:GetDownloadString()
See Also
:ref:, :ref:
4.8.11 dlcScreen:IncrementDLCIndex
dlcScreen:IncrementDLCIndex()
Parameters
• **
• **
• **
216 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
dlcScreen:IncrementDLCIndex()
See Also
:ref:, :ref:
4.8.12 dlcScreen:OnBuyButtonClick
dlcScreen:OnBuyButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:OnBuyButtonClick()
See Also
:ref:, :ref:
4.8.13 dlcScreen:OnDoneButtonClick
dlcScreen:OnDoneButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:OnDoneButtonClick()
See Also
:ref:, :ref:
4.8. dlcScreen Functions 217
EEex Documentation, Release 1.0
4.8.14 dlcScreen:OnErrorButtonClick
dlcScreen:OnErrorButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:OnErrorButtonClick()
See Also
:ref:, :ref:
4.8.15 dlcScreen:RestorePurchases
dlcScreen:RestorePurchases()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:RestorePurchases()
See Also
:ref:, :ref:
4.8.16 dlcScreen:SetDLCIndex
dlcScreen:SetDLCIndex()
Parameters
• **
• **
• **
218 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
dlcScreen:SetDLCIndex()
See Also
:ref:, :ref:
4.8.17 dlcScreen:UpdateDLCState
dlcScreen:UpdateDLCState()
Parameters
• **
• **
• **
Returns
Notes
Example
dlcScreen:UpdateDLCState()
See Also
:ref:, :ref:
Function DescriptiondlcScreen:DecrementDLCIndexdlcScreen:GetDLCBoughtdlcScreen:GetDLCCountdlcScreen:GetDLCDescriptiondlcScreen:GetDLCImagedlcScreen:GetDLCIndexdlcScreen:GetDLCNamedlcScreen:GetDLCStatedlcScreen:GetDLCTitledlcScreen:GetDownloadStringdlcScreen:IncrementDLCIndexdlcScreen:OnBuyButtonClickdlcScreen:OnDoneButtonClickdlcScreen:OnErrorButtonClickdlcScreen:RestorePurchasesdlcScreen:SetDLCIndexdlcScreen:UpdateDLCState
e = g_pBaldurChitindlcScreen = e:GetEngineDLC()
4.8. dlcScreen Functions 219
EEex Documentation, Release 1.0
4.9 e Functions
4.9.1 e:CheckGUISong
e:CheckGUISong()
Parameters
• **
• **
• **
Returns
Notes
Example
e:CheckGUISong()
See Also
:ref:, :ref:
4.9.2 e:FullScreen
e:FullScreen()
Parameters
• **
• **
• **
Returns
Notes
Example
e:FullScreen()
See Also
:ref:, :ref:
4.9.3 e:GetActiveEngine
e:GetActiveEngine()
Parameters
• **
• **
220 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• **
Returns
Notes
Example
e:GetActiveEngine()
See Also
:ref:, :ref:
4.9.4 e:GetEngineChapter
e:GetEngineChapter()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineChapter()
See Also
:ref:, :ref:
4.9.5 e:GetEngineCharacter
e:GetEngineCharacter()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineCharacter()
See Also
:ref:, :ref:
4.9. e Functions 221
EEex Documentation, Release 1.0
4.9.6 e:GetEngineConnection
e:GetEngineConnection()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineConnection()
See Also
:ref:, :ref:
4.9.7 e:GetEngineCreateChar
e:GetEngineCreateChar()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineCreateChar()
See Also
:ref:, :ref:
4.9.8 e:GetEngineCreateParty
e:GetEngineCreateParty()
Parameters
• **
• **
• **
222 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
e:GetEngineCreateParty()
See Also
:ref:, :ref:
4.9.9 e:GetEngineDLC
e:GetEngineDLC()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineDLC()
See Also
:ref:, :ref:
4.9.10 e:GetEngineInventory
e:GetEngineInventory()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineInventory()
See Also
:ref:, :ref:
4.9. e Functions 223
EEex Documentation, Release 1.0
4.9.11 e:GetEngineJournal
e:GetEngineJournal()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineJournal()
See Also
:ref:, :ref:
4.9.12 e:GetEngineLoad
e:GetEngineLoad()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineLoad()
See Also
:ref:, :ref:
4.9.13 e:GetEngineMap
e:GetEngineMap()
Parameters
• **
• **
• **
224 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
e:GetEngineMap()
See Also
:ref:, :ref:
4.9.14 e:GetEngineMovies
e:GetEngineMovies()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineMovies()
See Also
:ref:, :ref:
4.9.15 e:GetEngineMultiPlayer
e:GetEngineMultiPlayer()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineMultiPlayer()
See Also
:ref:, :ref:
4.9. e Functions 225
EEex Documentation, Release 1.0
4.9.16 e:GetEngineOptions
e:GetEngineOptions()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineOptions()
See Also
:ref:, :ref:
4.9.17 e:GetEnginePriestSpell
e:GetEnginePriestSpell()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEnginePriestSpell()
See Also
:ref:, :ref:
4.9.18 e:GetEngineProjector
e:GetEngineProjector()
Parameters
• **
• **
• **
226 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
e:GetEngineProjector()
See Also
:ref:, :ref:
4.9.19 e:GetEngineSave
e:GetEngineSave()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineSave()
See Also
:ref:, :ref:
4.9.20 e:GetEngineStart
e:GetEngineStart()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineStart()
See Also
:ref:, :ref:
4.9. e Functions 227
EEex Documentation, Release 1.0
4.9.21 e:GetEngineStore
e:GetEngineStore()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineStore()
See Also
:ref:, :ref:
4.9.22 e:GetEngineWizSpell
e:GetEngineWizSpell()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineWizSpell()
See Also
:ref:, :ref:
4.9.23 e:GetEngineWorld
e:GetEngineWorld()
Parameters
• **
• **
• **
228 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
e:GetEngineWorld()
See Also
:ref:, :ref:
4.9.24 e:GetEngineWorldMap
e:GetEngineWorldMap()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetEngineWorldMap()
See Also
:ref:, :ref:
4.9.25 e:GetObjectGame
e:GetObjectGame()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetObjectGame()
See Also
:ref:, :ref:
4.9. e Functions 229
EEex Documentation, Release 1.0
4.9.26 e:GetSoundMixer
e:GetSoundMixer()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetSoundMixer()
See Also
:ref:, :ref:
4.9.27 e:GetVersionString
e:GetVersionString()
Parameters
• **
• **
• **
Returns
Notes
Example
e:GetVersionString()
See Also
:ref:, :ref:
4.9.28 e:IsAndroid
e:IsAndroid()
Parameters
• **
• **
• **
230 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
e:IsAndroid()
See Also
:ref:, :ref:
4.9.29 e:IsIOS
e:IsIOS()
Parameters
• **
• **
• **
Returns
Notes
Example
e:IsIOS()
See Also
:ref:, :ref:
4.9.30 e:IsTouchUI
e:IsTouchUI()
Parameters
• **
• **
• **
Returns
Notes
Example
e:IsTouchUI()
See Also
:ref:, :ref:
4.9. e Functions 231
EEex Documentation, Release 1.0
4.9.31 e:SelectEngine
e:SelectEngine()
Parameters
• **
• **
• **
Returns
Notes
Example
e:SelectEngine()
See Also
:ref:, :ref:
4.9.32 e:SetDisableBrightest
e:SetDisableBrightest()
Parameters
• **
• **
• **
Returns
Notes
Example
e:SetDisableBrightest()
See Also
:ref:, :ref:
Note: g_pBaldurChitin (CBaldurChitin) functions are accessed via the e: prefix
Function Descriptione:CheckGUISonge:FullScreene:GetActiveEnginee:GetEngineChaptere:GetEngineCharactere:GetEngineConnection
Continued on next page
232 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Table 4 – continued from previous pagee:GetEngineCreateChare:GetEngineCreatePartye:GetEngineDLCe:GetEngineInventorye:GetEngineJournale:GetEngineLoade:GetEngineMape:GetEngineMoviese:GetEngineMultiPlayere:GetEngineOptionse:GetEnginePriestSpelle:GetEngineProjectore:GetEngineSavee:GetEngineStarte:GetEngineStoree:GetEngineWizSpelle:GetEngineWorlde:GetEngineWorldMape:GetObjectGamee:GetSoundMixere:GetVersionStringe:IsAndroide:IsIOSe:IsTouchUIe:SelectEnginee:SetDisableBrightest
e = g_pBaldurChitin
4.10 game Functions
4.10.1 game:CenterOnGroupLeader
game:CenterOnGroupLeader()
Parameters
• **
• **
• **
Returns
Notes
Example
game:CenterOnGroupLeader()
See Also
4.10. game Functions 233
EEex Documentation, Release 1.0
:ref:, :ref:
4.10.2 game:GetButtonArray
game:GetButtonArray()
Parameters
• **
• **
• **
Returns
Notes
Example
game:GetButtonArray()
See Also
:ref:, :ref:
4.10.3 game:GetCharacterOverflowCount
game:GetCharacterOverflowCount()
Parameters
• **
• **
• **
Returns
Notes
Example
game:GetCharacterOverflowCount()
See Also
:ref:, :ref:
4.10.4 game:GetJournalOpenable
game:GetJournalOpenable()
Parameters
• **
• **
234 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• **
Returns
Notes
Example
game:GetJournalOpenable()
See Also
:ref:, :ref:
4.10.5 game:GetMissionPackInfo
game:GetMissionPackInfo()
Parameters
• **
• **
• **
Returns
Notes
Example
game:GetMissionPackInfo()
See Also
:ref:, :ref:
4.10.6 game:GetMissionPackInfo25
game:GetMissionPackInfo25()
Parameters
• **
• **
• **
Returns
Notes
Example
game:GetMissionPackInfo25()
See Also
:ref:, :ref:
4.10. game Functions 235
EEex Documentation, Release 1.0
4.10.7 game:GetMissionPackInfoTBP
game:GetMissionPackInfoTBP()
Parameters
• **
• **
• **
Returns
Notes
Example
game:GetMissionPackInfoTBP()
See Also
:ref:, :ref:
4.10.8 game:GetOptions
game:GetOptions()
Parameters
• **
• **
• **
Returns
Notes
Example
game:GetOptions()
See Also
:ref:, :ref:
4.10.9 game:GetPaletteSize
game:GetPaletteSize()
Parameters
• **
• **
• **
236 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
game:GetPaletteSize()
See Also
:ref:, :ref:
4.10.10 game:GetPartyAI
game:GetPartyAI()
Parameters
• **
• **
• **
Returns
Notes
Example
game:GetPartyAI()
See Also
:ref:, :ref:
4.10.11 game:GetPartyGold
game:GetPartyGold()
Parameters
• **
• **
• **
Returns
Notes
Example
game:GetPartyGold()
See Also
:ref:, :ref:
4.10. game Functions 237
EEex Documentation, Release 1.0
4.10.12 game:GetWorldTimer
game:GetWorldTimer()
Parameters
• **
• **
• **
Returns
Notes
Example
game:GetWorldTimer()
See Also
:ref:, :ref:
4.10.13 game:IsClient
game:IsClient()
Parameters
• **
• **
• **
Returns
Notes
Example
game:IsClient()
See Also
:ref:, :ref:
4.10.14 game:RestParty
game:RestParty()
Parameters
• **
• **
• **
238 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
game:RestParty()
See Also
:ref:, :ref:
4.10.15 game:SelectAll
game:SelectAll()
Parameters
• **
• **
• **
Returns
Notes
Example
game:SelectAll()
See Also
:ref:, :ref:
4.10.16 game:SetCampaign
game:SetCampaign()
Parameters
• **
• **
• **
Returns
Notes
Example
game:SetCampaign()
See Also
:ref:, :ref:
4.10. game Functions 239
EEex Documentation, Release 1.0
4.10.17 game:ToggleAI
game:ToggleAI()
Parameters
• **
• **
• **
Returns
Notes
Example
game:ToggleAI()
See Also
:ref:, :ref:
Function Descriptiongame:CenterOnGroupLeadergame:GetButtonArraygame:GetCharacterOverflowCountgame:GetJournalOpenablegame:GetMissionPackInfogame:GetMissionPackInfo25game:GetMissionPackInfoTBPgame:GetOptionsgame:GetPaletteSizegame:GetPartyAIgame:GetPartyGoldgame:GetWorldTimergame:IsClientgame:RestPartygame:SelectAllgame:SetCampaigngame:ToggleAI
e = g_pBaldurChitingame = e:GetObjectGame()
4.11 Infinity Functions
A list of all Infinity_XXX() lua functions found by scanning game executables and the various lua and menu files.
“I’ve tried to compile a list of all Infinity_XXX() function I could find by scanning game executables andthe various lua and menu files, but there are still many unknown or unclear parameters and return values.There are no function descriptions either, but many function names are (more or less) self-explanatory.”
—argent77
240 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Function DescriptionInfinity_ActivateInventory Opens and activates the inventory screen and updates stats for the characterInfinity_ActivateRecord Opens and activates the level up dialogInfinity_AddDLC Add DLC to gameInfinity_AddDLCContent Add DLC content to gameInfinity_CanCloudSave Determines if cloud saves are supported by the platformInfinity_CanLevelUp Determines if the specified character can level upInfinity_ChangeOption Set the value of an option in a panelInfinity_CheckItemIdentify Checks lore skill for identifying an item in an inventory slotInfinity_ClickItemInfinity_ClickObjectInWorld Clicks the ground at the location of the object in the worldInfinity_ClickScreen Clicks the center of the viewscreenInfinity_ClickWorldAt Clicks the ground at the specified coordinates, relative to the viewscreenInfinity_CloseEngine Close active engine - unknownInfinity_DestroyAnimation Remove UI items that match the specified template nameInfinity_DisplayString Displays to the screen the passed content as a stringInfinity_DoFile Loads and executes the lua file specifiedInfinity_EnterEdit Enters new text into a UI edit controlInfinity_FetchString Returns the string for the string reference id specifiedInfinity_FindItemWithBam Find a UI control that has the specified bam resource referenceInfinity_FindItemWithText Find a UI control that has the specified textInfinity_FindUIItemByName Find a UI item by the name specifiedInfinity_FocusTextEdit Set the keyboard focus to the specified text edit contolInfinity_GetArea Returns the bounding rectangle (area) for the specified UI Control nameInfinity_GetClockTicks Returns the clock tick count in millisecondsInfinity_GetContainerItemDescription Updates the description of an item from a specified slot in a containerInfinity_GetContentHeight Returns the height of the text content in a UI controlInfinity_GetCurrentGroundPage Returns the current page number of the ground inventory slotsInfinity_GetCurrentMovie Returns the current movieInfinity_GetCurrentScreenName Returns current menu nameInfinity_GetFilesOfType Returns a list of files that match the specified file extensionInfinity_GetFrameCounter Returns frame counterInfinity_GetGameTicks Returns game ticksInfinity_GetGroundItemDescriptionInfinity_GetGroupItemDescriptionInfinity_GetInCutsceneModeInfinity_GetINIString Returns a string containing an ini section key valueInfinity_GetINIValue Returns an integer value containing an ini section key valueInfinity_GetListHeight Returns the height of the sepcified UI List controlInfinity_GetMaxChapterPage Returns the chapter number that the game campaign is at currentlyInfinity_GetMaxGroundPage Returns maximum ground pagesInfinity_GetMenuArea Returns the bounding rectangle (area) for the specified UI Menu nameInfinity_GetMenuItemByName Returns the UI menu item that has the specified nameInfinity_GetMousePosition Returns mouse positionInfinity_GetNumCharacters Returns total number of characters currently in the partyInfinity_GetOffset Get the position of a menu on the screenInfinity_GetOption Get the value of an option in a panelInfinity_GetPasswordRequired Updates the passwordReq lua variable with the password requirementInfinity_GetPortraitTooltip Returns a string containing the tooltip for a specified portrait indexInfinity_GetScreenSize Returns the width and height of the screen
Continued on next page
4.11. Infinity Functions 241
EEex Documentation, Release 1.0
Table 5 – continued from previous pageInfinity_GetScriptVarInt Returns the value of a script variable as an integerInfinity_GetScrollIdentifyEnabled Determines if the specified item requires identification, and can be identified via a scrollInfinity_GetSelectedCharacterName Returns a string containing the currently selected character’s nameInfinity_GetSpellIdentifyEnabled Determines if the specified item requires identification, and can be identified via a spellInfinity_GetTimeString Returns a formatted date and time stringInfinity_GetTransitionInProgress Returns the transition valueInfinity_GetUseButtonText Returns “Use x” button text of an item name for an item specifiedInfinity_GooglePlaySignedIn Determines if signed into Google PlayInfinity_HighlightJournalButton Unknown purpose, returns falseInfinity_HoverMouseOver Moves where your mouse cursor is in the game worldInfinity_HoverMouseOverObject Activate AI script file for object that mouse is hovering overInfinity_InstanceAnimation Creates a temporary single instance animation of a bamInfinity_IsItemEnabledInfinity_IsMenuOnStackInfinity_IsPlayerMovingInfinity_JoinMultiplayerGameInfinity_LaunchURLInfinity_LevelUp Opens level up dialogInfinity_LogInfinity_LookAtObjectInWorldInfinity_LuaConsoleInputInfinity_OnAddUserEntryInfinity_OnCharacterImportItemSelectInfinity_OnCharacterItemSelectInfinity_OnEditUserEntryInfinity_OnGroundPageInfinity_OnPortraitDblClickInfinity_OnPortraitItemSelectInfinity_OnPortraitLClickInfinity_OnPortraitRClickInfinity_OnRemoveUserEntryInfinity_OnRestInfinity_OnScriptItemSelectInfinity_OnScrollIdentifyInfinity_OnSoundItemSelectInfinity_OnSpellIdentifyInfinity_OnUseButtonClickInfinity_OpenInventoryContainerInfinity_PlayMovieInfinity_PlaySoundInfinity_PopMenuInfinity_PressKeyboardButtonInfinity_PushMenuInfinity_RandomNumberInfinity_RemoveINIEntryInfinity_RequestMultiplayerGameDetailsInfinity_ScaleToTextInfinity_ScrollListsInfinity_SelectDialogueOptionInfinity_SelectItemAbility
Continued on next page
242 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Table 5 – continued from previous pageInfinity_SelectListItemInfinity_SendChatMessageInfinity_SetAreaInfinity_SetBackgroundInfinity_SetCloudEnabledInfinity_SetGooglePlaySigninStateInfinity_SetHairColorInfinity_SetHighlightColors Set a color or color gradient for UI elements in the options dialogsInfinity_SetINIValue Sets a value of an ini section keyInfinity_SetKeyInfinity_SetLanguageInfinity_SetMajorColorInfinity_SetMinorColorInfinity_SetOffsetInfinity_SetOverlayInfinity_SetScreenSizeInfinity_SetScrollTopInfinity_SetSkinColorInfinity_SetTokenInfinity_ShutdownGameInfinity_SignInOutButtonEnabledInfinity_SplitItemStackInfinity_StartItemCaptureInfinity_StartKeybindInfinity_StopItemCaptureInfinity_StopKeybindInfinity_StopMovieInfinity_SwapSlotInfinity_SwapWithAppearanceInfinity_SwapWithPortraitInfinity_TakeScreenshotInfinity_TextEditHasFocusInfinity_TransitionMenuInfinity_UpdateCharacterRecordExportPanelInfinity_UpdateCloudSaveStateInfinity_UpdateInventoryRequesterPanelInfinity_UpdateLuaStatsInfinity_UpdateStoreMainPanelInfinity_UpdateStoreRequesterPanelInfinity_WriteINILine
4.11.1 Infinity_ActivateInventory
Opens and activates the inventory screen and updates stats for the character
Infinity_ActivateInventory()
Notes
4.11. Infinity Functions 243
EEex Documentation, Release 1.0
Calls CScreenInventory::ResetGroundPile and CScreenInventory::UpdateLua, which in turn calls CGame-Sprite::UpdateLuaStats
Updates ability scores, stats, skills, equiptment, paperdoll and items for display in the inventory screen for the currentcharacter
Example
Infinity_ActivateInventory()
4.11.2 Infinity_ActivateRecord
Opens and activates the level up dialog
Infinity_ActivateRecord(index)
Parameters
• integer index - 0 based index of the character to level up
Notes
Calls CScreenCharacter::OnLevelUpButtonClick to open and activate the level up dialog
Example
Enables the level up button if character 5 (index 4) can level up, and on clicking the enabled button, the action opensthe level up dialog via Infinity_ActivateRecord:
button{
enabled "Infinity_CanLevelUp(4)"bam GUIOSWarea 0 382 44 44sequence 0action "Infinity_ActivateRecord(4)"pulse 1
}
4.11.3 Infinity_AddDLC
Add DLC to game
Infinity_AddDLC(name,image,title,description,ios_name,purchased,android_name)
Parameters
• string name - text or ResRef ?
• string image - DLC image - ResRef to image ?
• integer title - long pointer to string or StrRef ?
• integer description - long pointer to string or StrRef ?
• string ios_name - text or ResRef ?
244 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• integer purchased - date time stamp ?
• string android_name - text or ResRef ?
Notes
Fills in a CDLC structure from the parameters passed and calls the DLCInsert function, which is defined as:
void __cdecl DLCInsert(CDLC toInsert);
Only available on ios or android builds ?
See also Infinity_AddDLCContent
Example
No known example
4.11.4 Infinity_AddDLCContent
Add DLC content to game
Infinity_AddDLCContent(name,dlc_id)
Parameters
• string name - text or ResRef ?
• integer dlc_id - dlc id
Notes
Fills in a CDLC_Content structure from the parameters passed and calls the DLCInsertContent function, which isdefined as:
void __cdecl DLCInsertContent(CDLC_Content toInsert);
Only available on ios or android builds ?
See also Infinity_AddDLC
Example
No known example
4.11.5 Infinity_CanCloudSave
Determines if cloud saves are supported by the platform, for example Steam.
Infinity_CanCloudSave()
Return Value
Returns a boolean value: true if cloud saves are supported on the platform or false otherwise
Notes
4.11. Infinity Functions 245
EEex Documentation, Release 1.0
Calls CPlatform::IsPlatformServiceConnected and reads CBaldurChitin.m_cChitin => CChitin.cSteam =>CSteam.m_isSteamConnected
Example
if Infinity_CanCloudSave() == false and (toggleTitles[1][3] == 60 or→˓toggleTitles[2][3] == 60) then
removeOptionFromList(toggleTitles,60)end
4.11.6 Infinity_CanLevelUp
Determines if the specified character can level up - has enough experience points to qualify for a level up.
Infinity_CanLevelUp(index)
Parameters
• integer index - 0 based index of the character to check if level up is available for
Return Value
Returns a boolean value: true if character can level up or false otherwise
Notes
Example
Enables the level up button if character 5 (index 4) can level up, and on clicking the enabled button, the action opensthe level up dialog via Infinity_ActivateRecord:
button{
enabled "Infinity_CanLevelUp(4)"bam GUIOSWarea 0 382 44 44sequence 0action "Infinity_ActivateRecord(4)"pulse 1
}
4.11.7 Infinity_ChangeOption
Set the value of an option in a panel
Infinity_ChangeOption(option_id,value,panel_id)
Parameters
• integer option_id - id of the option to set
• integer value - value to set the option to
• integer panel_id - id of the panel
246 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Notes
Calls CGameOptions::SetOption
Example
Get the value of option id 1 in panel id 8 (panelID = 8) to a variable ttDelaySLDR and then set option id 1 inpanel id 8 (panelID = 8) to the value of the ttDelaySLDR variable
panelID = 8ttDelaySLDR = Infinity_GetOption(1, panelID)Infinity_ChangeOption( 1, ttDelaySLDR, panelID)
See also Infinity_GetOption
4.11.8 Infinity_CheckItemIdentify
Checks lore skill for identifying an item in an inventory slot
Infinity_CheckItemIdentify(nSlot)
Parameters
• integer nSlot - slot number that item occupies
Notes
Calls the CScreenInventory::CheckItemIdentify method.
If character has a high enough lore skill value then the item specified in the inventory slot nSlot is identified, the item’sname and description is updated in the inventory slot and in any quick slot buttons that it currently occupies.
Example
function showItemDescriptionInventory(slotName)if(characters[id].equipment[slotName].empty ~= 0) then
returnend
selectedSlot = slotName
Infinity_CheckItemIdentify(characters[id].equipment[slotName].id)showItemDescription(characters[id].equipment[slotName].item, 0)
end
4.11.9 Infinity_ClickItem
Infinity_ClickItem(???)
Parameters
???
Return Value
???
4.11. Infinity Functions 247
EEex Documentation, Release 1.0
Notes
Example
4.11.10 Infinity_ClickObjectInWorld
Clicks the ground at the location of the object in the world
Infinity_ClickObjectInWorld(ScriptName)
Parameters
• string ScriptName - name of the script (for the object) to click the ground at
Return Value
None
Notes
Example
Click the ground at MINSC.BS:
Infinity_ClickObjectInWorld("Minsc")
4.11.11 Infinity_ClickScreen
Clicks the center of the viewscreen
Infinity_ClickScreen()
Parameters
None
Return Value
None
Example
Infinity_ClickScreen()
4.11.12 Infinity_ClickWorldAt
Clicks the ground at the specified coordinates, relative to the viewscreen
Infinity_ClickWorldAt(x,y)
Parameters
• integer x - x coordinate to click world at
248 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• integer y - y coordinate to click world at
Return Value
None
Notes
“Appears entirely broken. It seems to always click the top-left of the current viewscreen”
—Bubb
If your mouse cursor is not in the world (such as on the ActionBar or on a SideBar), it clicks on the world coordinatesat 0, 0
If you don’t include Infinity_HoverMouseOver before Infinity_ClickWorldAt, it will click at world coordinates 0, 0 byassuming your cursor is over the interface.
You can force a click in the game world like so:
Infinity_HoverMouseOver(x,y)Infinity_ClickWorldAt(x,y)
Example
Infinity_ClickWorldAt(100,200)
4.11.13 Infinity_CloseEngine
Close active engine - unknown
Infinity_CloseEngine()
Parameters
None
Return Value
None
Notes
• Reads CBaldurChitin.m_pEngineJournal => CScreenJournal*
• Pushes CBaldurChitin.m_pEngineWorld => CScreenWorld*
• Reads CScreenJournal.m_cBaldurEngine => CBaldurEngine.m_cWarp => CWarp.m_cObject => COb-ject.vfptr
• Calls CObject.vfptr + 0x28 = CWarp::EngineDeactivated ?
Unknown as to the purpose of this function - best leave it alone.
Example
No known examples
4.11. Infinity Functions 249
EEex Documentation, Release 1.0
4.11.14 Infinity_DestroyAnimation
Remove and free memory for the UI items that match the template name and instance id specified
Infinity_DestroyAnimation(instanceId,templateName)
Parameters
• integer instanceId - instance id
• string templateName - name of the template to remove
Return Value
None
Notes
Calls uiRemoveFromTemplate function, defined as:
void __cdecl uiRemoveFromTemplate(CString sTemplate, int id);
Example
No known examples
4.11.15 Infinity_DisplayString
Displays to the screen the passed content as a string
Infinity_DisplayString(...)
Parameters
• . . . - special, see notes
Return Value
None
Notes
Similar to printf function, this function can accept a variable amount of parameters. Each parameter passed is evalu-ated, converted to a string if necessary and concatenated to form the final string to display on the screen.
Parameters that are:
• Integers - converted to a string.
• Variables - evaluated and the value of the variable is taken and converted to a string.
• Functions - evaluated and the result used in other nested functions and/or evaluated to a string.
Paramters supports simple math and other lua functions.
You can inline concatenate strings and variables by using .. between the string and variable and/or the next parameter,for example the class variable is concatenated to the string:
Infinity_DisplayString("WARNING: unrecognized class argument: " .. class)
250 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Examples
Display to screen using inline concatenate using 2 parameters, both using a string and a variable to evaluate:
Infinity_DisplayString("config: "..config..", state: "..state)
Display to screen the result of simple math: (result is displayed as 20000001):
Infinity_DisplayString(20000000 + 1)
4.11.16 Infinity_DoFile
Loads and executes the lua file specified
Infinity_DoFile(filename)
Parameters
• filename - full filepath to lua filename to load and process
Notes
The includes.lua file used by the game engine uses Infinity_DoFile to setup the lua environement for the UI.MENU and provides support for running any lua file that begins with M_ found in the games override folder. TheM_ lua files are designated for modders.
Example
Load and execute the lua file: MyLuaFile.lua:
Infinity_DoFile("MyLuaFile")
4.11.17 Infinity_EnterEdit
Enters new text into a UI edit control
Infinity_EnterEdit(newText,oldText)
Parameters
• string newText - string containing the new text content
• string oldText - string containing the old text content to replace
Return Value
None
Notes
Searches through all UI edit controls looking for one that has a string containing oldText and replaces it with thenewText string.
Reads uiItem.edit => uiItem::edit.var to compare against oldText, if it matches then it is replaced with newText
Not tested or verified
Example
4.11. Infinity Functions 251
EEex Documentation, Release 1.0
Infinity_EnterEdit("New text to replace","This is a test")
4.11.18 Infinity_FetchString
Returns the string for the string reference id specified
Infinity_FetchString(StrRef)
Parameters
• integer StrRef - the string reference (StrRef) id to fetch
Return Value
Returns the string for the StrRef id specified in the StrRef parameter
Notes
Calls the CTlkTable::Fetch method to fetch the StrRef string into a STR_RES structure and pushes STR_RES.szText=> CString.m_pchData onto the lua stack.
Example
Returns the string for StrRef 38848 (“Greetings, good customer. A pearl to you.”):
pearl = Infinity_FetchString(38848)
4.11.19 Infinity_FindItemWithBam
Find a UI control that has the specified bam resource reference
Infinity_FindItemWithBam(BamResRef,Sequence)
Parameters
• string - BamResRef - the resource reference (ResRef) to search for that matches an existing UI control’s bamResRef
• integer - Sequence - the bam sequence to match as well (optional)
Return Value
Returns userdata version of the item (a pointer to the uiItem structure of the matched UI control or a lua NIL)
See notes for further details.
Notes
Searches through all UI controls from the main stack menu and linked list of UI controls:
• Reads uiMenu.items for an array of pointers. Each pointer in the array is a uiItem structure.
• Reads offset 0x98: uiItem.bam => uiItem::bam.resref
• If the uiItem::bam.resref field is 0 then the process looks for next uiItem in the linked list to process: readsuiItem.next field (offset 0x22C) and repeats the same step above by reading the uiItem::bam.resref field. If theuiItem.next field is 0 then the next pointer in the array of pointers from uiMenu.items is read and repeats thesame step above by reading the uiItem::bam.resref field.
252 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• If the uiItem::bam.resref field is not 0 then it converts the field value (a uiVariant type field) to a string. Thisstring is a ResRef. This is then used in comparison with the BamResRef ResRef string parameter.
• If the ResRef strings compared match, and the Sequence parameter is not specified, then the pointer the uiItemstructure of the currently matched UI control, is pushed onto the lua stack and the function exits.
• If the ResRef strings compared match, and the Sequence parameter is specified and matches the value in theuiItem::bam.sequence field, then the pointer to the uiItem structure of the currently matched UI control, ispushed onto the lua stack and the function exits.
• If the ResRef strings compared match, and the Sequence parameter does not match the value in the ui-Item::bam.sequence field, then the uiItem.slot => uiItem::slot.icon field (a uiVariant type) is read, the valueconverted to a ResRef string and compared to the BamResRef string parameter. If this comparison matchesthen the pointer to the uiItem structure of the currently matched UI control, is pushed onto the lua stack and thefunction exits.
• If the ResRef strings compared do not match, then the uiItem.slot => uiItem::slot.icon field (a uiVariant type) isread, the value converted to a ResRef string and compared to the BamResRef string parameter. If this comparisonmatches then the pointer to the uiItem structure of the currently matched UI control, is pushed onto the lua stackand the function exits.
• If the ResRef strings compared do not match, and there is a valid uiItem.next then the search and comparisonprocess continues.
• If the ResRef strings compared do not match, and there is a no valid uiItem.next, but there is another pointer inarray of pointers found at uiMenu.items then the search and comparison process continues.
• If the ResRef strings compared do not match and there are no more uiItem (via uiItem.next or uiMenu.items)then a lua nil is pushed to the lua stack and the function exits.
It is unknown how to exactly use this function as there are no known examples.
Example
Find the UI control that uses sequence 3 of GUIOSTLM.BAM (which is the reform party button)
reformpartycontrol = Infinity_FindItemWithBam("GUIOSTLM",3)
4.11.20 Infinity_FindItemWithText
Find a UI control that has the specified text
Infinity_FindItemWithText(OriginalText)
Parameters
• string OriginalText - the text to search for that matches an existing UI control’s text
Return Value
Returns userdata version of the item (a pointer to the uiItem structure of the matched UI control or a lua NIL)
See notes for further details.
Notes
Searches through all UI controls from the main stack menu and linked list of UI controls:
• Reads uiMenu.items for an array of pointers. Each pointer in the array is a uiItem structure.
4.11. Infinity Functions 253
EEex Documentation, Release 1.0
• Reads 140 bytes of the uiItem structure into a local buffer and checks offset 0x70 of the local buffer, whichcorresponds to the uiItem.text => uiItem::text.text field.
• If the uiItem::text.text field is 0 then the process looks for next uiItem in the linked list to process: readsuiItem.next field (offset 0x22C) and repeats the same step above by reading the uiItem::text.text field. If theuiItem.next field is 0 then the next pointer in the array of pointers from uiMenu.items is read and repeats thesame step above by reading the uiItem::text.text field.
• If the uiItem::text.text field is not 0 then it converts the field value (a uiVariant type field) to an integer. Thisinteger is a string reference (StrRef) id from the TLK table. The (StrRef) string is loaded into a buffer and thisis then used in comparison with the OriginalText string parameter.
• If the strings compared match, then the pointer to the uiItem structure of the currently matched UI control, ispushed onto the lua stack and the function exits.
• If the strings compared do not match, and there is a valid uiItem.next then the search and comparison processcontinues.
• If the strings compared do not match, and there is a no valid uiItem.next, but there is another pointer in array ofpointers found at uiMenu.items then the search and comparison process continues.
• If the strings compared do not match and there are no more uiItem (via uiItem.next or uiMenu.items) then a luanil is pushed to the lua stack and the function exits.
It is unknown how to exactly use this function as there are no known examples.
Example
--]Find the text control that has "Hello"--[
hellocontrol = Infinity_FindItemWithText("Hello")
4.11.21 Infinity_FindUIItemByName
Find a UI item by the name specified
Infinity_FindUIItemByName(UIItemName)
Parameters
• string UIItemName - name of the UI item to find
Return Value
Returns a pointer to a UI item
Notes
Returns the pointer to the item stored in the nameToItem array, which is defined internally in the game executableas:
nameToItem = {}
Items are stored in the array like so:
nameToItem['%s'] = nameToItemPointer
254 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
The nameToItem array can be accessed directly in UI.MENU or other lua files.
For example, Infinity_ClickItem takes a menuItem userdata type and clicks the center of its area:
Infinity_ClickItem(nameToItem["whaterNameHere"])
Example
Get the inventory menu item:
inventory = Infinity_FindUIItemByName("INVENTORY")
Get the button control for the peasant room to rent at an inn:
selectedRoom = Infinity_FindUIItemByName('BUTTON_room_peasant')
4.11.22 Infinity_FocusTextEdit
Set the keyboard focus to the specified text edit contol, so that typing will occur in the text edit control.
Infinity_FocusTextEdit(element_name)
Parameters
• string element_name - name of the text edit control to set the keyboard focus to
Notes
Calls the uiFocusTextEdit function
Example
Partial example of the CLUAConsole cheat text edit control being displayed and the focus moving to it so that typingoccurs in that text edit control:
name 'cheatConsole'align center bottomignoreEsc
onOpen"
toolbarTop = 50Infinity_PushMenu('WORLD_MESSAGES')Infinity_PushMenu('cheatMenu', 0, 0);Infinity_FocusTextEdit('luaEditArea');luaEdit = trim(luaEdit)loadLuaHistory()
"
4.11.23 Infinity_GetArea
Returns the bounding rectangle (area) for the specified UI Control name
4.11. Infinity Functions 255
EEex Documentation, Release 1.0
Infinity_GetArea(element_name)
Parameters
• string element_name - name of the UI Control to return the bounding rectangle for
Return Value
Returns as integer values: x, y, w, h - x coordinate, y coordinate, width and height of rectangle
Notes
Example
With a UI Label control named messagesRect:
label{
name 'messagesRect'area 0 111 863 142rectangle 4
}
To get the area of the messagesRect label control:
local x,y,w,h = Infinity_GetArea('messagesRect')
4.11.24 Infinity_GetClockTicks
Returns the clock tick count in milliseconds
Infinity_GetClockTicks()
Return Value
Returns an integer value of the clock tick in milliseconds
Notes
Calls the SDL_GetTicks function, coverts it to a lua number and pushes it onto the lua stack
Can be used to measure the time elapsed between calls to Infinity_GetClockTicks
Example
Get tick count and store it to a variable:
chatboxScrollTimeLast = Infinity_GetClockTicks()
Later on, get tick count and use previously stored tick count value (chatboxScrollTimeLast) to measuretime elapsed, and store it to a ``dT variable:
local dT = Infinity_GetClockTicks() - chatboxScrollTimeLastchatboxScrollTimeLast = Infinity_GetClockTicks()
The dT variable now contains the elapsed time since Infinity_GetClockTicks was last called.
256 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.11.25 Infinity_GetContainerItemDescription
Updates the description and usability text of an item from a specified slot in a container
Infinity_GetContainerItemDescription(nSlotNum)
Parameters
• integer nSlotNum - slot number to return the item description and and usability text for
Return Value
Special, see notes
Notes
Calls the following class methods: CGameContainer::GetItem, CItem::GetUsabilityText and CItem::GetDescription
Updates an existing array named loot, which is defined in UI.MENU as:
loot ={
containerItems = {},groupItems = {},groundItems = {}
}
The loot array is updated with the description and usability text of the item occupying the slot nSlotNum in thecontainer.
Example
Update the item description using Infinity_GetContainerItemDescription and then access the loot array via the in-ternal UI.MENU function showItemDescription:
function showContainerItemDescription(index)local idxScrolled = index + worldScreen:GetTopContainerItem()if(loot.containerItems[idxScrolled] == nil or loot.containerItems[idxScrolled].
→˓item == nil) thenreturn nil
endInfinity_GetContainerItemDescription(idxScrolled)showItemDescription(loot.containerItems[idxScrolled].item, 2)
end
The showItemDescription function, stores some of the loot array entries into another array itemDesc.showItemDescription is defined as:
itemDesc = {}function showItemDescription(item, mode)
itemDesc.item = itemitemDesc.mode = modeInfinity_PushMenu('ITEM_DESCRIPTION',0,0)
end
The ITEM_DESCRIPTION menu, which uses the values in the itemDesc array is defined as:
menu{
name 'ITEM_DESCRIPTION'
(continues on next page)
4.11. Infinity Functions 257
EEex Documentation, Release 1.0
(continued from previous page)
align center centermodallabel{
area 0 0 864 710mosaic GUIINVHI
}label{
area 81 11 700 44text "ITEM_TITLE"text style title
}label{
area 402 66 52 52icon lua "itemDesc.item.icon"
}label{
area 57 170 295 40text lua "itemDesc.item.name"text align center centertext style "label"text color '5'
}text{
area 356 180 430 353text lua "itemDesc.item.description"scrollbar 'GUISCRC'text style "normal_parchment"
}label{
area 66 210 280 327bam lua "itemDesc.item.descPicture"sequence 0frame 0align center center
}button{
bam GUIOSTULsequence 6area 57 638 234 44enabled "itemDescLeftButtonEnabled()"text lua "itemDescLeftButtonText()"text style "button"action"
itemDescLeftButtonAction()"
}button{
bam GUIOSTUM(continues on next page)
258 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
(continued from previous page)
sequence 6area 326 638 204 44text "DONE_BUTTON"text style "button"action"
Infinity_PopMenu();"
}button{
bam GUIOSTURsequence 6area 572 638 234 44enabled "itemDescRightButtonEnabled()"text lua "itemDescRightButtonText()"text style "button"action"
itemDescRightButtonAction()"
}}
Note the use of itemDesc.item.name and itemDesc.item.description etc
4.11.26 Infinity_GetContentHeight
Returns the height of the text content in a UI control
Infinity_GetContentHeight(font,width,textcontent,point,indent,useFontZoom)
Parameters
• string font - string containing resource reference (ResRef) of font
• integer width - width of the UI control hosting the content
• string textcontent - string containing the text content
• integer point - font size
• integer indent - a boolean value if indented 1, or 0 otherwise
• integer useFontZoom - boolean value if using font zoom 1, or 0 otherwise
Return Value
Returns an integer of the calculated content height
Notes
Calculates the height of the text content in a UI control, taking into account the font used, the font size, word wrappingfor the width of the UI control, indentation and/or font zooming.
You should account for the width of the scrollbar when specifying the width parameter
4.11. Infinity Functions 259
EEex Documentation, Release 1.0
useFontZoom is used for font scaling based on the font size (the point parameter). If useFontZoom is 0, the text content(the textcontent parameter) will always appear at the defined font size, if useFontZoom is 1 then font scaling will occurfor the text content.
Example
--Calculate running total of dialog content heightlocal x,y,w,h = Infinity_GetArea("worldPlayerDialogChoicesList")w = w - 18 --account for scrollbar influence on widthlocal delta = Infinity_GetContentHeight(styles.normal.font, w, text, styles.normal.→˓point, 1, styles.normal.useFontZoom) --1 for indent.chatboxContentHeight = chatboxContentHeight + delta
Note: styles are defined in the BGEE.LUA file
4.11.27 Infinity_GetCurrentGroundPage
Returns the current page number of the ground inventory slots
Infinity_GetCurrentGroundPage()
Return Value
Returns an integer representing the page number of the ground inventory slots
Notes
A ground page is a series of inventory slots representing ground items available to pick up or empty slots for items tobe dropped into.
Ground pages are used to scroll through the groupings of those ground based inventory slots. See also Infin-ity_GetMaxGroundPage and Infinity_GetGroundItemDescription
Calls the CScreenInventory::GetCurrentGroundPage method
Example
curPage = Infinity_GetCurrentGroundPage()
4.11.28 Infinity_GetCurrentMovie
Returns the current movie
Infinity_GetCurrentMovie()
Parameters
None
Return Value
Returns a string containing the resource reference (ResRef) of the current movie file (WebM file format)
Notes
Reads CBaldurChitin.m_pEngineProjector => CBaldurProjector.m_pMovie => CResWebM.CRes
260 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Compares active engine (CWarp)
Pushes lua string onto stack or lua nil
Note: more research required.
Example
curMovie = Infinity_GetCurrentMovie()
4.11.29 Infinity_GetCurrentScreenName
Returns current menu name
Infinity_GetCurrentScreenName()
Parameters
None
Return Value
Returns a string of the current menu name, or an empty string if no menu active
Notes
Uses getMenuStackTop and getStackMenu functions, and if successful, reads the value at uiMenu.name and pushesthis value to the lua stack as a lua string.
Examples
Get the current menu name:
curMenuName = Infinity_GetCurrentScreenName()
Sets the button to clickable only if the current menu equals CHARGEN
button{
area 770 552 204 44text "IMPORT_BUTTON"text style "button"bam GUIOSTUMclickable lua "Infinity_GetCurrentScreenName() == 'CHARGEN'"action "createCharScreen:OnImportCharacterButtonClick()"
}
4.11.30 Infinity_GetFilesOfType
Returns a list of files that match the specified file extension
Infinity_GetFilesOfType(extension)
Parameters
• string extension - string containing file extension
4.11. Infinity Functions 261
EEex Documentation, Release 1.0
Return Value
An array of filenames that matched the specified file extension
Notes
Converts extension to resource file type using the chExtToType function and fetches those filenames that match theresource type and stores them into an array.
The following extensions are supported:
• “bmp”
• “mve”
• “tga”
• “wav”
• “wfx”
• “plt”
• “bam”
• “wed”
• “chu”
• “tis”
• “spl”
• “bcs”
• “ids”
• “cre”
• “are”
• “dlg”
• “2da”
• “gam”
• “sto”
• “wmp”
• “chr”
• “bs”
• “eff”
• “vvc”
• “vef”
• “pro”
• “bio”
• “wbm”
• “gui”
• “sql”
262 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• “pvrz”
• “glsl”
• “tot”
• “toh”
• “menu”
• “lua”
• “ttf”
• “png”
• “ini”
Example
bamfilelist = Infinity_GetFilesOfType("bam")
4.11.31 Infinity_GetFrameCounter
Returns frame counter
Infinity_GetFrameCounter()
Return Value
Returns an int value representing frame counter
Notes
Reads the value stored at offset 0xC48 of CChitin: CChitin.nAUCounter, converts it to a float and pushes it onto thelua stack.
Example
framcounter = Infinity_GetFrameCounter()
4.11.32 Infinity_GetGameTicks
Returns game ticks
Infinity_GetGameTicks()
Return Value
Returns an int value representing game ticks
Notes
Reads CBaldurChitin.m_pObjectGame => CInfGame.m_worldTime => CTimerWorld.m_gameTime and multipliesit by the value stored in the variable TIMER_UPDATES_PER_SECOND. The result is added together with itself,converted to a float and pushed onto the lua stack.
The variable TIMER_UPDATES_PER_SECOND located at offset 0x00938778 is initially set to 30 (0x1E)
4.11. Infinity Functions 263
EEex Documentation, Release 1.0
Example
ticks = Infinity_GetGameTicks()
4.11.33 Infinity_GetGroundItemDescription
Returns a string containing the item’s description as seen on the ground
Infinity_GetGroundItemDescription(item_index,slot_id,container_id)
Parameters
• item_index -
• slot_id -
• container_id -
Return Value
string
Notes
Example
4.11.34 Infinity_GetGroupItemDescription
Infinity_GetGroupItemDescription(item_index)
Parameters
• item_index -
Return Value
string
Notes
Example
4.11.35 Infinity_GetInCutsceneMode
Infinity_GetInCutsceneMode(???)
Parameters
???
Return Value
???
264 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Notes
Example
4.11.36 Infinity_GetINIString
Returns a string containing an ini section key value
Infinity_GetINIString(section_name,value_name,default_value)
Parameters
• section_name - section name in an ini file
• value_name - the key in the section to return the value for
• default_value - the default value to return if key does not exist
Return Value
string
Notes
Example
4.11.37 Infinity_GetINIValue
Returns an integer value containing an ini section key value
Infinity_GetINIValue(section_name,value_name,default_value)
Parameters
• section_name - section name in an ini file
• value_name - the key in the section to return the value for
• default_value - the default value to return if key does not exist
Return Value
int
Notes
Example
4.11. Infinity Functions 265
EEex Documentation, Release 1.0
4.11.38 Infinity_GetListHeight
Returns the height of the sepcified UI List control
Infinity_GetListHeight(list_name)
Parameters
• string list_name - name of the UI List control
Return Value
Returns an integer value of the specified list’s height
Notes
Example
Get the height of the worldPlayerDialogChoicesList list in UI.MENU:
local choicesHeight = Infinity_GetListHeight('worldPlayerDialogChoicesList')
4.11.39 Infinity_GetMaxChapterPage
Returns the chapter number that the game campaign is at currently
Infinity_GetMaxChapterPage()
Return Value
Returns an integer containing the current chapter number
Notes
Returns the value of the CHAPTER token. Calls the CVariableHash::FindKey method and reads offset 0x28 ofCVariable: CVariable.m_cAreaVariable => CAreaVariable.m_intValue, and pushes that value to the lua stack.
Example
Used in the JOURNAL menu in UI.MENU to update the current chapter number:
menu{
name 'JOURNAL'align left topoffset 80 0ignoreEscenabled "sidebarsGreyed ~= 1"onopen "
reinitQuests()buildQuestDisplay()chapter = math.max(0,Infinity_GetMaxChapterPage());
266 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.11.40 Infinity_GetMaxGroundPage
Returns maximum ground pages
Infinity_GetMaxGroundPage()
Return Value
Returns an integer value of the maximum ground pages
Notes
A ground page is a series of inventory slots representing ground items available to pick up or empty slots for items tobe dropped into.
Ground pages are used to scroll through the groupings of those ground based inventory slots. See also Infin-ity_GetCurrentGroundPage and Infinity_GetGroundItemDescription
Calls the CScreenInventory::GetMaxGroundPage method and pushed the value to the lua stack.
Example
local maxPages = Infinity_GetMaxGroundPage()
4.11.41 Infinity_GetMenuArea
Returns the bounding rectangle (area) for the specified UI Menu name
Infinity_GetMenuArea(menu_name)
Parameters
• string menu_name - name of the UI Menu to return the bounding rectangle for
Return Value
Returns as integer values: x, y, w, h - x coordinate, y coordinate, width and height of rectangle
Notes
Example
Get the area of the JOURNAL menu:
local offsetX,offsetY,menuWidth,menuHeight = Infinity_GetMenuArea('JOURNAL')
4.11.42 Infinity_GetMenuItemByName
Returns the UI menu item that has the specified name
Infinity_GetMenuItemByName(item_name)
Parameters
• string item_name - name of the menu item
4.11. Infinity Functions 267
EEex Documentation, Release 1.0
Return Value
Returns userdata version of the menu item (a pointer to the uiItem structure of the matched UI control or a lua NIL)
Notes
Example
MenuItem_InvSlot1 = Infinity_GetMenuItemByName("slot_inv_1")
4.11.43 Infinity_GetMousePosition
Returns mouse position
Infinity_GetMousePosition()
Return Value
Returns as integer x,y = x coordinate and y cooordinate of mouse position
Notes
Example
x,y = Infinity_GetMousePosition();
4.11.44 Infinity_GetNumCharacters
Returns total number of characters currently in the party
Infinity_GetNumCharacters()
Return Value
Returns an integer value of the number of characters in the party
Notes
Example
From UI.MENU - enable a portrait button for the 4th character, if there is greater than 3 characters in the party:
button{
area 11 290 64 90portrait 3bam GUIRSP10enabled "Infinity_GetNumCharacters() > 3"
268 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.11.45 Infinity_GetOffset
Get the position of a menu on the screen
Infinity_GetOffset(menu_name)
Parameters
• string menu_name - name of the menu to return the position for
Return Value
Returns as integer values: x,y - x coordinate and y coordinate of the menu position
Notes
Example
Infinity_GetOffset("JOURNAL")
4.11.46 Infinity_GetOption
Get the value of an option in a panel
Infinity_GetOption(option_id,panel_id)
Parameters
• integer option_id - id of the option to get value for
• integer panel_id - id of the panel
Return Value
Returns an integer value of the option id specified: option_id in panel_id
Notes
See also Infinity_ChangeOption
Example
Get the value of option id 1 in panel id 8 (panelID = 8) to a variable ttDelaySLDR and then set option id 1 inpanel id 8 (panelID = 8) to the value of the ttDelaySLDR variable
panelID = 8ttDelaySLDR = Infinity_GetOption(1, panelID)Infinity_ChangeOption( 1, ttDelaySLDR, panelID)
4.11.47 Infinity_GetPasswordRequired
Updates the passwordReq lua variable with the password requirement
Infinity_GetPasswordRequired(id)
Parameters
4.11. Infinity Functions 269
EEex Documentation, Release 1.0
• integer id - 1 based index of the mp_sessions array entry to update
Returns
Special, see notes
Notes
Updates an existing multidimensional array named mp_sessions defined in the EE game executable and an existinglua variable passwordReq.
passwordReq is defined in ‘‘UI.MENU‘‘as:
passwordReq = 0
Each entry in mp_sessions has the following elements:
• description
• flags
• max_players
• players
• port
• name
• password
After the mp_sessions array has been updated, the flags value (which contains amongst other things the pass-word requirement) is placed into the passwordReq lua variable as a boolean value: 1 true or 0 false.
Example
The gameHasPassword function from UI.MENU:
function gameHasPassword(slot)if(mp_sessions[mp_shownSessions[slot]["actualIndex"]] == nil) then
--if the session isn't loaded don't show anything.return ""
endInfinity_GetPasswordRequired(mp_shownSessions[slot]["actualIndex"])if passwordReq ~= 0 then
ret = t("YES")else
ret = t("NO")endreturn ret
end
4.11.48 Infinity_GetPortraitTooltip
Returns a string containing the tooltip for a specified portrait index
Infinity_GetPortraitTooltip(index)
Parameters
• integer index - a 0 based index of the portrait to return the tooltip text for
270 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Return Value
Returns a string containing the tooltip for a specified portrait index
Notes
Example
Get tooltip for portrait of character 1:
char1tooltip = Infinity_GetPortraitTooltip(0)
4.11.49 Infinity_GetScreenSize
Returns the width and height of the screen - the screen resolution
Infinity_GetScreenSize()
Return Value
Returns as integer: w, h - width and height
Notes
Example
local screenWidth, screenHeight = Infinity_GetScreenSize()
4.11.50 Infinity_GetScriptVarInt
Returns the value of a script variable as an integer
Infinity_GetScriptVarInt(ScriptVar)
Parameters
• string ScriptVar - the script variable to return the value of
Return Value
Returns the value of a script variable as an integer
Notes
Calls the CVariableHash::FindKey method.
Example
No known example
4.11.51 Infinity_GetScrollIdentifyEnabled
Determines if the specified item requires identification, and can be identified via an Indentify scroll
4.11. Infinity Functions 271
EEex Documentation, Release 1.0
Infinity_GetScrollIdentifyEnabled(item_id)
Parameters
• integer item_id - item id
Return Value
Returns a boolean value: 1 true, or 0 false
Notes
Calls the CScreenInventory::GetScrollIdentifyEnabled method.
See also Infinity_GetSpellIdentifyEnabled
Example
The Indentify via a scroll button is enabled if the item requires identification (and there is an Identify scroll in thecharacter’s possession). Defined in UI.MENU as:
button{
area 52 214 302 44bam GUIOSTCLtext style "button"text "SCROLL_BUTTON"
clickable lua "Infinity_GetScrollIdentifyEnabled(characters[id].→˓equipment[selectedSlot].id)"
action"
Infinity_OnScrollIdentify(characters[id].equipment[selectedSlot].id)Infinity_PopMenu()itemDesc.item = characters[id].equipment[selectedSlot].item --update itemDesc
→˓item"
}
4.11.52 Infinity_GetSelectedCharacterName
Returns a string containing the currently selected character’s name
Infinity_GetSelectedCharacterName()
Return Value
Returns a string containing the currently selected character’s name
Notes
Example
Set a label UI control’s text with the current characters name:
label{
area 467 116 250 30
(continues on next page)
272 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
(continued from previous page)
text lua "Infinity_GetSelectedCharacterName()"text style "label"align left center
}
4.11.53 Infinity_GetSpellIdentifyEnabled
Determines if the specified item requires identification, and can be identified via an Indentify spell (or a magical itemthat can cast an Identify spell)
Infinity_GetSpellIdentifyEnabled(item_id)
Parameters
• string item_id - item id
Return Value
Returns a boolean value: 1 true, or 0 false
Notes
Calls the CScreenInventory::GetSpellIdentifyEnabled method.
See also Infinity_GetScrollIdentifyEnabled
Example
The Indentify via a spell button is enabled if the item requires identification (and there is an Identify spell in thecharacter’s possession). Defined in UI.MENU as:
button{
area 52 258 302 44bam GUIOSTCLtext style "button"text "SPELL_BUTTON"
clickable lua "Infinity_GetSpellIdentifyEnabled(characters[id].→˓equipment[selectedSlot].id)"
action"
Infinity_OnSpellIdentify(characters[id].equipment[selectedSlot].id);Infinity_PopMenu()itemDesc.item = characters[id].equipment[selectedSlot].item --update itemDesc
→˓item"
}
4.11.54 Infinity_GetTimeString
Returns a formatted date and time string
4.11. Infinity Functions 273
EEex Documentation, Release 1.0
Infinity_GetTimeString()
Return Value
Returns a string containing the date and time - a timestamp
Notes
Calls the CTimerWorld::GetCurrentTimeString method.
Example
Editing a journal entry will automatically place a date time value, defined in UI.MENU as:
label{
enabled "journalMode == const.JOURNAL_MODE_EDIT"area 58 144 382 42text style "label"text color 0 120 0 255text lua "Infinity_GetTimeString()"
}
4.11.55 Infinity_GetTransitionInProgress
Returns the transition value
Infinity_GetTransitionInProgress()
Parameters
None
Return Value
Pushes the transition variable value to the lua stack
Notes
transition variable located at offset 0x00986720 in BG2EE
transition variable value set in Infinity_TransitionMenu, drawTop, and eventMenu functions
Example
No known examples
4.11.56 Infinity_GetUseButtonText
Returns “Use x” button text of an item name for an item specified
Infinity_GetUseButtonText(item_id,mode)
Parameters
• integer item_id - item id
274 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• integer mode - mode
Return Value
Returns a string containing the “Use x” of the item specified
Notes
Calls the CScreenInventory::GetUseButtonText method
Example
4.11.57 Infinity_GooglePlaySignedIn
Determines if signed into Google Play
Infinity_GooglePlaySignedIn()
Return Value
Returns an integer value representing 1 true, or 0 false otherwise
Notes
Calls the CPlatform::IsPlatformServiceConnected function
Reads CChitin.cSteam => CSteam.m_isSteamConnected
On builds that are not android returns false
Example
A Google Play sign in/out button from UI.MENU:
function getGooglePlaySignInText()if(Infinity_GooglePlaySignedIn() == 1) then
return t("SIGN_OUT_BUTTON")else
return t("SIGN_IN_BUTTON")end
end
4.11.58 Infinity_HighlightJournalButton
Unknown purpose
Infinity_HighlightJournalButton()
Notes
Returns 0 false
Called from highlightJournalButton function in UTIL.LUA
Example
See highlightJournalButton function in UTIL.LUA
4.11. Infinity Functions 275
EEex Documentation, Release 1.0
Unknown purpose
4.11.59 Infinity_HoverMouseOver
Moves where your mouse cursor is in the game world
Infinity_HoverMouseOver(x,y)
Parameters
• integer x - x coordinate to click world at
• integer y - y coordinate to click world at
Return Value
None
Notes
It doesn’t actaully move the mouse cursor, but the game engine thinks it does.
Infinity_HoverMouseOver will instantly move your mouse into the game world, but it won’t move to the proper x,yfor one frame (I think?).
If you don’t include Infinity_HoverMouseOver before Infinity_ClickWorldAt, it will click at world coordinates 0, 0 byassuming your cursor is over the interface.
You can force a click in the game world like so:
Infinity_HoverMouseOver(x,y)Infinity_ClickWorldAt(x,y)
Example
Infinity_HoverMouseOver(100,200)
4.11.60 Infinity_HoverMouseOverObject
Activate AI script file for object that mouse is hovering over (?) - not tested/verified
Infinity_HoverMouseOverObject(objectname)
Parameters
• string objectname - name of the object
Return Value
??? - Unknown
Notes
Calls the CAIScriptFile::CAIScriptFile method
Example
No known examples
276 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.11.61 Infinity_InstanceAnimation
Creates a temporary single instance animation of a bam, based on the UI template provided. Once the animation hasfinished, the UI control that was created and based on the UI template provided, is no longer present or visible.
Infinity_InstanceAnimation(Template,BamResRef,x,y,w,h,list,list_index)
Parameters
• string Template - UI template name
• string BamResRef - resource reference of bam to show/animate
• integer x - left position
• integer y - top position
• integer w - width
• integer h - height
• string list - list/array
• integer list_index - 1 based index of entry in list
Notes
As defined in UI.MENU on memorizing a spell: is set to play the default GAM_24.WAV sound and to play theFLASHBR.BAM animation.
Example
Shows sparkle as user clicks on mage spell to memorize:
:: Infinity_InstanceAnimation(“TEMPLATE_mageMemorizationSparkle”,”FLASHBR”,x,y,w,h,fromList,listIndex)
4.11.62 Infinity_IsItemEnabled
Infinity_IsItemEnabled(???)
Parameters
???
Return Value
???
Notes
Example
4.11. Infinity Functions 277
EEex Documentation, Release 1.0
4.11.63 Infinity_IsMenuOnStack
Infinity_IsMenuOnStack(menu_name)
Parameters
• menu_name -
Return Value
bool
Notes
Example
4.11.64 Infinity_IsPlayerMoving
Infinity_IsPlayerMoving(???)
Parameters
???
Return Value
???
Notes
Example
4.11.65 Infinity_JoinMultiplayerGame
Infinity_JoinMultiplayerGame(id)
Notes
Example
4.11.66 Infinity_LaunchURL
Infinity_LaunchURL(???)
Parameters
???
Return Value
???
Notes
278 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Example
4.11.67 Infinity_LevelUp
Opens level up dialog
Infinity_LevelUp()
Parameters
None
Return Value
None
Notes
Calls CScreenCharacter::OnLevelUpButtonClick to open the level up dialog.
Unknown if calling this will work without specifying a character like Infinity_ActivateRecord does.
Example
No known examples
4.11.68 Infinity_Log
Infinity_Log(msg)
Parameters
• msg -
Notes
Example
4.11.69 Infinity_LookAtObjectInWorld
Infinity_LookAtObjectInWorld(???)
Parameters
???
Return Value
???
Notes
Example
4.11. Infinity Functions 279
EEex Documentation, Release 1.0
4.11.70 Infinity_LuaConsoleInput
Infinity_LuaConsoleInput(???,???)
Parameters
• ??? -
• ??? -
Notes
Example
4.11.71 Infinity_OnAddUserEntry
Infinity_OnAddUserEntry(string)
Parameters
• string -
Notes
Example
4.11.72 Infinity_OnCharacterImportItemSelect
Infinity_OnCharacterImportItemSelect(table_index)
Parameters
• table_index -
Notes
Example
4.11.73 Infinity_OnCharacterItemSelect
Infinity_OnCharacterItemSelect(table_index)
Parameters
• table_index -
Notes
Example
280 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.11.74 Infinity_OnEditUserEntry
Infinity_OnEditUserEntry(string1,string2)
Parameters
• string1 -
• string2 -
Return Value
???
Notes
Example
4.11.75 Infinity_OnGroundPage
Infinity_OnGroundPage(increment)
Parameters
• increment -
Notes
Example
4.11.76 Infinity_OnPortraitDblClick
Event action when mouse double clicks a character portrait
Infinity_OnPortraitDblClick(index)
Parameters
• index - index of portrait being double clicked
Notes
Example
4.11.77 Infinity_OnPortraitItemSelect
Event action when character portrait is selected
Infinity_OnPortraitItemSelect(???)
4.11. Infinity Functions 281
EEex Documentation, Release 1.0
Parameters
???
Return Value
???
Notes
Example
4.11.78 Infinity_OnPortraitLClick
Event action when mouse left clicks a character portrait
Infinity_OnPortraitLClick(index)
Parameters
• index - index of portrait being clicked
Notes
Example
4.11.79 Infinity_OnPortraitRClick
Event action when mouse right clicks a character portrait
Infinity_OnPortraitRClick(index)
Parameters
• index - index of portrait being clicked
Notes
Example
4.11.80 Infinity_OnRemoveUserEntry
Infinity_OnRemoveUserEntry(string)
Parameters
• string -
Notes
Example
282 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.11.81 Infinity_OnRest
Infinity_OnRest(???)
Parameters
???
Return Value
???
Notes
Example
4.11.82 Infinity_OnScriptItemSelect
Infinity_OnScriptItemSelect(table_index)
Parameters
• table_index -
Notes
Example
4.11.83 Infinity_OnScrollIdentify
Event action when a scroll identifies an item
Infinity_OnScrollIdentify(item_id)
Parameters
• integer item_id - id of the item being identified
Notes
Example
4.11.84 Infinity_OnSoundItemSelect
Infinity_OnSoundItemSelect(table_index)
Parameters
• table_index -
Notes
Example
4.11. Infinity Functions 283
EEex Documentation, Release 1.0
4.11.85 Infinity_OnSpellIdentify
Event action when a spell identifies an item
Infinity_OnSpellIdentify(item_id)
Parameters
• integer item_id - id of the item being identified
Return Value
Notes
Example
4.11.86 Infinity_OnUseButtonClick
Infinity_OnUseButtonClick(item_id,mode)
Parameters
• integer item_id -
• mode -
Notes
Example
4.11.87 Infinity_OpenInventoryContainer
Infinity_OpenInventoryContainer(resref)
Parameters
• resref* - resource reference of the container being opened
Notes
Example
4.11.88 Infinity_PlayMovie
Plays a movie (a WebM file format)
Infinity_PlayMovie(movie_name,element_name)
Parameters
• movie_name - resource reference of the movie to play
• element_name -
284 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Notes
Example
4.11.89 Infinity_PlaySound
Plays a sound
Infinity_PlaySound(resref)
Parameters
• resref* - resource reference of the sound to play
Notes
Example
4.11.90 Infinity_PopMenu
Infinity_PopMenu(menu_name)
Parameters
• menu_name -
Notes
Example
4.11.91 Infinity_PressKeyboardButton
Infinity_PressKeyboardButton(???)
Parameters
(???)
Return Value
(???)
Notes
Example
4.11.92 Infinity_PushMenu
4.11. Infinity Functions 285
EEex Documentation, Release 1.0
Infinity_PushMenu(menu_name)
Parameters
• menu_name -
Notes
Example
4.11.93 Infinity_RandomNumber
Returns an random number
Infinity_RandomNumber(min,range)
Parameters
• min - minimum value of random number
• range - maximum value of random number
Return Value
int
Notes
Example
4.11.94 Infinity_RemoveINIEntry
Removes an ini section key value
Infinity_RemoveINIEntry(section_name,value_name)
Parameters
• section_name* - ini section name
• value_name* - key in the ini section to remove
Notes
Example
286 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.11.95 Infinity_RequestMultiplayerGameDetails
Infinity_RequestMultiplayerGameDetails(???)
Parameters
???
Return Value
???
Notes
Example
4.11.96 Infinity_ScaleToText
Infinity_ScaleToText(element_name)
Parameters
• element_name -
Notes
Example
4.11.97 Infinity_ScrollLists
Infinity_ScrollLists(???)
Parameters
???
Return Value
???
Notes
Example
4.11.98 Infinity_SelectDialogueOption
Infinity_SelectDialogueOption(???)
4.11. Infinity Functions 287
EEex Documentation, Release 1.0
Parameters
???
Return Value
???
Notes
Example
4.11.99 Infinity_SelectItemAbility
Infinity_SelectItemAbility(ability_index,item_num,item_id)
Parameters
• ability_index -
• item_num -
• integer item_id -
Notes
Example
4.11.100 Infinity_SelectListItem
Infinity_SelectListItem(???)
Parameters
???
Return Value
???
Notes
Example
4.11.101 Infinity_SendChatMessage
Infinity_SendChatMessage(msg,boolean)
Parameters
• msg -
• boolean -
288 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Notes
Example
4.11.102 Infinity_SetArea
Infinity_SetArea(element_name,x,y,w,h)
Parameters
• element_name -
• x -
• y -
• w -
• h -
Return Value
???
Notes
Example
4.11.103 Infinity_SetBackground
Infinity_SetBackground(menu_name)
Parameters
• menu_name -
Notes
Example
4.11.104 Infinity_SetCloudEnabled
Infinity_SetCloudEnabled(???)
Parameters
???
Return Value
???
Notes
Example
4.11. Infinity Functions 289
EEex Documentation, Release 1.0
4.11.105 Infinity_SetGooglePlaySigninState
Infinity_SetGooglePlaySigninState(???)
Parameters
???
Return Value
???
Notes
Example
4.11.106 Infinity_SetHairColor
Infinity_SetHairColor(index)
Parameters
• index -
Notes
Example
4.11.107 Infinity_SetHighlightColors
Set a color or color gradient for UI elements in the options dialogs that are currently selected
Infinity_SetHighlightColors(lr,lg,lb,la,cr,cg,cb,ca,rr,rg,rb,ra)
Parameters
• hexidecimal lr - left color: the intensity of the red color channel
• hexidecimal lg - left color: the intensity of the green color channel
• hexidecimal lb - left color: the intensity of the blue color channel
• hexidecimal la - left color: the transparency level of the alpha channel
• hexidecimal cr - center color: the intensity of the red color channel
• hexidecimal cg - center color: the intensity of the green color channel
• hexidecimal cb - center color: the intensity of the blue color channel
• hexidecimal ca - center color: the transparency level of the alpha channel
• hexidecimal rr - right color: the intensity of the red color channel
• hexidecimal rg - right color: the intensity of the green color channel
• hexidecimal rb - right color: the intensity of the blue color channel
• hexidecimal ra - right color: the transparency level of the alpha channel
290 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Notes
User three color definitions: left, center and right
Parameters use hexidecimal values (prefixed with 0x) for each color color and the alpha channel level
Example
Infinity_SetHighlightColors(0x7F,0x00,0x7F,0xff, 0x00,0x7F,0x00,0xff, 0x00,0x00,0x7F,0xff)
4.11.108 Infinity_SetINIValue
Sets a value of an ini section key
Infinity_SetINIValue(section_name,value_name,value)
Parameters
• string section_name - ini section to set the key value for
• string value_name - the key in the ini section to set the value for
• string value - the new value of the key
Notes
Example
Set the Player Name key in Multiplayer section to the value of the variableconnectionPlayerNameEdit
if connectionPlayerNameEdit == "" thenconnectionPlayerNameEdit = Infinity_GetINIString('Multiplayer', 'Player Name',
→˓player)Infinity_SetINIValue('Multiplayer', 'Player Name', connectionPlayerNameEdit)
end
4.11.109 Infinity_SetKey
Sets key in C++ memory
Infinity_SetKey(value,type)
Parameters
• value -
• type -
Notes
Example
4.11. Infinity Functions 291
EEex Documentation, Release 1.0
4.11.110 Infinity_SetLanguage
Infinity_SetLanguage(lang_id,showSubTitles)
Parameters
• lang_id -
• showSubTitles -
Notes
Example
4.11.111 Infinity_SetMajorColor
Infinity_SetMajorColor(index)
Parameters
• index -
Notes
Example
4.11.112 Infinity_SetMinorColor
Infinity_SetMinorColor(index)
Parameters
• index -
Notes
Example
4.11.113 Infinity_SetOffset
Infinity_SetOffset(menu_name,x,y)
Parameters
• menu_name -
• x -
• y -
292 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Return Value
???
Notes
Example
4.11.114 Infinity_SetOverlay
Infinity_SetOverlay(menu_name)
Parameters
• menu_name -
Notes
Example
4.11.115 Infinity_SetScreenSize
Infinity_SetScreenSize(w,h)
Parameters
• w -
• h -
Notes
Example
4.11.116 Infinity_SetScrollTop
Infinity_SetScrollTop(???)
Parameters
???
Return Value
???
Notes
Example
4.11. Infinity Functions 293
EEex Documentation, Release 1.0
4.11.117 Infinity_SetSkinColor
Infinity_SetSkinColor(index)
Parameters
• index -
Notes
Example
4.11.118 Infinity_SetToken
Infinity_SetToken(token_name,value)
Parameters
• token_name -
• value -
Notes
Example
4.11.119 Infinity_ShutdownGame
Infinity_ShutdownGame()
Notes
Example
4.11.120 Infinity_SignInOutButtonEnabled
Infinity_SignInOutButtonEnabled(???)
Parameters
???
Return Value
???
Notes
Example
294 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.11.121 Infinity_SplitItemStack
Infinity_SplitItemStack(item_id,count,slot_name)
Parameters
• integer item_id -
• count -
• slot_name -
Return Value
Notes
Example
4.11.122 Infinity_StartItemCapture
Infinity_StartItemCapture(map_name)
Parameters
• map_name -
Notes
Example
4.11.123 Infinity_StartKeybind
Infinity_StartKeybind(action)
Parameters
• action -
Notes
Example
4.11.124 Infinity_StopItemCapture
Infinity_StopItemCapture(map_name)
Parameters
• map_name -
Notes
Example
4.11. Infinity Functions 295
EEex Documentation, Release 1.0
4.11.125 Infinity_StopKeybind
Infinity_StopKeybind()
Notes
Example
4.11.126 Infinity_StopMovie
Infinity_StopMovie(element_name)
Parameters
• element_name -
Notes
Example
4.11.127 Infinity_SwapSlot
Infinity_SwapSlot(???)
Parameters
???
Return Value
???
Notes
Example
4.11.128 Infinity_SwapWithAppearance
Infinity_SwapWithAppearance()
Notes
Example
4.11.129 Infinity_SwapWithPortrait
296 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Infinity_SwapWithPortrait(index)
Parameters
• index -
Notes
Example
4.11.130 Infinity_TakeScreenshot
Infinity_TakeScreenshot()
Notes
Example
4.11.131 Infinity_TextEditHasFocus
Infinity_TextEditHasFocus()
Return Value
bool
Notes
Example
4.11.132 Infinity_TransitionMenu
Infinity_TransitionMenu(menu_name)
Parameters
• menu_name -
Notes
Example
4.11.133 Infinity_UpdateCharacterRecordExportPanel
Infinity_UpdateCharacterRecordExportPanel()
Notes
Example
4.11. Infinity Functions 297
EEex Documentation, Release 1.0
4.11.134 Infinity_UpdateCloudSaveState
Infinity_UpdateCloudSaveState()
Notes
Example
4.11.135 Infinity_UpdateInventoryRequesterPanel
Infinity_UpdateInventoryRequesterPanel(???)
Parameters
???
Return Value
???
Notes
Example
4.11.136 Infinity_UpdateLuaStats
Infinity_UpdateLuaStats()
Notes
Example
4.11.137 Infinity_UpdateStoreMainPanel
Infinity_UpdateStoreMainPanel(???)
Parameters
???
Return Value
???
Notes
Example
298 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.11.138 Infinity_UpdateStoreRequesterPanel
Infinity_UpdateStoreRequesterPanel(???)
Parameters
???
Return Value
???
Notes
Example
4.11.139 Infinity_WriteINILine
Write a line of text to an ini file
Infinity_WriteINILine(file_handle,string)
Parameters
• file_handle -
• string - text to write out to ini file
Notes
Example
4.12 inventoryScreen Functions
4.12.1 inventoryScreen:IsMultiPlayerViewable
inventoryScreen:IsMultiPlayerViewable()
Parameters
• **
• **
• **
Returns
Notes
Example
inventoryScreen:IsMultiPlayerViewable()
See Also
:ref:, :ref:
4.12. inventoryScreen Functions 299
EEex Documentation, Release 1.0
4.12.2 inventoryScreen:IsSpriteOrderable
inventoryScreen:IsSpriteOrderable()
Parameters
• **
• **
• **
Returns
Notes
Example
inventoryScreen:IsSpriteOrderable()
See Also
:ref:, :ref:
Function DescriptioninventoryScreen:IsMultiPlayerViewableinventoryScreen:IsSpriteOrderable
e = g_pBaldurChitininventoryScreen = e:GetEngineInventory()
4.13 journalScreen Functions
e = g_pBaldurChitinjournalScreen = e:GetEngineJournal()
4.14 loadScreen Functions
4.14.1 loadScreen:DeleteGame
loadScreen:DeleteGame()
Parameters
• **
• **
• **
Returns
Notes
Example
300 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
loadScreen:DeleteGame()
See Also
:ref:, :ref:
4.14.2 loadScreen:LoadGame
loadScreen:LoadGame()
Parameters
• **
• **
• **
Returns
Notes
Example
loadScreen:LoadGame()
See Also
:ref:, :ref:
4.14.3 loadScreen:OnMainCancelButtonClick
loadScreen:OnMainCancelButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
loadScreen:OnMainCancelButtonClick()
See Also
:ref:, :ref:
Function DescriptionloadScreen:DeleteGameloadScreen:LoadGameloadScreen:OnMainCancelButtonClick
4.14. loadScreen Functions 301
EEex Documentation, Release 1.0
e = g_pBaldurChitinloadScreen = e:GetEngineLoad()
4.15 mageScreen Functions
4.15.1 mageScreen:CancelSequencingSpells
mageScreen:CancelSequencingSpells()
Parameters
• **
• **
• **
Returns
Notes
Example
mageScreen:CancelSequencingSpells()
See Also
:ref:, :ref:
4.15.2 mageScreen:DoneSequencingSpells
mageScreen:DoneSequencingSpells()
Parameters
• **
• **
• **
Returns
Notes
Example
mageScreen:DoneSequencingSpells()
See Also
:ref:, :ref:
302 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.15.3 mageScreen:EraseKnownSpell
mageScreen:EraseKnownSpell()
Parameters
• **
• **
• **
Returns
Notes
Example
mageScreen:EraseKnownSpell()
See Also
:ref:, :ref:
4.15.4 mageScreen:GetSpellLevel
mageScreen:GetSpellLevel()
Parameters
• **
• **
• **
Returns
Notes
Example
mageScreen:GetSpellLevel()
See Also
:ref:, :ref:
4.15.5 mageScreen:MemorizeSpell
mageScreen:MemorizeSpell()
Parameters
• **
• **
• **
4.15. mageScreen Functions 303
EEex Documentation, Release 1.0
Returns
Notes
Example
mageScreen:MemorizeSpell()
See Also
:ref:, :ref:
4.15.6 mageScreen:OnDispellButtonClick
mageScreen:OnDispellButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
mageScreen:OnDispellButtonClick()
See Also
:ref:, :ref:
4.15.7 mageScreen:SequenceSpell
mageScreen:SequenceSpell()
Parameters
• **
• **
• **
Returns
Notes
Example
mageScreen:SequenceSpell()
See Also
:ref:, :ref:
304 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.15.8 mageScreen:SetSpellLevel
mageScreen:SetSpellLevel()
Parameters
• **
• **
• **
Returns
Notes
Example
mageScreen:SetSpellLevel()
See Also
:ref:, :ref:
4.15.9 mageScreen:SpellAllowedForContingency
mageScreen:SpellAllowedForContingency()
Parameters
• **
• **
• **
Returns
Notes
Example
mageScreen:SpellAllowedForContingency()
See Also
:ref:, :ref:
4.15.10 mageScreen:SpellSwappedInContingency
mageScreen:SpellSwappedInContingency()
Parameters
• **
• **
• **
4.15. mageScreen Functions 305
EEex Documentation, Release 1.0
Returns
Notes
Example
mageScreen:SpellSwappedInContingency()
See Also
:ref:, :ref:
4.15.11 mageScreen:UnSequenceSpell
mageScreen:UnSequenceSpell()
Parameters
• **
• **
• **
Returns
Notes
Example
mageScreen:UnSequenceSpell()
See Also
:ref:, :ref:
4.15.12 mageScreen:UnmemorizeSpell
mageScreen:UnmemorizeSpell()
Parameters
• **
• **
• **
Returns
Notes
Example
mageScreen:UnmemorizeSpell()
See Also
:ref:, :ref:
306 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Function DescriptionmageScreen:CancelSequencingSpellsmageScreen:DoneSequencingSpellsmageScreen:EraseKnownSpellmageScreen:GetSpellLevelmageScreen:MemorizeSpellmageScreen:OnDispellButtonClickmageScreen:SequenceSpellmageScreen:SetSpellLevelmageScreen:SpellAllowedForContingencymageScreen:SpellSwappedInContingencymageScreen:UnSequenceSpellmageScreen:UnmemorizeSpell
e = g_pBaldurChitinmageScreen = e:GetEngineWizSpell()
4.16 mapScreen Functions
4.16.1 mapScreen:DisplayExploredMap
mapScreen:DisplayExploredMap()
Parameters
• **
• **
• **
Returns
Notes
Example
mapScreen:DisplayExploredMap()
See Also
:ref:, :ref:
4.16.2 mapScreen:GetColorChoice
mapScreen:GetColorChoice()
Parameters
• **
• **
• **
4.16. mapScreen Functions 307
EEex Documentation, Release 1.0
Returns
Notes
Example
mapScreen:GetColorChoice()
See Also
:ref:, :ref:
4.16.3 mapScreen:IsNoteVisible
mapScreen:IsNoteVisible()
Parameters
• **
• **
• **
Returns
Notes
Example
mapScreen:IsNoteVisible()
See Also
:ref:, :ref:
4.16.4 mapScreen:OnColorChoice
mapScreen:OnColorChoice()
Parameters
• **
• **
• **
Returns
Notes
Example
mapScreen:OnColorChoice()
See Also
:ref:, :ref:
308 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.16.5 mapScreen:OnMapAddNote
mapScreen:OnMapAddNote()
Parameters
• **
• **
• **
Returns
Notes
Example
mapScreen:OnMapAddNote()
See Also
:ref:, :ref:
4.16.6 mapScreen:OnUserNoteClick
mapScreen:OnUserNoteClick()
Parameters
• **
• **
• **
Returns
Notes
Example
mapScreen:OnUserNoteClick()
See Also
:ref:, :ref:
4.16.7 mapScreen:OnUserNoteDeleteButtonClick
mapScreen:OnUserNoteDeleteButtonClick()
Parameters
• **
• **
• **
4.16. mapScreen Functions 309
EEex Documentation, Release 1.0
Returns
Notes
Example
mapScreen:OnUserNoteDeleteButtonClick()
See Also
:ref:, :ref:
4.16.8 mapScreen:OnUserNoteDoneButtonClick
mapScreen:OnUserNoteDoneButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
mapScreen:OnUserNoteDoneButtonClick()
See Also
:ref:, :ref:
4.16.9 mapScreen:ToggleDisplayExploredMap
mapScreen:ToggleDisplayExploredMap()
Parameters
• **
• **
• **
Returns
Notes
Example
mapScreen:ToggleDisplayExploredMap()
See Also
:ref:, :ref:
310 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Function DescriptionmapScreen:DisplayExploredMapmapScreen:GetColorChoicemapScreen:IsNoteVisiblemapScreen:OnColorChoicemapScreen:OnMapAddNotemapScreen:OnUserNoteClickmapScreen:OnUserNoteDeleteButtonClickmapScreen:OnUserNoteDoneButtonClickmapScreen:ToggleDisplayExploredMap
e = g_pBaldurChitinmapScreen = e:GetEngineMap()
4.17 mixer Functions
4.17.1 mixer:StartSong
mixer:StartSong()
Parameters
• **
• **
• **
Returns
Notes
Example
mixer:StartSong()
See Also
:ref:, :ref:
Function Descriptionmixer:StartSong
e = g_pBaldurChitinmixer = e:GetSoundMixer()
4.17. mixer Functions 311
EEex Documentation, Release 1.0
4.18 moviesScreen Functions
4.18.1 moviesScreen:IsPlayButtonClickable
moviesScreen:IsPlayButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
moviesScreen:IsPlayButtonClickable()
See Also
:ref:, :ref:
4.18.2 moviesScreen:OnCreditsButtonClick
moviesScreen:OnCreditsButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
moviesScreen:OnCreditsButtonClick()
See Also
:ref:, :ref:
4.18.3 moviesScreen:OnDoneButtonClick
moviesScreen:OnDoneButtonClick()
Parameters
• **
• **
312 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• **
Returns
Notes
Example
moviesScreen:OnDoneButtonClick()
See Also
:ref:, :ref:
4.18.4 moviesScreen:OnMovieItemSelect
moviesScreen:OnMovieItemSelect()
Parameters
• **
• **
• **
Returns
Notes
Example
moviesScreen:OnMovieItemSelect()
See Also
:ref:, :ref:
4.18.5 moviesScreen:OnPlayButtonClick
moviesScreen:OnPlayButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
moviesScreen:OnPlayButtonClick()
4.18. moviesScreen Functions 313
EEex Documentation, Release 1.0
See Also
:ref:, :ref:
Function DescriptionmoviesScreen:IsPlayButtonClickablemoviesScreen:OnCreditsButtonClickmoviesScreen:OnDoneButtonClickmoviesScreen:OnMovieItemSelectmoviesScreen:OnPlayButtonClick
e = g_pBaldurChitinmoviesScreen = e:GetEngineMovies()
4.19 multiplayerScreen Functions
4.19.1 multiplayerScreen:GetEngineState
multiplayerScreen:GetEngineState()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:GetEngineState()
See Also
:ref:, :ref:
4.19.2 multiplayerScreen:KickPlayer
multiplayerScreen:KickPlayer()
Parameters
• **
• **
• **
Returns
Notes
Example
314 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
multiplayerScreen:KickPlayer()
See Also
:ref:, :ref:
4.19.3 multiplayerScreen:Logout
multiplayerScreen:Logout()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:Logout()
See Also
:ref:, :ref:
4.19.4 multiplayerScreen:ModifyCharacters
multiplayerScreen:ModifyCharacters()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:ModifyCharacters()
See Also
:ref:, :ref:
4.19.5 multiplayerScreen:OnCancelButtonClick
multiplayerScreen:OnCancelButtonClick()
4.19. multiplayerScreen Functions 315
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:OnCancelButtonClick()
See Also
:ref:, :ref:
4.19.6 multiplayerScreen:OnDoneButtonClick
multiplayerScreen:OnDoneButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:OnDoneButtonClick()
See Also
:ref:, :ref:
4.19.7 multiplayerScreen:OnKickPlayerButtonClick
multiplayerScreen:OnKickPlayerButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
316 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
multiplayerScreen:OnKickPlayerButtonClick()
See Also
:ref:, :ref:
4.19.8 multiplayerScreen:OnLogoutButtonClick
multiplayerScreen:OnLogoutButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:OnLogoutButtonClick()
See Also
:ref:, :ref:
4.19.9 multiplayerScreen:OnMainDoneButtonClick
multiplayerScreen:OnMainDoneButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:OnMainDoneButtonClick()
See Also
:ref:, :ref:
4.19.10 multiplayerScreen:OnModifyButtonClick
multiplayerScreen:OnModifyButtonClick()
4.19. multiplayerScreen Functions 317
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:OnModifyButtonClick()
See Also
:ref:, :ref:
4.19.11 multiplayerScreen:OnModifyCharacterDelete
multiplayerScreen:OnModifyCharacterDelete()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:OnModifyCharacterDelete()
See Also
:ref:, :ref:
4.19.12 multiplayerScreen:OnPermissionButtonClick
multiplayerScreen:OnPermissionButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
318 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
multiplayerScreen:OnPermissionButtonClick()
See Also
:ref:, :ref:
4.19.13 multiplayerScreen:OnPlayerSelection
multiplayerScreen:OnPlayerSelection()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:OnPlayerSelection()
See Also
:ref:, :ref:
4.19.14 multiplayerScreen:OnPortraitButtonClick
multiplayerScreen:OnPortraitButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:OnPortraitButtonClick()
See Also
:ref:, :ref:
4.19.15 multiplayerScreen:OnReadyButtonClick
multiplayerScreen:OnReadyButtonClick()
4.19. multiplayerScreen Functions 319
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:OnReadyButtonClick()
See Also
:ref:, :ref:
4.19.16 multiplayerScreen:SetCharacterSlot
multiplayerScreen:SetCharacterSlot()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:SetCharacterSlot()
See Also
:ref:, :ref:
4.19.17 multiplayerScreen:SetImportSetting
multiplayerScreen:SetImportSetting()
Parameters
• **
• **
• **
Returns
Notes
Example
320 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
multiplayerScreen:SetImportSetting()
See Also
:ref:, :ref:
4.19.18 multiplayerScreen:SetModifiedCharacterSlot
multiplayerScreen:SetModifiedCharacterSlot()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:SetModifiedCharacterSlot()
See Also
:ref:, :ref:
4.19.19 multiplayerScreen:ToggleAllowReformParty
multiplayerScreen:ToggleAllowReformParty()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:ToggleAllowReformParty()
See Also
:ref:, :ref:
4.19.20 multiplayerScreen:ToggleListenToJoin
multiplayerScreen:ToggleListenToJoin()
4.19. multiplayerScreen Functions 321
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:ToggleListenToJoin()
See Also
:ref:, :ref:
4.19.21 multiplayerScreen:UpdateModifyCharacterPanel
multiplayerScreen:UpdateModifyCharacterPanel()
Parameters
• **
• **
• **
Returns
Notes
Example
multiplayerScreen:UpdateModifyCharacterPanel()
See Also
:ref:, :ref:
322 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Function DescriptionmultiplayerScreen:GetEngineStatemultiplayerScreen:KickPlayermultiplayerScreen:LogoutmultiplayerScreen:ModifyCharactersmultiplayerScreen:OnCancelButtonClickmultiplayerScreen:OnDoneButtonClickmultiplayerScreen:OnKickPlayerButtonClickmultiplayerScreen:OnLogoutButtonClickmultiplayerScreen:OnMainDoneButtonClickmultiplayerScreen:OnModifyButtonClickmultiplayerScreen:OnModifyCharacterDeletemultiplayerScreen:OnPermissionButtonClickmultiplayerScreen:OnPlayerSelectionmultiplayerScreen:OnPortraitButtonClickmultiplayerScreen:OnReadyButtonClickmultiplayerScreen:SetCharacterSlotmultiplayerScreen:SetImportSettingmultiplayerScreen:SetModifiedCharacterSlotmultiplayerScreen:ToggleAllowReformPartymultiplayerScreen:ToggleListenToJoinmultiplayerScreen:UpdateModifyCharacterPanel
e = g_pBaldurChitinmultiplayerScreen = e:GetEngineMultiPlayer()
4.20 optionsScreen Functions
4.20.1 optionsScreen:LoadGame
optionsScreen:LoadGame()
Parameters
• **
• **
• **
Returns
Notes
Example
optionsScreen:LoadGame()
See Also
:ref:, :ref:
4.20. optionsScreen Functions 323
EEex Documentation, Release 1.0
4.20.2 optionsScreen:QuitGame
optionsScreen:QuitGame()
Parameters
• **
• **
• **
Returns
Notes
Example
optionsScreen:QuitGame()
See Also
:ref:, :ref:
4.20.3 optionsScreen:SaveGame
optionsScreen:SaveGame()
Parameters
• **
• **
• **
Returns
Notes
Example
optionsScreen:SaveGame()
See Also
:ref:, :ref:
4.20.4 optionsScreen:SetEngineState
optionsScreen:SetEngineState()
Parameters
• **
• **
• **
324 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
optionsScreen:SetEngineState()
See Also
:ref:, :ref:
Function DescriptionoptionsScreen:LoadGameoptionsScreen:QuitGameoptionsScreen:SaveGameoptionsScreen:SetEngineState
e = g_pBaldurChitinoptionsScreen = e:GetEngineOptions()
4.21 priestScreen Functions
4.21.1 priestScreen:GetSpellLevel
priestScreen:GetSpellLevel()
Parameters
• **
• **
• **
Returns
Notes
Example
priestScreen:GetSpellLevel()
See Also
:ref:, :ref:
4.21.2 priestScreen:MemorizeSpell
priestScreen:MemorizeSpell()
Parameters
• **
• **
4.21. priestScreen Functions 325
EEex Documentation, Release 1.0
• **
Returns
Notes
Example
priestScreen:MemorizeSpell()
See Also
:ref:, :ref:
4.21.3 priestScreen:SetSpellLevel
priestScreen:SetSpellLevel()
Parameters
• **
• **
• **
Returns
Notes
Example
priestScreen:SetSpellLevel()
See Also
:ref:, :ref:
4.21.4 priestScreen:UnmemorizeSpell
priestScreen:UnmemorizeSpell()
Parameters
• **
• **
• **
Returns
Notes
Example
priestScreen:UnmemorizeSpell()
326 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
See Also
:ref:, :ref:
Function DescriptionpriestScreen:GetSpellLevelpriestScreen:MemorizeSpellpriestScreen:SetSpellLevelpriestScreen:UnmemorizeSpell
e = g_pBaldurChitinpriestScreen = e:GetEnginePriestSpell()
4.22 projector Functions
4.22.1 projector:PlayMovie
projector:PlayMovie()
Parameters
• **
• **
• **
Returns
Notes
Example
projector:PlayMovie()
See Also
:ref:, :ref:
Function Descriptionprojector:PlayMovie
e = g_pBaldurChitinprojector = e:GetEngineProjector()
4.23 saveScreen Functions
4.23.1 saveScreen:DeleteGame
saveScreen:DeleteGame()
4.22. projector Functions 327
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
saveScreen:DeleteGame()
See Also
:ref:, :ref:
4.23.2 saveScreen:OnMainCancelButtonClick
saveScreen:OnMainCancelButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
saveScreen:OnMainCancelButtonClick()
See Also
:ref:, :ref:
4.23.3 saveScreen:RefreshGameSlots
saveScreen:RefreshGameSlots()
Parameters
• **
• **
• **
Returns
Notes
Example
328 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
saveScreen:RefreshGameSlots()
See Also
:ref:, :ref:
4.23.4 saveScreen:SaveGame
saveScreen:SaveGame()
Parameters
• **
• **
• **
Returns
Notes
Example
saveScreen:SaveGame()
See Also
:ref:, :ref:
Function DescriptionsaveScreen:DeleteGamesaveScreen:OnMainCancelButtonClicksaveScreen:RefreshGameSlotssaveScreen:SaveGame
e = g_pBaldurChitinsaveScreen = e:GetEngineSave()
4.24 startEngine Functions
4.24.1 startEngine:DismissChooseCampaignPopup
startEngine:DismissChooseCampaignPopup()
Parameters
• **
• **
• **
4.24. startEngine Functions 329
EEex Documentation, Release 1.0
Returns
Notes
Example
startEngine:DismissChooseCampaignPopup()
See Also
:ref:, :ref:
4.24.2 startEngine:GetCampaign
startEngine:GetCampaign()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:GetCampaign()
See Also
:ref:, :ref:
4.24.3 startEngine:GetEngineState
startEngine:GetEngineState()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:GetEngineState()
See Also
:ref:, :ref:
330 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.24.4 startEngine:HasGameToContinue
startEngine:HasGameToContinue()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:HasGameToContinue()
See Also
:ref:, :ref:
4.24.5 startEngine:OnCampaignButtonClick
startEngine:OnCampaignButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnCampaignButtonClick()
See Also
:ref:, :ref:
4.24.6 startEngine:OnContinueGame
startEngine:OnContinueGame()
Parameters
• **
• **
• **
4.24. startEngine Functions 331
EEex Documentation, Release 1.0
Returns
Notes
Example
startEngine:OnContinueGame()
See Also
:ref:, :ref:
4.24.7 startEngine:OnCreatePartyButtonClick
startEngine:OnCreatePartyButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnCreatePartyButtonClick()
See Also
:ref:, :ref:
4.24.8 startEngine:OnDLCImageClick
startEngine:OnDLCImageClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnDLCImageClick()
See Also
:ref:, :ref:
332 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.24.9 startEngine:OnImportCharacterButtonClick
startEngine:OnImportCharacterButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnImportCharacterButtonClick()
See Also
:ref:, :ref:
4.24.10 startEngine:OnLoadGameButtonClick
startEngine:OnLoadGameButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnLoadGameButtonClick()
See Also
:ref:, :ref:
4.24.11 startEngine:OnMultiPlayerButtonClick
startEngine:OnMultiPlayerButtonClick()
Parameters
• **
• **
• **
4.24. startEngine Functions 333
EEex Documentation, Release 1.0
Returns
Notes
Example
startEngine:OnMultiPlayerButtonClick()
See Also
:ref:, :ref:
4.24.12 startEngine_OnNewGameButtonClick
startEngine:OnNewGameButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnNewGameButtonClick()
See Also
:ref:, :ref:
4.24.13 startEngine:OnOptionsButtonClick
startEngine:OnOptionsButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnOptionsButtonClick()
See Also
:ref:, :ref:
334 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.24.14 startEngine_OnPreGenerateButtonClick
startEngine:OnPreGenerateButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnPreGenerateButtonClick()
See Also
:ref:, :ref:
4.24.15 startEngine_OnPregenSelectButtonClick
startEngine:OnPregenSelectButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnPregenSelectButtonClick()
See Also
:ref:, :ref:
4.24.16 startEngine_OnQuitButtonClick
startEngine:OnQuitButtonClick()
Parameters
• **
• **
• **
4.24. startEngine Functions 335
EEex Documentation, Release 1.0
Returns
Notes
Example
startEngine:OnQuitButtonClick()
See Also
:ref:, :ref:
4.24.17 startEngine_OnSoAButtonClick
startEngine:OnSoAButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnSoAButtonClick()
See Also
:ref:, :ref:
4.24.18 startEngine:OnTBPButtonClick
startEngine:OnTBPButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnTBPButtonClick()
See Also
:ref:, :ref:
336 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.24.19 startEngine:OnToBButtonClick
startEngine:OnToBButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnToBButtonClick()
See Also
:ref:, :ref:
4.24.20 startEngine:OnTutorialButtonClick
startEngine:OnTutorialButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
startEngine:OnTutorialButtonClick()
See Also
:ref:, :ref:
4.24.21 startEngine:SetEngineState
startEngine:SetEngineState()
Parameters
• **
• **
• **
4.24. startEngine Functions 337
EEex Documentation, Release 1.0
Returns
Notes
Example
startEngine:SetEngineState()
See Also
:ref:, :ref:
Note: The startEngine functions are related to the handling of the main title screen dialogs and buttons, includinggame options, game campaign, singleplayer, multiplayer, credits, etc
Function DescriptionstartEngine:DismissChooseCampaignPopupstartEngine:GetCampaignstartEngine:GetEngineStatestartEngine:HasGameToContinuestartEngine:OnCampaignButtonClickstartEngine:OnContinueGamestartEngine:OnCreatePartyButtonClickstartEngine:OnDLCImageClickstartEngine:OnImportCharacterButtonClickstartEngine:OnLoadGameButtonClickstartEngine:OnMultiPlayerButtonClickstartEngine:OnNewGameButtonClickstartEngine:OnOptionsButtonClickstartEngine:OnPreGenerateButtonClickstartEngine:OnPregenSelectButtonClickstartEngine:OnQuitButtonClickstartEngine:OnSoAButtonClickstartEngine:OnTBPButtonClickstartEngine:OnToBButtonClickstartEngine:OnTutorialButtonClickstartEngine:SetEngineState
e = g_pBaldurChitinstartEngine = e:GetEngineStart()
4.25 storeScreen Functions
4.25.1 storeScreen:GetGroupCost
storeScreen:GetGroupCost()
Parameters
• **
338 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
• **
• **
Returns
Notes
Example
storeScreen:GetGroupCost()
See Also
:ref:, :ref:
4.25.2 storeScreen:GetIdentifyCost
storeScreen:GetIdentifyCost()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:GetIdentifyCost()
See Also
:ref:, :ref:
4.25.3 storeScreen:GetMenuName
storeScreen:GetMenuName()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:GetMenuName()
See Also
:ref:, :ref:
4.25. storeScreen Functions 339
EEex Documentation, Release 1.0
4.25.4 storeScreen:GetPanelButtonEnabled
storeScreen:GetPanelButtonEnabled()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:GetPanelButtonEnabled()
See Also
:ref:, :ref:
4.25.5 storeScreen:GetPanelButtonId
storeScreen:GetPanelButtonId()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:GetPanelButtonId()
See Also
:ref:, :ref:
4.25.6 storeScreen:GetPanelButtonPanelId
storeScreen:GetPanelButtonPanelId()
Parameters
• **
• **
• **
340 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
storeScreen:GetPanelButtonPanelId()
See Also
:ref:, :ref:
4.25.7 storeScreen:GetPanelButtonSequence
storeScreen:GetPanelButtonSequence()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:GetPanelButtonSequence()
See Also
:ref:, :ref:
4.25.8 storeScreen:GetPanelButtonToolTip
storeScreen:GetPanelButtonToolTip()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:GetPanelButtonToolTip()
See Also
:ref:, :ref:
4.25. storeScreen Functions 341
EEex Documentation, Release 1.0
4.25.9 storeScreen:GetRoomCost
storeScreen:GetRoomCost()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:GetRoomCost()
See Also
:ref:, :ref:
4.25.10 storeScreen:GetRoomType
storeScreen:GetRoomType()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:GetRoomType()
See Also
:ref:, :ref:
4.25.11 storeScreen:GetSpellCost
storeScreen:GetSpellCost()
Parameters
• **
• **
• **
342 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
storeScreen:GetSpellCost()
See Also
:ref:, :ref:
4.25.12 storeScreen:GetStoreCost
storeScreen:GetStoreCost()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:GetStoreCost()
See Also
:ref:, :ref:
4.25.13 storeScreen:GetStoreName
storeScreen:GetStoreName()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:GetStoreName()
See Also
:ref:, :ref:
4.25. storeScreen Functions 343
EEex Documentation, Release 1.0
4.25.14 storeScreen:IsBuyItemButtonClickable
storeScreen:IsBuyItemButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsBuyItemButtonClickable()
See Also
:ref:, :ref:
4.25.15 storeScreen:IsBuySpellButtonClickable
storeScreen:IsBuySpellButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsBuySpellButtonClickable()
See Also
:ref:, :ref:
4.25.16 storeScreen:IsCloseBagButtonClickable
storeScreen:IsCloseBagButtonClickable()
Parameters
• **
• **
• **
344 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
storeScreen:IsCloseBagButtonClickable()
See Also
:ref:, :ref:
4.25.17 storeScreen:IsContainer
storeScreen:IsContainer()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsContainer()
See Also
:ref:, :ref:
4.25.18 storeScreen:IsDonateButtonClickable
storeScreen:IsDonateButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsDonateButtonClickable()
See Also
:ref:, :ref:
4.25. storeScreen Functions 345
EEex Documentation, Release 1.0
4.25.19 storeScreen:IsDoneButtonClickable
storeScreen:IsDoneButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsDoneButtonClickable()
See Also
:ref:, :ref:
4.25.20 storeScreen:IsIdentifyItemButtonClickable
storeScreen:IsIdentifyItemButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsIdentifyItemButtonClickable()
See Also
:ref:, :ref:
4.25.21 storeScreen:IsMainCancelButtonClickable
storeScreen:IsMainCancelButtonClickable()
Parameters
• **
• **
• **
346 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
storeScreen:IsMainCancelButtonClickable()
See Also
:ref:, :ref:
4.25.22 storeScreen:IsMainDoneButtonClickable
storeScreen:IsMainDoneButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsMainDoneButtonClickable()
See Also
:ref:, :ref:
4.25.23 storeScreen:IsRentRoomButtonClickable
storeScreen:IsRentRoomButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsRentRoomButtonClickable()
See Also
:ref:, :ref:
4.25. storeScreen Functions 347
EEex Documentation, Release 1.0
4.25.24 storeScreen:IsRoomTypeClickable
storeScreen:IsRoomTypeClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsRoomTypeClickable()
See Also
:ref:, :ref:
4.25.25 storeScreen:IsSellItemButtonClickable
storeScreen:IsSellItemButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsSellItemButtonClickable()
See Also
:ref:, :ref:
4.25.26 storeScreen:IsSpriteOrderable
storeScreen:IsSpriteOrderable()
Parameters
• **
• **
• **
348 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
storeScreen:IsSpriteOrderable()
See Also
:ref:, :ref:
4.25.27 storeScreen:IsStealEnabled
storeScreen:IsStealEnabled()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsStealEnabled()
See Also
:ref:, :ref:
4.25.28 storeScreen:IsStealItemButtonClickable
storeScreen:IsStealItemButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:IsStealItemButtonClickable()
See Also
:ref:, :ref:
4.25. storeScreen Functions 349
EEex Documentation, Release 1.0
4.25.29 storeScreen:OnBuyDrinkButtonClick
storeScreen:OnBuyDrinkButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:OnBuyDrinkButtonClick()
See Also
:ref:, :ref:
4.25.30 storeScreen:OnBuyItemButtonClick
storeScreen:OnBuyItemButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:OnBuyItemButtonClick()
See Also
:ref:, :ref:
4.25.31 storeScreen:OnBuySpellButtonClick
storeScreen:OnBuySpellButtonClick()
Parameters
• **
• **
• **
350 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
storeScreen:OnBuySpellButtonClick()
See Also
:ref:, :ref:
4.25.32 storeScreen:OnCloseBagButtonClick
storeScreen:OnCloseBagButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:OnCloseBagButtonClick()
See Also
:ref:, :ref:
4.25.33 storeScreen:OnDonateButtonClick
storeScreen:OnDonateButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:OnDonateButtonClick()
See Also
:ref:, :ref:
4.25. storeScreen Functions 351
EEex Documentation, Release 1.0
4.25.34 storeScreen:OnIdentifyItemButtonClick
storeScreen:OnIdentifyItemButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:OnIdentifyItemButtonClick()
See Also
:ref:, :ref:
4.25.35 storeScreen:OnMainDoneButtonClick
storeScreen:OnMainDoneButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:OnMainDoneButtonClick()
See Also
:ref:, :ref:
4.25.36 storeScreen:OnRentRoomButtonClick
storeScreen:OnRentRoomButtonClick()
Parameters
• **
• **
• **
352 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
storeScreen:OnRentRoomButtonClick()
See Also
:ref:, :ref:
4.25.37 storeScreen:OnSellItemButtonClick
storeScreen:OnSellItemButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:OnSellItemButtonClick()
See Also
:ref:, :ref:
4.25.38 storeScreen:OnStealItemButtonClick
storeScreen:OnStealItemButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:OnStealItemButtonClick()
See Also
:ref:, :ref:
4.25. storeScreen Functions 353
EEex Documentation, Release 1.0
4.25.39 storeScreen:OpenBag
storeScreen:OpenBag()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:OpenBag()
See Also
:ref:, :ref:
4.25.40 storeScreen:RestParty
storeScreen:RestParty()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:RestParty()
See Also
:ref:, :ref:
4.25.41 storeScreen:SelectGroupItem
storeScreen:SelectGroupItem()
Parameters
• **
• **
• **
354 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
storeScreen:SelectGroupItem()
See Also
:ref:, :ref:
4.25.42 storeScreen:SelectIdentifyItem
storeScreen:SelectIdentifyItem()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:SelectIdentifyItem()
See Also
:ref:, :ref:
4.25.43 storeScreen:SelectSpellItem
storeScreen:SelectSpellItem()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:SelectSpellItem()
See Also
:ref:, :ref:
4.25. storeScreen Functions 355
EEex Documentation, Release 1.0
4.25.44 storeScreen:SelectStoreItem
storeScreen:SelectStoreItem()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:SelectStoreItem()
See Also
:ref:, :ref:
4.25.45 storeScreen:SetGroupItemCount
storeScreen:SetGroupItemCount()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:SetGroupItemCount()
See Also
:ref:, :ref:
4.25.46 storeScreen:SetRoomType
storeScreen:SetRoomType()
Parameters
• **
• **
• **
356 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
storeScreen:SetRoomType()
See Also
:ref:, :ref:
4.25.47 storeScreen:SetStoreItemCount
storeScreen:SetStoreItemCount()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:SetStoreItemCount()
See Also
:ref:, :ref:
4.25.48 storeScreen:UpdateBuyDrinksPanel
storeScreen:UpdateBuyDrinksPanel()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:UpdateBuyDrinksPanel()
See Also
:ref:, :ref:
4.25. storeScreen Functions 357
EEex Documentation, Release 1.0
4.25.49 storeScreen:UpdateBuySellPanel
storeScreen:UpdateBuySellPanel()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:UpdateBuySellPanel()
See Also
:ref:, :ref:
4.25.50 storeScreen:UpdateBuySpellPanel
storeScreen:UpdateBuySpellPanel()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:UpdateBuySpellPanel()
See Also
:ref:, :ref:
4.25.51 storeScreen:UpdateDonatePanel
storeScreen:UpdateDonatePanel()
Parameters
• **
• **
• **
358 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Returns
Notes
Example
storeScreen:UpdateDonatePanel()
See Also
:ref:, :ref:
4.25.52 storeScreen:UpdateIdentifyPanel
storeScreen:UpdateIdentifyPanel()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:UpdateIdentifyPanel()
See Also
:ref:, :ref:
4.25.53 storeScreen:UpdateRentRoomPanel
storeScreen:UpdateRentRoomPanel()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:UpdateRentRoomPanel()
See Also
:ref:, :ref:
4.25. storeScreen Functions 359
EEex Documentation, Release 1.0
4.25.54 storeScreen:UpdateStealPanel
storeScreen:UpdateStealPanel()
Parameters
• **
• **
• **
Returns
Notes
Example
storeScreen:UpdateStealPanel()
See Also
:ref:, :ref:
Note: The storeScreen functions are related to the handling of merchant/vendor store interactions: buy, sell, identify,donate, steal and rent rooms
Function DescriptionstoreScreen:GetGroupCoststoreScreen:GetIdentifyCoststoreScreen:GetMenuNamestoreScreen:GetPanelButtonEnabledstoreScreen:GetPanelButtonIdstoreScreen:GetPanelButtonPanelIdstoreScreen:GetPanelButtonSequencestoreScreen:GetPanelButtonToolTipstoreScreen:GetRoomCoststoreScreen:GetRoomTypestoreScreen:GetSpellCoststoreScreen:GetStoreCoststoreScreen:GetStoreNamestoreScreen:IsBuyItemButtonClickablestoreScreen:IsBuySpellButtonClickablestoreScreen:IsCloseBagButtonClickablestoreScreen:IsContainerstoreScreen:IsDonateButtonClickablestoreScreen:IsDoneButtonClickablestoreScreen:IsIdentifyItemButtonClickablestoreScreen:IsMainCancelButtonClickablestoreScreen:IsMainDoneButtonClickablestoreScreen:IsRentRoomButtonClickablestoreScreen:IsRoomTypeClickablestoreScreen:IsSellItemButtonClickablestoreScreen:IsSpriteOrderable
Continued on next page
360 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Table 6 – continued from previous pagestoreScreen:IsStealEnabledstoreScreen:IsStealItemButtonClickablestoreScreen:OnBuyDrinkButtonClickstoreScreen:OnBuyItemButtonClickstoreScreen:OnBuySpellButtonClickstoreScreen:OnCloseBagButtonClickstoreScreen:OnDonateButtonClickstoreScreen:OnIdentifyItemButtonClickstoreScreen:OnMainDoneButtonClickstoreScreen:OnRentRoomButtonClickstoreScreen:OnSellItemButtonClickstoreScreen:OnStealItemButtonClickstoreScreen:OpenBagstoreScreen:RestPartystoreScreen:SelectGroupItemstoreScreen:SelectIdentifyItemstoreScreen:SelectSpellItemstoreScreen:SelectStoreItemstoreScreen:SetGroupItemCountstoreScreen:SetRoomTypestoreScreen:SetStoreItemCountstoreScreen:UpdateBuyDrinksPanelstoreScreen:UpdateBuySellPanelstoreScreen:UpdateBuySpellPanelstoreScreen:UpdateDonatePanelstoreScreen:UpdateIdentifyPanelstoreScreen:UpdateRentRoomPanelstoreScreen:UpdateStealPanel
e = g_pBaldurChitinstoreScreen = e:GetEngineStore()
4.26 timer Functions
4.26.1 timer:AdvanceCurrentTime
timer:AdvanceCurrentTime()
Parameters
• **
• **
• **
Returns
Notes
Example
4.26. timer Functions 361
EEex Documentation, Release 1.0
timer:AdvanceCurrentTime()
See Also
:ref:, :ref:
4.26.2 timer:GetCurrentHour
timer:GetCurrentHour()
Parameters
• **
• **
• **
Returns
Notes
Example
timer:GetCurrentHour()
See Also
:ref:, :ref:
4.26.3 timer:GetCurrentTime
timer:GetCurrentTime()
Parameters
• **
• **
• **
Returns
Notes
Example
timer:GetCurrentTime()
See Also
:ref:, :ref:
Function Descriptiontimer:AdvanceCurrentTimetimer:GetCurrentHourtimer:GetCurrentTime
362 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
e = g_pBaldurChitintimer = game:GetWorldTimer()
4.27 Utility Functions
Note: Utility functions are located in the UTIL.LUA file.
Warning: These functions in UTIL.LUA must be included, as the game engine makes use of them and will likelycrash if not found. Modifying them in an override UTIL.LUA is not recommended unless you know exactly whatyou are doing
Function DescriptionaddInfoEntryaddUserEntryadjustItemGroupautopickMageSpellsbuildJournalTablechapterTextcheckEntryCompleteclearSessionsBeforecreateEntrycreateObjectivecreateQuestcurrentCellCheckdeepcopydisplaySubtitlesdoneTextfadeInOutfilterfindKeyNameByIdfindObjectivefindQuestgetBodyStringgetDisplayQuestCompletegetEntriesTextgetFileNameStringRefgetMinusFramegetOpacityForInfoBlockgetPlusFramegetStringFromAmbiguousSourcegetSubtitleStringgetTitleStringgetTitleTextgetTooltipWithHotkeygreySidebars
Continued on next page
4.27. Utility Functions 363
EEex Documentation, Release 1.0
Table 7 – continued from previous pagehighlightJournalButtonhighlightStringinOutExpoincrChapterinitLanguageinitQuestsOldkeyExistslengthloadBindingminusButtonClickableneedsEscapeplusButtonClickablepopSidebarspopup2Buttonpopup3Buttonpopup4ButtonpopupDetailspopupInfopopupRequesterprintIniprint_rprocessStringTokensLuapushSidebarsquicksortremoveJournalEntryremoveStringTokenLuaremoveUserEntryresetScrollbarrevertKeymapsetDoneStatesetKeysetSelectedQuestsetStringTokenLuashowTextFlashsortByMageSpellNamesortByPriestSpellNamesortBySpellNamettoggleDoneStatetrimungreySidebarsuniqueFromTableupdateDisplayEntriesupdateDisplayJournalupdateDisplayTitlesupdateJournalEntryOldupdateQuestState
364 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.28 worldMapScreen Functions
4.28.1 worldMapScreen:CenterMarker
worldMapScreen:CenterMarker()
Parameters
• **
• **
• **
Returns
Notes
Example
worldMapScreen:CenterMarker()
See Also
:ref:, :ref:
4.28.2 worldMapScreen:IsTravelButtonClickable
worldMapScreen:IsTravelButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
worldMapScreen:IsTravelButtonClickable()
See Also
:ref:, :ref:
4.28.3 worldMapScreen:IsTravelButtonVisible
worldMapScreen:IsTravelButtonVisible()
Parameters
• **
• **
4.28. worldMapScreen Functions 365
EEex Documentation, Release 1.0
• **
Returns
Notes
Example
worldMapScreen:IsTravelButtonVisible()
See Also
:ref:, :ref:
4.28.4 worldMapScreen:OnCancelButtonClick
worldMapScreen:OnCancelButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
worldMapScreen:OnCancelButtonClick()
See Also
:ref:, :ref:
4.28.5 worldMapScreen:OnMapMouseDown
worldMapScreen:OnMapMouseDown()
Parameters
• **
• **
• **
Returns
Notes
Example
worldMapScreen:OnMapMouseDown()
See Also
:ref:, :ref:
366 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
4.28.6 worldMapScreen:OnMapMouseMove
worldMapScreen:OnMapMouseMove()
Parameters
• **
• **
• **
Returns
Notes
Example
worldMapScreen:OnMapMouseMove()
See Also
:ref:, :ref:
4.28.7 worldMapScreen:StartWorldMap
worldMapScreen:StartWorldMap()
Parameters
• **
• **
• **
Returns
Notes
Example
worldMapScreen:StartWorldMap()
See Also
:ref:, :ref:
4.28.8 worldMapScreen:TravelToSelected
worldMapScreen:TravelToSelected()
Parameters
• **
• **
• **
4.28. worldMapScreen Functions 367
EEex Documentation, Release 1.0
Returns
Notes
Example
worldMapScreen:TravelToSelected()
See Also
:ref:, :ref:
Function DescriptionworldMapScreen:CenterMarkerworldMapScreen:IsTravelButtonClickableworldMapScreen:IsTravelButtonVisibleworldMapScreen:OnCancelButtonClickworldMapScreen:OnMapMouseDownworldMapScreen:OnMapMouseMoveworldMapScreen:StartWorldMapworldMapScreen:TravelToSelected
e = g_pBaldurChitinworldMapScreen = e:GetEngineWorldMap()
4.29 worldScreen Functions
4.29.1 worldScreen:CheckIfPaused
worldScreen:CheckIfPaused()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:CheckIfPaused()
See Also
:ref:, :ref:
4.29.2 worldScreen:ContainerScrollEnabled
worldScreen:ContainerScrollEnabled()
368 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:ContainerScrollEnabled()
See Also
:ref:, :ref:
4.29.3 worldScreen:GetCurrentTimeString
worldScreen:GetCurrentTimeString()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:GetCurrentTimeString()
See Also
:ref:, :ref:
4.29.4 worldScreen:GetHardPaused
worldScreen:GetHardPaused()
Parameters
• **
• **
• **
Returns
Notes
Example
4.29. worldScreen Functions 369
EEex Documentation, Release 1.0
worldScreen:GetHardPaused()
See Also
:ref:, :ref:
4.29.5 worldScreen:GetInControlOfDialog
worldScreen:GetInControlOfDialog()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:GetInControlOfDialog()
See Also
:ref:, :ref:
4.29.6 worldScreen:GetPickPartyCharacterId
worldScreen:GetPickPartyCharacterId()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:GetPickPartyCharacterId()
See Also
:ref:, :ref:
4.29.7 worldScreen:GetPickPartyPortrait
worldScreen:GetPickPartyPortrait()
370 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:GetPickPartyPortrait()
See Also
:ref:, :ref:
4.29.8 worldScreen:GetPickPartyRemoveCharacterId
worldScreen:GetPickPartyRemoveCharacterId()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:GetPickPartyRemoveCharacterId()
See Also
:ref:, :ref:
4.29.9 worldScreen:GetTopContainerItem
worldScreen:GetTopContainerItem()
Parameters
• **
• **
• **
Returns
Notes
Example
4.29. worldScreen Functions 371
EEex Documentation, Release 1.0
worldScreen:GetTopContainerItem()
See Also
:ref:, :ref:
4.29.10 worldScreen:GetTopGroundItem
worldScreen:GetTopGroundItem()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:GetTopGroundItem()
See Also
:ref:, :ref:
4.29.11 worldScreen:GetTopGroupItem
worldScreen:GetTopGroupItem()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:GetTopGroupItem()
See Also
:ref:, :ref:
4.29.12 worldScreen:GroundScrollEnabled
worldScreen:GroundScrollEnabled()
372 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:GroundScrollEnabled()
See Also
:ref:, :ref:
4.29.13 worldScreen:GroupScrollEnabled
worldScreen:GroupScrollEnabled()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:GroupScrollEnabled()
See Also
:ref:, :ref:
4.29.14 worldScreen:IsPickPartyDoneButtonClickable
worldScreen:IsPickPartyDoneButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
4.29. worldScreen Functions 373
EEex Documentation, Release 1.0
worldScreen:IsPickPartyDoneButtonClickable()
See Also
:ref:, :ref:
4.29.15 worldScreen:IsPickPartyRemoveButtonClickable
worldScreen:IsPickPartyRemoveButtonClickable()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:IsPickPartyRemoveButtonClickable()
See Also
:ref:, :ref:
4.29.16 worldScreen:OnContainerButtonClick
worldScreen:OnContainerButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:OnContainerButtonClick()
See Also
:ref:, :ref:
4.29.17 worldScreen:OnContainerScroll
worldScreen:OnContainerScroll()
374 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:OnContainerScroll()
See Also
:ref:, :ref:
4.29.18 worldScreen:OnDeathLoad
worldScreen:OnDeathLoad()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:OnDeathLoad()
See Also
:ref:, :ref:
4.29.19 worldScreen:OnDeathQuit
worldScreen:OnDeathQuit()
Parameters
• **
• **
• **
Returns
Notes
Example
4.29. worldScreen Functions 375
EEex Documentation, Release 1.0
worldScreen:OnDeathQuit()
See Also
:ref:, :ref:
4.29.20 worldScreen:OnDialogReplyClick
worldScreen:OnDialogReplyClick()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:OnDialogReplyClick()
See Also
:ref:, :ref:
4.29.21 worldScreen:OnGroundButtonClick
worldScreen:OnGroundButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:OnGroundButtonClick()
See Also
:ref:, :ref:
4.29.22 worldScreen:OnGroundScroll
worldScreen:OnGroundScroll()
376 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:OnGroundScroll()
See Also
:ref:, :ref:
4.29.23 worldScreen:OnGroupScroll
worldScreen:OnGroupScroll()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:OnGroupScroll()
See Also
:ref:, :ref:
4.29.24 worldScreen:OnHelpButtonClick
worldScreen:OnHelpButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
4.29. worldScreen Functions 377
EEex Documentation, Release 1.0
worldScreen:OnHelpButtonClick()
See Also
:ref:, :ref:
4.29.25 worldScreen:OnPickPartyDoneButtonClick
worldScreen:OnPickPartyDoneButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:OnPickPartyDoneButtonClick()
See Also
:ref:, :ref:
4.29.26 worldScreen:OnPickPartyPortraitButtonClick
worldScreen:OnPickPartyPortraitButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:OnPickPartyPortraitButtonClick()
See Also
:ref:, :ref:
4.29.27 worldScreen:OnQuickSaveButtonClick
worldScreen:OnQuickSaveButtonClick()
378 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:OnQuickSaveButtonClick()
See Also
:ref:, :ref:
4.29.28 worldScreen:OnSelectionButtonClick
worldScreen:OnSelectionButtonClick()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:OnSelectionButtonClick()
See Also
:ref:, :ref:
4.29.29 worldScreen:RemoveCharacterFromParty
worldScreen:RemoveCharacterFromParty()
Parameters
• **
• **
• **
Returns
Notes
Example
4.29. worldScreen Functions 379
EEex Documentation, Release 1.0
worldScreen:RemoveCharacterFromParty()
See Also
:ref:, :ref:
4.29.30 worldScreen:SetHighlightEnabled
worldScreen:SetHighlightEnabled()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:SetHighlightEnabled()
See Also
:ref:, :ref:
4.29.31 worldScreen:StartGroundItems
worldScreen:StartGroundItems()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:StartGroundItems()
See Also
:ref:, :ref:
4.29.32 worldScreen:StepDialog
worldScreen:StepDialog()
380 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:StepDialog()
See Also
:ref:, :ref:
4.29.33 worldScreen:StopGroundItems
worldScreen:StopGroundItems()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:StopGroundItems()
See Also
:ref:, :ref:
4.29.34 worldScreen:SwapPortraits
worldScreen:SwapPortraits()
Parameters
• **
• **
• **
Returns
Notes
Example
4.29. worldScreen Functions 381
EEex Documentation, Release 1.0
worldScreen:SwapPortraits()
See Also
:ref:, :ref:
4.29.35 worldScreen:TakeAllFromContainer
worldScreen:TakeAllFromContainer()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:TakeAllFromContainer()
See Also
:ref:, :ref:
4.29.36 worldScreen:TogglePauseGame
worldScreen:TogglePauseGame()
Parameters
• **
• **
• **
Returns
Notes
Example
worldScreen:TogglePauseGame()
See Also
:ref:, :ref:
Function DescriptionworldScreen:CheckIfPausedworldScreen:ContainerScrollEnabledworldScreen:GetCurrentTimeString
Continued on next page
382 Chapter 4. EE Game Lua Functions
EEex Documentation, Release 1.0
Table 8 – continued from previous pageworldScreen:GetHardPausedworldScreen:GetInControlOfDialogworldScreen:GetPickPartyCharacterIdworldScreen:GetPickPartyPortraitworldScreen:GetPickPartyRemoveCharacterIdworldScreen:GetTopContainerItemworldScreen:GetTopGroundItemworldScreen:GetTopGroupItemworldScreen:GroundScrollEnabledworldScreen:GroupScrollEnabledworldScreen:IsPickPartyDoneButtonClickableworldScreen:IsPickPartyRemoveButtonClickableworldScreen:OnContainerButtonClickworldScreen:OnContainerScrollworldScreen:OnDeathLoadworldScreen:OnDeathQuitworldScreen:OnDialogReplyClickworldScreen:OnGroundButtonClickworldScreen:OnGroundScrollworldScreen:OnGroupScrollworldScreen:OnHelpButtonClickworldScreen:OnPickPartyDoneButtonClickworldScreen:OnPickPartyPortraitButtonClickworldScreen:OnQuickSaveButtonClickworldScreen:OnSelectionButtonClickworldScreen:RemoveCharacterFromPartyworldScreen:SetHighlightEnabledworldScreen:StartGroundItemsworldScreen:StepDialogworldScreen:StopGroundItemsworldScreen:SwapPortraitsworldScreen:TakeAllFromContainerworldScreen:TogglePauseGame
e = g_pBaldurChitinworldScreen = e:GetEngineWorld()
Note: The EE game internally processes the following to allow access to various class methods via specific luafunctions:
e = g_pBaldurChitinstartEngine = e:GetEngineStart()createCharScreen = e:GetEngineCreateChar()characterScreen = e:GetEngineCharacter()connectionScreen = e:GetEngineConnection()mageScreen = e:GetEngineWizSpell()priestScreen = e:GetEnginePriestSpell()worldScreen = e:GetEngineWorld()mapScreen = e:GetEngineMap()worldMapScreen = e:GetEngineWorldMap()
(continues on next page)
4.29. worldScreen Functions 383
EEex Documentation, Release 1.0
(continued from previous page)
journalScreen = e:GetEngineJournal()inventoryScreen = e:GetEngineInventory()optionsScreen = e:GetEngineOptions()multiplayerScreen = e:GetEngineMultiPlayer()chapterScreen = e:GetEngineChapter()loadScreen = e:GetEngineLoad()saveScreen = e:GetEngineSave()storeScreen = e:GetEngineStore()moviesScreen = e:GetEngineMovies()createPartyScreen = e:GetEngineCreateParty()dlcScreen = e:GetEngineDLC()projector = e:GetEngineProjector()mixer = e:GetSoundMixer()game = e:GetObjectGame()buttonArray = game:GetButtonArray()timer = game:GetWorldTimer()gameOptions = game:GetOptions()
And the CLUAConsole is assigned to C: via:
C = CLUAConsole:new()
384 Chapter 4. EE Game Lua Functions
CHAPTER 5
EE Game Structures (x86)
5.1 C2 Structures
• C2DArray
5.1.1 C2DArray
The class that uses this structure is C2DArray Class
Offset Size Type Field0x00 12 CResHelper baseclass_00x0C 4 CString* m_pNamesX0x10 4 CString* m_pNamesY0x14 4 CString* m_pArray0x18 4 CString m_default0x1C 2 short m_nSizeX0x1E 2 short m_nSizeY
5.2 CA Structures
• CAIAction
• CAICondition
• CAIConditionResponse
• CAIGroup
• CAIId
• CAIIdList
385
EEex Documentation, Release 1.0
• CAINonPlayerScript
• CAIObjectType
• CAIPlayerScript
• CAIResponse
• CAIResponseSet
• CAIScript
• CAIScriptFile
• CAITrigger
• CAIUtil
• CAOEEntry
• CAbilityData
• CAbilityId
• CApplyEffectList
• CAreaFile
• CAreaFileCharacterEntryPoint
• CAreaFileContainer
• CAreaFileCreature
• CAreaFileDoorObject
• CAreaFileHeader
• CAreaFileOffsets
• CAreaFileProjectileObject
• CAreaFileRandomMonsterSpawningPoint
• CAreaFileRestEncounter
• CAreaFileSoundObject
• CAreaFileStaticObject
• CAreaFileTiledObject
• CAreaFileTriggerObject
• CAreaPoint
• CAreaSoundsAndMusic
• CAreaUserNote
• CAreaVariable
• CArray
• CArray (CDLC)
• CArray (CDLC_Content)
• CArray (COverridePath)
• CArray (CRect)
386 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CArray (CZipFile)
• CArray (Mod_t)
• CArray (StatRating)
• CArray (zip_t)
5.2.1 CAIAction
Used by the CAIAction Class
Offset Size Type Field0x00 2 short m_actionID
2 <padding>0x04 20 CAIObjectType m_actorID0x18 20 CAIObjectType m_acteeID0x2C 20 CAIObjectType m_acteeID20x40 4 long m_specificID0x44 4 long m_specificID20x48 4 long m_specificID30x4C 4 CString m_string10x50 4 CString m_string20x54 8 CPoint m_dest0x5C 4 unsigned long m_internalFlags0x60 4 CString m_source
5.2.2 CAICondition
Used by the CAICondition Class
Offset Size Type Field0x00 28 CTypedPtrList m_triggerList
5.2.3 CAIConditionResponse
Offset Size Type Field0x00 28 CAICondition m_condition0x1C 32 CAIResponseSet m_responseSet
5.2. CA Structures 387
EEex Documentation, Release 1.0
5.2.4 CAIGroup
Used by the CAIGroup Class
Offset Size Type Field0x00 2 short m_groupId
2 <padding>0x04 4 int m_groupChanged0x08 28 CTypedPtrList m_memberList
5.2.5 CAIId
Offset Size Type Field0x00 long m_id0x04 CString m_line0x08 CString m_start
5.2.6 CAIIdList
Used by the CAIIdList Class
Offset Size Type Field0x00 4 vfptr vfptr0x04 12 CResHelper m_cResHelper0x10 4 CString m_fileName0x14 28 CTypedPtrList m_idList0x30 4 int m_faster0x34 4 CAIId** m_pIdArray0x38 4 long m_nArray
5.2.7 CAINonPlayerScript
Offset Size Type Field0x00 12 CResHelper m_cResHelper
388 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.2.8 CAIObjectType
Used by the CAIObjectType Class
Offset Size Type Field0x00 4 CString m_name0x04 1 unsigned char m_EnemyAlly0x05 1 unsigned char m_General0x06 1 unsigned char m_Race0x07 1 unsigned char m_Class0x08 4 long m_Instance0x0C 5 unsigned char m_SpecialCase[5]0x11 1 unsigned char m_Specifics0x12 1 unsigned char m_Gender0x13 1 unsigned char m_Alignment
Notes
Valid values for the following fields can be found in specific .IDS files:
• m_EnemyAlly valid values can be found in the EA.IDS file
• m_General valid values can be found in the GENERAL.IDS file
• m_Race valid values can be found in the RACE.IDS file
• m_Class valid values can be found in the CLASS.IDS file
• m_Specifics valid values can be found in the SPECIFIC.IDS file
• m_Gender valid values can be found in the GENDER.IDS file
• m_Alignment valid values can be found in the ALIGN.IDS file
5.2.9 CAIPlayerScript
Offset Size Type Field0x00 12 CResHelper m_cResHelper
5.2.10 CAIResponse
Used by the CAIResponse Class
Offset Size Type Field0x00 2 short m_weight0x02 2 short m_responseNum0x04 2 short m_responseSetNum0x06 2 short m_scriptNum0x08 28 CTypedPtrList m_actionList
5.2. CA Structures 389
EEex Documentation, Release 1.0
5.2.11 CAIResponseSet
Offset Size Type Field0x00 28 CTypedPtrList m_responseList0x1C 4 long m_weightTotal
5.2.12 CAIScript
Used by the CAIScript Class
Offset Size Type Field0x00 8 CResRef cResRef0x08 28 CTypedPtrList m_caList
5.2.13 CAIScriptFile
Used by the CAIScriptFile Class
Offset Size Type Field0x00 2 short m_parseMode
2 <padding>0x04 4 long m_lineNumber0x08 4 CAIScript* m_curScript0x0C 4 CAIResponseSet* m_curResponseSet0x10 4 CAICondition* m_curCondition0x14 4 CAIResponse* m_curResponse0x18 4 CString m_errors0x1C 16 CFile m_file0x2C 4 CString source0x30 4 CString m_decompiledText0x34 60 CAIIdList m_actions0x70 60 CAIIdList m_triggers0xAC 60 CAIIdList m_objects
5.2.14 CAITrigger
Used by the CAITrigger Class
390 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Offset Size Type Field0x00 2 short m_triggerID
2 <padding>0x04 4 long m_specificID0x08 20 CAIObjectType m_triggerCause0x1C 4 long m_flags0x20 4 long m_specific20x24 4 long m_specific30x28 4 CString m_string10x2C 4 CString m_string2
5.2.15 CAIUtil
See CAIUtil Class
Offset Size Type Field1 <padding>
5.2.16 CAOEEntry
Offset Size Type Field0x00 4 CAOEEntry::AOEType m_type0x04 8 CPoint m_center0x0C 8 CPoint m_radius0x14 4 unsigned long m_color
Notes
enum CAOEEntry::AOEType {AOE_CIRCLE = 0AOE_CONE = 1AOE_RECTANGLE = 2AOE_LINE = 3
}
5.2. CA Structures 391
EEex Documentation, Release 1.0
5.2.17 CAbilityData
Offset Size Type Field0x00 8 CResRef m_icon0x08 4 unsigned long m_name0x0C 4 CString m_effect0x10 4 int m_nMinLevel0x14 4 int m_nMaxLevel0x18 4 int m_nNumAllowed0x1C 4 CString m_sPrereq0x20 4 CString m_sExcludedBy0x24 4 CString m_sAlignmentRestriction
5.2.18 CAbilityId
Offset Size Type Field0x00 2 short m_itemType0x02 2 short m_itemNum0x04 2 short m_abilityNum0x06 8 CResRef m_res0x0E 1 unsigned char m_targetType0x0F 1 unsigned char m_targetCount0x10 4 unsigned long m_toolTip
5.2.19 CApplyEffectList
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.2.20 CAreaFile
Offset Size Type Field0x00 12 CResHelper m_cResHelper
392 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.2.21 CAreaFileCharacterEntryPoint
Offset Size Type Field0x00 32 char m_entryName[32]0x20 2 unsigned short m_startX0x22 2 unsigned short m_startY0x24 4 unsigned long m_facing0x28 64 unsigned char m_notUsed[64]
5.2.22 CAreaFileContainer
Offset Size Type Field0x00 32 char m_scriptName[32]0x20 2 unsigned short m_posX0x22 2 unsigned short m_posY0x24 2 unsigned short m_containerType0x26 2 unsigned short m_lockDifficulty0x28 4 unsigned long m_dwFlags0x2C 2 unsigned short m_trapDetectionDifficulty0x2E 2 unsigned short m_trapRemovalDifficulty0x30 2 unsigned short m_trapActivated0x32 2 unsigned short m_trapDetected0x34 2 unsigned short m_posXTrapOrigin0x36 2 unsigned short m_posYTrapOrigin0x38 2 unsigned short m_boundingRectLeft0x3A 2 unsigned short m_boundingRectTop0x3C 2 unsigned short m_boundingRectRight0x3E 2 unsigned short m_boundingRectBottom0x40 4 unsigned long m_startingItem0x44 4 unsigned long m_itemCount0x48 8 char m_script[8]0x50 4 unsigned long m_pickPointStart0x54 2 unsigned short m_pickPointCount0x56 2 unsigned short m_triggerRange0x58 32 char m_ownedBy[32]0x78 8 char m_keyType[8]0x80 4 unsigned long m_breakDifficulty0x84 4 unsigned long m_strNotPickable0x88 56 unsigned char m_notUsed[56]
5.2. CA Structures 393
EEex Documentation, Release 1.0
5.2.23 CAreaFileCreature
Offset Size Type Field0x00 32 char m_scriptName[32]0x20 2 unsigned short m_posX0x22 2 unsigned short m_posY0x24 2 unsigned short m_startingPosX0x26 2 unsigned short m_startingPosY0x28 4 unsigned long m_dwFlags0x2C 2 unsigned short m_type0x2E 1 unsigned char m_cFirstResSlot
1 <structureAlignment1>0x30 4 unsigned long m_animationType0x34 2 unsigned short m_facing
2 <structureAlignment2>0x38 4 unsigned long m_expirationTime0x3c 2 unsigned short m_huntingRange0x3E 2 unsigned short m_followRange0x40 4 unsigned long m_timeOfDayVisible0x44 4 unsigned long m_numberTimesTalkedTo0x48 8 char m_dialogOverride[8]0x50 8 char m_overrideScriptOverride[8]0x58 8 char m_generalScriptOverride[8]0x60 8 char m_classScriptOverride[8]0x68 8 char m_raceScriptOverride[8]0x70 8 char m_defaultScriptOverride[8]0x78 8 char m_specificScriptOverride[8]0x80 8 char m_creatureData[8]0x88 4 unsigned long m_creatureOffset0x8C 4 unsigned long m_creatureSize0x90 32 char m_sName[32]0xB0 96 unsigned char m_notUsed[96]
5.2.24 CAreaFileDoorObject
Offset Size Type Field0x00 32 char m_scriptName[32]0x20 8 unsigned char m_doorID[8]0x28 4 unsigned long m_dwFlags0x2C 4 unsigned long m_openSelectionPointStart0x30 2 unsigned short m_openSelectionPointCount0x32 2 unsigned short m_closedSelectionPointCount0x34 4 unsigned long m_closedSelectionPointStart0x38 2 unsigned short m_openBoundingRectLeft0x3A 2 unsigned short m_openBoundingRectTop0x3C 2 unsigned short m_openBoundingRectRight0x3E 2 unsigned short m_openBoundingRectBottom
Continued on next page
394 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 1 – continued from previous page0x40 2 unsigned short m_closedBoundingRectLeft0x42 2 unsigned short m_closedBoundingRectTop0x44 2 unsigned short m_closedBoundingRectRight0x46 2 unsigned short m_closedBoundingRectBottom0x48 4 unsigned long m_openSearchSquaresStart0x4C 2 unsigned short m_openSearchSquaresCount0x4E 2 unsigned short m_closedSearchSquaresCount0x50 4 unsigned long m_closedSearchSquaresStart0x54 2 short m_hitPoints0x56 2 short m_armourClass0x58 8 unsigned char m_openSound[8]0x60 8 unsigned char m_closeSound[8]0x68 4 unsigned long m_cursorType0x6C 2 unsigned short m_trapDetectionDifficulty0x6E 2 unsigned short m_trapDisarmingDifficulty0x70 2 unsigned short m_trapActivated0x72 2 unsigned short m_trapDetected0x74 2 unsigned short m_posXTrapOrigin0x76 2 unsigned short m_posYTrapOrigin0x78 8 unsigned char m_keyType[8]0x80 8 unsigned char m_script[8]0x88 4 unsigned long m_detectionDifficulty0x8C 4 unsigned long m_lockDifficulty0x90 2 unsigned short m_posXWalkTo10x92 2 unsigned short m_posYWalkTo10x94 2 unsigned short m_posXWalkTo20x96 2 unsigned short m_posYWalkTo20x98 4 unsigned long m_strNotPickable0x9C 32 char m_triggerName[32]0xBC 12 unsigned long m_notUsed[3]
5.2. CA Structures 395
EEex Documentation, Release 1.0
5.2.25 CAreaFileHeader
Offset Size Type Field0x00 8 unsigned char m_areaName[8]0x08 4 unsigned long m_lastSaved0x0C 4 unsigned long m_flags0x10 8 unsigned char m_areaEdgeNorth[8]0x18 4 unsigned long m_flagsEdgeNorth0x1C 8 unsigned char m_areaEdgeEast[8]0x24 4 unsigned long m_flagsEdgeEast0x28 8 unsigned char m_areaEdgeSouth[8]0x30 4 unsigned long m_flagsEdgeSouth0x34 8 unsigned char m_areaEdgeWest[8]0x3C 4 unsigned long m_flagsEdgeWest0x40 2 unsigned short m_areaType0x42 2 unsigned short m_rainProbability0x44 2 unsigned short m_snowProbability0x46 2 unsigned short m_fogProbability0x48 2 unsigned short m_lightningProbability0x4A 1 unsigned char m_waterAlpha0x4B 1 unsigned char m_unused
5.2.26 CAreaFileOffsets
Offset Size Type Field0x00 4 unsigned long m_creatureTableOffset0x04 2 unsigned short m_creatureTableCount0x06 2 unsigned short m_triggerObjectListCount0x08 4 unsigned long m_triggerObjectListOffset0x0C 4 unsigned long m_randomMonsterSpawningPointTableOffset0x10 4 unsigned long m_randomMonsterSpawningPointTableCount0x14 4 unsigned long m_characterEntryPointTableOffset0x18 4 unsigned long m_characterEntryPointTableCount0x1C 4 unsigned long m_containerListOffset0x20 2 unsigned short m_containerListCount0x22 2 unsigned short m_itemObjectsCount0x24 4 unsigned long m_itemObjectsOffset0x28 4 unsigned long m_pointsOffset0x2C 2 unsigned short m_pointsCount0x2E 2 unsigned short m_soundObjectCount0x30 4 unsigned long m_soundObjectOffset0x34 4 unsigned long m_areaScriptVariablesOffset0x38 2 unsigned short m_areaScriptVariablesCount0x3A 2 unsigned short m_tiledObjectFlagsCount0x3C 4 unsigned long m_tiledObjectFlagsOffset0x40 8 unsigned char m_script[8]0x48 4 unsigned long m_visibilityMapCount
Continued on next page
396 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 2 – continued from previous page0x4C 4 unsigned long m_visibilityMapOffset0x50 4 unsigned long m_doorObjectListCount0x54 4 unsigned long m_doorObjectListOffset0x58 4 unsigned long m_staticObjectListCount0x5C 4 unsigned long m_staticObjectListOffset0x60 4 unsigned long m_tiledObjectListCount0x64 4 unsigned long m_tiledObjectListOffset0x68 4 unsigned long m_areaSoundsAndMusicOffset0x6C 4 unsigned long m_restingEncounterOffset0x70 4 unsigned long m_userMapNotesOffset0x74 4 unsigned long m_userMapNotesCount0x78 4 unsigned long m_projectileTableOffset0x7C 4 unsigned long m_projectileTableCount0x80 8 unsigned char m_restMovieDay[8]0x88 8 unsigned char m_restMovieNight[8]0x90 56 unsigned long m_notUsed[14]
5.2.27 CAreaFileProjectileObject
Offset Size Type Field0x00 8 unsigned char m_resref[8]0x08 4 unsigned long m_effectListOffset0x0C 2 unsigned short m_effectListCount0x0E 2 unsigned short m_projectileID0x10 2 short m_nDelayCount0x12 2 short m_nRepetitionCount0x14 2 unsigned short m_posX0x16 2 unsigned short m_posY0x18 2 unsigned short m_posZ0x1A 1 unsigned char m_targetType0x1B 1 char m_portraitNum
5.2. CA Structures 397
EEex Documentation, Release 1.0
5.2.28 CAreaFileRandomMonsterSpawningPoint
Offset Size Type Field0x00 32 char m_scriptName[32]0x20 2 unsigned short m_posX0x22 2 unsigned short m_posY0x24 80 unsigned char m_randomCreature[10][8]0x74 2 unsigned short m_randomCreatureNum0x76 2 unsigned short m_difficulty0x78 2 unsigned short m_spawningRate0x7A 2 unsigned short m_wFlags0x7C 4 unsigned long m_lifeSpan0x80 2 unsigned short m_huntingRange0x82 2 unsigned short m_followRange0x84 2 unsigned short m_maxTypeNum0x86 2 unsigned short m_activated0x88 4 unsigned long m_timeOfDayVisible0x8C 2 unsigned short m_probDay0x8E 2 unsigned short m_probNight0x90 4 unsigned long m_frequency0x94 4 unsigned long m_countdown0x98 10 unsigned char m_weights[10]0xA2 38 unsigned short m_notUsed[19]
5.2.29 CAreaFileRestEncounter
Offset Size Type Field0x00 32 char m_scriptName[32]0x20 40 unsigned long m_randomCreatureString[10]0x48 80 unsigned char m_randomCreature[10][8]0x98 2 unsigned short m_randomCreatureNum0x9A 2 unsigned short m_difficulty0x9C 4 unsigned long m_lifeSpan0xA0 2 unsigned short m_huntingRange0xA2 2 unsigned short m_followRange0xA4 2 unsigned short m_maxTypeNum0xA6 2 unsigned short m_activated0xA8 2 unsigned short m_probDay0xAA 2 unsigned short m_probNight0xAC 2 unsigned short m_wFlags0xAE 10 unsigned char m_weights[10]0xB8 44 unsigned long m_notUsed[11]
398 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.2.30 CAreaFileSoundObject
Offset Size Type Field0x00 32 char m_scriptName[32]0x20 2 unsigned short m_posX0x22 2 unsigned short m_posY0x24 2 unsigned short m_range0x26 2 unsigned char structureAlignment1[2]0x28 4 unsigned long m_pitchVariance0x2C 2 unsigned short m_volumeVariance0x2E 2 unsigned short m_volume0x30 80 unsigned char soundObject[10][8]0x80 2 unsigned short m_soundObjectNum0x82 2 unsigned char structureAlignment2[2]0x84 4 unsigned long m_period0x88 4 unsigned long m_periodVariance0x8C 4 unsigned long m_timeOfDayActive0x90 4 unsigned long m_dwFlags0x94 64 unsigned long m_notUsed[16]
5.2.31 CAreaFileStaticObject
Offset Size Type Field0x00 32 char m_scriptName[32]0x20 2 unsigned short m_posX0x22 2 unsigned short m_posY0x24 4 unsigned long m_timeOfDayVisible0x28 8 char m_resref[8]0x30 4 unsigned long m_nSequence0x34 4 unsigned long m_dwFlags0x38 2 short m_height0x3A 2 unsigned short m_translucency0x3C 2 unsigned short m_startFrameRange0x3E 1 unsigned char m_probability0x3F 1 unsigned char m_period0x40 8 unsigned char m_paletteResref[8]0x48 2 unsigned short m_sizeX0x4A 2 unsigned short m_sizeY
5.2. CA Structures 399
EEex Documentation, Release 1.0
5.2.32 CAreaFileTiledObject
Offset Size Type Field0x00 32 char m_scriptName[32]0x20 8 unsigned char m_tileID[8]0x28 4 unsigned long m_dwFlags0x2C 4 unsigned long m_primarySearchSquaresStart0x30 2 unsigned short m_primarySearchSquaresCount0x32 2 unsigned short m_secondarySearchSquaresCount0x34 4 unsigned long m_secondarySearchSquaresStart0x38 48 unsigned long m_notUsed[12]
5.2.33 CAreaFileTriggerObject
Offset Size Type Field0x00 32 char m_scriptName[32]0x20 2 unsigned short m_triggerType0x22 2 unsigned short m_boundingRectLeft0x24 2 unsigned short m_boundingRectTop0x26 2 unsigned short m_boundingRectRight0x28 2 unsigned short m_boundingRectBottom0x2A 2 unsigned short m_pickPointCount0x2C 4 unsigned long m_pickPointStart0x30 4 unsigned long m_triggerValue0x34 4 unsigned long m_cursorType0x38 8 unsigned char m_newArea[8]0x40 32 char m_newEntryPoint[32]0x60 4 unsigned long m_dwFlags0x64 4 unsigned long m_description0x68 2 unsigned short m_trapDetectionDifficulty0x6A 2 unsigned short m_trapDisarmingDifficulty0x6C 2 unsigned short m_trapActivated0x6E 2 unsigned short m_trapDetected0x70 2 unsigned short m_posXTrapOrigin0x72 2 unsigned short m_posYTrapOrigin0x74 8 unsigned char m_keyType[8]0x7C 8 unsigned char m_script[8]0x84 2 unsigned short m_transitionWalkToX0x86 2 unsigned short m_transitionWalkToY0x88 60 unsigned long m_notUsed[15]
5.2.34 CAreaPoint
Offset Size Type Field0x00 2 unsigned short m_xPos0x02 2 unsigned short m_yPos
400 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.2.35 CAreaSoundsAndMusic
Offset Size Type Field0x00 4 unsigned long m_dayMusic0x04 4 unsigned long m_nightMusic0x08 4 unsigned long m_battleWinningMusic0x0C 4 unsigned long m_battleStandOffMusic0x10 4 unsigned long m_battleLosingMusic0x14 4 unsigned long m_alt1Music00x18 4 unsigned long m_alt1Music10x1C 4 unsigned long m_alt1Music20x20 4 unsigned long m_alt1Music30x24 4 unsigned long m_alt1Music40x28 8 unsigned char m_dayAmbient[8]0x30 8 unsigned char m_dayAmbientExtended[8]0x38 4 unsigned long m_dayAmbientVolume0x3C 8 unsigned char m_nightAmbient[8]0x44 8 unsigned char m_nightAmbientExtended[8]0x4C 4 unsigned long m_nightAmbientVolume0x50 64 unsigned long m_notUsed[16]
5.2.36 CAreaUserNote
Offset Size Type Field0x00 2 unsigned short m_startX0x02 2 unsigned short m_startY0x04 4 unsigned long m_note0x08 4 unsigned long m_dwflags0x0C 4 unsigned long m_id0x10 36 unsigned long m_notUsed[9]
5.2.37 CAreaVariable
Offset Size Type Field0x00 32 char m_name[32]0x20 2 unsigned short m_type0x22 2 unsigned short m_resRefType0x24 4 unsigned long m_dWValue0x28 4 long m_intValue0x2C 8 double m_floatValue0x34 32 char m_stringValue[32]
5.2. CA Structures 401
EEex Documentation, Release 1.0
5.2.38 CArray
Note: CArray is a generic definition for all the CArray type structures. Each of them has a m_pData field that pointsto a specific structure. The names of these other CArray structures have been created for convenience, by adding thename of the structure that they point to to the end of the ‘CArray’. The actual definitions as they are seen by the gameengine (and from extracting pdb symbol information) are noted for each of them.
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 DWORD (* to a structure) m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
5.2.39 CArray (CDLC)
Note: Defined as class CArray<CDLC,CDLC &>
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CDLC* m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
5.2.40 CArray (CDLC_Content)
Note: Defined as class CArray<CDLC_Content,CDLC_Content &>
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CDLC_Content* m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
402 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.2.41 CArray (COverridePath)
Note: Defined as class CArray<COverridePath,COverridePath &>
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 COverridePath* m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
5.2.42 CArray (CRect)
Note: Defined as class CArray<CRect,CRect &>
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CRect* m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
5.2.43 CArray (CZipFile)
Note: Defined as class CArray<CZipFile,CZipFile &>
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CZipFile* m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
5.2. CA Structures 403
EEex Documentation, Release 1.0
5.2.44 CArray (Mod_t)
Note: Defined as class CArray<Mod_t,Mod_t &>
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 Mod_t* m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
5.2.45 CArray (StatRating)
Note: Defined as class CArray<StatRating,StatRating &>
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 StatRating* m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
5.2.46 CArray (zip_t)
Note: Defined as class CArray<zip_t,zip_t &>
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 zip_t* m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
5.3 CB Structures
• CBaldurChitin
• CBaldurEngine
404 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CBaldurMessage
• CBaldurProjector
• CBiographyFile
• CBlood
• CBloodPool
• CBmpFile
• CBounceEntry
• CBounceList
• CButtonData
5.3.1 CBaldurChitin
Used by the CBaldurChitin Class
Offset Size Type Field0x00 3344 CChitin m_cChitin0xD10 4 CInfCursor* m_pObjectCursor0xD14 4 CInfGame* m_pObjectGame0xD18 4 CDungeonMaster* m_pEngineDM0xD1C 4 CBaldurProjector* m_pEngineProjector0xD20 4 CScreenAI* m_pEngineAI0xD24 4 CScreenCharacter* m_pEngineCharacter0xD28 4 CScreenCreateChar* m_pEngineCreateChar0xD2C 4 CScreenCreateParty* m_pEngineCreateParty0xD30 4 CScreenInventory* m_pEngineInventory0xD34 4 CScreenJournal* m_pEngineJournal0xD38 4 CScreenLoad* m_pEngineLoad0xD3C 4 CScreenMap* m_pEngineMap0xD40 4 CScreenOptions* m_pEngineOptions0xD44 4 CScreenPriestSpell* m_pEnginePriestSpell0xD48 4 CScreenSave* m_pEngineSave0xD4C 4 CScreenStart* m_pEngineStart0xD50 4 CScreenWizSpell* m_pEngineWizSpell0xD54 4 CScreenWorld* m_pEngineWorld0xD58 4 CScreenStore* m_pEngineStore0xD5C 4 CScreenMultiPlayer* m_pEngineMultiPlayer0xD60 4 CScreenConnection* m_pEngineConnection0xD64 4 CScreenWorldMap* m_pEngineWorldMap0xD68 4 CScreenChapter* m_pEngineChapter0xD6C 4 CScreenMovies* m_pEngineMovies0xD70 4 CScreenDLC* m_pEngineDLC0xD74 60 CTlkTable m_cTlkTable0xDB0 704 CCacheStatus m_cCachingStatus0x1070 8 CScriptCache m_scriptCache0x1078 292 CBaldurMessage m_cBaldurMessage0x119C 32 CMessageHandler m_cMessageHandler0x11bC 4 int m_bFontRectOutline
Continued on next page
5.3. CB Structures 405
EEex Documentation, Release 1.0
Table 3 – continued from previous page0x11C0 1 unsigned char m_bCDScanDone0x11C1 1 unsigned char m_bCDFoundDrive
2 <padding>0x11C4 4 CString m_sCDDriveName0x11C8 1 unsigned char m_bCDMediaInDrive0x11C9 1 unsigned char m_bCDFoundBaldurCD0x11CA 1 unsigned char m_bIsAutoStarting
1 <padding>0x11CC 4 int m_bDropPanels0x11D0 4 int m_bDropCaps0x11D4 4 int m_bDisableMovies0x11D8 4 int m_bStartConfig0x11DC 4 int m_bSuperSpeedAI0x11E0 4 int m_bFirstRun0x11E4 4 int m_nInstallType0x11E8 4 int m_bUseNewGui0x11EC 32 CVidFont m_preLoadedFont0x120C 168 CVidMosaic m_tiledBackground
4 <padding>
5.3.2 CBaldurEngine
Offset Size Type Field0x00 36 CWarp m_cWarp0x24 4 int m_nSelectedCharacter0x28 4 int m_nPickedCharacter
5.3.3 CBaldurMessage
Used by the CBaldurMessage Class
Offset Size Type Field0x00 1 unsigned char m_bInOnObjectAdd0x01 1 unsigned char m_bInOnObjectDelete0x02 1 unsigned char m_bInOnRestAnnounce0x03 1 unsigned char m_bInOnJournalAnnounce0x04 1 unsigned char m_bInOnAreaMapNoteAnnounce0x05 1 unsigned char m_bInOnAnnounceBiography0x06 1 unsigned char m_bInHandleBlockingMessages0x07 1 unsigned char m_bPlayerShutdown0x08 64 CChatBuffer m_cChatBuffer0x48 1 unsigned char m_nSignalQueueSize0x49 1 unsigned char m_nSignalQueueStart0x4A 1 unsigned char m_nSignalQueueEnd
Continued on next page
406 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 4 – continued from previous page0x4B 24 unsigned char m_pnSignalFrom[24]0x63 24 unsigned char m_pnSignalType[24]0x7B 24 unsigned char m_pnSignalData[24]0x93 1 unsigned char m_bDeleteAreaPolling0x94 4 CString m_sDeleteAreaString0x98 4 unsigned long m_dwDeleteAreaTimeout0x9C 6 unsigned char m_pnDeleteAreaVotes[6]
2 <padding>0xA4 24 int m_pnDeleteAreaVoters[6]0xBC 1 unsigned char m_bCloseSessionPolling
3 <padding>0xC0 4 unsigned long m_dwCloseSessionTimeout0xC4 6 unsigned char m_pnCloseSessionVotes[6]
2 <padding>0xCC 24 int m_pnCloseSessionVoters[6]0xE4 24 int m_pRemovedPlayerID[6]0xFC 1 unsigned char m_bRemovedPlayerID0xFD 1 unsigned char m_bDialogRequestPending0xFE 1 unsigned char m_bDialogReplyReturned0xFF 1 unsigned char m_bDialogReplyValue0x100 4 int m_nDialogReplyUpdates0x104 1 unsigned char m_bLeaveAreaLuaRequestPending0x105 1 unsigned char m_bLeaveAreaLuaReplyReturned0x106 1 unsigned char m_nLeaveAreaLuaReplyValue0x107 1 unsigned char m_bLeaveAreaNameRequestPending0x108 1 unsigned char m_bLeaveAreaNameReplyReturned0x109 1 unsigned char m_nLeaveAreaNameReplyValue0x10A 1 unsigned char m_bMultiplayerSynchClientPending0x10B 1 unsigned char m_bMultiplayerSynchClientFinished0x10C 1 unsigned char m_bMultiplayerSynchServerPending0x10D 1 unsigned char m_bMultiplayerSynchServerFinished0x10E 1 unsigned char m_nMultiplayerSynchClientLocation0x10F 1 unsigned char m_bVersionControlShutdown0x110 4 CString m_sVersionControlShutdownClientString0x114 4 CString m_sVersionControlShutdownServerString0x118 1 unsigned char m_nVersionControlShutdownReason
3 <padding>0x11C 4 unsigned long m_dwSignalSecondsToTimeout0x120 1 unsigned char m_bMultiplayerSessionShutdown0x121 1 unsigned char m_bInReputationChange0x122 1 unsigned char m_bInMessageSetDrawPoly
1 <padding>
5.3.4 CBaldurProjector
Used by the CBaldurProjector Class
5.3. CB Structures 407
EEex Documentation, Release 1.0
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 4 CResWebm* m_pMovie0x30 4 int bStretchToScreen0x34 4 CFile* mve_file0x38 4 int m_deactivateEngine0x3C 24 CKeyInfo m_pVirtualKeys[2]0x54 8 int m_pVirtualKeysFlags[2]0x5C 28 CTypedPtrList m_movieResRef0x78 1 unsigned char m_bSelectEngine0x79 1 unsigned char m_bFirstRender
2 <padding>0x7C 4 void* m_pCodec0x80 4 int m_nFirstFrameTime0x84 20 CSound m_cSoundOverride0x98 8 CResRef m_cSubtitles0xA0 32 CVidFont m_vidFont0xC0 4 int m_bDisplayTOBMovie
5.3.5 CBiographyFile
Offset Size Type Field0x00 12 CResHelper m_cResHelper
5.3.6 CBlood
Offset Size Type Field0x00 4 CGameArea* m_pArea0x04 28 CTypedPtrList m_particleList0x20 28 CTypedPtrList m_lstSplashParticles0x3C 8 CPoint m_refPoint0x44 8 CPoint m_pos0x4C 4 long m_posZ0x50 2 short m_nTimeStamp
2 <padding>0x54 12 unsigned long m_aColors[3]0x60 16 CRect m_rBounding0x70 2 short m_nDirection0x72 2 unsigned short m_particleType0x74 2 unsigned short m_bloodType
2 <padding>0x78 4 long m_nCharHeight0x7C 1 unsigned char m_bLeavePool
3 <padding>
408 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.3.7 CBloodPool
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 28 CTypedPtrList m_particleList0x64 2 unsigned short m_nDensity0x66 2 unsigned short m_nNumParticles0x68 2 unsigned short m_nLifeTime
2 <padding>0x6C 4 unsigned long m_rgbColor0x70 8 CPoint m_refPoint0x78 16 CRect m_rBounding
5.3.8 CBmpFile
Offset Size Type Field0x00 12 CResHelper m_cResHelper
5.3.9 CBounceEntry
Offset Size Type Field0x00 4 long m_levelDecrement0x04 4 unsigned long m_effectId0x08 4 CProjectile* m_pProjectile0x0C 4 int m_decrementOnly0x10 4 unsigned long m_string0x14 4 int m_stringOnly0x18 4 int m_recoverSpellLevels
5.3.10 CBounceList
Used by the CBounceList Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.3. CB Structures 409
EEex Documentation, Release 1.0
5.3.11 CButtonData
Offset Size Type Field0x00 8 CResRef m_icon0x08 4 unsigned long m_name0x0C 8 CResRef m_launcherIcon0x14 4 unsigned long m_launcherName0x18 2 short m_count
2 <padding>0x1C 20 CAbilityId m_abilityId0x30 1 unsigned char m_bDisabled0x31 1 unsigned char m_bDisplayCount
2 <padding>
5.4 CC Structures
• CCacheStatus
• CCallResult
• CCallbackBase
• CCharacterFile
• CChatBuffer
• CChitin
• CCmdTarget
• CColorEffect
• CColorEffects
• CColorRange
• CColorRanges
• CContingency
• CContingencyList
• CContingencySpell
• CCreatureFile
• CCreatureFileEquipment
• CCreatureFileHeader
• CCreatureFileItem
• CCreatureFileKnownSpell
• CCreatureFileMemorizedSpell
• CCreatureFileMemorizedSpellLevel
• CCreatureFileOffsets
• CCriticalEntry
410 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CCriticalEntryList
• CCrypt
5.4.1 CCacheStatus
Used by the CCacheStatus Class
Offset Size Type Field0x00 4 int m_nDrawnBars0x04 4 int m_nScreensDrawn0x08 4 int m_bDemandedResources0x0C 4 int m_bTravelScreen0x10 4 long m_nProgressBarCaption0x14 4 long m_nParchmentCaption0x18 4 unsigned long m_dwLastUpdateTickCount0x1C 4 int m_nTimeToNewHint0x20 4 int m_nCurrentHint0x24 4 long m_nCurrentHintRef0x28 4 int m_bWaiting0x2C 32 CVidFont m_vidFont0x4C 32 CVidFont m_initialsFont0x6C 32 CVidFont m_parchmentFont0x8C 168 CVidMosaic m_titleBar0x134 192 CVidCell m_skullAnimating0x1F4 192 CVidCell m_progressBar0x2B4 4 int m_nAnimationFrame0x2B8 4 int m_nAnimationDirection0x2BC 4 int m_bActivateEngine
5.4.2 CCallResult
Offset Size Type Field0x00 12 CCallbackBase m_cCallbackBase
4 <padding>0x10 8 QWORD (unsigned __int64) m_hAPICall0x18 4 CSteam* m_pObj0x1C 4 void __thiscall * m_Func
5.4.3 CCallbackBase
Offset Size Type Field0x00 4 DWORD vfptr0x04 1 unsigned char m_nCallbackFlags
3 <padding>0x08 4 int m_iCallback
5.4. CC Structures 411
EEex Documentation, Release 1.0
5.4.4 CCharacterFile
Offset Size Type Field0x00 12 CResHelper cResHelper
5.4.5 CChatBuffer
Used by the CChatBuffer Class
Offset Size Type Field0x00 28 CTypedPtrList m_lLabels0x1c 28 CTypedPtrList m_lMessages0x38 4 int m_nMessageCount0x3C 4 int m_nDisplayCount
5.4.6 CChitin
Used by the CChitin Class
Offset Size Type Field0x00 4 vfptr vfptr
4 <padding>0x08 4 int m_mouseLButton0x0C 4 int m_mouseRButton0x10 4 int m_bMouseLButtonDown0x14 8 POINT m_mouseLDblClickPoint0x1C 4 unsigned int m_mouseLDblClickCount0x20 4 int m_bMouseRButtonDown0x24 8 POINT m_mouseRDblClickPoint0x2C 4 unsigned int m_mouseRDblClickCount0x30 4 int m_bMouseMButtonDown0x34 8 POINT m_mouseMDblClickPoint0x3C 4 unsigned int m_mouseMDblClickCount0x40 4 unsigned int m_mouseDblClickTime0x44 8 SIZE m_mouseDblClickSize0x4C 4 int bEngineActive0x50 4 int bServicingEnabled0x54 4 int bMessagesEnabled0x58 28 CObList lEngines0x74 4 unsigned int nIterations0x78 4 CWarp* pStartingEngine
Continued on next page
412 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 5 – continued from previous page0x7C 4 unsigned int nTimer0x80 4 unsigned int nTimerRes0x84 4 CString m_sCommandLine0x88 16 CRect m_rClient0x98 1 unsigned char m_bReInitializing0x99 1 unsigned char m_bScreenEdgeScroll
2 <padding>0x9C 4 unsigned long m_opSystemPlatformId0xA0 2 short m_capsLockState
2 <padding>0xA4 8 CPoint m_ptScreen0xAC 4 int m_bStartUpHost0xB0 4 int m_bStartUpConnect0xB4 4 CString m_sStartUpAddress0xB8 4 CString m_sStartUpPort0xBC 4 CString m_sStartUpPlayer0xC0 4 CString m_sStartUpPassword0xC4 4 int m_bStartUpNewGame0xC8 4 int m_bStartUpLoadGame0xCC 4 CString m_sStartUpSession0xD0 1 unsigned char m_bStartUpDirectPlayLobby0xD1 1 unsigned char m_bStartUpGameSpyLocation
2 <padding>0xD4 4 CString m_sStartUpGameSpyLocation0xD8 1 unsigned char m_bStartUpThroneOfBhaal
3 <padding>0xDC 4 CSoundMixer* cSoundMixer0xE0 4 int m_nMaxPlayers0xE4 4 int m_nCurrentSong0xE8 16 _EAXPRESET m_nSoundEnvironment0xF8 4 int m_bSoundInitialized0xfc 1 unsigned char padding
3 <padding>0x100 4 int m_bInMouseWheelQueue0x104 28 CTypedPtrList m_lstMouseWheel0x120 4 unsigned long m_wheelScrollLines0x124 4 int m_bIsMouseInWindow0x128 4 int m_bFrameOutline0x12C 4 int m_bUseMirrorFX0x130 4 unsigned int m_msgAutoPlay0x134 4 void* m_hEvent0x138 1 unsigned char m_bUsePlanescapeSoundReduction Curve
3 <padding>0x13C 4 unsigned long m_nSoundReductionCurveRadius0x140 4 unsigned long m_nTickCount0x144 4 int m_nAIPerSec0x148 4 int m_nAIElasped0x14C 4 unsigned long m_nRenderTickCount0x150 4 int m_nRenderPerSec0x154 4 int m_nRenderElasped
Continued on next page
5.4. CC Structures 413
EEex Documentation, Release 1.0
Table 5 – continued from previous page0x158 4 int m_nAISleeper0x15C 4 int m_bIsTouchUI0x160 4 int m_bUseBGRA0x164 4 int m_bRenderTilesLinear0x168 4 CString m_sFontName0x16C 4 int m_nFullFrameTimer0x170 4 int m_nGameTimer0x174 4 int m_nRenderTimer0x178 4 int m_nSearchTimer0x17C 4 CWarp* pActiveEngine0x180 4 CVideo cVideo0x184 2408 CNetwork cNetwork
4 <padding>0xAF0 328 CSteam cSteam0xC38 1 unsigned char padding2
3 <padding>0xC3C 4 int bPointerUpdated0xC40 8 CPoint cMousePosition0xC48 4 long nAUCounter0xC4C 4 int bInTimer0xC50 4 int m_AIStale0xC54 4 int m_displayStale0xC58 4 int m_bInSyncUpdate0xC5C 4 unsigned long m_keyRepeatDelay0xC60 4 unsigned long m_keyRepeatRate0xC64 112 CProgressBar cProgressBar0xCD4 2 unsigned short m_nAICounter
2 <padding>0xCD8 4 int m_bManualFrameControl0xCDC 4 int m_displayDebug0xCE0 4 int m_displaySerialize0xCE4 4 int m_bExitOnError0xCE8 4 int m_bEnableCucumber0xCEC 4 CResRef * pCurRes0xCF0 4 CString m_sFontNameNormal0xCF4 4 CString m_sFontNameRealms0xCF8 4 CString m_sFontNameStoneBig0xCFC 4 CString m_sFontNameStoneSml0xD00 4 CString m_sFontNameToolFont0xD04 4 CString m_sFontNameFloatTxt0xD08 4 int m_bDisplaySubtitles0xD0C 4 int m_bReverseMouseWheelZoom
414 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.4.7 CClosure
Offset Size Type Field0x00 4 GCObject* next0x04 1 unsigned char tt0x05 1 unsigned char marked0x06 1 unsigned char nupvalues
1 <padding>0x08 4 GCObject* gclist0x0C 4 int (__cdecl * f)(lua_State*)0x10 8 lua_TValue upvalue[1]
5.4.8 CCmdTarget
Offset Size Type Field0x00 4 CObject m_cObject
5.4.9 CColorEffect
Offset Size Type Field0x00 1 unsigned char m_effectType0x01 1 unsigned char m_range
2 <padding>0x04 4 unsigned long m_tintColor0x08 1 unsigned char m_periodLength
3 <padding>
5.4.10 CColorEffects
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.4.11 CColorRange
Offset Size Type Field0x00 1 unsigned char m_range0x01 1 unsigned char m_color
5.4. CC Structures 415
EEex Documentation, Release 1.0
5.4.12 CColorRanges
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.4.13 CContingency
Offset Size Type Field0x00 48 CAITrigger m_cTrigger0x30 8 CResRef m_cSpellRes0x38 8 CResRef m_cSpellRes20x40 8 CResRef m_cSpellRes30x48 20 CAIObjectType m_cTarget0x5C 4 unsigned long m_dwFlags0x60 324 CGameEffect m_parentEffect0x1A4 4 unsigned long m_dwTarget0x1A8 4 unsigned long m_dwCondition0x1AC 4 unsigned long m_nLastCheck
5.4.14 CContingencyList
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.4.15 CContingencySpell
Offset Size Type Field0x00 8 unsigned char m_spellId0x08 8 unsigned char m_origId0x10 2 unsigned short m_flags
5.4.16 CCreatureFile
Offset Size Type Field0x00 12 CResHelper cResHelper
416 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.4.17 CCreatureFileEquipment
Offset Size Type Field0x00 2 unsigned short m_helmetItem0x02 2 unsigned short m_armorItem0x04 2 unsigned short m_shieldItem0x06 2 unsigned short m_gauntletsItem0x08 2 unsigned short m_ringLeftItem0x0A 2 unsigned short m_ringRightItem0x0C 2 unsigned short m_amuletItem0x0E 2 unsigned short m_beltItem0x10 2 unsigned short m_bootsItem0x12 8 unsigned short m_weaponItem[4]0x1A 8 unsigned short m_ammoItem[4]0x22 2 unsigned short m_cloakItem0x24 40 unsigned short m_miscItem[20]0x4C 2 unsigned short m_selectedWeapon0x4E 2 unsigned short m_selectedWeaponAbility
Notes
Related to CRE V1.0 Item Slots
5.4.18 CCreatureFileHeader
Offset Size Type Field0x00 4 unsigned long m_name0x04 4 unsigned long m_apparentName0x08 4 unsigned long m_flags0x0C 4 unsigned long m_xpValue0x10 4 unsigned long m_xp0x14 4 unsigned long m_gold0x18 4 unsigned long m_generalState0x1C 2 short m_hitPoints0x1E 2 unsigned short m_maxHitPointsBase0x20 4 unsigned long m_animationType0x24 7 unsigned char m_colors[7]0x2B 1 unsigned char m_effectVersion0x2C 8 unsigned char m_portraitSmall[8]0x34 8 unsigned char m_portraitLarge[8]0x3C 1 unsigned char m_reputation0x3D 1 unsigned char m_hideInShadowsBase0x3E 2 short m_armorClass0x40 2 short m_armorClassBase0x42 2 short m_armorClassCrushingAdjustment0x44 2 short m_armorClassMissileAdjustment0x46 2 short m_armorClassPiercingAdjustment0x48 2 short m_armorClassSlashingAdjustment
Continued on next page
5.4. CC Structures 417
EEex Documentation, Release 1.0
Table 6 – continued from previous page0x4A 1 char m_toHitArmorClass0Base0x4B 1 unsigned char m_numberOfAttacksBase0x4C 1 unsigned char m_saveVSDeathBase0x4D 1 unsigned char m_saveVSWandsBase0x4E 1 unsigned char m_saveVSPolyBase0x4F 1 unsigned char m_saveVSBreathBase0x50 1 unsigned char m_saveVSSpellBase0x51 1 char m_resistFireBase0x52 1 char m_resistColdBase0x53 1 char m_resistElectricityBase0x54 1 char m_resistAcidBase0x55 1 char m_resistMagicBase0x56 1 char m_resistMagicFireBase0x57 1 char m_resistMagicColdBase0x58 1 char m_resistSlashingBase0x59 1 char m_resistCrushingBase0x5A 1 char m_resistPiercingBase0x5B 1 char m_resistMissileBase0x5C 1 unsigned char m_detectIllusionBase0x5D 1 unsigned char m_setTrapsBase0x5E 1 unsigned char m_loreBase0x5F 1 unsigned char m_lockPickingBase0x60 1 unsigned char m_moveSilentlyBase0x61 1 unsigned char m_trapsBase0x62 1 unsigned char m_pickPocketBase0x63 1 unsigned char m_fatigue0x64 1 unsigned char m_intoxication0x65 1 char m_luckBase0x66 15 char m_proficiencies[15]0x75 1 unsigned char m_bNightmare0x76 1 unsigned char m_nTranslucent0x77 1 char m_repChangeKilled0x78 1 char m_repChangeJoined0x79 1 char m_repChangeKicked0x7A 1 unsigned char m_undeadLevel0x7B 1 unsigned char m_trackingBase0x7C 32 char m_trackingTarget[32]0x9C 400 unsigned long m_speech[100]0x22C 1 unsigned char m_level10x22D 1 unsigned char m_level20x22E 1 unsigned char m_level30x22F 1 unsigned char m_sex0x230 1 unsigned char m_STRBase0x231 1 unsigned char m_STRExtraBase0x232 1 unsigned char m_INTBase0x233 1 unsigned char m_WISBase0x234 1 unsigned char m_DEXBase0x235 1 unsigned char m_CONBase0x236 1 unsigned char m_CHRBase0x237 1 unsigned char m_morale
Continued on next page
418 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 6 – continued from previous page0x238 1 unsigned char m_moraleBreak0x239 1 unsigned char m_hatedRace0x23A 2 unsigned short m_moraleRecoveryTime0x23C 2 unsigned short m_mageSpecUpperWord0x23E 2 unsigned short m_mageSpecialization0x240 8 unsigned char m_scriptOverRide[8]0x248 8 unsigned char m_scriptClass[8]0x250 8 unsigned char m_scriptRace[8]0x258 8 unsigned char m_scriptGeneral[8]0x260 8 unsigned char m_scriptDefault[8]
Notes
Related to CRE V1.0 Header
• m_generalState (offset 0x18) contains values found in STATE.IDS
• m_animationType (offset 0x20) contains values found in ANIMATE.IDS
• m_effectVersion (offset 0x2B) contains: 0 version 1 EFF or 1 version 2 EFF
• m_hatedRace (offset 0x239) contains racial enemy values found in RACE.IDS
5.4.19 CCreatureFileItem
Offset Size Type Field0x00 8 unsigned char m_itemId[8]0x08 2 unsigned short m_wear0x0A 6 unsigned short m_usageCount[3]0x10 4 unsigned long m_dynamicFlags
Notes
Related to CRE V1.0 Items Table
• m_wear (offset 0x08) item expiration time
• m_usageCount[3] (offset 0x0A) item quantity/charges
• m_dynamicFlags (offset 0x10) contains: bit 0 = Identified, bit 1 = Unstealable, bit 2 = Stolen, bit 3 =Undroppable
5.4.20 CCreatureFileKnownSpell
Offset Size Type Field0x00 8 unsigned char m_knownSpellId[8]0x08 2 unsigned short m_spellLevel0x0A 2 unsigned short m_magicType
Notes
5.4. CC Structures 419
EEex Documentation, Release 1.0
Related to CRE V1.0 Known Spells
• m_magicType (offset 0x0A) contains: 0 = Priest, 1 = Wizard, 2 = Innate
5.4.21 CCreatureFileMemorizedSpell
Offset Size Type Field0x00 8 unsigned char m_spellId[8]0x08 2 unsigned short m_flags0x0A 2 unsigned char structureAlignment1[2]
Notes
Related to CRE V1.0 Memorized Spells Table
• m_flags (offset 0x08) contains: bit 0 = Memorised or bit 1 = Disabled
5.4.22 CCreatureFileMemorizedSpellLevel
Offset Size Type Field0x00 2 unsigned short m_spellLevel0x02 2 unsigned short m_baseCount0x04 2 unsigned short m_count0x06 2 unsigned short m_magicType0x08 4 unsigned long m_memorizedStartingSpell0x0C 4 unsigned long m_memorizedCount
Notes
Related to CRE V1.0 Spell Memorization Info
• m_magicType (offset 0x06) contains: 0 = Priest, 1 = Wizard, 2 = Innate
• m_memorizedStartingSpell (offset 0x08) index into memorized spells (array of CCreatureFileMemorized-Spell structures) of first memorized spell of this type in this level
• m_memorizedCount (offset 0x0C) count of memorized spell entries in memorized spells array of memorizedspells of this type in this level
420 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.4.23 CCreatureFileOffsets
Offset Size Type Field0x00 1 unsigned char m_enemyAlly0x01 1 unsigned char m_general0x02 1 unsigned char m_race0x03 1 unsigned char m_class0x04 1 unsigned char m_specifics0x05 1 unsigned char m_gender0x06 1 unsigned char m_specialCase[5]0x0B 1 unsigned char m_alignment0x0C 4 long m_instance0x10 32 char m_name[32]0x30 4 unsigned long m_knownSpellListOffset0x34 4 unsigned long m_knownSpellListCount0x38 4 unsigned long m_memorizationLevelListOffset0x3C 4 unsigned long m_memorizationLevelListCount0x40 4 unsigned long m_memorizationSpellListOffset0x44 4 unsigned long m_memorizationSpellListCount0x48 4 unsigned long m_equipmentListOffset0x4C 4 unsigned long m_itemListOffset0x50 4 unsigned long m_itemListCount0x54 4 unsigned long m_effectListOffset0x58 4 unsigned long m_effectListCount0x5C 8 unsigned char m_dialog[8]
Notes
Related to offset 0x0270 of CRE V1.0 Header
5.4.24 CCriticalEntry
Offset Size Type Field0x00 8 CResRef m_res0x08 4 int m_hitOrMiss0x0C 4 int m_slot0x10 4 int m_attackType0x14 4 int m_itemType0x18 4 int m_bonus
5.4.25 CCriticalEntryList
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.4. CC Structures 421
EEex Documentation, Release 1.0
5.4.26 CCrypt
Offset Size Type Field1 <padding>
5.5 CD Structures
• CDLC
• CDLC_Content
• CDWordArray
• CDeathSound
• CDerivedStats
• CDerivedStatsTemplate
• CDialogFile
• CDialogFile_ActionScript
• CDialogFile_Dialog
• CDialogFile_Header
• CDialogFile_Reply
• CDialogFile_ReplyConditional
• CDialogFile_StartingConditional
• CDungeonMaster
5.5.1 CDLC
Offset Size Type Field0x00 4 CString name0x04 4 CString image0x08 4 int title0x0C 4 int description0x10 4 CString ios_name0x14 4 int purchased0x18 4 CString android_name
5.5.2 CDLC_Content
Offset Size Type Field0x00 4 CString name0x04 4 int dlc_id
422 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.5.3 CDWordArray
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 unsigned long* m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
5.5.4 CDeathSound
Offset Size Type Field0x00 4 long m_soundLength0x04 4 long m_characterId0x08 2 short m_soundNum
2 <padding>0x0C 4 int m_started0x10 4 CAITrigger* m_pTrigger
5.5.5 CDerivedStats
Used by the CDerivedStats Class
Offset Size Type Field0x00 752 CDerivedStatsTemplate m_cDerivedStatsTemplate0x2F0 28 CImmunitiesProjectile m_cImmunitiesProjectile0x30C 28 CImmunitiesEffect m_cImmunitiesEffect0x328 28 CImmunitiesAIType m_cImmunitiesAIType0x344 40 CImmunitiesSpellLevel m_cImmunitiesSpellLevel0x36C 28 CImmunitiesWeapon m_cImmunitiesWeapon0x388 28 CSelectiveBonusList m_cToHitBonusList0x3A4 28 CSelectiveBonusList m_cDamageBonusList0x3C0 28 CImmunitiesItemEquipList m_cImmunitiesItemEquip0x3DC 28 CImmunitiesItemTypeEquipList m_cImmunitiesItemTypeEquip0x3F8 28 CImmunitiesProjectile m_cBounceProjectile0x414 28 CImmunitiesEffect m_cBounceEffect0x430 40 CImmunitiesSpellLevel m_cBounceSpellLevel0x458 80 CImmunitiesSpellLevelDecrementing m_cBounceProjectileLevelDec0x4A8 80 CImmunitiesSpellLevelDecrementing m_cImmunitiesProjectileLevelDec0x4F8 28 CImmunitiesSchoolAndSecondary m_cImmunitiesSchool0x514 28 CImmunitiesSchoolAndSecondary m_cImmunitiesSecondaryType0x530 28 CImmunitiesSchoolAndSecondary m_cBounceSchool0x54C 28 CImmunitiesSchoolAndSecondary m_cBounceSecondaryType0x568 28 CImmunitiesItemEquipList m_cImmunitiesItemUse
Continued on next page
5.5. CD Structures 423
EEex Documentation, Release 1.0
Table 7 – continued from previous page0x584 28 CImmunitiesItemTypeEquipList m_cImmunitiesItemTypeUse0x5A0 28 CImmunitiesSpellList m_cImmunitiesSpell0x5BC 28 CImmunitiesSpellList m_cBounceSpell0x5D8 28 CImmunitiesSchoolAndSecondaryDecrementing m_cImmunitiesSchoolLevelDec0x5F4 28 CImmunitiesSchoolAndSecondaryDecrementing m_cImmunitiesSecondaryTypeLevelDec0x610 28 CImmunitiesSchoolAndSecondaryDecrementing m_cBounceSchoolLevelDec0x62C 28 CImmunitiesSchoolAndSecondaryDecrementing m_cBounceSecondaryTypeLevelDec0x648 28 CContingencyList m_cContingencyList0x664 32 CPersistantEffectListRegenerated m_cRegeneratedPersistantEffectList0x684 80 CImmunitiesSpellLevelDecrementing m_cSpellTrapLevelDec0x6D4 28 CContingencyList m_cSequencerList0x6F0 28 CColorRanges m_appliedColorRanges0x70C 28 CColorEffects m_appliedColorEffects0x728 144 CCreatureFileMemorizedSpellLevel m_memorizedSpellsLevelMage[9]0x7B8 112 CCreatureFileMemorizedSpellLevel m_memorizedSpellsLevelPriest[7]0x828 64 int m_disabledButtons[16]0x868 12 int m_disabledSpellTypes[3]0x874 4 int m_disableSpells0x878 28 CApplyEffectList m_cExtraMeleeEffects0x894 28 CApplyEffectList m_cExtraRangedEffects0x8B0 28 CSelectiveBonusList m_cProtectionList0x8CC 28 CSelectiveWeaponTypeList m_cSelectiveWeaponTypeList0x8E8 28 CCriticalEntryList m_cCriticalEntryList0x904 32 unsigned long m_spellStates[8]
5.5.6 CDerivedStatsTemplate
Offset Size Type Field0x00 4 unsigned long m_generalState0x04 2 short m_nMaxHitPoints0x06 2 short m_nArmorClass0x08 2 short m_nACCrushingMod0x0A 2 short m_nACMissileMod0x0C 2 short m_nACPiercingMod0x0E 2 short m_nACSlashingMod0x10 2 short m_nTHAC00x12 2 short m_nNumberOfAttacks0x14 2 short m_nSaveVSDeath0x16 2 short m_nSaveVSWands0x18 2 short m_nSaveVSPoly0x1A 2 short m_nSaveVSBreath0x1C 2 short m_nSaveVSSpell0x1E 2 short m_nResistFire0x20 2 short m_nResistCold0x22 2 short m_nResistElectricity0x24 2 short m_nResistAcid0x26 2 short m_nResistMagic
Continued on next page
424 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 8 – continued from previous page0x28 2 short m_nResistMagicFire0x2A 2 short m_nResistMagicCold0x2C 2 short m_nResistSlashing0x2E 2 short m_nResistCrushing0x30 2 short m_nResistPiercing0x32 2 short m_nResistMissile0x34 2 short m_nLore0x36 2 short m_nLockPicking0x38 2 short m_nMoveSilently0x3A 2 short m_nTraps0x3C 2 short m_nPickPocket0x3E 2 short m_nFatigue0x40 2 short m_nIntoxication0x42 2 short m_nLuck0x44 2 short m_nTracking0x46 2 unsigned short m_nLevel10x48 2 unsigned short m_nLevel20x4A 2 unsigned short m_nLevel30x4C 2 short m_nSex0x4E 2 short m_nSTR0x50 2 short m_nSTRExtra0x52 2 short m_nINT0x54 2 short m_nWIS0x56 2 short m_nDEX0x58 2 short m_nCON0x5A 2 short m_nCHR0x5C 4 unsigned long m_nXPValue0x60 4 unsigned long m_nXP0x64 4 unsigned long m_nGold0x68 4 unsigned long m_nMoraleBreak0x6C 4 unsigned long m_nMoraleRecoveryTime0x70 2 short m_nReputation0x72 2 short m_nHatedRace0x74 4 long m_nHideInShadows0x78 4 long m_nDetectIllusion0x7C 4 long m_nSetTraps0x80 2 short m_nDamageBonus0x82 2 short m_nSpellFailureMage0x84 2 short m_nSpellFailurePriest0x86 2 short m_nSpellDurationModMage0x88 2 short m_nSpellDurationModPriest0x8A 2 short m_nTurnUndeadLevel0x8C 2 short m_nBackstabDamageMultiplier0x8E 2 short m_nLayOnHandsAmount0x90 4 int m_bHeld0x94 4 int m_bPolymorphed0x98 4 int m_bIdentifyMode0x9C 4 int m_bEntangle0xA0 4 int m_bSanctuary0xA4 4 int m_bMinorGlobe
Continued on next page
5.5. CD Structures 425
EEex Documentation, Release 1.0
Table 8 – continued from previous page0xA8 4 int m_bShieldGlobe0xAC 4 int m_bGrease0xB0 4 int m_bWeb0xB4 4 int m_bCasterHold0xB8 2 short m_nTranslucent0xBA 2 short m_nEncumberance0xBC 2 short m_nMissileTHAC0Bonus0xBE 2 short m_nMagicDamageResistance0xC0 2 short m_nResistPoison0xC2 2 short m_nSpellDurationModBard0xC4 4 int m_bDoNotJump0xC8 4 int m_bAuraCleansing0xCC 4 unsigned long m_nCastingType0xD0 2 short m_nMentalSpeed0xD2 2 short m_nPhysicalSpeed0xD4 2 short m_nCastingLevelBonusMage0xD6 2 short m_nCastingLevelBonusCleric0xD8 4 int m_bSeeInvisible0xDC 4 int m_bIgnoreDialogPause0xE0 4 long m_nMinHitPoints0xE4 4 long m_THAC0BonusRight0xE8 4 long m_THAC0BonusLeft0xEC 4 long m_DamageBonusRight0xF0 4 long m_DamageBonusLeft0xF4 4 long m_nStoneSkins0xF8 4 long m_nProficiencyBastardSword0xFC 4 long m_nProficiencyLongSword0x100 4 long m_nProficiencyShortSword0x104 4 long m_nProficiencyAxe0x108 4 long m_nProficiencyTwoHandedSword0x10C 4 long m_nProficiencyKatana0x110 4 long m_nProficiencyScimitarWakisashiNinjaTo0x114 4 long m_nProficiencyDagger0x118 4 long m_nProficiencyWarhammer0x11C 4 long m_nProficiencySpear0x120 4 long m_nProficiencyHalberd0x124 4 long m_nProficiencyFlailMorningStar0x128 4 long m_nProficiencyMace0x12C 4 long m_nProficiencyQuarterStaff0x130 4 long m_nProficiencyCrossbow0x134 4 long m_nProficiencyLongBow0x138 4 long m_nProficiencyShortBow0x13C 4 long m_nProficiencyDart0x140 4 long m_nProficiencySling0x144 4 long m_nProficiencyBlackjack0x148 4 long m_nProficiencyGun0x14C 4 long m_nProficiencyMartialArts0x150 4 long m_nProficiency2Handed0x154 4 long m_nProficiencySwordAndShield0x158 4 long m_nProficiencySingleWeapon
Continued on next page
426 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 8 – continued from previous page0x15C 4 long m_nProficiency2Weapon0x160 4 long m_nProficiencyClub0x164 4 long m_nExtraProficiency20x168 4 long m_nExtraProficiency30x16C 4 long m_nExtraProficiency40x170 4 long m_nExtraProficiency50x174 4 long m_nExtraProficiency60x178 4 long m_nExtraProficiency70x17C 4 long m_nExtraProficiency80x180 4 long m_nExtraProficiency90x184 4 long m_nExtraProficiency100x188 4 long m_nExtraProficiency110x18C 4 long m_nExtraProficiency120x190 4 long m_nExtraProficiency130x194 4 long m_nExtraProficiency140x198 4 long m_nExtraProficiency150x19C 4 long m_nExtraProficiency160x1A0 4 long m_nExtraProficiency170x1A4 4 long m_nExtraProficiency180x1A8 4 long m_nExtraProficiency190x1AC 4 long m_nExtraProficiency200x1B0 4 long m_nPuppetMasterId0x1B4 4 long m_nPuppetMasterType0x1B8 4 long m_nPuppetType0x1BC 4 long m_nPuppetId0x1C0 4 int m_bCheckForBerserk0x1C4 4 int m_bBerserkStage10x1C8 4 int m_bBerserkStage20x1CC 4 long m_nDamageLuck0x1D0 8 CResRef m_cBardSong0x1D8 8 CResRef m_cBackStab0x1E0 4 long m_nVisualRange0x1E4 4 int m_bExplore0x1E8 4 int m_bThrullCharm0x1EC 4 int m_bSummonDisable0x1F0 4 int m_bSummonDisableAction0x1F4 2 short m_nHitBonus0x1F6 22 short m_nSpecificDamageBonus[11]0x20C 24 short m_nSchoolSaveBonus[12]0x224 4 unsigned long m_nKit0x228 4 int m_bForceSurge0x22C 4 long m_nSurgeMod0x230 4 int m_bImprovedHaste0x234 40 unsigned long m_nScriptingStates[10]0x25C 4 long m_nMeleeTHAC0Bonus0x260 4 long m_nMeleeDamageBonus0x264 4 long m_nMissileDamageBonus0x268 4 int m_bDisableCircle0x26C 4 long m_nFistTHAC0Bonus0x270 4 long m_nFistDamageBonus
Continued on next page
5.5. CD Structures 427
EEex Documentation, Release 1.0
Table 8 – continued from previous page0x274 4 unsigned long m_sClassStringOverrideMixed0x278 4 unsigned long m_sClassStringOverrideLower0x27C 2 short m_nClassTypeOverrideMixed0x27E 2 short m_nClassTypeOverrideLower0x280 4 int m_bPreventSpellProtectionEffects0x284 4 int m_bImmunityToBackStab0x288 4 long m_nLockPickingMTPBonus0x28C 4 long m_nMoveSilentlyMTPBonus0x290 4 long m_nTrapsMTPBonus0x294 4 long m_nPickPocketMTPBonus0x298 4 long m_nHideInShadowsMTPBonus0x29C 4 long m_nDetectIllusionMTPBonus0x2A0 4 long m_nSetTrapsMTPBonus0x2A4 4 int m_bPreventAISlowDown0x2A8 4 long m_nExistanceDelayOverride0x2AC 4 int m_bAnimationOnlyHaste0x2B0 4 int m_bNoPermanentDeath0x2B4 4 int m_bImmuneToTurnUndead0x2B8 4 long m_nChaosShield0x2BC 4 int m_bNPCBump0x2C0 4 int m_bUseAnyItem0x2C4 4 long m_nAssassinate0x2C8 4 int m_bSexChanged0x2CC 4 long m_nSpellFailureInnate0x2D0 4 int m_bImmuneToTracking0x2D4 4 int m_bDeadMagic0x2D8 4 int m_bImmuneToTimeStop0x2DC 4 int m_bImmuneToSequester0x2E0 4 long m_nStoneSkinsGolem0x2E4 4 long m_nLevelDrain0x2E8 4 int m_bDoNotDraw0x2EC 4 int m_bIgnoreDrainDeath
5.5.7 CDialogFile
Offset Size Type Field0x00 12 CResHelper cResHelper
5.5.8 CDialogFile_ActionScript
Offset Size Type Field0x00 4 unsigned long m_ScriptOffset0x04 4 unsigned long m_ScriptSize
428 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.5.9 CDialogFile_Dialog
Offset Size Type Field0x00 4 unsigned long m_DialogText0x04 4 unsigned long m_StartingReply0x08 4 unsigned long m_ReplyCount0x0C 4 unsigned long m_StartingConditionalScript
5.5.10 CDialogFile_Header
Offset Size Type Field0x00 4 unsigned long m_DialogEntryCount0x04 4 unsigned long m_DialogEntriesOffset0x08 4 unsigned long m_ReplyEntryCount0x0C 4 unsigned long m_ReplyEntriesOffset0x10 4 unsigned long m_StartingConditionsOffset0x14 4 unsigned long m_StartingConditionsCount0x18 4 unsigned long m_ReplyConditionsOffset0x1C 4 unsigned long m_ReplyConditionsCount0x20 4 unsigned long m_ActionsOffset0x24 4 unsigned long m_ActionCount0x28 4 unsigned long m_Flags
5.5.11 CDialogFile_Reply
Offset Size Type Field0x00 4 unsigned long m_Flags0x04 4 unsigned long m_ReplyText0x08 4 unsigned long m_JournalEntry0x0C 4 unsigned long m_ReplyConditional0x10 4 unsigned long m_ActionScript0x14 8 unsigned char m_LinkedObject[8]0x1C 4 unsigned long m_LinkedObjectDialogEntry
5.5.12 CDialogFile_ReplyConditional
Offset Size Type Field0x00 4 unsigned long m_ScriptOffset0x04 4 unsigned long m_ScriptSize
5.5. CD Structures 429
EEex Documentation, Release 1.0
5.5.13 CDialogFile_StartingConditional
Offset Size Type Field0x00 4 unsigned long m_ScriptOffset0x04 4 unsigned long m_ScriptSize
5.5.14 CDungeonMaster
Used by the CDungeonMaster Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine
5.6 CE Structures
• CException
• CExportCharacterHeader
5.6.1 CException
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 int m_bAutoDelete0x08 4 int m_bReadyForDelete
5.6.2 CExportCharacterHeader
Offset Size Type Field0x00 32 char m_name[32]0x20 4 unsigned long m_characterOffset0x24 4 unsigned long m_characterSize0x28 8 short m_quickWeaponsItemNum[4]0x30 8 short m_quickWeaponsAbilityNum[4]0x38 24 unsigned char m_quickSpellsSpellId[3][8]0x50 6 short m_quickItemsItemNum[3]0x56 6 short m_quickItemsAbilityNum[3]
430 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.7 CF Structures
• CFeedbackEntry
• CFile
• CFileException
• CFileFind
• CFileReaderParms
• CFileStatus
• CFileView
• CFixedAlloc
• CFixedAlloc::CNode
• CFog
5.7.1 CFeedbackEntry
Offset Size Type Field0x00 2 unsigned short feedBackId
2 <padding>0x04 4 long int10x08 4 long int20x0C 4 long int30x10 4 unsigned long ref10x14 4 long int40x18 4 CString stringIn
5.7.2 CFile
Used by the CFile Class
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 unsigned int m_hFile0x08 4 int m_bCloseOnDelete0x0C 4 CString m_strFileName
5.7. CF Structures 431
EEex Documentation, Release 1.0
5.7.3 CFileException
Used by the CFileException Class
Offset Size Type Field0x00 12 CException m_cException0x0C 4 int m_cause0x10 4 long m_lOsError0x14 4 CString m_strFileName
5.7.4 CFileFind
Used by the CFileFind Class
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CString m_strRoot0x08 4 void* m_pFoundInfo0x0C 4 void* m_pNextInfo0x10 4 void* m_hContext0x14 4 int m_bGotLast0x18 1 char m_chDirSeparator
3 <padding>
5.7.5 CFileReaderParms
Offset Size Type Field0x00 4 unsigned char* m_pSrc0x04 4 unsigned char* m_pSrcCurrent0x08 4 int m_nSrcLength
5.7.6 CFileStatus
Offset Size Type Field0x00 8 CTime m_ctime0x08 8 CTime m_mtime0x10 8 CTime m_atime0x18 4 long m_size0x1C 1 unsigned char m_attribute0x1D 1 unsigned char _m_padding
2 <padding>0x20 4 CString m_sFullName
4 <padding>
432 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.7.7 CFileView
Used by the CFileView Class
Offset Size Type Field0x00 20 file_t f0x14 16 view_t v0x24 4 int fileSize0x28 4 long filePos
5.7.8 CFixedAlloc
Offset Size Type Field0x00 4 unsigned int m_nAllocSize0x04 4 unsigned int m_nBlockSize0x08 4 CPlex* m_pBlocks0x0C 4 CFixedAlloc::CNode* m_pNodeFree
5.7.9 CFixedAlloc::CNode
Offset Size Type Field0x00 4 CFixedAlloc::CNode* pNext
5.7.10 CFog
Offset Size Type Field0x00 4 float* densityLast0x04 4 float* densityCurrent0x08 4 float* densityNext0x0C 4 int N0x10 4 float dt0x14 4 float diff0x18 4 float visc0x1C 4 float force0x20 4 float source0x24 4 int dvel0x28 4 float* u
Continued on next page
5.7. CF Structures 433
EEex Documentation, Release 1.0
Table 9 – continued from previous page0x2C 4 float* v0x30 4 float* u_prev0x34 4 float* v_prev0x38 4 float* dens0x3C 4 float* dens_prev0x40 1 bool pointEnabled
3 <padding>0x44 4 int pointAmount0x48 4 int pointDuration0x4C 8 CPoint pointPos0x54 4 float pointUForce0x58 4 float pointVForce0x5C 8 CPoint explosionPos0x64 4 int updateCounter0x68 1 bool fading0x69 1 bool initialized
2 <padding>0x6C 4 float alpha0x70 4 int contrast0x74 4 unsigned long innerColor0x78 4 unsigned long outerColor
5.8 CG Structures
• CGameAIArea
• CGameAIBase
• CGameAIGame
• CGameAbilityList
• CGameAddMapNote
• CGameAnimation
• CGameAnimationType
• CGameAnimationTypeAmbient
• CGameAnimationTypeAmbientStatic
• CGameAnimationTypeCharacter
• CGameAnimationTypeCharacterOld
• CGameAnimationTypeEffect
• CGameAnimationTypeFlying
• CGameAnimationTypeMonster
• CGameAnimationTypeMonsterAnkheg
• CGameAnimationTypeMonsterIcewind
• CGameAnimationTypeMonsterLarge16
• CGameAnimationTypeMonsterLarge
434 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CGameAnimationTypeMonsterLayered
• CGameAnimationTypeMonsterLayeredSpell
• CGameAnimationTypeMonsterMulti
• CGameAnimationTypeMonsterMultiNew
• CGameAnimationTypeMonsterOld
• CGameAnimationTypeMonsterQuadrant
• CGameAnimationTypeTownStatic
• CGameArea
• CGameAreaClairvoyanceEntry
• CGameAreaNotes
• CGameButtonList
• CGameChunk
• CGameContainer
• CGameDialogEntry
• CGameDialogIdentifier
• CGameDialogReply
• CGameDialogSprite
• CGameDoor
• CGameEffect
• CGameEffect Structures
• CGameEffectAC
• CGameEffectAIChange
• CGameEffectAddInnateAbility
• CGameEffectAlignmentChange
• CGameEffectAlignmentReversal
• CGameEffectAnimationChange
• CGameEffectApplyEffect
• CGameEffectApplyEffectEquipItem
• CGameEffectApplyEffectEquipItemType
• CGameEffectApplySpell
• CGameEffectApplySpellOnMove
• CGameEffectAssassination
• CGameEffectAttackNo
• CGameEffectAuraCleansing
• CGameEffectAwaken
• CGameEffectBackStabMod
5.8. CG Structures 435
EEex Documentation, Release 1.0
• CGameEffectBackStabSpell
• CGameEffectBardSong
• CGameEffectBase
• CGameEffectBerserk
• CGameEffectBerserkStage1
• CGameEffectBerserkStage2
• CGameEffectBlindness
• CGameEffectBlur
• CGameEffectBounceEffect
• CGameEffectBounceLevel
• CGameEffectBounceLevelDecrement
• CGameEffectBounceProjectile
• CGameEffectBounceSchool
• CGameEffectBounceSchoolDecrement
• CGameEffectBounceSecondaryType
• CGameEffectBounceSecondaryTypeDecrement
• CGameEffectBounceSpell
• CGameEffectCHR
• CGameEffectCON
• CGameEffectCalm
• CGameEffectCannotSaveOrRest
• CGameEffectCastSpell
• CGameEffectCastSpellPoint
• CGameEffectCastingFailure
• CGameEffectCastingGlow
• CGameEffectCastingLevelBonus
• CGameEffectChangeStatic
• CGameEffectChangeWeather
• CGameEffectChaosShield
• CGameEffectCharm
• CGameEffectCheckForBerserk
• CGameEffectClairvoyance
• CGameEffectClassStringOverride
• CGameEffectCleanAir
• CGameEffectColorChange
• CGameEffectColorGlowDissipate
436 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CGameEffectColorGlowPulse
• CGameEffectColorGlowSolid
• CGameEffectColorLightSolid
• CGameEffectColorTintSolid
• CGameEffectConfusion
• CGameEffectContingencyInstance
• CGameEffectContingencyStart
• CGameEffectCopySelf
• CGameEffectCreateItem
• CGameEffectCreateWeapon
• CGameEffectCriticalHitBonus
• CGameEffectCriticalHitSpell
• CGameEffectCriticalMissModifier
• CGameEffectCriticalMissSpell
• CGameEffectCureBlindness
• CGameEffectCureDeafness
• CGameEffectCureDisease
• CGameEffectCureFeebleMindedness
• CGameEffectCurePoison
• CGameEffectCurseApplyEffect
• CGameEffectDEX
• CGameEffectDamage
• CGameEffectDamageLuck
• CGameEffectDamageMod
• CGameEffectDamageVisualEffect
• CGameEffectDeafness
• CGameEffectDeath
• CGameEffectDefrost
• CGameEffectDestroyItem
• CGameEffectDestroySelf
• CGameEffectDestroyWeapon
• CGameEffectDetectAlignment
• CGameEffectDetectIllusion
• CGameEffectDetectTraps
• CGameEffectDisableButton
• CGameEffectDisableCircle
5.8. CG Structures 437
EEex Documentation, Release 1.0
• CGameEffectDisableSpellType
• CGameEffectDisease
• CGameEffectDisintegrate
• CGameEffectDispelEffects
• CGameEffectDispelInvisible
• CGameEffectDispelSanctuary
• CGameEffectDispelSchool
• CGameEffectDispelSchoolOne
• CGameEffectDispelSecondaryType
• CGameEffectDispelSecondaryTypeOne
• CGameEffectDisplayString
• CGameEffectDither
• CGameEffectDoNotDraw
• CGameEffectDrainChargeFromAllItems
• CGameEffectDurationCasting
• CGameEffectEnableButton
• CGameEffectEndNonDetection
• CGameEffectEntangle
• CGameEffectEquipWeapon
• CGameEffectEvadeAreaOfEffect
• CGameEffectExistanceDelayOverride
• CGameEffectExplore
• CGameEffectFamiliarBlock
• CGameEffectFatigue
• CGameEffectFeebleMindedness
• CGameEffectFile
• CGameEffectFindFamiliar
• CGameEffectFistDamageBonus
• CGameEffectFistTHAC0Bonus
• CGameEffectFloatText
• CGameEffectForceSurge
• CGameEffectForceVisible
• CGameEffectFreedom
• CGameEffectGold
• CGameEffectGreasePool
• CGameEffectHaste2
438 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CGameEffectHaste
• CGameEffectHeal
• CGameEffectHideInShadows
• CGameEffectHighLevelAbility
• CGameEffectHitMod
• CGameEffectHitPoints
• CGameEffectHitPointsOnDeath
• CGameEffectHoldCreature
• CGameEffectHoldCreatureSpell
• CGameEffectINT
• CGameEffectIdentify
• CGameEffectIgnoreDialogPause
• CGameEffectIgnoreDrainDeath
• CGameEffectIgnoreReputationBreak
• CGameEffectImmuneToTracking
• CGameEffectImmuneToWeapon
• CGameEffectImmunityLevelDecrement
• CGameEffectImmunitySchool
• CGameEffectImmunitySchoolDecrement
• CGameEffectImmunitySecondaryType
• CGameEffectImmunitySecondaryTypeDecrement
• CGameEffectImmunitySpell
• CGameEffectImmunitySpellIWD
• CGameEffectImmunityToBackstab
• CGameEffectImmunityToDisplayString
• CGameEffectImmunityToEffect
• CGameEffectImmunityToPortraitIcon
• CGameEffectImmunityToProjectile
• CGameEffectImmunityToSequester
• CGameEffectImmunityToSpellLevel
• CGameEffectImmunityToTimeStop
• CGameEffectImmunityToTurnUndead
• CGameEffectImmunityToVisualEffect
• CGameEffectImprisonment
• CGameEffectInfravision
• CGameEffectInfravisionOff
5.8. CG Structures 439
EEex Documentation, Release 1.0
• CGameEffectIntoxication
• CGameEffectInvisible
• CGameEffectJumpToArea
• CGameEffectJumpToPocketPlane
• CGameEffectKnock
• CGameEffectLearnSpell
• CGameEffectLevel
• CGameEffectLevelDrain
• CGameEffectLevelRestoration
• CGameEffectList
• CGameEffectLore
• CGameEffectLuck
• CGameEffectMakeUnselectable
• CGameEffectMaze
• CGameEffectMeleeDamageBonus
• CGameEffectMeleeEffect
• CGameEffectMeleeTHAC0Bonus
• CGameEffectMentalSpeed
• CGameEffectMinHitPoints
• CGameEffectMinorGlobe
• CGameEffectMirrorImage
• CGameEffectMirrorImageRun
• CGameEffectMissileDamageBonus
• CGameEffectMissileTHAC0Bonus
• CGameEffectMorale
• CGameEffectMoraleBreak
• CGameEffectMovementRate
• CGameEffectMovementRateModal
• CGameEffectNPCBump
• CGameEffectName
• CGameEffectNoPermanentDeath
• CGameEffectNonDetection
• CGameEffectNon_CumulativeAid
• CGameEffectNon_CumulativeBless
• CGameEffectNon_CumulativeChant
• CGameEffectNon_CumulativeChantBad
440 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CGameEffectNon_CumulativeDrawUponHolyMight
• CGameEffectNon_CumulativeLuck
• CGameEffectOverrideAnimation
• CGameEffectOverrideWeaponType
• CGameEffectPanic
• CGameEffectPauseCaster
• CGameEffectPetrification
• CGameEffectPhysicalSpeed
• CGameEffectPlayMovie
• CGameEffectPlaySound
• CGameEffectPoison
• CGameEffectPolymorph
• CGameEffectPortrait
• CGameEffectPortraitIcon
• CGameEffectPowerWordKill
• CGameEffectPowerWordSleep
• CGameEffectPowerWordStun
• CGameEffectPreventAISlowDown
• CGameEffectPreventSpellProtectionEffects
• CGameEffectProficiency
• CGameEffectProtectionCircle
• CGameEffectProtectionFromCreature
• CGameEffectPuppetMaster
• CGameEffectPushPull
• CGameEffectRandomDrop
• CGameEffectRandomPhase
• CGameEffectRandomSummon
• CGameEffectRandomTeleport
• CGameEffectRangeEffect
• CGameEffectRegeneration
• CGameEffectRememorizeSpell
• CGameEffectRemoveAllOfType
• CGameEffectRemoveConfusion
• CGameEffectRemoveCurse
• CGameEffectRemoveEffectOfResource
• CGameEffectRemoveHold
5.8. CG Structures 441
EEex Documentation, Release 1.0
• CGameEffectRemoveInnateAbility
• CGameEffectRemoveIntoxication
• CGameEffectRemovePanic
• CGameEffectRemovePortraitIcon
• CGameEffectRemoveRandomSpell
• CGameEffectRemoveSpellImmunity
• CGameEffectRepeatingApplyEffect
• CGameEffectReplaceItem
• CGameEffectReplaceSelf
• CGameEffectReputation
• CGameEffectResistAcid
• CGameEffectResistCold
• CGameEffectResistCrushing
• CGameEffectResistElectricity
• CGameEffectResistFire
• CGameEffectResistMagic
• CGameEffectResistMagicCold
• CGameEffectResistMagicFire
• CGameEffectResistMissile
• CGameEffectResistPiercing
• CGameEffectResistSlashing
• CGameEffectResistanceToMagic
• CGameEffectResistanceToPoison
• CGameEffectRest
• CGameEffectRestoreMovementRate
• CGameEffectRestrictEquipItem
• CGameEffectRestrictEquipItemType
• CGameEffectResurrect
• CGameEffectResurrectParty
• CGameEffectRetreatFrom
• CGameEffectRevealMagic
• CGameEffectSTR
• CGameEffectSTRExtra
• CGameEffectSanctuary
• CGameEffectSaveVsBreath
• CGameEffectSaveVsDeath
442 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CGameEffectSaveVsPoly
• CGameEffectSaveVsSchoolMod
• CGameEffectSaveVsSpell
• CGameEffectSaveVsWands
• CGameEffectSavingThrowChange
• CGameEffectScreenShake
• CGameEffectScriptingState
• CGameEffectSecondaryCastList
• CGameEffectSeeInvisible
• CGameEffectSelectiveDamageBonus
• CGameEffectSelectiveEnchantmentBonus
• CGameEffectSelectiveToHitBonus
• CGameEffectSequencerFire
• CGameEffectSequencerFirePoint
• CGameEffectSequencerInstance
• CGameEffectSequencerStart
• CGameEffectSetAIScript
• CGameEffectSetDoNotJump
• CGameEffectSetGlobal
• CGameEffectSetLocalExternal
• CGameEffectSetLocalVariable
• CGameEffectSetSequence
• CGameEffectSetSnare
• CGameEffectSetSpellState
• CGameEffectSetTrap
• CGameEffectSevenEyes
• CGameEffectSevenEyesRun
• CGameEffectSexChange
• CGameEffectShieldGlobe
• CGameEffectShowArea
• CGameEffectShowCreatures
• CGameEffectSilence
• CGameEffectSingleColorPulseAll
• CGameEffectSkillLockPicking
• CGameEffectSkillPickPocket
• CGameEffectSkillStealth
5.8. CG Structures 443
EEex Documentation, Release 1.0
• CGameEffectSkillTracking
• CGameEffectSkillTraps
• CGameEffectSlay
• CGameEffectSleep
• CGameEffectSlow
• CGameEffectSlowPoison
• CGameEffectSparkle
• CGameEffectSpecificDamageMod
• CGameEffectSpellMemorizationCleric
• CGameEffectSpellMemorizationMage
• CGameEffectSpellTrapLevelDecrement
• CGameEffectStaticCharge
• CGameEffectStoneSkins
• CGameEffectStoneSkinsGolem
• CGameEffectStoneToFlesh
• CGameEffectStun
• CGameEffectSummon
• CGameEffectSummonDisable
• CGameEffectSurgeMod
• CGameEffectSwapHitpoints
• CGameEffectTeleport
• CGameEffectThac0
• CGameEffectThac0Left
• CGameEffectThac0Right
• CGameEffectTimeStop
• CGameEffectTracking
• CGameEffectTranslucent
• CGameEffectTurnUndead
• CGameEffectTurnUndeadModifier
• CGameEffectUnpauseCaster
• CGameEffectUnstun
• CGameEffectUnsummon
• CGameEffectUsability
• CGameEffectUsabilityList
• CGameEffectUseAnyItem
• CGameEffectVisible
444 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CGameEffectVisualAnimationEffect
• CGameEffectVisualEffect
• CGameEffectVisualRange
• CGameEffectVisualSpellHit
• CGameEffectVisualSpellHitIWD
• CGameEffectVocalize
• CGameEffectWIS
• CGameEffectWebHold
• CGameEffectWish
• CGameEffectXP
• CGameFile
• CGameFireball3d
• CGameID
• CGameID::GameID_t
• CGameJournal
• CGameJournalAlphabetizer
• CGameJournalEntry
• CGameObject
• CGameObjectArray
• CGameObjectArrayEntry
• CGameOptions
• CGamePermission
• CGameRemoteObjectArray
• CGameRemoteObjectControlChange
• CGameRemoteObjectDeletion
• CGameRemoteObjectListEntry
• CGameRemoveMapNote
• CGameSave
• CGameSaveCharacter
• CGameSound
• CGameSpawning
• CGameSprite
• CGameSpriteEquipment
• CGameSpriteLastUpdate
• CGameSprite::GroundItem
• CGameSprite::RenderHealthBar
5.8. CG Structures 445
EEex Documentation, Release 1.0
• CGameStatic
• CGameStatsRes
• CGameStatsSprite
• CGameTemporal
• CGameText
• CGameTiledObject
• CGameTimer
• CGameTrigger
5.8.1 CGameAIArea
Offset Size Type Field0x00 1020 CGameAIBase m_cGameAIBase
5.8.2 CGameAIBase
Used by the CGameAIBase Class
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 20 CAIObjectType m_lAttacker0x5C 4 long m_lAttackStyle0x60 20 CAIObjectType m_lOrderedBy0x74 20 CAIObjectType m_protecting0x88 20 CAIObjectType m_protector0x9C 20 CAIObjectType m_lTargeted0xB0 20 CAIObjectType m_lHitter0xC4 20 CAIObjectType m_lHelp0xD8 20 CAIObjectType m_lTrigger0xEC 20 CAIObjectType m_lSeen0x100 20 CAIObjectType m_lTalkedTo0x114 20 CAIObjectType m_lHeard0x128 20 CAIObjectType m_lSummonedBy0x13C 20 CAIObjectType m_lKilled0x150 20 CAIObjectType m_lEnteredBy0x164 20 CAIObjectType m_lAttackerSent0x178 20 CAIObjectType m_lOrderedBySent0x18C 20 CAIObjectType m_protectingSent0x1A0 20 CAIObjectType m_protectorSent0x1B4 20 CAIObjectType m_lTargetedSent0x1C8 20 CAIObjectType m_lHitterSent0x1DC 20 CAIObjectType m_lHelpSent
Continued on next page
446 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 10 – continued from previous page0x1F0 20 CAIObjectType m_lTriggerSent0x204 20 CAIObjectType m_lSeenSent0x218 20 CAIObjectType m_lTalkedToSent0x22C 20 CAIObjectType m_lHeardSent0x240 20 CAIObjectType m_lSummonedBySent0x254 20 CAIObjectType m_lKilledSent0x268 4 CAIScript* m_overrideScript0x26C 4 CAIScript* m_areaScript0x270 4 CAIScript* m_specificsScript0x274 4 CAIScript* m_classScript0x278 4 CAIScript* m_raceScript0x27C 4 CAIScript* m_generalScript0x280 4 CAIScript* m_defaultScript0x284 4 CAIScript* m_achievementScript0x288 28 CTypedPtrList m_queuedActions0x2A4 28 CTypedPtrList m_pendingTriggers0x2C0 4 unsigned long m_PAICallCounter0x2C4 4 unsigned long m_PAICallCounterNoMod0x2C8 28 CTypedPtrList m_timers0x2E4 2 short m_curResponseNum0x2E6 2 short m_curResponseSetNum0x2E8 2 short m_curScriptNum
2 <padding>0x2EC 4 int m_interrupt0x2F0 2 short m_actionCount
2 <padding>0x2F4 4 int m_bJustAttacked0x2F8 100 CAIAction m_curAction0x35C 4 long m_nExpectedProcessPendingTriggersCalls0x360 2 short m_nMissedProcessPendingTriggerCalls0x362 2 short m_nAlertnessPeriod0x364 32 char m_scriptName[32]0x384 4 int m_inCutScene0x388 4 int m_firstCall0x38C 4 int m_forceActionPick0x390 4 long m_randValue0x394 1 unsigned char m_reactionRoll
1 <padding>0x396 2 short m_nLastActionReturn0x398 1 unsigned char m_nVisualRange
3 <padding>0x39C 4 unsigned long m_iGameText0x3A0 4 int m_bInActionExecution0x3A4 4 int m_bNewTrigger0x3A8 4 int m_triggerSwitch0x3AC 4 int m_bNoInterrupt0x3B0 4 int m_bDisableAI0x3B4 20 CSound m_forcePauseSound0x3C8 4 long m_nServerLastObjectSynchDelay0x3CC 48 CAITrigger triggerOverride
5.8. CG Structures 447
EEex Documentation, Release 1.0
5.8.3 CGameAIGame
Offset Size Type Field0x00 1020 CGameAIBase m_cGameAIBase
5.8.4 CGameAbilityList
Offset Size Type Field0x00 20 CTypedPtrArray m_cTypedPtrArray
5.8.5 CGameAddMapNote
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8.6 CGameAnimation
Offset Size Type Field0x00 4 CGameAnimationType* m_animation0x04 4 unsigned long m_overrides0x08 2 short m_sequenceHighLevel0x0A 1 unsigned char m_detectedByInfravision0x0B 1 unsigned char m_bloodColor0x0C 1 unsigned char m_personalSpace
3 <padding>
448 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.8.7 CGameAnimationType
Offset Size Type Field0x00 4 vfptr vfptr0x04 2 unsigned short m_animationID0x06 1 unsigned char m_moveScale0x07 1 unsigned char m_moveScaleCurrent0x08 16 CRect m_rEllipse0x18 4 int m_nHeightOffset0x1C 1 bool m_bUseSpriteShader0x1D 1 unsigned char m_colorBlood0x1E 1 unsigned char m_colorChunks
1 <padding>0x20 4 unsigned long m_nSndFreq0x24 4 const char* m_pSndDeath0x28 32 NECK_POINTS m_neckOffsets[8]0x48 880 CVidBitmap m_combatRounds[5]0x3B8 1 unsigned char m_personalSpace0x3B9 1 unsigned char m_walkCount0x3BA 2 unsigned short m_castFrame0x3BC 1 unsigned char m_bBrightest0x3BD 1 unsigned char m_bBrightestDesired0x3BE 1 unsigned char m_bLightSource0x3BF 8 CResRef m_soundRef
1 <padding>0x3C8 4 CString m_walkRef0x3CC 800 CSequenceSoundList m_sequenceRefs[20]0x6EC 4 int m_bNewPalette0x6F0 176 CVidBitmap m_newPalette
5.8.8 CGameAnimationTypeAmbient
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 4 CVidCell* m_currentVidCellExtend0x7B0 192 CVidCell m_g1VidCellBase0x870 192 CVidCell m_g1VidCellExtend0x930 36 CVidPalette m_charPalette0x954 2 short m_currentBamSequence0x956 2 short m_currentBamDirection0x958 4 int m_falseColor0x95C 4 int m_bInvulnerable0x960 4 int m_pathSmooth0x964 1 unsigned char m_listType0x965 1 unsigned char m_extendDirectionTest
2 <padding>
5.8. CG Structures 449
EEex Documentation, Release 1.0
5.8.9 CGameAnimationTypeAmbientStatic
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CVidCell* m_currentVidCell0x7A4 4 CVidCell* m_currentVidCellBase0x7A8 4 CVidCell* m_currentVidCellExtend0x7AC 192 CVidCell m_g1VidCellBase0x86C 192 CVidCell m_g1VidCellExtend0x92C 36 CVidPalette m_charPalette0x950 2 short m_currentBamSequence0x952 2 short m_currentBamDirection0x954 4 int m_falseColor0x958 4 int m_bInvulnerable0x95C 1 unsigned char m_extendDirectionTest
3 <padding>
5.8.10 CGameAnimationTypeCharacter
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resrefPaperDoll0x7A4 4 CString m_resref0x7A8 4 CString m_heightCode0x7AC 4 CString m_heightCodeHelmet0x7B0 4 CString m_heightCodeShieldPaperDoll0x7B4 1 char m_armorCode0x7B5 1 char m_armorMaxCode
2 <padding>0x7B8 4 CVidCell* m_currentVidCell0x7BC 4 CVidCell* m_currentVidCellBase0x7C0 192 CVidCell m_g1VidCellBase0x880 192 CVidCell m_caVidCellBase0x940 192 CVidCell m_a1VidCellBase0xA00 192 CVidCell m_a2VidCellBase0xAC0 192 CVidCell m_a3VidCellBase0xB80 36 CVidPalette m_charPalette0xBA4 4 CString m_resrefWeapon0xBA8 4 CVidCell* m_currentVidCellWeapon0xBAC 4 CVidCell* m_currentVidCellWeaponBase0xBB0 192 CVidCell m_g1VidCellWeaponBase0xC70 192 CVidCell m_a1VidCellWeaponBase0xD30 192 CVidCell m_a2VidCellWeaponBase0xDF0 192 CVidCell m_a3VidCellWeaponBase
Continued on next page
450 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 11 – continued from previous page0xEB0 36 CVidPalette m_weaponPalette0xED4 4 CString m_resrefShield0xED8 4 CVidCell* m_currentVidCellShield0xEDC 4 CVidCell* m_currentVidCellShieldBase0xEE0 192 CVidCell m_g1VidCellShieldBase0xFA0 192 CVidCell m_a1VidCellShieldBase0x1060 192 CVidCell m_a2VidCellShieldBase0x1120 192 CVidCell m_a3VidCellShieldBase0x11E0 36 CVidPalette m_shieldPalette0x1204 4 CString m_resrefHelmet0x1208 4 CVidCell* m_currentVidCellHelmet0x120C 4 CVidCell* m_currentVidCellHelmetBase0x1210 192 CVidCell m_g1VidCellHelmetBase0x12D0 192 CVidCell m_caVidCellHelmetBase0x1390 192 CVidCell m_a1VidCellHelmetBase0x1450 192 CVidCell m_a2VidCellHelmetBase0x1510 192 CVidCell m_a3VidCellHelmetBase0x15D0 36 CVidPalette m_helmetPalette0x15F4 2 short m_currentBamSequence0x15F6 2 short m_currentBamDirection0x15F8 4 int m_renderWeapons0x15FC 4 int m_bHideWeapons0x1600 4 int m_renderHelmet0x1604 4 int m_bEquipHelmet0x1608 4 int m_weaponLeftHand0x160C 4 int m_falseColor0x1610 1 unsigned char m_weaponCode0x1611 1 unsigned char m_extendDirectionTest0x1612 1 unsigned char m_bDetectedByInfravision0x1613 1 unsigned char m_bInvulnerable0x1614 1 unsigned char m_bCanLieDown0x1615 1 unsigned char m_resrefArmorBase0x1616 1 unsigned char m_resrefArmorSpecific
1 <padding>0x1618 4 int m_bDoubleBlit0x161C 4 int m_bSplitBams0x1620 1 char m_splitBamChar
3 <padding>
5.8.11 CGameAnimationTypeCharacterOld
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CString m_resrefShadow0x7A8 4 CString m_heightCode0x7AC 4 CString m_heightCodeHelmet0x7B0 1 char m_armorCode
Continued on next page
5.8. CG Structures 451
EEex Documentation, Release 1.0
Table 12 – continued from previous page0x7B1 1 char m_armorMaxCode
2 <padding>0x7B4 4 CVidCell* m_currentVidCell0x7B8 4 CVidCell* m_currentVidCellBase0x7BC 4 CVidCell* m_currentVidCellExtend0x7C0 192 CVidCell m_g1VidCellBase0x880 192 CVidCell m_g1VidCellExtend0x940 192 CVidCell m_w2VidCellBase0xA00 192 CVidCell m_w2VidCellExtend0xAC0 192 CVidCell m_caVidCellBase0xB80 192 CVidCell m_caVidCellExtend0xC40 192 CVidCell m_a1VidCellBase0xD00 192 CVidCell m_a1VidCellExtend0xDC0 192 CVidCell m_a2VidCellBase0xE80 192 CVidCell m_a2VidCellExtend0xF40 192 CVidCell m_a3VidCellBase0x1000 192 CVidCell m_a3VidCellExtend0x10C0 36 CVidPalette m_charPalette0x10E4 4 CString m_resrefWeapon0x10E8 4 CVidCell* m_currentVidCellWeapon0x10EC 4 CVidCell* m_currentVidCellWeaponBase0x10F0 4 CVidCell* m_currentVidCellWeaponExtend0x10F4 192 CVidCell m_g1VidCellWeaponBase0x11B4 192 CVidCell m_g1VidCellWeaponExtend0x1274 192 CVidCell m_w2VidCellWeaponBase0x1334 192 CVidCell m_w2VidCellWeaponExtend0x13F4 192 CVidCell m_a1VidCellWeaponBase0x14B4 192 CVidCell m_a1VidCellWeaponExtend0x1574 192 CVidCell m_a2VidCellWeaponBase0x1634 192 CVidCell m_a2VidCellWeaponExtend0x16F4 192 CVidCell m_a3VidCellWeaponBase0x17B4 192 CVidCell m_a3VidCellWeaponExtend0x1874 36 CVidPalette m_weaponPalette0x1898 4 CString m_resrefShield0x189C 4 CVidCell* m_currentVidCellShield0x18A0 4 CVidCell* m_currentVidCellShieldBase0x18A4 4 CVidCell* m_currentVidCellShieldExtend0x18A8 192 CVidCell m_g1VidCellShieldBase0x1968 192 CVidCell m_g1VidCellShieldExtend0x1A28 192 CVidCell m_w2VidCellShieldBase0x1AE8 192 CVidCell m_w2VidCellShieldExtend0x1BA8 192 CVidCell m_a1VidCellShieldBase0x1C68 192 CVidCell m_a1VidCellShieldExtend0x1D28 192 CVidCell m_a2VidCellShieldBase0x1DE8 192 CVidCell m_a2VidCellShieldExtend0x1EA8 192 CVidCell m_a3VidCellShieldBase0x1F68 192 CVidCell m_a3VidCellShieldExtend0x2028 36 CVidPalette m_shieldPalette0x204C 4 CString m_resrefHelmet0x2050 4 CVidCell* m_currentVidCellHelmet
Continued on next page
452 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 12 – continued from previous page0x2054 4 CVidCell* m_currentVidCellHelmetBase0x2058 4 CVidCell* m_currentVidCellHelmetExtend0x205C 192 CVidCell m_g1VidCellHelmetBase0x211C 192 CVidCell m_g1VidCellHelmetExtend0x21DC 192 CVidCell m_w2VidCellHelmetBase0x229C 192 CVidCell m_w2VidCellHelmetExtend0x235C 192 CVidCell m_caVidCellHelmetBase0x241C 192 CVidCell m_caVidCellHelmetExtend0x24DC 192 CVidCell m_a1VidCellHelmetBase0x259C 192 CVidCell m_a1VidCellHelmetExtend0x265C 192 CVidCell m_a2VidCellHelmetBase0x271C 192 CVidCell m_a2VidCellHelmetExtend0x27DC 192 CVidCell m_a3VidCellHelmetBase0x289C 192 CVidCell m_a3VidCellHelmetExtend0x295C 36 CVidPalette m_helmetPalette0x2980 4 CVidCell* m_currentVidCellShadow0x2984 4 CVidCell* m_currentVidCellShadowBase0x2988 4 CVidCell* m_currentVidCellShadowExtend0x298C 192 CVidCell m_g1VidCellShadowBase0x2A4C 192 CVidCell m_g1VidCellShadowExtend0x2B0C 192 CVidCell m_w2VidCellShadowBase0x2BCC 192 CVidCell m_w2VidCellShadowExtend0x2C8C 192 CVidCell m_caVidCellShadowBase0x2D4C 192 CVidCell m_caVidCellShadowExtend0x2E0C 192 CVidCell m_a1VidCellShadowBase0x2ECC 192 CVidCell m_a1VidCellShadowExtend0x2F8C 192 CVidCell m_a2VidCellShadowBase0x304C 192 CVidCell m_a2VidCellShadowExtend0x310C 192 CVidCell m_a3VidCellShadowBase0x31CC 192 CVidCell m_a3VidCellShadowExtend0x328C 2 short m_currentBamSequence0x328E 2 short m_currentBamDirection0x3290 4 int m_renderWeapons0x3294 4 int m_bHideWeapons0x3298 4 int m_renderHelmet0x329C 4 int m_bEquipHelmet0x32A0 4 int m_weaponLeftHand0x32A4 4 int m_falseColor0x32A8 1 unsigned char m_weaponCode0x32A9 1 unsigned char m_extendDirectionTest0x32AA 1 unsigned char m_bDetectedByInfravision0x32AB 1 unsigned char m_bInvulnerable0x32AC 1 unsigned char m_bCanLieDown
3 <padding>
5.8. CG Structures 453
EEex Documentation, Release 1.0
5.8.12 CGameAnimationTypeEffect
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CVidCell* m_currentVidCell0x7A4 4 CVidCell* m_currentVidCellShadow0x7A8 192 CVidCell m_g1VidCell0x868 192 CVidCell m_g1VidCellShadow0x928 36 CVidPalette m_charPalette0x94C 1 unsigned char m_translucent0x94D 1 unsigned char m_bRender0x94E 2 unsigned short m_posZ0x950 2 unsigned short m_deltaZ0x952 2 short m_currentBamSequence0x954 2 short m_currentBamDirection0x956 1 unsigned char m_extendDirectionTest0x957 1 unsigned char m_listType
5.8.13 CGameAnimationTypeFlying
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CVidCell* m_currentVidCell0x7A4 4 CVidCell* m_currentVidCellBase0x7A8 192 CVidCell m_g1VidCellBase0x868 36 CVidPalette m_charPalette0x88C 2 short m_currentBamSequence0x88E 2 short m_currentBamDirection0x890 4 int m_falseColor0x894 1 unsigned char m_extendDirectionTest
3 <padding>
5.8.14 CGameAnimationTypeMonster
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 192 CVidCell m_g1VidCellBase0x86C 192 CVidCell m_g2VidCellBase0x92C 36 CVidPalette m_charPalette0x950 4 CVidCell* m_currentVidCellWeapon
Continued on next page
454 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 13 – continued from previous page0x954 4 CVidCell* m_currentVidCellWeaponBase0x958 192 CVidCell m_g1VidCellWeaponBase0xA18 192 CVidCell m_g2VidCellWeaponBase0xAD8 36 CVidPalette m_weaponPalette0xAFC 2 short m_currentBamSequence0xAFE 2 short m_currentBamDirection0xB00 2 short m_currentShootSequence
2 <padding>0xB04 4 int m_falseColor0xB08 4 int m_translucent0xB0C 4 int m_bTwoPalettes0xB10 8 CResRef m_cResRefPalette10xB18 8 CResRef m_cResRefPalette20xB20 4 int m_renderWeapons0xB24 4 int m_bHideWeapons0xB28 4 int m_weaponLeftHand0xB2C 1 unsigned char m_bDetectedByInfravision0xB2D 1 unsigned char m_extendDirectionTest
2 <padding>0xB30 4 int m_bCanLieDown0xB34 4 int m_bPathSmooth0xB38 4 int m_bSplitBams0xB3C 1 unsigned char m_splitBamChar0xB3D 1 unsigned char m_currentShootSplit
2 <padding>0xB40 4 int m_bGlowLayer0xB44 4 CString m_glowResref0xB48 4 CVidCell* m_glowCurrentVidCell0xB4C 4 CVidCell* m_glowCurrentVidCellBase0xB50 192 CVidCell m_glowG1VidCellBase0xC10 192 CVidCell m_glowG2VidCellBase
5.8. CG Structures 455
EEex Documentation, Release 1.0
5.8.15 CGameAnimationTypeMonsterAnkheg
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 4 CVidCell* m_currentVidCellExtend0x7B0 192 CVidCell m_g1VidCellBase0x870 192 CVidCell m_g1VidCellExtend0x930 192 CVidCell m_g2VidCellBase0x9F0 192 CVidCell m_g2VidCellExtend0xAB0 192 CVidCell m_g3VidCellBase0xB70 192 CVidCell m_g3VidCellExtend0xC30 4 CVidCell* m_currentVidCellHole0xC34 4 CVidCell* m_currentVidCellHoleBase0xC38 4 CVidCell* m_currentVidCellHoleExtend0xC3C 192 CVidCell m_g1VidCellHoleBase0xCFC 192 CVidCell m_g1VidCellHoleExtend0xDBC 192 CVidCell m_g2VidCellHoleBase0xE7C 192 CVidCell m_g2VidCellHoleExtend0xF3C 192 CVidCell m_g3VidCellHoleBase0xFFC 192 CVidCell m_g3VidCellHoleExtend0x10BC 2 short m_currentBamSequence0x10BE 2 short m_currentBamDirection0x10C0 4 int m_bAboveGround0x10C4 1 unsigned char m_extendDirectionTest
3 <padding>0x10C8 4 int m_bMirrorBam
5.8.16 CGameAnimationTypeMonsterIcewind
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 4 CVidCell* m_currentVidCellExtend0x7B0 192 CVidCell m_a1VidCellBase0x870 192 CVidCell m_a1VidCellExtend0x930 192 CVidCell m_a2VidCellBase0x9F0 192 CVidCell m_a2VidCellExtend0xAB0 192 CVidCell m_a3VidCellBase0xB70 192 CVidCell m_a3VidCellExtend0xC30 192 CVidCell m_shVidCellBase0xCF0 192 CVidCell m_shVidCellExtend0xDB0 192 CVidCell m_awVidCellBase
Continued on next page
456 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 14 – continued from previous page0xE70 192 CVidCell m_awVidCellExtend0xF30 192 CVidCell m_slVidCellBase0xFF0 192 CVidCell m_slVidCellExtend0x10B0 192 CVidCell m_deVidCellBase0x1170 192 CVidCell m_deVidCellExtend0x1230 192 CVidCell m_daVidCellBase0x12F0 192 CVidCell m_daVidCellExtend0x13B0 192 CVidCell m_paVidCellBase0x1470 192 CVidCell m_paVidCellExtend0x1530 192 CVidCell m_reVidCellBase0x15F0 192 CVidCell m_reVidCellExtend0x16B0 192 CVidCell m_coVidCellBase0x1770 192 CVidCell m_coVidCellExtend0x1830 192 CVidCell m_caVidCellBase0x18F0 192 CVidCell m_caVidCellExtend0x19B0 192 CVidCell m_twVidCellBase0x1A70 192 CVidCell m_twVidCellExtend0x1B30 192 CVidCell m_waVidCellBase0x1BF0 192 CVidCell m_waVidCellExtend0x1CB0 4 CVidCell* m_currentVidCellWeapon0x1CB4 4 CVidCell* m_currentVidCellWeaponBase0x1CB8 4 CVidCell* m_currentVidCellWeaponExtend0x1CBC 192 CVidCell m_a1VidCellWeaponBase0x1D7C 192 CVidCell m_a1VidCellWeaponExtend0x1E3C 192 CVidCell m_a2VidCellWeaponBase0x1EFC 192 CVidCell m_a2VidCellWeaponExtend0x1FBC 192 CVidCell m_a3VidCellWeaponBase0x207C 192 CVidCell m_a3VidCellWeaponExtend0x213C 192 CVidCell m_shVidCellWeaponBase0x21FC 192 CVidCell m_shVidCellWeaponExtend0x22BC 192 CVidCell m_awVidCellWeaponBase0x237C 192 CVidCell m_awVidCellWeaponExtend0x243C 192 CVidCell m_slVidCellWeaponBase0x24FC 192 CVidCell m_slVidCellWeaponExtend0x25BC 192 CVidCell m_daVidCellWeaponBase0x267C 192 CVidCell m_daVidCellWeaponExtend0x273C 192 CVidCell m_paVidCellWeaponBase0x27FC 192 CVidCell m_paVidCellWeaponExtend0x28BC 192 CVidCell m_reVidCellWeaponBase0x297C 192 CVidCell m_reVidCellWeaponExtend0x2A3C 192 CVidCell m_coVidCellWeaponBase0x2AFC 192 CVidCell m_coVidCellWeaponExtend0x2BBC 192 CVidCell m_caVidCellWeaponBase0x2C7C 192 CVidCell m_caVidCellWeaponExtend0x2D3C 192 CVidCell m_waVidCellWeaponBase0x2DFC 192 CVidCell m_waVidCellWeaponExtend0x2EBC 2 short m_currentBamDirection
2 <padding>0x2EC0 4 int m_bRenderWeapons0x2EC4 4 int m_bHideWeapons
Continued on next page
5.8. CG Structures 457
EEex Documentation, Release 1.0
Table 14 – continued from previous page0x2EC8 4 int m_weaponLeftHand0x2ECC 1 unsigned char m_bDetectedByInfravision0x2ECD 1 unsigned char m_extendDirectionTest
2 <padding>
5.8.17 CGameAnimationTypeMonsterLarge
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 4 CVidCell* m_currentVidCellExtend0x7B0 192 CVidCell m_g1VidCellBase0x870 192 CVidCell m_g1VidCellExtend0x930 192 CVidCell m_g2VidCellBase0x9F0 192 CVidCell m_g2VidCellExtend0xAB0 192 CVidCell m_g3VidCellBase0xB70 192 CVidCell m_g3VidCellExtend0xC30 36 CVidPalette m_charPalette0xC54 2 short m_currentBamSequence0xC56 2 short m_currentBamDirection0xC58 4 int m_falseColor0xC5C 1 unsigned char m_extendDirectionTest
3 <padding>
5.8.18 CGameAnimationTypeMonsterLarge16
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 4 CVidCell* m_currentVidCellExtend0x7B0 192 CVidCell m_g1VidCellBase0x870 192 CVidCell m_g1VidCellExtend0x930 192 CVidCell m_g2VidCellBase0x9F0 192 CVidCell m_g2VidCellExtend0xAB0 192 CVidCell m_g3VidCellBase0xB70 192 CVidCell m_g3VidCellExtend0xC30 36 CVidPalette m_charPalette0xC54 2 short m_currentBamSequence0xC56 2 short m_currentBamDirection0xC58 4 int m_falseColor0xC5C 1 unsigned char m_extendDirectionTest
3 <padding>
458 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.8.19 CGameAnimationTypeMonsterLayered
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 4 CVidCell* m_currentVidCellExtend0x7B0 192 CVidCell m_g1VidCellBase0x870 192 CVidCell m_g1VidCellExtend0x930 192 CVidCell m_g2VidCellBase0x9F0 192 CVidCell m_g2VidCellExtend0xAB0 36 CVidPalette m_charPalette0xAD4 4 CVidCell* m_currentVidCellWeapon0xAD8 4 CVidCell* m_currentVidCellWeaponBase0xADC 4 CVidCell* m_currentVidCellWeaponExtend0xAE0 192 CVidCell m_g1VidCellWeaponBase0xBA0 192 CVidCell m_g1VidCellWeaponExtend0xC60 192 CVidCell m_g2VidCellWeaponBase0xD20 192 CVidCell m_g2VidCellWeaponExtend0xDE0 36 CVidPalette m_weaponPalette0xE04 2 short m_currentBamSequence0xE06 2 short m_currentBamDirection0xE08 4 int m_renderWeapons0xE0C 4 int m_bHideWeapons0xE10 4 int m_weaponLeftHand0xE14 1 unsigned char m_nMeleeWeaponReady0xE15 1 unsigned char m_extendDirectionTest
2 <padding>0xE18 8 CString m_resrefWeapon[2]
5.8.20 CGameAnimationTypeMonsterLayeredSpell
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 4 CVidCell* m_currentVidCellExtend0x7B0 192 CVidCell m_g1VidCellBase0x870 192 CVidCell m_g1VidCellExtend0x930 192 CVidCell m_g2VidCellBase0x9F0 192 CVidCell m_g2VidCellExtend0xAB0 36 CVidPalette m_charPalette
Continued on next page
5.8. CG Structures 459
EEex Documentation, Release 1.0
Table 15 – continued from previous page0xAD4 4 CVidCell* m_currentVidCellWeapon0xAD8 4 CVidCell* m_currentVidCellWeaponBase0xADC 4 CVidCell* m_currentVidCellWeaponExtend0xAE0 192 CVidCell m_g1VidCellWeaponBase0xBA0 192 CVidCell m_g1VidCellWeaponExtend0xC60 192 CVidCell m_g2VidCellWeaponBase0xD20 192 CVidCell m_g2VidCellWeaponExtend0xDE0 36 CVidPalette m_weaponPalette0xE04 2 short m_currentBamSequence0xE06 2 short m_currentBamDirection0xE08 4 int m_renderWeapons0xE0C 4 int m_bHideWeapons0xE10 4 int m_weaponLeftHand0xE14 4 int m_falseColor0xE18 8 CString m_resrefWeapon[2]0xE20 1 unsigned char m_bInvulnerable
3 <padding>0xE24 4 int m_bDualAttack0xE28 1 unsigned char m_extendDirectionTest
4 <padding>
460 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.8.21 CGameAnimationTypeMonsterMulti
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 4 CVidCell* m_g1VidCellBase0x7B0 4 CVidCell* m_g2VidCellBase0x7B4 4 CVidCell* m_g3VidCellBase0x7B8 4 CVidCell* m_g4VidCellBase0x7BC 4 CVidCell* m_g5VidCellBase0x7C0 36 CVidPalette m_charPalette0x7E4 2 short m_currentBamSequence0x7E6 2 short m_currentBamDirection0x7E8 4 CVidBitmap* m_currentNewPalette0x7EC 4 int m_falseColor0x7F0 176 CVidBitmap m_g1NewPalette0x8A0 176 CVidBitmap m_g2NewPalette0x950 176 CVidBitmap m_g3NewPalette0xA00 176 CVidBitmap m_g4NewPalette0xAB0 176 CVidBitmap m_g5NewPalette0xB60 1 unsigned char m_extendDirectionTest0xB61 1 unsigned char m_nQuadrants
2 <padding>0xB64 4 int m_bDoubleBlit0xB68 4 int m_bSplitBams0xB6C 1 char m_splitBamChar0xB6D 1 char m_splitDirectionBamChar
2 <padding>
5.8. CG Structures 461
EEex Documentation, Release 1.0
5.8.22 CGameAnimationTypeMonsterMultiNew
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 4 CVidCell* m_pg1VidCellBase0x7B0 4 CVidCell* m_pg2VidCellBase0x7B4 36 CVidPalette m_charPalette0x7D8 2 short m_currentBamSequence0x7DA 2 short m_currentBamDirection0x7DC 2 short m_currentShootSequence
2 <padding>0x7E0 4 int m_falseColor0x7E4 1 unsigned char m_extendDirectionTest0x7E5 1 unsigned char m_nQuadrants
2 <padding>0x7E8 4 int m_bSplitBams0x7EC 1 char m_splitBamChar
3 <padding>0x7F0 4 int m_translucent0x7F4 4 int m_renderWeapons0x7F8 4 int m_weaponLeftHand0x7FC 1 unsigned char m_bDetectedByInfravision
3 <padding>0x800 4 int m_bCanLieDown0x804 4 int m_bPathSmooth0x808 1 char m_currentShootSplit
3 <padding>
462 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.8.23 CGameAnimationTypeMonsterOld
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 4 CVidCell* m_currentVidCellExtend0x7B0 192 CVidCell m_g1VidCellBase0x870 192 CVidCell m_g1VidCellExtend0x930 192 CVidCell m_g2VidCellBase0x9F0 192 CVidCell m_g2VidCellExtend0xAB0 36 CVidPalette m_charPalette0xAD4 2 short m_currentBamSequence0xAD6 2 short m_currentBamDirection0xAD8 4 int m_falseColor0xADC 4 int m_translucent0xAE0 1 unsigned char m_bDetectedByInfravision0xAE1 1 unsigned char m_extendDirectionTest
2 <padding>
5.8.24 CGameAnimationTypeMonsterQuadrant
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CString m_resref0x7A4 4 CVidCell* m_currentVidCell0x7A8 4 CVidCell* m_currentVidCellBase0x7AC 4 CVidCell* m_g1VidCellBase0x7B0 4 CVidCell* m_g2VidCellBase0x7B4 4 CVidCell* m_g3VidCellBase0x7B8 4 CVidCell* m_currentVidCellExtend0x7BC 4 CVidCell* m_g1VidCellExtend0x7C0 4 CVidCell* m_g2VidCellExtend0x7C4 4 CVidCell* m_g3VidCellExtend0x7C8 36 CVidPalette m_charPalette0x7EC 2 short m_currentBamSequence0x7EE 2 short m_currentBamDirection0x7F0 4 int m_falseColor0x7F4 1 unsigned char m_extendDirectionTest0x7F5 1 unsigned char m_nQuadrants
2 <padding>0x7F8 4 int m_bCaster0x7FC 4 int m_bExtendDir0x800 4 int m_pathSmooth
5.8. CG Structures 463
EEex Documentation, Release 1.0
5.8.25 CGameAnimationTypeTownStatic
Offset Size Type Field0x00 1952 CGameAnimationType m_cGameAnimationType0x7A0 4 CVidCell* m_currentVidCell0x7A4 4 CVidCell* m_currentVidCellBase0x7A8 192 CVidCell m_g1VidCellBase0x868 36 CVidPalette m_charPalette0x88C 2 short m_currentBamSequence0x88E 2 short m_currentBamDirection0x890 4 int m_falseColor0x894 1 unsigned char m_bCanLieDown
3 <padding>
5.8.26 CGameArea
Offset Size Type Field0x00 76 CAreaFileHeader m_header0x4C 4 int m_bHeaderExtendedNight0x50 144 CAreaSoundsAndMusic m_headerSound0xE0 228 CAreaFileRestEncounter m_headerRestEncounter0x1C4 28 CTypedPtrList m_entryPoints0x1E0 1 unsigned char m_id0x1E1 1 unsigned char m_nCharacters0x1E2 1 unsigned char m_nInfravision0x1E3 1 unsigned char m_bAreaLoaded0x1E4 8 CResRef m_resref0x1EC 8 CResRef m_restMovieDay0x1F4 8 CResRef m_restMovieNight0x1FC 1 unsigned char m_waterAlpha
3 <padding>0x200 4 CResWED* m_pResWED0x204 4 CInfGame* m_pGame0x208 4 long m_nScrollState0x20C 4 long m_nKeyScrollState0x210 4 int m_bSelectionSquareEnabled0x214 4 int m_bTravelSquare0x218 4 long m_iPickedOnDown0x21C 4 long m_iPicked0x220 4 long m_iPickedTarget0x224 4 int m_bPicked0x228 4 long m_nToolTip0x22C 8 CPoint m_mousePos0x234 176 CVidBitmap m_bmLum0x2E4 4 CVidBitmap* m_pbmLumNight0x2E8 176 CVidBitmap m_bmHeight0x398 4 CObjectMarker* m_pObjectMarker
Continued on next page
464 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 16 – continued from previous page0x39C 4 CObjectMarker* m_pObjectMarkerHealthBar0x3A0 1 unsigned char m_firstRender
3 <padding>0x3A4 16 CRect m_selectSquare0x3B4 2 short m_rotation
2 <padding>0x3B8 8 CPoint m_moveDest0x3C0 4 int m_groupMove0x3C4 16 unsigned char m_terrainTable[16]0x3D4 16 unsigned char m_visibleTerrainTable[16]0x3E4 4 long m_nAIIndex0x3E8 4 int m_bInPathSearch0x3EC 4 unsigned long m_nInitialAreaID0x3F0 4 unsigned long m_nFirstObject0x3F4 4 unsigned long m_dwLastProgressRenderTickCount0x3F8 4 unsigned long m_dwLastProgressMsgTickCount0x3FC 1 unsigned char m_nRandomMonster
1 <padding>0x3FE 2 short m_nVisibleMonster0x400 1 unsigned char m_bRecentlySaved
3 <padding>0x404 4 unsigned long m_nSavedTime0x408 124 CGameAreaNotes m_cGameAreaNotes0x484 812 CInfinity m_cInfinity0x7B0 204 CSearchBitmap m_search0x87C 88 CVisibilityMap m_visibility0x8D4 4 unsigned char* m_pDynamicHeight0x8D8 4 int m_startedMusic0x8DC 4 unsigned long m_startedMusicCounter0x8E0 28 CTypedPtrList m_lVertSort0x8FC 28 CTypedPtrList m_lVertSortBack0x918 28 CTypedPtrList m_lVertSortFlight0x934 28 CTypedPtrList m_lVertSortUnder0x950 28 CTypedPtrList m_lVertSortAdd0x96C 28 CTypedPtrList m_lVertSortBackAdd0x988 28 CTypedPtrList m_lVertSortFlightAdd0x9A4 28 CTypedPtrList m_lVertSortUnderAdd0x9C0 28 CTypedPtrList m_lVertSortRemove0x9DC 28 CTypedPtrList m_lVertSortBackRemove0x9F8 28 CTypedPtrList m_lVertSortFlightRemove0xA14 28 CTypedPtrList m_lVertSortUnderRemove0xA30 28 CTypedPtrList m_lTiledObjects0xA4C 28 CTypedPtrList m_lGameTextObjects0xA68 28 CTypedPtrList m_lVertSortTransition0xA84 8 CPoint m_ptOldViewPos0xA8C 8 CVariableHash m_variables0xA94 8 CVariableHash m_namedCreatures0xA9C 1 unsigned char m_bPermitNewCharacters
1 <padding>0xA9E 2 short m_nCurrentSong
Continued on next page
5.8. CG Structures 465
EEex Documentation, Release 1.0
Table 16 – continued from previous page0xAA0 4 long m_nBattleSongCounter0xAA4 4 long m_nDamageCounter0xAA8 2 short m_nScreenFlash0xAAA 2 short m_nScreenFlashFade0xAAC 4 unsigned long m_screenFlashRGB0xAB0 28 CTypedPtrList m_lClairvoyanceObjects0xACC 28 CTypedPtrList m_lContainersNeedingUpdate0xAE8 4 int m_bAnySpritesInActions0xAEC 4 int m_nMPSynchCounter0xAF0 1 unsigned char m_nMPSignalType0xAF1 1 unsigned char m_nMPSignalData
2 <padding>0xAF4 4 int m_nMPSignalsToSend0xAF8 4 long m_nEnemyCountWork0xAFC 4 long m_nEnemyCountLast0xB00 4 long m_nEnemyCount2ndLast0xB04 4 long m_nEnemyCountSequestered0xB08 4 long m_nTrapCountWork0xB0C 4 long m_nTrapCountLast0xB10 4 long m_nTrapCount2ndLast0xB14 4 long m_nUnloadCounter0xB18 4 long m_bDisplayingHealth0xB1C 36 CMemINI INIFile0xB40 4 CSpawnFile* mpSpawner0xB44 4 long m_nCreatureNodeCount0xB48 8 CSize m_lightmapRatio0xB50 20 CSound m_sndAmbientDay0xB64 20 CSound m_sndAmbientNight0xB78 1 unsigned char m_sndAmbientVolume
1 <padding>0xB7A 2 unsigned short m_sndAmbientDayVolume0xB7C 2 unsigned short m_sndAmbientNightVolume
2 <padding>
5.8.27 CGameAreaClairvoyanceEntry
Offset Size Type Field0x00 8 CPoint m_position0x08 4 long m_id0x0C 4 long m_timeKill0x10 4 unsigned char* m_pVisibleTerrainTable0x14 4 long m_charId0x18 2 short m_visRange
2 <padding>0x1C 4 long* m_pVisMapExploredArea
466 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.8.28 CGameAreaNotes
Used by the CGameAreaNotes Class
Offset Size Type Field0x00 4 int m_bInitialized0x04 8 CPoint m_ptCellSize0x0C 8 CPoint m_ptButtonSize0x14 28 CTypedPtrList m_areaNoteList0x30 52 CAreaUserNote m_cAreaNote0x64 4 int m_bAddingNote0x68 4 unsigned long m_nNoteButtonClicked0x6C 8 CResRef m_rArea0x74 4 CString m_szBuffer0x78 1 unsigned char m_bNetworkDelete0x79 1 unsigned char m_nCurrentIcon
2 <padding>
5.8.29 CGameButtonList
Offset Size Type Field0x00 28 CTypedPtrList m_cButtonDataList0x1C 4 int m_nFirstMageSpellIndex
5.8.30 CGameChunk
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 16 unsigned char m_visibleTerrainTable[16]0x58 16 CGameAnimation m_animation0x68 4 int m_animationRunning0x6C 8 CPoint m_posDelta0x74 4 long m_posZDelta0x78 1 unsigned char m_doBounce0x79 1 unsigned char m_duration0x7A 1 unsigned char m_durationFade
1 <padding>0x7C 20
5.8. CG Structures 467
EEex Documentation, Release 1.0
5.8.31 CGameContainer
Used by the CGameContainer Class
Offset Size Type Field0x00 1020 CGameAIBase m_cGameAIBase0x3FC 16 CRect m_rBounding0x40C 4 CPoint* m_pPolygon0x410 2 unsigned short m_nPolygon
2 <padding>0x414 28 CTypedPtrList m_lstItems0x430 2 unsigned short m_containerType
2 <padding>0x434 8 CPoint m_ptWalkToUse0x43C 576 CVidCell m_pileVidCell[3]0x67C 1 unsigned char m_nPileVidCell0x67D 1 unsigned char m_bDeleteMe0x67E 8 unsigned char m_scriptRes[8]0x686 2 unsigned short m_lockDifficulty0x688 4 unsigned long m_dwFlags0x68C 2 unsigned short m_trapDetectionDifficulty0x68E 2 unsigned short m_trapRemovalDifficulty0x690 2 unsigned short m_trapActivated0x692 2 unsigned short m_trapDetected0x694 8 CPoint m_posTrapOrigin0x69C 2 unsigned short m_triggerRange0x69E 32 char m_ownedBy[32]0x6BE 8 CResRef m_keyType
2 <padding>0x6C8 4 unsigned long m_breakDifficulty0x6CC 2 short m_drawPoly
2 <padding>0x6D0 4 unsigned long m_strNotPickable0x6D4 4 int m_bJustCreated0x6D8 4 int m_bNeedUpdate
5.8.32 CGameDialogEntry
Used by the CGameDialogEntry Class
Offset Size Type Field0x00 20 CTypedPtrArray m_cGameDialogReplyArray0x14 4 unsigned long m_dialogText0x18 28 CAICondition m_startCondition0x34 4 int m_picked0x38 4 unsigned long m_conditionPriority0x3C 4 unsigned long m_dialogIndex0x40 1 unsigned char m_bDisplayButton
3 <padding>
468 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.8.33 CGameDialogIdentifier
Offset Size Type Field0x00 8 CResRef m_dialog0x08 4 unsigned long m_index
5.8.34 CGameDialogReply
Used by the CGameDialogReply Class
Offset Size Type Field0x00 4 unsigned long m_flags0x04 4 unsigned long m_replyText0x08 4 unsigned long m_journalEntry0x0C 28 CAICondition m_condition0x28 36 CAIResponse m_response0x4C 8 CResRef m_nextDialog0x54 4 unsigned long m_nextEntryIndex0x58 4 POSITION* m_displayPosition0x5C 4 int m_removeIfPicked0x60 1 unsigned char m_displayListId
3 <padding>0x64 4 CString m_conditionString0x68 4 int m_needToParseCondition0x6C 4 CString m_responseString0x70 4 int m_needToParseResponse0x74 4 int m_bracketedActions
5.8.35 CGameDialogSprite
Used by the CGameDialogSprite Class
5.8. CG Structures 469
EEex Documentation, Release 1.0
Offset Size Type Field0x00 8 CResRef m_file0x08 20 CTypedPtrArray m_dialogEntries0x1C 20 CTypedPtrArray m_dialogEntriesOrdered0x30 4 long m_characterIndex0x34 4 long m_talkerIndex0x38 4 unsigned long m_currentEntryIndex0x3C 4 int m_waitingForResponse0x40 4 long m_responseMarker0x44 4 unsigned long m_playerColor0x48 4 CString m_playerName0x4C 4 long m_dialogFreezeCounter0x50 4 long m_dialogFreezeMultiplayer0x54 4 unsigned long m_dWFlags0x58 4 int m_bPlayedStartSound0x5C 4 int m_bItemDialog0x60 4 int m_bSuppressName0x64 4 long m_UpdateTime
5.8.36 CGameDoor
Used by the CGameDoor Class
Offset Size Type Field0x00 1020 CGameAIBase m_cGameAIBase0x3FC 8 CResRef m_resID0x404 16 CRect m_rOpenBounding0x414 16 CRect m_rClosedBounding0x424 4 unsigned long m_cursorType0x428 4 unsigned long m_dwFlags0x42C 4 CPoint* m_pOpenPolygon0x430 2 unsigned short m_nOpenPolygon
2 <padding>0x434 4 CPoint* m_pClosedPolygon0x438 2 unsigned short m_nClosedPolygon
2 <padding>0x43C 4 CPoint* m_pOpenSearch0x440 2 unsigned short m_nOpenSearch
2 <padding>0x444 4 CPoint* m_pClosedSearch0x448 2 unsigned short m_nClosedSearch
2 <padding>0x44C 8 CPoint m_ptDest10x454 8 CPoint m_ptDest20x45C 8 unsigned char m_scriptRes[8]0x464 24 CTiledObject m_tiledObject0x47C 32 char m_scriptName[32]
Continued on next page
470 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 18 – continued from previous page0x49C 32 char m_triggerName[32]0x4BC 2 short m_hitPoints0x4BE 2 short m_armourClass0x4C0 8 CResRef m_openSound0x4C8 8 CResRef m_closeSound0x4D0 2 unsigned short m_trapDetectionDifficulty0x4D2 2 unsigned short m_trapDisarmingDifficulty0x4D4 2 unsigned short m_trapActivated0x4D6 2 unsigned short m_trapDetected0x4D8 2 unsigned short m_posXTrapOrigin0x4DA 2 unsigned short m_posYTrapOrigin0x4DC 8 CResRef m_keyType0x4E4 4 unsigned long m_detectionDifficulty0x4E8 4 unsigned long m_lockDifficulty0x4EC 2 short m_drawPoly
2 <padding>0x4F0 8 CPoint m_ptOpenDest0x4F8 8 CPoint m_ptClosedDest0x500 20 CSound m_sndDoor0x514 4 unsigned long m_strNotPickable0x518 4 long m_usedDelay
5.8.37 CGameEffect
Offset Size Type Field0x00 4 vfptr vfptr0x04 264 CGameEffectBase m_cGameEffectBase0x10C 4 long m_sourceId0x110 4 int m_done0x114 4 int m_forceRepass0x118 4 unsigned long m_durationTemp0x11C 4 int m_compareIdOnly0x120 4 int m_compareIdAndFlagsOnly0x124 4 int m_compareIdAndEffectAmountOnly0x128 4 int m_compareIdAndResrefOnly0x12C 20 CSound m_sound0x140 4 long m_sourceTarget
5.8.38 CGameEffect Structures
CGameEffectAC
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 471
EEex Documentation, Release 1.0
CGameEffectAIChange
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectAddInnateAbility
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectAlignmentChange
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectAlignmentReversal
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectAnimationChange
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectApplyEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
472 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectApplyEffectEquipItem
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectApplyEffectEquipItemType
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectApplySpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectApplySpellOnMove
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectAssassination
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectAttackNo
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 473
EEex Documentation, Release 1.0
CGameEffectAuraCleansing
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectAwaken
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBackStabMod
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBackStabSpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBardSong
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBase
Offset Size Type Field0x00 8 CResRef m_version0x08 4 unsigned long m_effectId0x0C 4 unsigned long m_targetType0x10 4 unsigned long m_spellLevel0x14 4 long m_effectAmount
Continued on next page
474 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 19 – continued from previous page0x18 4 unsigned long m_dWFlags0x1C 4 unsigned long m_durationType0x20 4 unsigned long m_duration0x24 2 unsigned short m_probabilityUpper0x26 2 unsigned short m_probabilityLower0x28 8 CResRef m_res0x30 4 unsigned long m_numDice0x34 4 unsigned long m_diceSize0x38 4 unsigned long m_savingThrow0x3C 4 long m_saveMod0x40 4 unsigned long m_special0x44 4 unsigned long m_school0x48 4 unsigned long m_JeremyIsAnIdiot0x4C 4 unsigned long m_minLevel0x50 4 unsigned long m_maxLevel0x54 4 unsigned long m_flags0x58 4 long m_effectAmount20x5C 4 long m_effectAmount30x60 4 long m_effectAmount40x64 4 long m_effectAmount50x68 8 CResRef m_res20x70 8 CResRef m_res30x78 8 CPoint m_source0x80 8 CPoint m_target0x88 4 unsigned long m_sourceType0x8C 8 CResRef m_sourceRes0x94 4 unsigned long m_sourceFlags0x98 4 unsigned long m_projectileType0x9C 4 long m_slotNum0xA0 32 char m_scriptName[32]0xC0 4 unsigned long m_casterLevel0xC4 4 unsigned long m_firstCall0xC8 4 unsigned long m_secondaryType0xCC 60 unsigned long m_pad[15]
Notes
Related to EFF V2.0 file format
CGameEffectBerserk
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 475
EEex Documentation, Release 1.0
CGameEffectBerserkStage1
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBerserkStage2
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBlindness
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBlur
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBounceEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBounceLevel
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
476 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectBounceLevelDecrement
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBounceProjectile
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBounceSchool
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBounceSchoolDecrement
Offset 0x00 Size 324 Type CGameEffect Field m_cGameEffect
CGameEffectBounceSecondaryType
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectBounceSecondaryTypeDecrement
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 477
EEex Documentation, Release 1.0
CGameEffectBounceSpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCHR
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCON
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCalm
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCannotSaveOrRest
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCastSpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
478 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectCastSpellPoint
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCastingFailure
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCastingGlow
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCastingLevelBonus
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectChangeStatic
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectChangeWeather
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 479
EEex Documentation, Release 1.0
CGameEffectChaosShield
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCharm
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCheckForBerserk
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectClairvoyance
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectClassStringOverride
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCleanAir
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
480 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectColorChange
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectColorGlowDissipate
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectColorGlowPulse
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectColorGlowSolid
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectColorLightSolid
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectColorTintSolid
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 481
EEex Documentation, Release 1.0
CGameEffectConfusion
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectContingencyInstance
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectContingencyStart
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCopySelf
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCreateItem
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCreateWeapon
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
482 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectCriticalHitBonus
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCriticalHitSpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCriticalMissModifier
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCriticalMissSpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCureBlindness
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCureDeafness
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 483
EEex Documentation, Release 1.0
CGameEffectCureDisease
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCureFeebleMindedness
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCurePoison
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectCurseApplyEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDEX
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDamage
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
484 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectDamageLuck
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDamageMod
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDamageVisualEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDeafness
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDeath
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDefrost
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 485
EEex Documentation, Release 1.0
CGameEffectDestroyItem
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDestroySelf
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDestroyWeapon
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDetectAlignment
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDetectIllusion
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDetectTraps
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
486 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectDisableButton
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDisableCircle
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDisableSpellType
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDisease
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDisintegrate
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDispelEffects
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 487
EEex Documentation, Release 1.0
CGameEffectDispelInvisible
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDispelSanctuary
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDispelSchool
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDispelSchoolOne
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDispelSecondaryType
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDispelSecondaryTypeOne
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
488 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectDisplayString
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDither
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDoNotDraw
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDrainChargeFromAllItems
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectDurationCasting
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectEnableButton
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 489
EEex Documentation, Release 1.0
CGameEffectEndNonDetection
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectEntangle
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectEquipWeapon
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectEvadeAreaOfEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectExistanceDelayOverride
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectExplore
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
490 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectFamiliarBlock
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectFatigue
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectFeebleMindedness
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectFile
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectFindFamiliar
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectFistDamageBonus
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 491
EEex Documentation, Release 1.0
CGameEffectFistTHAC0Bonus
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectFloatText
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectForceSurge
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectForceVisible
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectFreedom
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectGold
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
492 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectGreasePool
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectHaste
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectHaste2
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectHeal
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectHideInShadows
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectHighLevelAbility
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 493
EEex Documentation, Release 1.0
CGameEffectHitMod
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectHitPoints
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectHitPointsOnDeath
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectHoldCreature
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectHoldCreatureSpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectINT
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
494 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectIdentify
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectIgnoreDialogPause
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectIgnoreDrainDeath
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectIgnoreReputationBreak
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmuneToTracking
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmuneToWeapon
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 495
EEex Documentation, Release 1.0
CGameEffectImmunityLevelDecrement
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunitySchool
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunitySchoolDecrement
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunitySecondaryType
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunitySecondaryTypeDecrement
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunitySpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
496 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectImmunitySpellIWD
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunityToBackstab
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunityToDisplayString
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunityToEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunityToPortraitIcon
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunityToProjectile
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 497
EEex Documentation, Release 1.0
CGameEffectImmunityToSequester
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunityToSpellLevel
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunityToTimeStop
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunityToTurnUndead
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImmunityToVisualEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectImprisonment
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
498 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectInfravision
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectInfravisionOff
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectIntoxication
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectInvisible
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectJumpToArea
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectJumpToPocketPlane
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 499
EEex Documentation, Release 1.0
CGameEffectKnock
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectLearnSpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectLevel
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectLevelDrain
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectLevelRestoration
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectList
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
500 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectLore
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectLuck
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMakeUnselectable
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMaze
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMeleeDamageBonus
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMeleeEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 501
EEex Documentation, Release 1.0
CGameEffectMeleeTHAC0Bonus
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMentalSpeed
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMinHitPoints
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMinorGlobe
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMirrorImage
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMirrorImageRun
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
502 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectMissileDamageBonus
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMissileTHAC0Bonus
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMorale
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMoraleBreak
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMovementRate
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectMovementRateModal
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 503
EEex Documentation, Release 1.0
CGameEffectNPCBump
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectName
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectNoPermanentDeath
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectNonDetection
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectNon_CumulativeAid
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectNon_CumulativeBless
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
504 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectNon_CumulativeChant
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectNon_CumulativeChantBad
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectNon_CumulativeDrawUponHolyMight
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectNon_CumulativeLuck
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectOverrideAnimation
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectOverrideWeaponType
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 505
EEex Documentation, Release 1.0
CGameEffectPanic
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPauseCaster
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPetrification
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPhysicalSpeed
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPlayMovie
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPlaySound
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
506 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectPoison
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPolymorph
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPortrait
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPortraitIcon
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPowerWordKill
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPowerWordSleep
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 507
EEex Documentation, Release 1.0
CGameEffectPowerWordStun
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPreventAISlowDown
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPreventSpellProtectionEffects
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectProficiency
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectProtectionCircle
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectProtectionFromCreature
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
508 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectPuppetMaster
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectPushPull
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRandomDrop
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRandomPhase
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRandomSummon
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRandomTeleport
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 509
EEex Documentation, Release 1.0
CGameEffectRangeEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRegeneration
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRememorizeSpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRemoveAllOfType
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRemoveConfusion
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRemoveCurse
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
510 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectRemoveEffectOfResource
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRemoveHold
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRemoveInnateAbility
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRemoveIntoxication
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRemovePanic
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRemovePortraitIcon
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 511
EEex Documentation, Release 1.0
CGameEffectRemoveRandomSpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRemoveSpellImmunity
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRepeatingApplyEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectReplaceItem
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectReplaceSelf
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectReputation
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
512 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectResistAcid
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectResistCold
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectResistCrushing
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectResistElectricity
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectResistFire
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectResistMagic
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 513
EEex Documentation, Release 1.0
CGameEffectResistMagicCold
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectResistMagicFire
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectResistMissile
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectResistPiercing
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectResistSlashing
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectResistanceToMagic
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
514 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectResistanceToPoison
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRest
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRestoreMovementRate
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRestrictEquipItem
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRestrictEquipItemType
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectResurrect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 515
EEex Documentation, Release 1.0
CGameEffectResurrectParty
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRetreatFrom
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectRevealMagic
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSTR
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSTRExtra
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSanctuary
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
516 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectSaveVsBreath
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSaveVsDeath
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSaveVsPoly
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSaveVsSchoolMod
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSaveVsSpell
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSaveVsWands
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 517
EEex Documentation, Release 1.0
CGameEffectSavingThrowChange
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectScreenShake
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectScriptingState
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSecondaryCastList
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSeeInvisible
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSelectiveDamageBonus
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
518 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectSelectiveEnchantmentBonus
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSelectiveToHitBonus
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSequencerFire
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSequencerFirePoint
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSequencerInstance
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSequencerStart
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 519
EEex Documentation, Release 1.0
CGameEffectSetAIScript
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSetDoNotJump
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSetGlobal
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSetLocalExternal
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSetLocalVariable
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSetSequence
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
520 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectSetSnare
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSetSpellState
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSetTrap
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSevenEyes
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSevenEyesRun
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSexChange
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 521
EEex Documentation, Release 1.0
CGameEffectShieldGlobe
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectShowArea
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectShowCreatures
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSilence
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSingleColorPulseAll
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSkillLockPicking
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
522 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectSkillPickPocket
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSkillStealth
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSkillTracking
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSkillTraps
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSlay
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSleep
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 523
EEex Documentation, Release 1.0
CGameEffectSlow
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSlowPoison
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSparkle
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSpecificDamageMod
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSpellMemorizationCleric
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSpellMemorizationMage
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
524 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectSpellTrapLevelDecrement
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectStaticCharge
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectStoneSkins
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectStoneSkinsGolem
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectStoneToFlesh
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectStun
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 525
EEex Documentation, Release 1.0
CGameEffectSummon
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSummonDisable
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSurgeMod
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectSwapHitpoints
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectTeleport
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectThac0
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
526 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectThac0Left
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectThac0Right
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectTimeStop
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectTracking
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectTranslucent
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectTurnUndead
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 527
EEex Documentation, Release 1.0
CGameEffectTurnUndeadModifier
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectUnpauseCaster
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectUnstun
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectUnsummon
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectUsability
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectUsabilityList
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
528 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CGameEffectUseAnyItem
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectVisible
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectVisualAnimationEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectVisualEffect
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectVisualRange
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectVisualSpellHit
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8. CG Structures 529
EEex Documentation, Release 1.0
CGameEffectVisualSpellHitIWD
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectVocalize
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectWIS
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectWebHold
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectWish
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
CGameEffectXP
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
530 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.8.39 CGameFile
Offset Size Type Field0x00 12 CResHelper m_cResGame
5.8.40 CGameFireball3d
Used by the CGameFireball3d Class
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 16 unsigned char m_terrainTable[16]0x58 16 unsigned char m_visibleTerrainTable[16]0x68 2 unsigned short m_animationID0x6A 2 unsigned short m_animationIDStatic0x6C 7 unsigned char m_colorRangeValues[7]
1 <padding>0x74 2 unsigned short m_ringGranularity
2 <padding>0x78 192 CVidCell m_spriteSplashVidCell0x138 36 CVidPalette m_spriteSplashPalette0x15C 2 short m_holdDuration
2 <padding>0x160 4 int m_radius0x164 4 int m_speed0x168 1 unsigned char m_duration0x169 1 unsigned char m_collision
2 <padding>0x16C 8 CSize m_ellipseSize0x174 4 unsigned char* m_pPlacementGrid0x178 8 CPoint m_nEllipse0x180 4 CRect* m_pEllipse0x184 4 unsigned char* m_flagEllipse0x188 20 CSound m_sndExplosion0x19C 4 CString m_sSoundTemporal0x1A0 4 int m_bCenterSoundLooping0x1A4 4 int m_bSplashGlow0x1A8 4 int m_bBrightest0x1AC 4 int m_bRingTemporals0x1B0 4 int m_bInteriorTemporals0x1B4 4 int m_bRandomSpeed0x1B8 4 int m_bPalettedRing0x1BC 4 int m_bPalettedArea0x1C0 4 int m_bCone0x1C4 2 unsigned short m_coneSize
2 <padding>Continued on next page
5.8. CG Structures 531
EEex Documentation, Release 1.0
Table 20 – continued from previous page0x1C8 8 CPoint m_posEdge0x1D0 4 int m_bNewPalette0x1D4 176 CVidBitmap m_newPalette0x284 8 CResRef m_fireBallArea0x28C 8 CResRef m_fireBallRing0x294 2 unsigned short m_projectileType
2 <padding>0x298 4 int m_bPermanent0x29C 4 int m_bCanSave
5.8.41 CGameID
Offset Size Type Field0x00 8 unsigned __int64 m_ulGameID0x00 8 CGameID::GameID_t m_gameID
5.8.42 CGameID::GameID_t
Offset Size Type Field0x00 4 unsigned int m_nAppID : 240x00 4 unsigned int m_nType : 80x04 4 unsigned int m_nModID : 32
5.8.43 CGameJournal
Used by the CGameJournal Class
Offset Size Type Field0x00 20 CTypedPtrArray m_aChapters
5.8.44 CGameJournalAlphabetizer
Offset Size Type Field0x00 4 CGameJournalEntry* pEntry0x04 4 CString stText
532 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.8.45 CGameJournalEntry
Offset Size Type Field0x00 4 unsigned long m_strText0x04 4 long m_nTime0x08 4 CGameJournalEntryFlag m_Flag0x0C 2 unsigned short m_wType0x0E 1 unsigned char m_bCharacter0x0F 1 unsigned char m_nCharacterHasNotRead
Notes
enum CGameJournalEntryFlag {CGJEOpen = 0CGJEClosed = 1CGJEInUse = 2
}
5.8.46 CGameObject
Used by the CGameObject Class
Offset Size Type Field0x00 4 vfptr vfptr0x04 1 unsigned char m_objectType
3 <padding>0x08 8 CPoint m_pos0x10 4 long m_posZ0x14 4 CGameArea* m_pArea0x18 4 POSITION* m_posVertList0x1C 1 unsigned char m_listType
3 <padding>0x20 20 CAIObjectType m_typeAI0x34 4 long m_id0x38 2 short m_canBeSeen
2 <padding>0x3C 4 int m_remotePlayerID0x40 4 long m_remoteObjectID0x44 1 unsigned char m_AISpeed0x45 1 unsigned char m_bLocalControl0x46 1 unsigned char m_AIInhibitor
1 <padding>
Notes
The m_objectType field can contain one of the following values:
5.8. CG Structures 533
EEex Documentation, Release 1.0
Object Type Object Type Description0x00 TYPE_NONE0x01 TYPE_AIBASE0x10 TYPE_SOUND0x11 TYPE_CONTAINER0x20 TYPE_SPAWNING0x21 TYPE_DOOR0x30 TYPE_STATIC0x31 TYPE_SPRITE0x40 TYPE_OBJECT_MARKER0x41 TYPE_TRIGGER0x51 TYPE_TILED_OBJECT0x60 TYPE_TEMPORAL0x61 TYPE_AREA_AI0x70 TYPE_FIREBALL0x71 TYPE_GAME_AI
5.8.47 CGameObjectArray
See CGameObjectArray Class
Offset Size Type Field1
5.8.48 CGameObjectArrayEntry
Offset Size Type Field0x00 2 short m_objectId
2 <padding>0x04 4 CGameObject* m_objectPtr
5.8.49 CGameOptions
Offset Size Type Field0x00 4 unsigned long m_gore0x04 4 unsigned long m_goreOption0x08 4 unsigned long m_scrollSpeed0x0C 4 unsigned long m_displayVerbalText0x10 4 unsigned long m_guiFeedBackLevel0x14 4 unsigned long m_locatorFeedBackLevel
Continued on next page
534 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 21 – continued from previous page0x18 4 unsigned long m_soundMusicVolume0x1C 4 unsigned long m_soundFXVolume0x20 4 unsigned long m_soundDialogVolume0x24 4 unsigned long m_nVolumeAmbients0x28 4 unsigned long m_soundMovieVolume0x2C 4 unsigned long m_soundFootStepsOn0x30 4 unsigned long m_soundVoicesNo0x34 4 unsigned long m_graphicsBrightness0x38 4 unsigned long m_graphicsFontZoom0x3C 4 float m_spriteBlurAmount0x40 4 unsigned long m_graphicsTranslucentShadows0x44 4 unsigned long m_graphicsForceMirroringOff0x48 4 unsigned long m_graphicsTranslucentEffects0x4C 4 unsigned long m_toolTips0x50 4 unsigned long m_nBoredTime0x54 4 unsigned long m_nCommandSoundsFrequency0x58 4 unsigned long m_nSelectionSoundsFrequency0x5C 4 unsigned long m_bAlwaysDither0x60 4 unsigned long m_nKeyBoardScrollAmount0x64 4 unsigned long m_nEffectTextLevel0x68 4 unsigned long m_nTutorialState0x6C 4 unsigned long m_nAttackSounds0x70 4 unsigned long m_nAutoPauseState0x74 4 unsigned long m_bAutoPauseCenter0x78 4 long m_nDifficultyMultiplier0x7C 4 long m_nMPDifficultyMultiplier0x80 4 int m_bNoExtraDamage0x84 4 int m_bAutoUseMagicAmmo0x88 4 int m_bNoExtraXP0x8C 4 unsigned long m_bInfravision0x90 4 unsigned long m_bStupidQuickItemStuff0x94 4 int m_bWeatherEnabled0x98 4 int m_bCheatsEnabled0x9C 4 int m_bEnvironmentalAudio0xA0 4 int m_bRestHealParty0xA4 4 int m_bTerrainHugging0xA8 4 int m_bHPOverHead0xAC 4 int m_bDebugMode0xB0 4 int m_bUIEditMode0xB4 4 int m_bCloudSavesEnabled0xB8 4 int m_bNeverShowNuisanceSOD0xBC 4 int m_nActiveCampaign0xC0 4 int m_bDeveloperMode0xC4 4 int m_bForceDialogPause0xC8 4 int m_bUse3dAnimations0xCC 4 int m_bCriticalHitScreenShake0xD0 4 int m_bHotkeysOnToolTips0xD4 4 int m_bVeryLowPerformance0xD8 4 int m_bDisplayExtraCombatInfo0xDC 2 unsigned short m_nAreaEffectsDensity
Continued on next page
5.8. CG Structures 535
EEex Documentation, Release 1.0
Table 21 – continued from previous page2 <padding>
0xE0 4 int m_bDuplicateFloatingText0xE4 1 unsigned char m_nTilesPrecachePercent
3 <padding>0xE8 4 int m_bColorCircles0xEC 4 int m_bClassicCircles0xF0 4 int m_nCombatUI0xF4 4 int m_bOverConfirmEverything0xF8 4 int m_bShowLearnableSpells0xFC 4 int m_bShowTriggersOnTab0x100 4 int m_bShowBlackSpace0x104 4 int m_bUseNearestNeighbourScaling0x108 4 int m_showAOE0x10C 4 int m_bDisableCastingGlows0x110 4 int m_bLowMemSounds10x114 4 int m_bLowMemSounds20x118 4 int m_bDisableVEFVidCells0x11C 4 int m_bDisableDisplayText0x120 4 int m_bMidLevelBrighten0x124 4 int m_bHighLevelBrighten0x128 2 unsigned short m_nAreaEffectsRefreshProb
2 <padding>0x12C 4 int m_bEnhancedPathSearch0x130 4 int m_bPausingMap0x134 4 int m_bExtraFeedback0x138 4 int m_bFilterGames0x13C 4 int m_bAllLearnSpellInfo0x140 4 int m_bDisableStaticsDuringCombat0x144 4 int m_bDisableFootstepsDuringCombat0x148 4 int m_bDisablePlacedSoundsDuringCombat0x14C 4 long m_nSuperDesperateSpeedAttempt0x150 4 int m_bAutomatedSpeedAdjusting0x154 4 int m_bAutomatedGraphicsTranslucentShadows0x158 4 int m_bAutomatedVeryLowPerformance0x15C 4 int m_bAutomatedLowPerformance0x160 4 int m_bAutomatedDisableBrightest0x164 4 int m_bAutomatedLimitTransparency0x168 4 int m_bAutomatedDisableCastingGlows0x16C 4 int m_bAutomatedDisableVEFVidCells0x170 4 int m_bAutomatedMidLevelBrighten0x174 4 int m_bAutomatedHighLevelBrighten0x178 4 int m_bAutomatedSoundFootStepsOn0x17C 4 int m_bAutomatedAttackSounds0x180 4 int m_bAutomatedUse3dAnimations0x184 4 int m_bAutomatedDisableVVCSounds0x188 4 int m_bAutomatedFasterBlur0x18C 4 long m_nCutAutomatedGraphicsTranslucentShadows0x190 4 long m_nCutAutomatedVeryLowPerformance0x194 4 long m_nCutAutomatedLowPerformance0x198 4 long m_nCutAutomatedDisableBrightest
Continued on next page
536 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 21 – continued from previous page0x19C 4 long m_nCutAutomatedLimitTransparency0x1A0 4 long m_nCutAutomatedDisableCastingGlows0x1A4 4 long m_nCutAutomatedDisableVEFVidCells0x1A8 4 long m_nCutAutomatedMidLevelBrighten0x1AC 4 long m_nCutAutomatedHighLevelBrighten0x1B0 4 long m_nCutAutomatedSoundFootStepsOn0x1B4 4 long m_nCutAutomatedAttackSounds0x1B8 4 long m_nCutAutomatedUse3dAnimations0x1BC 4 long m_nCutAutomatedDisableVVCSounds0x1C0 4 long m_nCutAutomatedFasterBlur0x1C4 4 int m_bPCOnlyCombatMode0x1C8 4 int m_bFullyDisableNonVisibleDuringCombat0x1CC 4 int m_bDisableVVCSounds0x1D0 4 int m_bFasterBlur0x1D4 4 long m_nFatFingerRadius0x1D8 4 int m_bScaleUI0x1DC 4 long m_nRenderActionQueue0x1E0 4 int m_bConfirmDialog0x1E4 4 int m_bHardwareMouseCursor0x1E8 4 int m_bShowHealth0x1EC 4 int m_bMaxHP0x1F0 4 int m_bStoryMode0x1F4 4 int m_bNightmareMode0x1F8 4 int m_bNightmareBonusGold0x1FC 4 int m_bNightmareBonusXP0x200 4 int m_b3ESneakAttack0x204 4 int m_bClericRangerFix0x208 4 int m_bShowPauseDate0x20C 4 int m_bDisableCosmeticAttacks0x210 4 int m_bJournalPopups0x214 4 int m_bRenderTravelRegions0x218 4 int m_bRenderSearchMap0x21C 4 int m_bRenderDynamicSearchMap0x220 4 int m_bRenderFrameTimes0x224 4 int m_bZoomLock0x228 4 int m_bDisableMultiplayerBanters0x22C 4 int m_bRenderPath0x230 4 int m_bFogEnabled0x234 4 int m_bUseSpriteShader0x238 4 int m_bCharacterHighlightsEnabled0x23C 4 int m_bGreyscaleOnPauseEnabled0x240 4 int m_bShortDescription0x244 4 long m_nMaxStringEntries0x248 4 int m_bRenderExploredMap0x24C 4 int m_bEnableDirectX0x250 4 int m_bEnableMPChatMenu0x254 4 int m_bExpireTraps0x258 4 long m_nDifficultyLevel
5.8. CG Structures 537
EEex Documentation, Release 1.0
5.8.50 CGamePermission
Used by the CGamePermission Class
Offset Size Type Field0x00 8 unsigned char m_permission[8]
5.8.51 CGameRemoteObjectArray
Offset Size Type Field0x00 4 CGameRemoteObjectListEntry** m_pArray0x04 2 short m_nArraySize0x06 2 short m_nControlsChanged0x08 4 CGameRemoteObjectControlChange* m_pControlsChanged0x0C 4 CGameRemoteObjectControlChange* m_pControlsChangedTail0x10 2 short m_nDeletions
2 <padding>0x14 4 CGameRemoteObjectDeletion* m_pDeletions0x18 4 CGameRemoteObjectDeletion* m_pDeletionsTail0x1C 2 short m_nControlsAreaChanged0x1E 48 CResRef m_psControlsAreaChangedName[6]
2 <padding>0x50 24 unsigned long m_pnControlsAreaChangedPlayerNum[6]0x68 12 short m_pnControlsAreaChangedFirstObject[6]
5.8.52 CGameRemoteObjectControlChange
Offset Size Type Field0x00 4 int oldPlayerID0x04 4 long oldObjectID0x08 4 int newPlayerID0x0C 4 long newObjectID0x10 4 CGameRemoteObjectControlChange* pNext0x14 1 unsigned char localControl
3 <padding>
5.8.53 CGameRemoteObjectDeletion
Offset Size Type Field0x00 4 int deletedPlayerID0x04 4 long deletedObjectID0x08 4 CGameRemoteObjectDeletion* pNext
538 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.8.54 CGameRemoteObjectListEntry
Offset Size Type Field0x00 4 int remotePlayerID0x04 4 long remoteObjectID0x08 4 long localObjectID0x0C 4 CGameRemoteObjectListEntry* pNext
5.8.55 CGameRemoveMapNote
Offset Size Type Field0x00 324 CGameEffect m_cGameEffect
5.8.56 CGameSave
Used by the CGameSave Class
Offset Size Type Field0x00 4 unsigned long m_inputMode0x04 8 CResRef m_cResCurrentWorldArea0x0C 4 unsigned long m_nCurrentWorldLink0x10 4 unsigned long m_nPartyGold0x14 2 short m_curFormation0x16 10 short m_quickFormations[5]0x20 400 CItem* m_groupInventory[100]0x1B0 4 int m_bArenaMode0x1B4 2 short m_groupInventoryNumber
2 <padding>0x1B8 4 unsigned long m_mode0x1BC 4 int m_cutScene0x1C0 4 long m_nCutSceneStatusOverride
5.8.57 CGameSaveCharacter
Offset Size Type Field0x00 4 unsigned long m_actionMode0x04 208 CButtonData m_quickWeapons[4]0xD4 156 CButtonData m_quickSpells[3]0x170 156 CButtonData m_quickItems[3]
5.8. CG Structures 539
EEex Documentation, Release 1.0
5.8.58 CGameSound
Used by the CGameSound Class
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 212 CAreaFileSoundObject m_soundObject0x11c 20 CSound m_looping0x130 4 int m_bLoopPlaying0x134 4 long m_period0x138 4 long m_periodCount0x13c 1 unsigned char m_currentSound
3 <padding>0x140 4 unsigned long m_timeOfDayActive
5.8.59 CGameSpawning
Used by the CGameSpawning Class
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 200 CAreaFileRandomMonsterSpawningPoint m_spawningObject0x110 16 unsigned char m_terrainTable[16]0x120 16 unsigned char m_visibleTerrainTable[16]0x130 4 long m_nTrackingCounter0x134 4 unsigned long m_weightSum
5.8.60 CGameSprite
Used by the CGameSprite Class
Offset Size Type Field0x00 1020 CGameAIBase m_cGameAIBase0x3FC 8 CResRef m_resref0x404 2 unsigned short m_type
2 <padding>0x408 4 unsigned long m_expirationTime0x40C 2 unsigned short m_huntingRange0x40E 2 unsigned short m_followRange
Continued on next page
540 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 22 – continued from previous page0x410 8 CPoint m_posStart0x418 4 unsigned long m_timeOfDayVisible0x41C 616 CCreatureFileHeader m_baseStats0x684 196 CTypedPtrList m_knownSpellsPriest[7]0x748 252 CTypedPtrList m_knownSpellsMage[9]0x844 28 CTypedPtrList m_knownSpellsInnate[1]0x860 28 CCreatureFileMemorizedSpellLevel* m_memorizedSpellsLevelPriest[7]0x87C 36 CCreatureFileMemorizedSpellLevel* m_memorizedSpellsLevelMage[9]0x8A0 4 CCreatureFileMemorizedSpellLevel* m_memorizedSpellsLevelInnate[1]0x8A4 196 CTypedPtrList m_memorizedSpellsPriest[7]0x968 252 CTypedPtrList m_memorizedSpellsMage[9]0xA64 28 CTypedPtrList m_memorizedSpellsInnate[1]0xA80 168 CGameSpriteEquipment m_equipment0xB28 4 unsigned char* m_pDialogData0xB2C 4 unsigned long m_nDialogData0xB30 2340 CDerivedStats m_derivedStats0x1454 2340 CDerivedStats m_tempStats0x1D78 2340 CDerivedStats m_bonusStats0x269C 524 CGameSaveCharacter m_gameSaveData0x28A8 4 CString m_sName0x28AC 1 unsigned char m_lastCharacterCount
3 <padding>0x28B0 164 CGameStatsSprite m_cGameStats0x2954 8 CResRef m_currentArea0x295C 1 unsigned char m_bGlobal0x295D 1 unsigned char m_nModalState
2 <padding>0x2960 40 CSound m_sndWalk[2]0x2988 4 unsigned long m_nSndWalk0x298C 40 CSound m_sndArmor[2]0x29B4 1 unsigned char m_currSndWalk0x29B5 1 unsigned char m_currSndArmor
2 <padding>0x29B8 20 CSound m_sndReady0x29CC 20 CSound m_sndDeath0x29E0 20 CSound m_sndMagic0x29F4 20 CSound m_sndVoice0x2A08 20 CSound m_sndSpriteEffect0x2A1C 4 long m_nNumberOfTimesTalkedTo0x2A20 4 int m_bSeenPartyBefore0x2A24 8 CResRef m_specificScriptName0x2A2C 96 long m_nNumberOfTimesInteractedWith[24]|0x2A8C 2 short m_nHappiness0x2A8E 2 short m_nOldHappiness0x2A90 20 CAIObjectType m_interactingWith0x2AA4 4 long m_triggerId0x2AA8 4 int m_active0x2AAC 4 int m_activeAI0x2AB0 4 int m_activeImprisonment0x2AB4 4 int m_bSelected
Continued on next page
5.8. CG Structures 541
EEex Documentation, Release 1.0
Table 22 – continued from previous page0x2AB8 4 int m_bPortraitUpdate0x2ABC 1 unsigned char m_bInfravisionOn0x2ABD 16 unsigned char m_terrainTable[16]0x2ACD 16 unsigned char m_visibleTerrainTable[16]0x2ADD 16 unsigned char m_flightTerrainTable[16]
3 <padding>0x2AF0 16 CGameAnimation m_animation0x2B00 4 unsigned short* m_pSpriteEffectArray0x2B04 4 tagPOINT* m_pSpriteEffectArrayPosition0x2B08 1 unsigned char m_nTwitches0x2B09 1 unsigned char m_spriteEffectSequenceNumber0x2B0A 1 unsigned char m_spriteEffectDuration0x2B0B 1 unsigned char m_spriteEffectSequenceLength0x2B0C 1 char m_spriteEffectBaseIntensity0x2B0D 1 unsigned char m_spriteEffectRandomIntensity
2 <padding>0x2B10 192 CVidCell m_spriteEffectVidCell0x2BD0 36 CVidPalette m_spriteEffectPalette0x2BF4 4 unsigned long m_spriteEffectFlags0x2BF8 192 CVidCell m_spriteSplashVidCell0x2CB8 36 CVidPalette m_spriteSplashPalette0x2CDC 4 unsigned long m_spriteSplashFlags0x2CE0 16 CRect m_rSpriteEffectFX0x2CF0 8 CPoint m_ptSpriteEffectReference0x2CF8 1 unsigned char m_effectExtendDirection0x2CF9 1 unsigned char m_bEscapingArea
2 <padding>0x2CFC 4 int m_animationRunning0x2D00 4 long m_posZDelta0x2D04 1 unsigned char m_doBounce0x2D05 1 unsigned char m_nMirrorImages0x2D06 1 unsigned char m_bBlur0x2D07 1 unsigned char m_bInvisible0x2D08 1 unsigned char m_bSanctuary
3 <padding>0x2D0C 192 CVidCell m_sanctuaryVidCell0x2DCC 1 unsigned char m_bEntangle
3 <padding>0x2DD0 192 CVidCell m_entangleVidCell0x2E90 1 unsigned char m_bMinorGlobe
3 <padding>0x2E94 192 CVidCell m_minorGlobeVidCell0x2F54 1 unsigned char m_bShieldGlobe
3 <padding>0x2F58 192 CVidCell m_shieldGlobeVidCell0x3018 1 unsigned char m_bGreasePool
3 <padding>0x301C 192 CVidCell m_greasePoolVidCell0x30DC 1 m_bWebHold
3 <padding>Continued on next page
542 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 22 – continued from previous page0x30E0 192 CVidCell m_webHoldVidCell0x31A0 8 double m_fCircleChange0x31A8 8 double m_fCurrCircleChange0x31B0 2 short m_radius0x31B2 1 char m_circleFacing0x31B3 1 unsigned char m_bVisibilityUpdated
4 <padding>0x31B8 8 double m_fDirectionOffset0x31C0 2 short m_nSequence
2 <padding>0x31C4 8 CPoint m_posExact0x31CC 8 CPoint m_posDelta0x31D4 8 CPoint m_posDest0x31DC 8 CPoint m_posOld0x31E4 8 CPoint m_posOldWalk0x31EC 8 CPoint m_posLastVisMapEntry0x31F4 4 long* m_pVisMapExploredArea0x31F8 2 short m_skipDeltaDirection0x31FA 2 short m_deltaDirection0x31FC 2 short m_nNewDirection0x31FE 2 short m_nDirection0x3200 4 long* m_pPath0x3204 2 short m_nPath0x3206 1 unsigned char m_bCheckMove
1 <padding>0x3208 28 CTypedPtrList m_pPathTemp0x3224 28 CTypedPtrList m_nPathTemp0x3240 2 short m_currPath
2 <padding>0x3244 4 int m_walkBackwards0x3248 4 int m_turningAbout0x324C 4 unsigned long m_lastRGBColor0x3250 4 int m_pathSearchInvalidDest0x3254 4 int m_pathCollision0x3258 4 CSearchRequest* m_currentSearchRequest0x325C 2 short m_nBloodFlashAmount0x325E 2 short m_nDamageLocatorTime0x3260 4 unsigned long m_nDamageLocatorColor0x3264 4 int m_bBloodFlashOn0x3268 176 CVidBitmap m_vbPortraitSmall0x3318 4 int m_bVisibleMonster0x331C 4 int m_bBumpable0x3320 1 unsigned char m_bBumped
3 <padding>0x3324 8 CPoint m_ptBumpedFrom0x332C 4 int m_bInClearBumpPath0x3330 4 unsigned long m_nBlockedTick0x3334 4 int m_followLeader0x3338 4 int m_followLeaderAdditive0x333C 4 long m_followLeaderNext
Continued on next page
5.8. CG Structures 543
EEex Documentation, Release 1.0
Table 22 – continued from previous page0x3340 4 int m_followStart0x3344 28 CTypedPtrList m_lstBlood0x3360 2 short m_castCounter
2 <padding>0x3364 4 int m_bStartedCasting0x3368 4 int m_bInCasting0x336C 2 short m_selectedSound0x336E 2 short m_moveCount0x3370 2 short m_moveToFrontQueue0x3372 2 short m_moveToBackQueue0x3374 4 int m_moveToBack0x3378 4 int m_moveToFront0x337C 44 CGameEffectList m_equipedEffectList0x33A8 44 CGameEffectList m_timedEffectList0x33D4 28 CPersistantEffectList m_persistantEffects0x33F0 20 CGameAbilityList m_lstSelectedLevelUpAbilities0x3404 8 CPoint m_curDest0x340C 4 long m_nGregsRetryCounter0x3410 4 int m_bWaitingForAreaLoadInLeaveAreaLUA0x3414 2 short m_userCommandPause0x3416 2 short m_nCommandPause0x3418 8 CPoint m_curPosition0x3420 4 int m_tookDamage0x3424 4 POSITION* m_groupPosition0x3428 4 int m_groupMove0x342C 4 int m_firstDeadAI0x3430 4 CProjectile* m_curProjectile0x3434 4 CSpell* m_curSpell0x3438 4 CItem* m_curItem0x343C 2 short m_curItemSlotNum0x343E 2 short m_curItemAbilityNum0x3440 80 short m_weaponProficiencyList[40]0x3490 8 unsigned char m_generalWeaponList[8]0x3498 2 short m_speedFactor0x349A 2 short m_lastActionID0x349C 20 CAIObjectType m_liveTypeAI0x34B0 20 CAIObjectType m_startTypeAI0x34C4 4 int m_endOfDamageSeq0x34C8 2 short m_playDeadCounter0x34CA 2 short m_turnToStoneCounter0x34CC 2 short m_lightningReactCounter0x34CE 2 short m_sleepCounter0x34D0 2 short m_runCounter0x34D2 2 short m_searchPauseCount0x34D4 4 int m_doneSearch0x34D8 2 short m_dieCount0x34DA 2 short m_pauseCount0x34DC 2 short m_recoilFrame0x34DE 2 short m_attackFrame0x34E0 4 long m_noActionCount
Continued on next page
544 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 22 – continued from previous page0x34E4 4 int m_inFormation0x34E8 4 int m_newEffect0x34EC 1 unsigned char m_canDamage
3 <padding>0x34F0 4 int m_leftAttack0x34F4 1 unsigned char m_halfAttack
3 <padding>0x34F8 4 int m_hasColorEffects0x34FC 4 int m_hasColorRangeEffects0x3500 4 int m_hasAnimationEffects0x3504 4 int m_removeFromArea0x3508 4 int m_forceAnimationReset0x350C 44 CMarker m_marker0x3538 44 CMarker m_destMarker0x3564 4 long m_targetId0x3568 8 CPoint m_targetPoint0x3570 2 short m_targetAreaSize0x3572 1 unsigned char m_nTempSelectedWeapon0x3573 1 unsigned char m_nTempSelectedWeaponAbility0x3574 52 CButtonData m_currentUseButton0x35A8 8 CResRef m_dialog0x35B0 8 CResRef m_dialogInteraction0x35B8 1 unsigned char m_sequenceTest
3 <padding>0x35BC 4 STR_RES* m_speech0x35C0 1 unsigned char m_saveVSDeathRoll0x35C1 1 unsigned char m_saveVSWandsRoll0x35C2 1 unsigned char m_saveVSPolyRoll0x35C3 1 unsigned char m_saveVSBreathRoll0x35C4 1 unsigned char m_saveVSSpellRoll0x35C5 1 unsigned char m_magicResistRoll0x35C6 1 unsigned char m_probabilityRoll0x35C7 1 unsigned char m_wildMageLevelModRoll0x35C8 1 unsigned char m_wildMageSurgeRoll
1 <padding>0x35CA 2 short m_wildSurgeLevel0x35CC 2 short m_nSelectionCountCommon0x35CE 2 short m_nSelectionCountCommonRareCounter0x35D0 2 short m_nSelectionCountRare0x35D2 2 short m_nSelectionCountAction0x35D4 4 long m_lastCheckedHitPoints0x35D8 4 int m_moraleFailure0x35DC 4 int m_startedSwing0x35E0 2 short m_followCount
2 <padding>0x35E4 4 int m_clearAIOnRemoveFromArea0x35E8 4 long m_dialogWait0x35EC 4 long m_dialogWaitTarget0x35F0 4 long m_talkingCounter0x35F4 1 unsigned char m_talkingRenderCount
Continued on next page
5.8. CG Structures 545
EEex Documentation, Release 1.0
Table 22 – continued from previous page0x35F5 1 unsigned char m_inControlLastTime0x35F6 1 unsigned char m_bSecondPass
1 <padding>0x35F8 28 CTypedPtrList m_portraitIcons0x3614 192 CVidCell m_portraitIconVidCell0x36D4 4 int m_firstActionSound0x36D8 4 long m_lastRested0x36DC 4 int m_berserkActive0x36E0 2 short m_attackSoundDeadzone
2 <padding>0x36E4 4 long m_nHPCONBonusTotalOld0x36E8 4 int m_bHPCONBonusTotalUpdate0x36EC 4 long m_nLastWeightCheck0x36F0 4 unsigned long m_modalCounter0x36F4 4 int m_bHiding0x36F8 4 unsigned long m_lastRegenerationTime0x36FC 4 int m_bLevelUp0x3700 1 unsigned char m_bAllowDialogInterrupt0x3701 1 unsigned char m_bHappinessChanged
2 <padding>0x3704 4 long m_nUnselectableCounter0x3708 4 unsigned long m_nUnselectableType0x370C 8 CResRef m_secondarySounds0x3714 4 long m_nStealthGreyOut0x3718 4 int m_bMentalStateActing0x371C 12 int m_nLastLevelUpLevel[3]0x3728 4 int m_nLastLevelUpHPRoll0x372C 4 int m_bForceVisualEffects0x3730 2 short m_currentActionId
2 <padding>0x3734 4 int m_bPlayedEncumberedStopped0x3738 4 int m_bPlayedEncumberedSlowed0x373C 4 long m_nPlayedEncumberedStopped0x3740 4 long m_nPlayedEncumberedSlowed0x3744 2 short m_nPlayedPoisonedDamage0x3746 2 short m_nEffectListCalls0x3748 4 int m_bAllowEffectListCall0x374C 1 unsigned char m_nPreCutSceneMoveScale
3 <padding>0x3750 4 int m_bUsingCutSceneMovement0x3754 4 int m_bDeleteOnRemove0x3758 4 CVariableHash* m_pLocalVariables0x375C 4 int m_bInUnmarshal0x3760 28 CBounceList m_lBounceList0x377C 4 long m_nTransitionPointIndex0x3780 4 long m_nBounceCounter0x3784 4 long m_nMoraleAI0x3788 4 long m_nGeneratedVEFIndex0x378C 4 long m_nTrackingCounter0x3790 4 CGameButtonList* m_interalButtonList
Continued on next page
546 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 22 – continued from previous page0x3794 4 CAIScript* m_dreamScript0x3798 104 CGameDialogSprite m_cDialog0x3800 104 CGameDialogSprite m_cBanter0x3868 1 unsigned char m_bForceVisRangeRedraw
3 <padding>0x386C 4 long m_nLastExpiryCheck0x3870 4 long m_nLastContingencyCheck0x3874 4 CString m_hitBonusesLeft0x3878 4 CString m_hitBonusesRight0x387C 4 CString m_damageBonusesLeft0x3880 4 CString m_damageBonusesRight0x3884 2 short m_effectMovementRate
2 <padding>0x3888 4 unsigned long m_effectStateFlags0x388C 144 CCreatureFileMemorizedSpellLevel m_effectMemorizedSpellsLevelMage0x391C 112 CCreatureFileMemorizedSpellLevel m_effectMemorizedSpellsLevelPriest0x398C 4 int m_effectStoreInitialized0x3990 1 unsigned char m_nLevellingUp
3 <padding>0x3994 4 int m_bHasDeathSequence0x3998 28 CTypedPtrList m_lstTargetIds0x39B4 28 CTypedPtrList m_lstTargetPts0x39D0 4 int m_bInStoreState0x39D4 4 int m_bInDialogState0x39D8 4 long m_nDialogState0x39DC 4 long m_nWaitingOnDialog0x39E0 1 bool m_bHighlightPortrait
3 <padding>0x39E4 4 unsigned long m_nHighlightColor0x39E8 4 int m_bCutSceneOverrideOfState0x39EC 4 int m_bForceEffectProcessFromTimeStop0x39F0 4 int m_bCopyForAdd0x39F4 4 long m_nCopyParent0x39F8 28 CTypedPtrList m_feedbackQueue0x3A14 4 int m_bOnSearchMap0x3A18 4 int m_bRemovedFromMap0x3A1C 120 CGameSpriteLastUpdate m_cLastSpriteUpdate0x3A94 4 int m_bSendSpriteUpdate0x3A98 4 long m_nLastDamageTaken0x3A9C 4 long m_nDeadVisualEffectCountDown0x3AA0 4 int m_bForceVisibilityCheck0x3AA4 1 unsigned char m_nVisualRange
3 <padding>0x3AA8 4 int m_bPlayAnimationBattleCry0x3AAC 4 int m_bPlayAnimationSelectionSound0x3AB0 10 unsigned char m_aLevellupSpellsToPick[10]
2 <padding>0x3ABC 4 long m_nCrossAreaChaseCounter0x3AC0 4 int m_bDidAReequipAll0x3AC4 4 int m_bInEquip
Continued on next page
5.8. CG Structures 547
EEex Documentation, Release 1.0
Table 22 – continued from previous page0x3AC8 1 char m_cFirstResSlot
3 <padding>0x3ACC 4 long m_nNumColorRanges0x3AD0 4 long m_nNumColorEffects0x3AD4 4 long m_nNumWeaponImmunities0x3AD8 4 int m_bCheckedIfVisiblePause0x3ADC 4 int m_bCheckedSpecialAbilities0x3AE0 4 int m_bDroppedTempItem0x3AE4 4 long m_nSkippedUpdates0x3AE8 4 int m_bDelayUpdate0x3AEC 4 long m_nHalfSwingCounter0x3AF0 1 bool m_bInCopy
3 <padding>0x3AF4 28 CTypedPtrList m_lstVisibleGroundItems0x3B10 4 int m_nGroundItemPage0x3B14 4 float m_avgProcessAITime
5.8.61 CGameSprite::GroundItem
Offset Size Type Field0x00 4 long containerID0x04 4 long itemSlot0x08 8 CResRef item0x10 8 CResRef itemIcon0x18 2 unsigned short count
2 <padding>0x1C 4 unsigned long itemFlags
5.8.62 CGameSprite::RenderHealthBar
Offset Size Type Field0x00 8 SDL_Point pt0x08 4 unsigned long c
5.8.63 CGameSpriteEquipment
Offset Size Type Field0x00 156 CItem* m_items[39]0x9C 1 unsigned char m_selectedWeapon
1 <padding>0x9E 2 unsigned short m_selectedWeaponAbility0xA0 4 CItem* m_pTempItem0xA4 4 CGameSprite* m_pSprite
548 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.8.64 CGameSpriteLastUpdate
Offset Size Type Field0x00 4 long* m_pPath0x04 2 short m_nPath0x06 2 short m_currPath0x08 8 CPoint m_ptDest0x10 1 unsigned char m_nMoveScale
1 <padding>0x12 2 short m_nSequence0x14 8 CPoint m_ptPosition0x1C 2 short m_nFacing
2 <padding>0x20 4 unsigned long m_dwState0x24 2 short m_nHitPoints0x26 2 short m_nMaxHitPoints0x28 2 short m_nArmorClass0x2A 2 short m_nACCrushingMod0x2C 2 short m_nACMissileMod0x2E 2 short m_nACPiercingMod0x30 2 short m_nACSlashingMod0x32 2 short m_nPortraitIcons0x34 4 long* m_pPortraitIcons0x38 1 unsigned char m_nEnemyAlly0x39 1 unsigned char m_nEnemyAllyLive0x3A 1 unsigned char m_bMoraleFailure0x3B 1 unsigned char m_nGeneral0x3C 1 unsigned char m_nGeneralLive
3 <padding>0x40 4 CString m_sAreaString0x44 1 unsigned char m_bLevelUp
3 <padding>0x48 4 long m_nHPCONBonusTotalOld0x4C 1 unsigned char m_bSummonDisable0x4D 1 unsigned char m_bDoNotJump0x4E 1 unsigned char m_bSanctuary0x4F 1 unsigned char m_bDisableCircle0x50 1 unsigned char m_bHeld0x51 1 unsigned char m_bActiveImprisonment
2 <padding>0x54 32 unsigned long m_spellState[8]0x74 4 int m_bFullUpdateRequired
5.8.65 CGameStatic
Used by the CGameStatic Class
5.8. CG Structures 549
EEex Documentation, Release 1.0
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 76 CAreaFileStaticObject m_header0x94 192 CVidCell m_vidCell0x154 4 CResWebm* m_pMovie0x158 4 CResPVR* m_pImage0x15C 4 int m_bRender0x160 8 CSize m_size0x168 28 CTypedPtrList m_secondaryVidCellList0x184 4 int m_bNewPalette0x188 176 CVidBitmap m_newPalette
5.8.66 CGameStatsRes
Offset Size Type Field0x00 4 CObject m_cObject0x04 8 CResRef m_cResRef0x0C 2 short m_nTimesUsed
2 <padding>
5.8.67 CGameStatsSprite
Used by the CGameStatsSprite Class
Offset Size Type Field0x00 4 unsigned long m_strStrongestKillName0x04 4 unsigned long m_nStrongestKillXPValue0x08 4 unsigned long m_nPreviousTimeWithParty0x0C 4 unsigned long m_nJoinPartyTime0x10 4 int m_bWithParty0x14 4 unsigned long m_nChapterKillsXPValue0x18 4 unsigned long m_nChapterKillsNumber0x1C 4 unsigned long m_nGameKillsXPValue0x20 4 unsigned long m_nGameKillsNumber0x24 64 CGameStatsRes m_pSpellStats[4]0x64 64 CGameStatsRes m_pWeaponStats[4]
550 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.8.68 CGameTemporal
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 16 unsigned char m_visibleTerrainTable[16]0x58 16 CGameAnimation m_animation0x68 4 int m_animationRunning0x6C 8 CPoint m_posExact0x74 8 CPoint m_posDelta0x7C 2 short m_duration0x7E 1 unsigned char m_durationFade0x7F 1 unsigned char m_collision0x80 20 CSound m_sound0x94 4 int m_bPermanent0x98 4 int m_bAllowSave0x9C 2 unsigned short m_projectileType
2 <padding>
5.8.69 CGameText
Used by the CGameText Class
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 4 int m_nWidth0x4C 32 CVidFont m_textFont0x6C 4 int m_nDuration0x70 2 unsigned short m_nBeginFade
2 <padding>0x74 4 CString m_sText0x78 4 long m_iTarget0x7C 4 CGameObject* m_pTarget
5.8.70 CGameTiledObject
Used by the CGameTiledObject Class
5.8. CG Structures 551
EEex Documentation, Release 1.0
Offset Size Type Field0x00 1020 CGameAIBase m_cGameAIBase0x3fc 8 CResRef m_resID0x404 4 unsigned long m_dwFlags0x408 4 CPoint* m_pPrimarySearch0x40C 2 unsigned short m_nPrimarySearch
20x410 4 CPoint* m_pSecondarySearch0x414 2 unsigned short m_nSecondarySearch
20x418 24 CTiledObject m_tiledObject0x430 32 char m_scriptName[32]
5.8.71 CGameTimer
Offset Size Type Field0x00 4 long m_time0x04 1 unsigned char m_id
3 <padding>
5.8.72 CGameTrigger
Used by the CGameTrigger Class
552 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Offset Size Type Field0x00 1020 CGameAIBase m_cGameAIBase0x3FC 2 unsigned short m_triggerType
2 <padding>0x400 16 CRect m_rBounding0x410 4 unsigned long m_cursorType0x414 8 unsigned char m_newArea[8]0x41C 32 char m_newEntryPoint[32]0x43C 4 unsigned long m_dwFlags0x440 4 unsigned long m_description0x444 4 CPoint* m_pPolygon0x448 2 unsigned short m_nPolygon0x44A 2 unsigned short m_boundingRange0x44C 8 unsigned char m_scriptRes[8]0x454 32 char m_scriptName[32]0x474 2 unsigned short m_trapDetectionDifficulty0x476 2 unsigned short m_trapDisarmingDifficulty0x478 2 unsigned short m_trapActivated0x47A 2 unsigned short m_trapDetected0x47C 8 CPoint m_posTrapOrigin0x484 8 CResRef m_keyType0x48C 2 short m_drawPoly
2 <padding>0x490 4 unsigned long m_iGameText0x494 8 CPoint m_ptWalkTo
5.9 CI Structures
• CIcon
• CImmunitiesAIType
• CImmunitiesEffect
• CImmunitiesItemEquip
• CImmunitiesItemEquipList
• CImmunitiesItemTypeEquip
• CImmunitiesItemTypeEquipList
• CImmunitiesProjectile
• CImmunitiesSchoolAndSecondary
• CImmunitiesSchoolAndSecondaryDecrementing
• CImmunitiesSpellLevel
• CImmunitiesSpellLevelDecrementing
• CImmunitiesSpellList
• CImmunitiesWeapon
• CImmunitySpell
5.9. CI Structures 553
EEex Documentation, Release 1.0
• CImportGame
• CInfButtonArray
• CInfButtonSettings
• CInfCursor
• CInfGame
• CInfTileSet
• CInfToolTip
• CInfinity
• CItem
5.9.1 CIcon
See CIcon Class
Offset Size Type Field1 <padding>
5.9.2 CImmunitiesAIType
Used by the CImmunitiesAIType Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.9.3 CImmunitiesEffect
Used by the CImmunitiesEffect Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.9.4 CImmunitiesItemEquip
Offset Size Type Field0x00 8 CResRef m_res0x08 4 unsigned long m_error0x0C 4 CGameEffect* m_pEffect
554 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.9.5 CImmunitiesItemEquipList
Used by the CImmunitiesItemEquipList Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.9.6 CImmunitiesItemTypeEquip
Offset Size Type Field0x00 4 unsigned long m_type0x04 4 unsigned long m_error0x08 4 CGameEffect* m_pEffect
5.9.7 CImmunitiesItemTypeEquipList
Used by the CImmunitiesItemTypeEquipList Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.9.8 CImmunitiesProjectile
Used by the CImmunitiesProjectile Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.9.9 CImmunitiesSchoolAndSecondary
Used by the CImmunitiesSchoolAndSecondary Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.9. CI Structures 555
EEex Documentation, Release 1.0
5.9.10 CImmunitiesSchoolAndSecondaryDecrementing
Used by the CImmunitiesSchoolAndSecondaryDecrementing Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.9.11 CImmunitiesSpellLevel
Used by the CImmunitiesSpellLevel Class
Offset Size Type Field0x00 40 int m_levels[10]
5.9.12 CImmunitiesSpellLevelDecrementing
Used by the CImmunitiesSpellLevelDecrementing Class
Offset Size Type Field0x00 80 CSpellLevelDecrementing m_levels[10]
5.9.13 CImmunitiesSpellList
Used by the CImmunitiesSpellList Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.9.14 CImmunitiesWeapon
Used by the CImmunitiesWeapon Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
556 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.9.15 CImmunitySpell
Offset Size Type Field0x00 8 CResRef m_res0x08 4 unsigned long m_error0x0C 4 int m_item
5.9.16 CImportGame
Used by the CImportGame Class
Offset Size Type Field0x00 1 unsigned char m_bDrizztDead
3 <padding>0x04 4 CGameFile* m_pGame0x08 1 unsigned char m_nVersion
3 <padding>0x0C 20 CTypedPtrArray m_aPartyCreatures0x20 20 CTypedPtrArray m_aNonPartyCreatures0x34 20 CTypedPtrArray m_aCreatureData0x48 20 CTypedPtrArray m_aNPCData0x5c 4 int m_nGlobalVariables0x60 4 unsigned char* m_pGlobalVariables0x64 4 unsigned long m_nPartyGold0x68 4 unsigned long m_nReputation
5.9.17 CInfButtonArray
Used by the CInfButtonArray Class
Offset Size Type Field0x00 5136 CInfButtonSettings m_buttonArray[12]0x1410 48 int m_configIcons[12]0x1440 48 int m_buttonTypes[12]0x1470 4 int m_buttonToConfigure0x1474 4 int m_nState0x1478 4 int m_nLastState0x147c 4 int m_bWayPointsOn0x1480 192 CVidCell m_vcButtons0x1540 192 CVidCell m_vcActions0x1600 4 int m_quickButtonToConfigure0x1604 4 int m_nListStartIndex0x1608 4 int m_nSelectedButton0x160C 4 int m_nFirstMageSpellIndex0x1610 4 int m_bToggleButtonCleric
5.9. CI Structures 557
EEex Documentation, Release 1.0
5.9.18 CInfButtonSettings
Offset Size Type Field0x00 4 int m_bEnabled0x04 4 int m_bShowIcon0x08 4 int m_bOverrideRender0x0C 4 int m_nButtonFrame0x10 4 int m_nButtonSelectedFrame0x14 192 CVidCell m_vcIcon0xD4 192 CVidCell m_vcLauncherIcon0x194 4 int m_bSelectable0x198 4 int m_bSelected0x19C 4 int m_bHighlighted0x1A0 4 int m_itemCount0x1A4 4 int m_itemCharge0x1A8 4 int m_bGreyOut
5.9.19 CInfCursor
Used by the CInfCursor Class
Offset Size Type Field0x00 4 int bVisible0x04 192 CVidCell vcCursors0xC4 192 CVidCell vcArrow0x184 192 CVidCell vcCustom0x244 268 CInfToolTip vcToolTip0x350 4 unsigned int nAnimationCounter0x354 4 int nAnimationSpeed0x358 4 int nCurrentCursor0x35C 4 int nDirection0x360 4 int nState0x364 1 unsigned char bAnimatingCustom
3 <padding>
5.9.20 CInfGame
Used by the CInfGame Class
Offset Size Type Field0x00 9472 CRuleTables m_ruleTables0x2500 8 CTimerWorld m_worldTime0x2508 4 int m_bGameLoaded0x250C 1 unsigned char m_bInLoadGame
Continued on next page
558 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 24 – continued from previous page0x250D 1 unsigned char m_bInLoadArea0x250E 1 unsigned char m_bInIniSpawn
1 <padding>0x2510 4 unsigned long m_nUniqueAreaID0x2514 4 unsigned long m_nAreaFirstObject0x2518 1 unsigned char m_bFromNewGame0x2519 1 unsigned char m_bInDestroyGame0x251A 1 unsigned char m_bAnotherPlayerJoinedGame0x251B 1 unsigned char m_bInAreaTransition0x251C 4 int m_bStartedDeathSequence0x2520 28 CTypedPtrList m_lstTargetIds0x253C 28 CTypedPtrList m_lstTargetPts0x2558 2 short m_nState
2 <padding>0x255C 4 int m_iconCount0x2560 1 unsigned char m_iconIndex0x2561 8 CResRef m_iconResRef0x2569 1 unsigned char m_tempCursor
2 <padding>0x256C 4 long m_iContainer0x2570 4 long m_iContainerSprite0x2574 4 int m_bAllowTargetDead0x2578 8 CGamePermission m_singlePlayerPermissions0x2580 188 CMultiplayerSettings m_multiPlayerSettings0x263C 24 CMachineStates m_machineStates0x2654 5652 CInfButtonArray m_cButtonArray0x3C68 8 CVRamPool m_cVRamPool0x3C70 4 int m_bSaveScreen0x3C74 4 CString m_sSaveScreenArea0x3C78 176 CVidBitmap m_rgbMasterBitmap
4 <padding>0x3D2C 116 CGameRemoteObjectArray m_remoteObjectsArray0x3DA0 1 unsigned char m_visibleArea0x3DA1 1 unsigned char m_bPlayerScriptStyle
2 <padding>0x3DA4 48 CGameArea* m_gameAreas[12]0x3DD4 4 CGameArea* m_pGameAreaMaster0x3DD8 24 long m_characters[6]0x3DF0 24 long m_charactersPortrait[6]0x3E08 2 short m_nCharacters
2 <padding>0x3E0C 28 CTypedPtrList m_lstGlobalCreatures0x3E28 20 CTypedPtrArray m_characterOverflow0x3E3C 2 short m_nCharacterOverflowCount0x3E3E 2 short m_nReputation0x3E40 4 CPathSearch* m_pathSearch0x3E44 4 CPathNode** m_listGrid0x3E48 36 CAIGroup m_group0x3E6C 28 CTypedPtrList m_allies0x3E88 28 CTypedPtrList m_familiars
Continued on next page
5.9. CI Structures 559
EEex Documentation, Release 1.0
Table 24 – continued from previous page0x3EA4 72 unsigned char m_resrefFamiliarsDefault[9][8]0x3EEC 2268 CTypedPtrList m_resrefFamiliars[9][9]0x47C8 4 int m_bFamiliarBlock0x47CC 4 unsigned long m_nFamiliarSummoner0x47D0 4 CString m_sSaveGame0x47d4 4 int m_bAllowCutSceneBreak0x47d8 452 CGameSave m_gameSave0x499C 604 CGameOptions m_options0x4BF8 20 CGameJournal m_cGameJournal0x4C0C 28 CWorldMap m_cWorldMap0x4C28 2000 int m_pKeymap[500]0x53F8 2000 int m_pKeymapFlags[500]0x5BC8 8 CVariableHash m_variables0x5BD0 8 CVariableHash m_namedCreatures0x5BD8 24 STR_RES m_soundNeedParty0x5BF0 24 STR_RES m_soundAreaTransitionRefused0x5C08 1 unsigned char m_bForceDither
3 <padding>0x5C0C 192 CVidCell m_vcLocator0x5CCC 28 CTypedPtrList m_searchRequests0x5CE8 28 CTypedPtrList m_searchRequestsBack0x5D04 4 int m_searchRequestListEmpty0x5D08 4 int m_searchShutdown0x5D0C 28 CPtrList m_lDisposableItems0x5D28 2 short m_currArmor0x5D2A 2 short m_currAnimation0x5D2C 60 CAIIdList SAVE_OBJECT_LIST0x5D68 4 long m_nProtagonistId0x5D6C 1 unsigned char m_bPartyAI0x5D6D 1 unsigned char m_bShowAreaNotes0x5D6E 1 unsigned char m_nTravelScreenImageToUse0x5D6F 8 CResRef m_resrefTravelScreenImage
1 <padding>0x5D78 4 unsigned long m_dwLastProgressRenderTickCount0x5D7C 4 unsigned long m_dwLastProgressMsgTickCount0x5D80 4 unsigned long m_nLastSaveTime0x5D84 4 unsigned long m_gameTime0x5D88 4 unsigned long m_zoomLevel0x5D8C 4 unsigned long m_zoomEnabled0x5D90 8 CPoint m_lastClick0x5D98 4 long m_lastTarget0x5D9C 1 unsigned char m_bTriggerOutline
3 <padding>0x5DA0 36 CVidPalette m_entanglePalette0x5DC4 36 CVidPalette m_webHoldPalette0x5DE8 4 long m_nCharacterTerminationSequenceDelay0x5DEC 4 int m_bNoDreamTonight0x5DF0 1 unsigned char m_bContinueHealing
3 <padding>0x5DF4 28 CMoveList m_cMoveList
Continued on next page
560 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 24 – continued from previous page0x5E10 28 CMoveList m_cLimboList0x5E2C 28 CTypedPtrList m_lTransitionPiles0x5E48 4 CString m_transitionPilesResref0x5E4C 8 CPoint m_transitionPilesPtDest0x5E54 4 int m_bMissionPackInfo0x5e58 4 int m_bMissionPackInfo250x5e5c 4 int m_bMissionPackInfoTBP0x5e60 4 long m_nAIIndex0x5e64 4 long m_nTimeStop0x5e68 4 long m_nTimeStopCaster0x5e6c 4 long m_nGreyScale0x5e70 4 m_nBrownScale0x5e74 4 CAIScriptFile* m_globalScriptFile0x5e78 48 CStore* m_aServerStore[12]0x5EA8 12 unsigned char m_nServerStoreDemands[12]0x5EB4 4 CString m_appearanceWeapon0x5EB8 4 CString m_appearanceBody0x5EBC 4 CString m_appearanceShield0x5EC0 4 CString m_appearanceHelmet0x5EC4 7 unsigned char m_appearanceColorsWeapon[7]0x5ECb 7 unsigned char m_appearanceColorsBody[7]0x5ED2 7 unsigned char m_appearanceColorsShield[7]0x5ED9 7 unsigned char m_appearanceColorsHelmet[7]0x5EE0 4 int m_bOverrideRestEncounter0x5EE4 4 int m_bAddOnActivated0x5EE8 4 int m_bAddInActivated0x5EEC 4 CString m_sCurrentCampaign0x5EF0 4 int m_bCampaignEnabled0x5EF4 28 CTypedPtrList m_storedLocations0x5F10 28 CTypedPtrList m_storedLocationsPocketPlane0x5F2C 8 CVVCHash m_VVCPriorities0x5F34 4 long m_nCurrentVVCPriority
5.9.21 CInfTileSet
Used by the CInfTileSet Class
Offset Size Type Field0x00 8 CResTileSet* tis[2]0x08 164 CVidTile cVidTile0xAC 4 CVRamPool* pVRPool0xB0 4 CResInfTile** pResTiles0xB4 4 unsigned long nTiles0xB8 4 unsigned long nTileSize
5.9. CI Structures 561
EEex Documentation, Release 1.0
5.9.22 CInfToolTip
Offset Size Type Field0x00 189 CVidCell m_cVidCell
3 <padding>0xC0 4 CString m_sText0xC4 16 CRect m_rSource0xD4 4 int m_bUseSourceRect0xD8 32 CVidFont m_textFont0xF8 20 CSound m_openSnd
5.9.23 CInfinity
Used by the CInfinity Class
Offset Size Type Field0x00 20 CInfTileSet* pTileSets[5]0x14 4 CResWED* pResWED0x18 4 CVRamPool* pVRPool0x1C 4 CVidMode* pVidMode0x20 4 int bUseDestSrc0x24 4 int bRefreshVRamRect0x28 4 int bInitialized0x2C 4 int bWEDDemanded0x30 4 int nOffsetX0x34 4 int nOffsetY0x38 4 int nTilesX0x3C 4 int nTilesY0x40 4 int nNewX0x44 4 int nNewY0x48 16 CRect rViewPortNotZoomed0x58 16 CRect rViewPort0x68 16 CRect rVRamRect0x78 16 CRect rRequestRect0x88 4 int nVisibleTilesX0x8C 4 int nVisibleTilesY0x90 4 int nAreaX0x94 4 int nAreaY0x98 4 int nCurrentTileX0x9C 4 int nCurrentTileY0xA0 4 int nCurrentX0xA4 4 int nCurrentY0xA8 4 int nSub1XOffset0xAC 4 int nSub1YOffset0xB0 4 int nSub2XOffset0xB4 4 int nSub2YOffset0xB8 4 int nSub3XOffset
Continued on next page
562 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 25 – continued from previous page0xBC 4 int nSub3YOffset0xC0 4 int nSub4XOffset0xC4 4 int nSub4YOffset0xC8 20 CSound sndThunder0xDC 4 int nCurrentLightningFrequency0xE0 4 int nNextLightningFrequency0xE4 4 int nNewLightningFrequency0xE8 4 int nCurrentRainLevel0xEC 4 int nNextRainLevel0xF0 4 int nCurrentSnowLevel0xF4 4 int nCurrentWindLevel0xF8 4 int nCurrentFogLevel0xFC 4 int nNextWindLevel0x100 4 int nCurrentTimeOfDay0x104 4 int nTimeToNextThunder0x108 4 int nThunderLength0x10C 4 int bRenderCallLightning0x110 4 int nRenderLightningTimer0x114 8 CPoint cLightningPoint0x11C 192 CVidCell m_glowVidCell0x1DC 28 CTypedPtrList m_lAOE0x1F8 2 unsigned short m_areaType0x1FA 1 unsigned char m_renderDayNightCode0x1FB 1 unsigned char m_oldRenderDayNightCode0x1FC 1 unsigned char m_dayLightIntensity0x1FD 1 unsigned char m_requestDayNightCode0x1FE 1 unsigned char m_oldRequestDualTileCode0x1FF 1 unsigned char m_bResizedViewPort0x200 4 unsigned long m_nLastTickCount0x204 8 CPoint m_ptCurrentPosExact0x20C 2 short m_autoScrollSpeed
2 <padding>0x210 8 CPoint0x218 4 int m_nScrollAttempts0x21C 4 int m_nOldScrollState0x220 1 unsigned char m_nScrollDelay0x221 1 unsigned char m_bMovieBroadcast
2 <padding>0x224 4 int m_bStartLightning0x228 4 int m_bStopLightning0x22C 1 unsigned char m_lightningStrikeProb
3 <padding>0x230 4 unsigned long m_rgbRainColor0x234 4 unsigned long m_rgbLightningGlobalLighting0x238 4 unsigned long m_rgbOverCastGlobalLighting0x23C 4 unsigned long m_rgbGlobalLighting0x240 4 unsigned long m_rgbTimeOfDayGlobalLighting0x244 4 unsigned long m_rgbTimeOfDayRainColor0x248 4 int m_updateListenPosition0x24C 4 CGameArea* m_pArea
Continued on next page
5.9. CI Structures 563
EEex Documentation, Release 1.0
Table 25 – continued from previous page0x250 176 CVidBitmap m_vbMessageScreen0x300 4 unsigned long m_strrefMessage0x304 4 int m_bScreenShake0x308 8 CPoint m_screenShakeDelta0x310 8 CPoint m_screenShakeDecrease0x318 4 float m_fZoomSaved0x31C 4 float m_fZoom0x320 4 float m_fStoredZoom0x324 4 int m_bZoomEnabled0x328 4 int m_bZooming
5.9.24 CItem
Used by the CItem Class
Offset Size Type Field0x00 4 vfptr vfptr0x04 12 CResHelper m_cResHelper0x10 4 int m_nAbilities0x14 2 unsigned short m_useCount10x16 2 unsigned short m_useCount20x18 2 unsigned short m_useCount30x1A 2 unsigned short m_wear0x1C 4 unsigned long m_flags0x20 40 CSound m_useSound[2]0x48 2 short m_numSounds
2 <padding>0x4C 28 CGameEffectUsabilityList m_Usability
Notes
m_flags field can contain bit values from INVITEM.IDS:
1 IDENTIFIED2 NONSTEALABLE4 STOLEN8 NONDROPABLE
m_flags field is checked for identified value in CItem::GetGenericName and CItem::GetDescription
5.10 CK Structures
• CKeyInfo
564 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.10.1 CKeyInfo
Offset Size Type Field0x00 4 unsigned long m_repeatCount0x04 4 int m_keyCode0x08 1 unsigned char m_repeatDelay0x09 1 unsigned char m_repeatRate
2 <padding>
5.11 CL Structures
• CLUACheats
• CLUAConsole
• CLightning
• CList
• CList::CNode
5.11.1 CLUACheats
Offset Size Type Field1 <padding>
5.11.2 CLUAConsole
See CLUAConsole Class
Offset Size Type Field1 <padding>
5.11. CL Structures 565
EEex Documentation, Release 1.0
5.11.3 CLightning
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 2 short m_nType
2 <padding>0x4C 8 CPoint m_posDest0x54 8 CPoint m_posSrc0x5c 2 short m_nConjureDuration0x5e 2 short m_nSpellDuration0x60 4 long m_destId0x64 4 long m_srcId0x68 4 CAIAction* m_pTargetAction
5.11.4 CList
Note: defined as CList<long,long> or CList<unsigned long,unsigned long &>
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CList::CNode* m_pNodeHead0x08 4 CList::CNode* m_pNodeTail0x0C 4 int m_nCount0x10 4 CList::CNode* m_pNodeFree0x14 4 CPlex* m_pBlocks0x18 4 int m_nBlockSize
5.11.5 CList::CNode
Note: defined as CList<long,long>::CNode or CList<unsigned long,unsigned long&>::CNode
Offset Size Type Field0x00 4 CList::CNode* pNext0x04 4 CList::CNode* pPrev0x08 4 long (or unsigned long) data
566 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.12 CM Structures
• CMachineState
• CMachineStates
• CMapStringToPtr
• CMapStringToPtr::CAssoc
• CMapStringToString
• CMapStringToString::CAssoc
• CMapWordToPtr
• CMapWordToPtr::CAssoc
• CMarker
• CMemINI
• CMemINIFile
• CMemINIRes
• CMemINISection
• CMemINIValue
• CMessage
• CMessage Structures
• CMessageAddAction
• CMessageAddClairvoyance
• CMessageAddEffect
• CMessageAddItem
• CMessageAddVVCInternal
• CMessageAllowDialogInterrupt
• CMessageAnimationChange
• CMessageChangeDirection
• CMessageChangeStoreMarkup
• CMessageCheckForForcedDialogEnd
• CMessageCleanAir
• CMessageClearActions
• CMessageClearDialogActions
• CMessageClearDialogOnMachine
• CMessageClearGroupSlot
• CMessageClearTriggers
• CMessageColorChange
• CMessageColorReset
5.12. CM Structures 567
EEex Documentation, Release 1.0
• CMessageColorUpdate
• CMessageContainerAddItem
• CMessageContainerItems
• CMessageContainerStatus
• CMessageCutSceneLite
• CMessageCutSceneModeStatus
• CMessageDisableAI
• CMessageDisplayText
• CMessageDisplayTextRef
• CMessageDisplayTextRefPoint
• CMessageDisplayTextRefSend
• CMessageDoorOpen
• CMessageDoorStatus
• CMessageDreamScriptResRef
• CMessageDropPath
• CMessageEnterDialog
• CMessageEnterDialogMode
• CMessageEnterStoreMode
• CMessageEscapeArea
• CMessageExitDialogMode
• CMessageExitStoreMode
• CMessageExploreArea
• CMessageFadeColor
• CMessageFakeExpireCheck
• CMessageFamiliarAdd
• CMessageFamiliarRemoveResRef
• CMessageFireProjectile
• CMessageFireSpell
• CMessageForcePosition
• CMessageForceRandomEncounter
• CMessageHandler
• CMessageInsertAction
• CMessageInsertResponse
• CMessageLeaveParty
• CMessageLoadDialog
• CMessageMakeGlobal
568 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CMessageMoveGlobal
• CMessageNonControlledDialogReturn
• CMessageNonControlledDialogStart
• CMessagePartyGold
• CMessagePlaySound
• CMessagePlaySoundRef
• CMessageRemoveItem
• CMessageRemoveReplies
• CMessageRemoveVVCInternal
• CMessageReplaceItem
• CMessageReputationChange
• CMessageResetMorale
• CMessageSaveGame
• CMessageScreenShake
• CMessageSetAISpeed
• CMessageSetActive
• CMessageSetActiveImprisonment
• CMessageSetAreaFlag
• CMessageSetAreaScript
• CMessageSetBanterBlockFlag
• CMessageSetBanterBlockTime
• CMessageSetCampaign
• CMessageSetCommandPause
• CMessageSetCurrentActionId
• CMessageSetCurrentArea
• CMessageSetDialogPausing
• CMessageSetDialogResRef
• CMessageSetDialogWait
• CMessageSetDirection
• CMessageSetDrawPoly
• CMessageSetFamiliarSummoner
• CMessageSetForceActionPick
• CMessageSetHappiness
• CMessageSetInCutScene
• CMessageSetInDialog
• CMessageSetInStore
5.12. CM Structures 569
EEex Documentation, Release 1.0
• CMessageSetLastAttacker
• CMessageSetLastObject
• CMessageSetMusic
• CMessageSetNumTimesTalkedTo
• CMessageSetPath
• CMessageSetPortraitLarge
• CMessageSetPortraitSmall
• CMessageSetRestEncounterProbability
• CMessageSetSequence
• CMessageSetSound
• CMessageSetStateOverrideFlag
• CMessageSetStateOverrideTime
• CMessageSetTarget
• CMessageSetTimeStop
• CMessageSetTrigger
• CMessageSetVariable
• CMessageSetVariableAll
• CMessageSetWorldmap
• CMessageSetWorldmapAreaFlag
• CMessageSpawnPtActivate
• CMessageSpawnPtSpawn
• CMessageSpriteDeath
• CMessageSpriteEquipment
• CMessageSpritePetrify
• CMessageSpriteUpdate
• CMessageStartCombatMusic
• CMessageStartFollow
• CMessageStartScroll
• CMessageStartSong
• CMessageStartTextScreen
• CMessageStartVEF
• CMessageStaticPalette
• CMessageStaticSequence
• CMessageStaticStart
• CMessageStopActions
• CMessageStopEscapeArea
570 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CMessageStopFollow
• CMessageStoreAddItem
• CMessageStoreDemand
• CMessageStoreRelease
• CMessageStoreRemoveItem
• CMessageStoreReplaceItem
• CMessageTakeCreatureItems
• CMessageTransformItem
• CMessageTriggerStatus
• CMessageUnlock
• CMessageUpdateImmunities
• CMessageUpdateMachineState
• CMessageUpdateReaction
• CMessageUpdateScript
• CMessageUpdateStoredPartyLocations
• CMessageUseItemCharges
• CMessageVerbalConstant
• CMessageVisibilityMapMove
• CMessageVisualEffect
• CMessageWeaponImmumityUpdate
• CMoveList
• CMoveListEntry
• CMultiplayerSettings
• CMusicPosition
5.12.1 CMachineState
Offset Size Type Field0x00 4 unsigned long m_inputState
5.12.2 CMachineStates
Used by the CMachineStates Class
Offset Size Type Field0x00 24 CMachineState m_machineStates[6]
5.12. CM Structures 571
EEex Documentation, Release 1.0
5.12.3 CMapStringToPtr
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CMapStringToPtr::CAssoc** m_pHashTable0x08 4 unsigned int m_nHashTableSize0x0C 4 int m_nCount0x10 4 CMapStringToPtr::CAssoc* m_pFreeList0x14 4 CPlex* m_pBlocks0x18 4 int m_nBlockSize
5.12.4 CMapStringToPtr::CAssoc
Offset Size Type Field0x00 4 CMapStringToPtr::CAssoc* pNext0x04 4 unsigned int nHashValue0x08 4 CString key0x0C 4 void* value
5.12.5 CMapStringToString
Used by the CMapStringToString Class
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CMapStringToString::CAssoc** m_pHashTable0x08 4 unsigned int nHashValue0x0C 4 int m_nCount0x10 4 CMapStringToString::CAssoc* m_pFreeList0x14 4 CPlex* m_pBlocks0x18 4 int m_nBlockSize
5.12.6 CMapStringToString::CAssoc
Offset Size Type Field0x00 4 CMapStringToString::CAssoc* pNext0x04 4 unsigned int nHashValue0x08 4 CString key0x0C 4 CString value
572 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.12.7 CMapWordToPtr
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CMapWordToPtr::CAssoc** m_pHashTable0x08 4 unsigned int nHashValue0x0C 4 int m_nCount0x10 4 CMapWordToPtr::CAssoc* m_pFreeList0x14 4 CPlex* m_pBlocks0x18 4 int m_nBlockSize
5.12.8 CMapWordToPtr::CAssoc
Offset Size Type Field0x00 4 CMapWordToPtr::CAssoc* pNext0x04 2 unsigned short key
2 <padding>0x08 4 void* value
5.12.9 CMarker
Offset Size Type Field0x00 1 unsigned char m_type
1 <padding>0x02 2 short m_nRecticleCounter0x04 1 unsigned char m_nRecticleForceRender0x05 1 unsigned char m_nRecticleForceRenderTarget
2 <padding>0x08 4 unsigned long m_rgbColor0x0C 28 CVIDMODE_RECTICLE_DESCRIPTION m_recticleDesc0x28 1 unsigned char m_bTalking0x29 1 unsigned char m_bDoubleSize
2 <padding>
5.12.10 CMemINI
Used by the CMemINI Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList0x1C 4 CString mFileName0x20 4 CMemINISection* mpLastSection
5.12. CM Structures 573
EEex Documentation, Release 1.0
5.12.11 CMemINIFile
Offset Size Type Field0x00 4 vfptr vfptr0x04 4 CString mFileName0x08 4 int mMode0x0C 16 CFile mFile0x1C 4 int mFileOpen
5.12.12 CMemINIRes
Offset Size Type Field0x00 12 CResHelper m_cResHelper0x0C 4 unsigned char* mpData0x10 4 int mDataLength0x14 8 CResRef ResRef0x1C 4 int mFilePosition0x20 4 int mEOF
5.12.13 CMemINISection
Used by the CMemINI Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList0x1C 4 CString mSectionName
5.12.14 CMemINIValue
Used by the CMemINI Class
Offset Size Type Field0x00 4 vfptr vfptr0x04 4 CString mName0x08 4 CString mValue
574 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.12.15 CMessage
Used by the CMessage Class
Offset Size Type Field0x00 4 vfptr vfptr0x04 4 long m_targetId0x08 4 long m_sourceId
5.12.16 CMessage Structures
CMessageAddAction
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 100 CAIAction m_action
CMessageAddClairvoyance
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CPoint m_ptPosition0x14 4 long m_nDuration
CMessageAddEffect
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 CGameEffect* m_effect0x10 1 unsigned char m_noSave
3 <padding>
5.12. CM Structures 575
EEex Documentation, Release 1.0
CMessageAddItem
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 104 CItem m_item
CMessageAddVVCInternal
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_res
CMessageAllowDialogInterrupt
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_cutSceneMode
3 <padding>
CMessageAnimationChange
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 unsigned short m_animationId
2 <padding>
CMessageChangeDirection
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 short m_face
2 <padding>
576 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageChangeStoreMarkup
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_sStore0x14 4 unsigned long m_buy0x18 4 unsigned long m_sell
CMessageCheckForForcedDialogEnd
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bOverrideAction
3 <padding>
CMessageCleanAir
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_resref0x14 8 CResRef m_table
CMessageClearActions
Offset Size Type Field0x00 12 CMessage m_cMessage
CMessageClearDialogActions
Offset Size Type Field0x00 12 CMessage m_cMessage
5.12. CM Structures 577
EEex Documentation, Release 1.0
CMessageClearDialogOnMachine
Offset Size Type Field0x00 12 CMessage m_cMessage
CMessageClearGroupSlot
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 short m_slotNum
2 <padding>
CMessageClearTriggers
Offset Size Type Field0x00 12 CMessage m_cMessage
CMessageColorChange
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 7 unsigned char m_colors[7]0x13 1 unsigned char m_bApply
CMessageColorReset
Offset Size Type Field0x00 12 CMessage m_cMessage
CMessageColorUpdate
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 28 CColorRanges m_appliedColorRanges0x28 28 CColorEffects m_appliedColorEffects
578 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageContainerAddItem
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 104 CItem m_item0x74 2 short m_slotNum0x76 1 unsigned char m_bCompressContainer
1 <padding>
CMessageContainerItems
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 unsigned short m_nItems
2 <padding>0x10 4 CItem** m_pItems
CMessageContainerStatus
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_dwFlags0x10 2 unsigned short m_trapDetected0x12 2 unsigned short m_trapActivated
CMessageCutSceneLite
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_cutSceneMode
3 <padding>
CMessageCutSceneModeStatus
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_cutSceneMode
3 <padding>
5.12. CM Structures 579
EEex Documentation, Release 1.0
CMessageDisableAI
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 int m_bDisable
CMessageDisplayText
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 CString m_name0x10 4 CString m_text0x14 4 unsigned long m_nameColor0x18 4 unsigned long m_textColor0x1C 4 long m_marker0x20 1 unsigned char m_moveToTop0x21 1 unsigned char m_overHead
1 unsigned char m_overrideDialogMode1 <padding>
CMessageDisplayTextRef
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_name0x10 4 unsigned long m_text0x14 4 unsigned long m_nameColor0x18 4 unsigned long m_textColor0x1C 4 long m_marker0x20 1 unsigned char m_moveToTop
3 <padding>0x24 4 unsigned long m_overHead0x28 1 unsigned char m_overrideDialogMode0x29 1 unsigned char m_bPlaySound
2 <padding>
CMessageDisplayTextRefPoint
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_text0x10 4 unsigned long m_textColor0x14 8 CPoint m_point
580 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageDisplayTextRefSend
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_name0x10 4 unsigned long m_text0x14 4 unsigned long m_nameColor0x18 4 unsigned long m_textColor0x1c 4 long m_marker0x20 1 unsigned char m_moveToTop0x21 1 unsigned char m_overHead
2 <padding>
CMessageDoorOpen
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bOpenDoor
3 <padding>
CMessageDoorStatus
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_dwFlags0x10 2 unsigned short m_trapDetected0x12 2 unsigned short m_trapActivated0x14 1 unsigned char m_bOpen
3 <padding>
CMessageDreamScriptResRef
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_cResRefDialog
5.12. CM Structures 581
EEex Documentation, Release 1.0
CMessageDropPath
Offset Size Type Field0x00 12 CMessage m_cMessage
CMessageEnterDialog
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_entryNum0x10 1 unsigned char m_newDialog
3 <padding>0x14 4 int m_bItemDialog0x18 4 int m_bSuppressName
CMessageEnterDialogMode
Offset Size Type Field0x00 12 CMessage m_cMessage
CMessageEnterStoreMode
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 20 CAIObjectType m_cAIProprietor0x20 20 CAIObjectType m_cAICustomer0x34 8 CResRef m_cResStore
CMessageEscapeArea
Offset Size Type Field0x00 12 CMessage m_cMessage
582 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageExitDialogMode
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bButtonPushed
3 <padding>
CMessageExitStoreMode
Offset Size Type Field0x00 12 CMessage m_cMessage
CMessageExploreArea
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 CString m_sAreaString
CMessageFadeColor
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bFadeTo0x0D 1 unsigned char m_redFade0x0E 1 unsigned char m_greenFade0x0F 1 unsigned char m_blueFade
CMessageFakeExpireCheck
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 long m_nTime
5.12. CM Structures 583
EEex Documentation, Release 1.0
CMessageFamiliarAdd
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bFamiliarAdd
3 <padding>
CMessageFamiliarRemoveResRef
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_resRef0x14 1 unsigned char m_nAlignment0x15 1 unsigned char m_nLevel
2 <padding>
CMessageFireProjectile
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 unsigned short m_projectileType
2 <padding>0x10 4 long m_projectileTargetId0x14 8 CPoint m_projectileTarget0x1C 4 long m_height
CMessageFireSpell
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 CString m_dialogRes0x10 4 long m_NPCId
CMessageForcePosition
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CPoint m_face
584 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageForceRandomEncounter
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_cRes0x14 4 CString m_sEntryPoint
CMessageHandler
Offset Size Type Field0x00 28 CTypedPtrList m_messageList0x1C 1 unsigned char m_bLastArbitrationLockStatus
3 <padding>
CMessageInsertAction
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 100 CAIAction m_action
CMessageInsertResponse
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 36 CAIResponse m_response0x30 4 int m_checkCurrentResponse0x34 4 int m_clearActions
CMessageLeaveParty
Offset Size Type Field0x00 12 CMessage m_cMessage
5.12. CM Structures 585
EEex Documentation, Release 1.0
CMessageLoadDialog
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 CString m_dialogRes0x10 4 long m_NPCId0x14 4 int m_bItemDialog
CMessageMakeGlobal
Offset Size Type Field0x00 12 CMessage m_cMessage
CMessageMoveGlobal
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 CString m_sArea0x10 8 CPoint m_ptStart
CMessageNonControlledDialogReturn
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_return
3 <padding>
CMessageNonControlledDialogStart
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 CString m_dialogRes0x10 4 long m_NPCId
586 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessagePartyGold
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 long m_gold0x10 1 unsigned char m_bAdjustment0x11 1 unsigned char m_bFeedback
2 <padding>
CMessagePlaySound
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 int m_showText0x10 4 int m_showCircle0x14 1 unsigned char m_soundId
3 <padding>
CMessagePlaySoundRef
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_cResSound0x14 1 unsigned char m_nChannel0x15 1 unsigned char m_bPositioned
2 <padding>0x18 4 int m_bSendToMe
CMessageRemoveItem
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 short m_slotNum
2 <padding>
5.12. CM Structures 587
EEex Documentation, Release 1.0
CMessageRemoveReplies
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 CString m_name0x10 4 long m_entryIndex0x14 4 long m_marker0x18 4 unsigned long m_nameColor
CMessageRemoveVVCInternal
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_res0x14 1 unsigned char m_level
3 <padding>
CMessageReplaceItem
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 104 CItem m_item0x74 8 CResRef m_cRes
CMessageReputationChange
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 short m_deltaRep
2 <padding>
CMessageResetMorale
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 int m_bMoraleFailure0x10 4 int m_iMoraleLevel
588 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageSaveGame
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_nSlot
3 <padding>
CMessageScreenShake
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 unsigned short m_duration0x0E 1 char m_magnitudeX0x0F 1 char m_magnitudeY0x10 1 unsigned char m_bOverride
3 <padding>
CMessageSetAISpeed
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_nAISpeed
3 <padding>
CMessageSetActive
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 int m_active
CMessageSetActiveImprisonment
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 int m_active
5.12. CM Structures 589
EEex Documentation, Release 1.0
CMessageSetAreaFlag
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_dFlag0x10 4 int m_bSet
CMessageSetAreaScript
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_script0x14 2 short m_nSlot
2 <padding>
CMessageSetBanterBlockFlag
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_cutSceneMode
3 <padding>
CMessageSetBanterBlockTime
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 long m_time
CMessageSetCampaign
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_campaign
590 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageSetCommandPause
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 short m_commandPause
2 <padding>
CMessageSetCurrentActionId
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 short m_face
2 <padding>
CMessageSetCurrentArea
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_cResRefDialog
CMessageSetDialogPausing
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bOpenDoor
3 <padding>
CMessageSetDialogResRef
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_cResRefDialog
5.12. CM Structures 591
EEex Documentation, Release 1.0
CMessageSetDialogWait
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 long m_wait0x10 4 long m_waitTarget
CMessageSetDirection
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CPoint m_face
CMessageSetDrawPoly
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 short m_time
2 <padding>
CMessageSetFamiliarSummoner
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 int m_bDone
4 int m_nSummoner
CMessageSetForceActionPick
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bOpenDoor
3 <padding>
592 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageSetHappiness
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 short m_happiness
2 <padding>
CMessageSetInCutScene
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 int m_status
CMessageSetInDialog
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bState
1 <padding>0x0E 2 short m_nType
CMessageSetInStore
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bState
3 <padding>
CMessageSetLastAttacker
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 20 CAIObjectType m_lAttacker
5.12. CM Structures 593
EEex Documentation, Release 1.0
CMessageSetLastObject
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 20 CAIObjectType m_lAttacker0x20 2 unsigned short m_type
2 <padding>
CMessageSetMusic
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_sArea0x14 4 unsigned long m_music0x18 1 unsigned char m_slot
3 <padding>
CMessageSetNumTimesTalkedTo
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 long m_nNumTimesTalkedTo
CMessageSetPath
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 short m_nPath
2 <padding>0x10 4 long* m_pPath0x14 2 short m_currPath
2 <padding>0x18 8 CPoint m_currDest0x20 4 long m_position0x24 4 CString m_sAreaString
594 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageSetPortraitLarge
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_cResRefDialog
CMessageSetPortraitSmall
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_cResRefDialog
CMessageSetRestEncounterProbability
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_sArea0x14 1 unsigned char m_prob0x15 1 unsigned char m_bDayProb
2 <padding>
CMessageSetSequence
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_sequence
3 <padding>
CMessageSetSound
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_strref0x10 1 unsigned char m_soundId
3 <padding>
5.12. CM Structures 595
EEex Documentation, Release 1.0
CMessageSetStateOverrideFlag
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_cutSceneMode
3 <padding>
CMessageSetStateOverrideTime
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 long m_time
CMessageSetTarget
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CPoint m_dest0x14 4 CSearchRequest* m_request0x18 1 unsigned char m_frontList
3 <padding>
CMessageSetTimeStop
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 long m_time
CMessageSetTrigger
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 48 CAITrigger m_trigger
596 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageSetVariable
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 CString m_sAreaName0x10 4 CString m_sGlobalName0x14 4 long m_nValue0x18 1 unsigned char m_bIncrement
3 <padding>
CMessageSetVariableAll
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 CString m_sAreaName0x10 84 CVariable m_variable
CMessageSetWorldmap
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_worldmap
CMessageSetWorldmapAreaFlag
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_area0x14 4 int m_value0x18 4 int m_setreset
CMessageSpawnPtActivate
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bActivate
3 <padding>
5.12. CM Structures 597
EEex Documentation, Release 1.0
CMessageSpawnPtSpawn
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CPoint m_ptFacingTowards
CMessageSpriteDeath
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_nDeathType
CMessageSpriteEquipment
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 168 CGameSpriteEquipment m_equipment
CMessageSpritePetrify
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bPetrify
3 <padding>
CMessageSpriteUpdate
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 long* m_pPath0x10 2 short m_nPath0x12 2 short m_currPath0x14 8 CPoint m_ptDest0x1C 4 CString m_sAreaString0x20 2 short m_nSequence
2 <padding>0x24 8 CPoint m_ptPosition0x2C 2 short m_nFacing
Continued on next page
598 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 26 – continued from previous page2 <padding>
0x30 4 unsigned long m_dwState0x34 2 short m_nHitPoints0x36 2 short m_nMaxHitPoints0x38 2 short m_nArmorClass0x3a 2 short m_nACCrushingMod0x3c 2 short m_nACMissileMod0x3e 2 short m_nACPiercingMod0x40 2 short m_nACSlashingMod0x42 2 short m_nPortraitIcons0x44 4 long* m_pPortraitIcons0x48 1 unsigned char m_nEnemyAlly0x49 1 unsigned char m_nEnemyAllyLive0x4a 1 unsigned char m_nGeneral0x4b 1 unsigned char m_nGeneralLive0x4c 1 unsigned char m_bMoraleFailure0x4d 1 unsigned char m_nMoveScale
2 <padding>0x50 4 long m_nHPCONBonusTotalOld0x54 1 unsigned char m_bLevelUp0x55 1 unsigned char m_bSummonDisable0x56 1 unsigned char m_bDoNotJump0x57 1 unsigned char m_bSanctuary0x58 1 unsigned char m_bDisableCircle0x59 1 unsigned char m_bHeld0x5a 1 unsigned char m_bActiveImprisonment
1 <padding>0x5c 2 short m_nTranslucency0x5e 1 unsigned char m_bImmuneToBackstabs
1 <padding>0x60 32 unsigned long m_spellState[8]0x80 2 unsigned short m_nBitsRequired
2 <padding>
CMessageStartCombatMusic
Offset Size Type Field0x00 12 CMessage m_cMessage
CMessageStartFollow
Offset Size Type Field0x00 12 CMessage m_cMessage
5.12. CM Structures 599
EEex Documentation, Release 1.0
CMessageStartScroll
Offset Size Type Field0x00 12 CMessage m_cMessage0x0c 4 CString m_sAreaString0x10 8 CPoint m_src0x18 8 CPoint m_dest0x20 1 unsigned char m_speed
3 <padding>
CMessageStartSong
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_music0x10 1 unsigned char m_slot
3 <padding>
CMessageStartTextScreen
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_screen
CMessageStartVEF
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_res0x14 4 CString m_sAreaString0x18 8 CPoint m_start0x20 8 CPoint m_target0x28 2 short m_height
2 <padding>
600 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageStaticPalette
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_res
CMessageStaticSequence
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 unsigned short m_bSequence
2 <padding>
CMessageStaticStart
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bStart
3 <padding>
CMessageStopActions
Offset Size Type Field0x00 12 CMessage m_cMessage
CMessageStopEscapeArea
Offset Size Type Field0x00 12 CMessage m_cMessage
CMessageStopFollow
Offset Size Type Field0x00 12 CMessage m_cMessage
5.12. CM Structures 601
EEex Documentation, Release 1.0
CMessageStoreAddItem
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_store0x14 20 CCreatureFileItem m_item0x28 4 unsigned long m_storeFlags
CMessageStoreDemand
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_store
CMessageStoreRelease
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_store
CMessageStoreRemoveItem
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_store0x14 8 CResRef m_itemId0x1C 4 unsigned long m_flags
CMessageStoreReplaceItem
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_store0x14 8 CResRef m_oldItem0x1C 8 CResRef m_newItem
602 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageTakeCreatureItems
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_itemType
CMessageTransformItem
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 104 CItem m_item0x74 8 CResRef m_cRes
CMessageTriggerStatus
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_dwFlags0x10 2 unsigned short m_trapDetected0x12 2 unsigned short m_trapActivated
CMessageUnlock
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_dwFlags
CMessageUpdateImmunities
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 28 CImmunitiesAIType m_cImmunitiesAIType
5.12. CM Structures 603
EEex Documentation, Release 1.0
CMessageUpdateMachineState
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 unsigned long m_dwFlags
CMessageUpdateReaction
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 long m_nReaction
CMessageUpdateScript
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 8 CResRef m_resref0x14 2 short m_level
2 <padding>
CMessageUpdateStoredPartyLocations
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_bPocketPlane
3 <padding>0x10 28 CTypedPtrList m_storedLocations
CMessageUseItemCharges
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 2 short m_slotNum0x0E 2 short m_nCharges0x10 2 short m_nAbilityNum
2 <padding>
604 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
CMessageVerbalConstant
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 4 long m_verbalConstant0x10 1 unsigned char m_overHead
3 <padding>
CMessageVisibilityMapMove
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_moveOntoList
3 <padding>
CMessageVisualEffect
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 1 unsigned char m_nEffectType0x0D 1 unsigned char m_nEffectProperty
2 <padding>
CMessageWeaponImmumityUpdate
Offset Size Type Field0x00 12 CMessage m_cMessage0x0C 28 CImmunitiesWeapon m_weaponImmunities
5.12.17 CMoveList
Used by the CMoveList Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.12. CM Structures 605
EEex Documentation, Release 1.0
5.12.18 CMoveListEntry
Offset Size Type Field0x00 4 long m_nSpiteIndex0x04 8 CResRef m_rAreaRes0x0C 8 CPoint m_ptDest0x14 8 CPoint m_ptSource0x1C 1 unsigned char m_nFacing
3 <padding>0x20 4 long m_nDelay
5.12.19 CMultiplayerSettings
Used by the CMultiplayerSettings Class
Offset Size Type Field0x00 48 CGamePermission m_pcPermissions[6]0x30 8 CGamePermission m_cDefaultPermissions0x38 24 int m_pnPlayerReady[6]0x50 24 int m_pnCharacterControlledByPlayer[6]0x68 6 unsigned char m_pbCharacterReady[6]0x6e 6 unsigned char m_pnCharacterStatus[6]0x74 24 int m_pnLoadGameControlledByPlayer[6]0x8c 1 unsigned char m_bRefreshCharacters0x8d 1 unsigned char m_nImportingBitField0x8e 1 unsigned char m_bRestrictStoreOption0x8f 1 unsigned char m_bJoinRequests0x90 1 unsigned char m_bAllowReformParty0x91 1 unsigned char m_bArbitrationLockStatus0x92 1 unsigned char m_bArbitrationLockAllowInput
1 <padding>0x94 8 CPoint m_ptAreaStart0x9c 4 CString m_sAreaName0xa0 4 CString m_sSaveName0xa4 4 int m_idHostPermittedDialog0xa8 4 long m_nHostPermittedDialogDelay0xac 1 unsigned char m_bHostPermittedDialog0xad 1 unsigned char m_bHostPermittedStore
2 <padding>0xb0 4 int m_idHostPermittedStore0xb4 1 unsigned char m_bFirstConnected
3 <padding>0xb8 4 CString m_sCampaignType
606 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.12.20 CMusicPosition
Offset Size Type Field0x00 4 int m_nSong0x04 4 int m_nSection0x08 4 int m_nPosition
5.13 CN Structures
• CNetwork
• CNetworkConnectionSettings
• CNetworkWindow
5.13.1 CNetwork
Used by the CNetwork Class
Offset Size Type Field0x00 16 GUID m_nApplicationGuid0x10 1 unsigned char m_bApplicationGuidDefined0x11 1 unsigned char m_bAutoConnectCheck0x12 1 unsigned char m_bServiceProviderEnumerated0x13 1 unsigned char m_bServiceProviderSelected0x14 4 int m_nServiceProvider0x18 4 int m_nTotalServiceProviders0x1C 16 CString m_ppszServiceProviderNames[4]0x2C 16 DP_ProviderID m_pnServiceProviderIDS[4]0x3C 1 unsigned char m_bConnectionInitialized0x3D 1 unsigned char m_bSocketConnecting0x3E 1 unsigned char m_bSocketConnected
1 <padding>0x40 4 CString m_sIPAddress0x44 1 unsigned char padding2
3 <padding>0x48 4 void* m_lpDPAddress0x4C 4 unsigned long m_dwDPAddressSize0x50 4 CString m_version0x54 1 unsigned char m_bSessionSelected
3 <padding>0x58 4 int m_nSession0x5C 1 unsigned char m_bSessionNameToMake0x5D 1 unsigned char padding3
2 <padding>0x60 4 CString m_sSessionNameToMake0x64 4 CString m_sSessionDescriptionToMake0x68 1 unsigned char m_bSessionPasswordEnabled0x69 1 unsigned char padding4
Continued on next page
5.13. CN Structures 607
EEex Documentation, Release 1.0
Table 27 – continued from previous page2 <padding>
0x6C 4 CString m_sSessionPassword0x70 1 unsigned char m_bAllowNewConnections0x71 1 unsigned char m_bConnectionEstablished0x72 1 unsigned char m_bIsHost
1 <padding>0x74 72 DPWrapper m_directPlay0xBC 4 int m_nMaxPlayers0xC0 4 unsigned long m_dwSessionFlags0xC4 1 unsigned char m_bMaxPlayersDefined0xC5 1 unsigned char m_bSessionOptionsDefined
2 <padding>0xC8 4 CString m_sJoinedGame0xCC 4 CString m_sLeftGame0xD0 4 CString m_sDroppedGame0xD4 1 unsigned char m_bPlayerNameToMake0xD5 1 unsigned char m_bPlayerCreated
2 <padding>0xD8 4 int m_idLocalPlayer0xDC 4 CString m_sLocalPlayerName0xE0 4 int m_nTotalPlayers0xE4 24 CString m_psPlayerName[6]0xFC 24 int m_pPlayerID[6]0x114 6 unsigned char m_pbPlayerVisible[6]0x11A 6 unsigned char m_pbPlayerEnumerateFlag[6]0x120 4 int m_nLocalPlayer0x124 4 int m_nHostPlayer0x128 4 CString m_sHostIPAddress0x12C 4 int m_bAnnounceNewPlayers0x130 912 CNetworkWindow m_pSlidingWindow[6]0x4c0 152 CNetworkWindow m_SystemWindow0x558 1024 unsigned long m_dwCRC32[256]0x958 12 CNetworkConnectionSettings m_connectionSettings0x964 4 unsigned long m_lastMessage
5.13.2 CNetworkConnectionSettings
Offset Size Type Field0x00 4 unsigned long dwFlags0x04 4 unsigned long dwMaxPlayers0x08 4 CString sPlayerName
5.13.3 CNetworkWindow
608 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Offset Size Type Field0x00 1 unsigned char m_bInitialized0x01 1 unsigned char m_bVSSent0x02 1 unsigned char m_bVSReceived0x03 1 unsigned char m_nPlayerNumber0x04 2 unsigned short m_nAckExpected0x06 2 unsigned short m_nNextFrameToSend0x08 2 unsigned short m_nFrameExpected0x0A 2 unsigned short m_nTooFar0x0C 2 unsigned short m_nOldestFrame
2 <padding>0x10 20 cnetworkwindow_queueentry_st m_pOutgoingBuffers[1]0x24 20 cnetworkwindow_queueentry_st m_pIncomingBuffers[1]0x38 28 CTypedPtrList m_lQueueIncomingMessages0x54 28 CTypedPtrList m_lQueueOutgoingMessages0x70 1 unsigned char m_pbTimeOutSet[1]
3 <padding>0x74 4 unsigned long m_pnTimeOut[1]0x78 1 unsigned char m_pbArrived[1]
1 <padding>0x7A 2 unsigned short m_nNumBuffered0x7C 1 unsigned char m_bNoNak0x7D 1 unsigned char padding
2 <padding>0x80 4 unsigned long m_nPacketTimeout0x84 4 unsigned long m_nAckTimer0x88 1 unsigned char m_bAckTimerSet0x89 1 unsigned char m_bSomethingHappened
2 <padding>0x8C 4 unsigned long m_nNextEvent0x90 4 unsigned long m_nPlayerTimeout0x94 4 unsigned long m_nNoMessageTimeout
5.14 CO Structures
• CObArray
• CObList
• CObList::CNode
• CObject
• CObjectMarker
• COverridePath
5.14. CO Structures 609
EEex Documentation, Release 1.0
5.14.1 CObArray
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CObject** m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
5.14.2 CObList
Used by the CObList Class
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CObList::CNode* m_pNodeHead0x08 4 CObList::CNode* m_pNodeTail0x0C 4 int m_nCount0x10 4 CObList::CNode* m_pNodeFree0x14 4 CPlex* m_pBlocks0x18 4 int m_nBlockSize
5.14.3 CObList::CNode
Offset Size Type Field0x00 4 CObList::CNode* pNext0x04 4 CObList::CNode* pPrev0x08 4 CObject data
5.14.4 CObject
Offset Size Type Field0x00 4 DWORD vfptr
610 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.14.5 CObjectMarker
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 28 CList m_lstObjectIds0x64 1 bool m_bHealthBarMarker
3 <padding>
5.14.6 COverridePath
Offset Size Type Field0x00 4 CString path0x04 4 int priority
5.15 CP Structures
• CParticle
• CPARTICLE_POINT
• CPathNode
• CPathSearch
• CPersistantEffect
• CPersistantEffectApplyEffect
• CPersistantEffectBurningDeath
• CPersistantEffectColorEffect
• CPersistantEffectDamage
• CPersistantEffectDisease
• CPersistantEffectElectricDeath
• CPersistantEffectFadeEffect
• CPersistantEffectFireDeath
• CPersistantEffectList
• CPersistantEffectListRegenerated
• CPersistantEffectMove
• CPersistantEffectPoison
• CPersistantEffectRegeneration
• CPlatform
• CPlex
5.15. CP Structures 611
EEex Documentation, Release 1.0
• CPoint
• CPortraitIcon
• CProgressBar
• CProjectile
• CProjectileAmbiant
• CProjectileArea
• CProjectileAreaFileFormat
• CProjectileBAM
• CProjectileBAMFileFormat
• CProjectileCallLightning
• CProjectileCastingGlow
• CProjectileChain
• CProjectileColorSpray
• CProjectileConeOfCold
• CProjectileFall
• CProjectileFile
• CProjectileFileFormat
• CProjectileFireHands
• CProjectileInstant
• CProjectileInvisibleTravelling
• CProjectileLightningBolt
• CProjectileLightningBoltGround
• CProjectileLightningBounce
• CProjectileLightningStorm
• CProjectileMagicMissileMulti
• CProjectileMulti
• CProjectileMushroom
• CProjectileNewScorcher
• CProjectileScorcher
• CProjectileSegment
• CProjectileSkyStrike
• CProjectileSkyStrikeBAM
• CProjectileSpellHit
• CProjectileTravelDoor
• CPtrArray
• CPtrList
612 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CPtrList::CNode
5.15.1 CParticle
Used by the CParticle Class
Offset Size Type Field0x00 2 short m_nTimeStamp0x02 2 short m_nTailLength0x04 2 short m_nRenderTime
2 <padding>0x08 4 unsigned long m_rgbColor0x0C 2 unsigned short m_wType
2 <padding>0x10 4 long m_nLifeSpan0x14 1 unsigned char m_bTag
3 <padding>0x18 12 CPARTICLE_POINT m_pos0x24 12 CPARTICLE_POINT m_vel0x30 4 long m_nGravity
5.15.2 CPARTICLE_POINT
Offset Size Type Field0x00 4 long x0x04 4 long y0x08 4 long z
5.15.3 CPathNode
Offset Size Type Field0x00 4 CPathNode* m_pathNodePrev0x04 4 CPathNode* m_listOpenLeft0x08 4 CPathNode* m_listOpenRight0x0C 4 CPathNode* m_listOpenParent0x10 4 long m_gridPosition0x14 4 long m_costStart0x18 4 long m_costTotal0x1C 1 unsigned char m_fIsOpen
3 <padding>
5.15. CP Structures 613
EEex Documentation, Release 1.0
5.15.4 CPathSearch
Used by the CPathSearch Class
Offset Size Type Field0x00 4 int PATH_SMOOTH0x04 4 CPathNode** m_pListGrid0x08 4 CPathNode* m_openList0x0C 2 short m_openListLevel0x0E 2 short m_nOpenList0x10 4 long* m_pathBegin0x14 2 short m_nPathNodes0x16 2 short m_pathCurrent
5.15.5 CPersistantEffect
Used by the CPersistantEffect Class
Offset Size Type Field0x00 4 vfptr vfptr0x04 4 int m_done0x08 4 int m_deleted0x0C 2 short m_numDamage0x0E 2 short m_persistantType0x10 4 long m_sourceID0x14 2 short m_period0x16 2 short m_periodCounter0x18 4 long m_counter
5.15.6 CPersistantEffectApplyEffect
Offset Size Type Field0x00 40 CPersistantEffectDamage m_cPersistantEffectDamage0x28 8 CResRef m_res0x30 4 CGameEffect* m_pSourceEffect
5.15.7 CPersistantEffectBurningDeath
Offset Size Type Field0x00 28 CPersistantEffect m_cPersistantEffect0x1C 1 unsigned char m_charredDegree0x1D 1 unsigned char m_charredIncrement
2 <padding>
614 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.15.8 CPersistantEffectColorEffect
Offset Size Type Field0x00 28 CPersistantEffect m_cPersistantEffect0x1C 4 int m_undo0x20 1 unsigned char m_effectFinalRed0x21 1 unsigned char m_effectDegreeRed0x22 1 unsigned char m_effectIncrementRed0x23 1 unsigned char m_effectFinalGreen0x24 1 unsigned char m_effectDegreeGreen0x25 1 unsigned char m_effectIncrementGreen0x26 1 unsigned char m_effectFinalBlue0x27 1 unsigned char m_effectDegreeBlue0x28 1 unsigned char m_effectIncrementBlue0x29 1 unsigned char m_colorEffect
2 <padding>
5.15.9 CPersistantEffectDamage
Offset Size Type Field0x00 28 CPersistantEffect m_cPersistantEffect0x1C 2 short m_type0x1E 2 short m_maxDamage0x20 2 short m_damage
2 <padding>0x24 4 long m_duration
5.15.10 CPersistantEffectDisease
Offset Size Type Field0x00 40 CPersistantEffectDamage m_cPersistantEffectDamage0x28 8 CResRef m_res
5.15.11 CPersistantEffectElectricDeath
Offset Size Type Field0x00 32 CPersistantEffectBurningDeath m_cPersistantEffectBurningDeath
5.15. CP Structures 615
EEex Documentation, Release 1.0
5.15.12 CPersistantEffectFadeEffect
Offset Size Type Field0x00 28 CPersistantEffect m_cPersistantEffect0x1C 2 short m_fade0x1E 2 short m_type0x20 2 short m_increment
2 <padding>
5.15.13 CPersistantEffectFireDeath
Offset Size Type Field0x00 32 CPersistantEffectBurningDeath m_cPersistantEffectBurningDeath
5.15.14 CPersistantEffectList
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.15.15 CPersistantEffectListRegenerated
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList0x1C 4 unsigned long m_nCounter
5.15.16 CPersistantEffectMove
Offset Size Type Field0x00 28 CPersistantEffect m_cPersistantEffect0x1C 2 short m_type
2 <padding>0x20 4 long m_speed0x24 8 CPoint m_dest0x2C 4 long m_target
616 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.15.17 CPersistantEffectPoison
Offset Size Type Field0x00 40 CPersistantEffectDamage m_cPersistantEffectDamage
5.15.18 CPersistantEffectRegeneration
Offset Size Type Field0x00 40 CPersistantEffectDamage m_cPersistantEffectDamage
5.15.19 CPlatform
Offset Size Type Field1
5.15.20 CPlex
Used by the CPlex Class
Offset Size Type Field0x00 4 CPlex* pNext0x04 4 unsigned long dwReserved[1]
5.15.21 CPoint
Note: Actually defined as POINT but adapted/recreated as its own structure.
Offset Size Type Field0x00 4 long x0x04 4 long y
5.15. CP Structures 617
EEex Documentation, Release 1.0
5.15.22 CPortraitIcon
Offset Size Type Field0x00 4 int icon0x04 4 int frame0x08 192 CVidCell bam
5.15.23 CProgressBar
Offset Size Type Field0x00 4 unsigned long m_nSecondsToTimeout0x04 4 long m_nProgressBarCaption0x08 4 long m_nParchmentCaption0x0C 4 long m_nActionProgress0x10 4 long m_nActionTarget0x14 1 unsigned char m_bTravelActive0x15 1 unsigned char m_bWaiting
2 <padding>0x18 4 long m_nWaitingReason0x1C 1 unsigned char m_bDisableMinibars0x1D 1 unsigned char m_bTimeoutVisible0x1E 1 unsigned char m_bProgressBarActivated0x1F 6 unsigned char m_bRemoteWaiting[6]
3 <padding>0x28 24 long m_nRemoteActionProgress[6]0x40 24 long m_nRemoteActionTarget[6]0x58 24 long m_nRemoteWaitingReason[6]
5.15.24 CProjectile
Used by the CProjectile Class
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 2 unsigned short m_projectileType0x4A 1 unsigned char m_addToListType
1 <padding>0x4C 2 short m_speed
2 <padding>0x50 4 long m_sourceId0x54 4 long m_targetId0x58 4 long m_callBackProjectile0x5C 44 CGameEffectList m_effectList
Continued on next page
618 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 29 – continued from previous page0x88 2 short m_nType
2 <padding>0x8C 8 CPoint m_posExact0x94 8 CPoint m_posDelta0x9C 8 CPoint m_startDelta0xA4 8 CPoint m_minRandomSpeed0xAC 8 CPoint m_maxRandomSpeed0xB4 4 int m_startSpeed0xB8 8 CPoint m_posDest0xC0 16 unsigned char m_terrainTable[16]0xD0 2 unsigned short m_decAmmount
2 <padding>0xD4 4 int m_bSparkleTrail0xD8 4 unsigned long m_defaultRenderFlags0xDC 4 int m_bIgnoreTarget0xE0 20 CSound m_sound0xF4 8 CResRef m_fireSoundRef0xFC 4 int m_loopFireSound0x100 8 CResRef m_arrivalSoundRef0x108 4 int m_loopArrivalSound0x10C 1 unsigned char m_bHasHeight
1 <padding>0x10E 2 short m_nDeltaZ0x110 2 short m_nDeltaZLast
2 <padding>0x114 4 long m_nOrigDistance0x118 8 CPoint m_ptBamSize0x120 4 long m_dwFlags0x124 4 long m_maxBounces0x128 4 CString m_visualEffectRef0x12C 4 long m_visualEffect0x130 2 short m_maxDuration0x132 2 short m_lanceWidth0x134 4 unsigned long m_extFlags0x138 4 unsigned long m_strRef0x13C 4 unsigned long m_color0x140 2 unsigned short m_colorSpeed0x142 2 unsigned short m_shake0x144 2 unsigned short m_IDSValue10x146 2 unsigned short m_IDSType10x148 2 unsigned short m_IDSValue20x14A 2 unsigned short m_IDSType20x14C 8 CResRef m_failureSpell0x154 8 CResRef m_successSpell
5.15. CP Structures 619
EEex Documentation, Release 1.0
5.15.25 CProjectileAmbiant
Offset Size Type Field0x00 722 CProjectileSpellHit m_cProjectileSpellHit
2 <padding>
5.15.26 CProjectileArea
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29C 8 CResRef m_resref0x2A4 2 short m_explosionRange0x2A6 2 short m_triggerRange0x2A8 2 unsigned short m_secondaryProjectile0x2AA 2 short m_nRepetitionCount0x2AC 4 int m_bReachedDestination0x2B0 2 short m_nDelay0x2B2 2 short m_nDelayCount0x2B4 4 int m_bDetonateOnlyIfTargets0x2B8 20 CAIObjectType m_targetType0x2CC 1 unsigned char m_fireBallType
3 <padding>0x2D0 4 int m_bSparkleExplosion0x2D4 2 unsigned short m_sparkleExplosionProjectile
2 <padding>0x2D8 4 int m_bDelayedTrigger0x2DC 4 int m_bChunksExplosion0x2E0 4 int m_checkForNonSprites0x2E4 4 int m_centerBam0x2E8 2 unsigned short m_explodeId0x2EA 8 CResRef m_explosionSound0x2F2 1 unsigned char m_ringColor
1 <padding>0x2F4 4 int m_bVVCAtCenter0x2F8 8 CResRef m_centerVVC0x300 4 int m_bConeFromCaster0x304 2 unsigned short m_coneSize
2 <padding>0x308 4 int m_bIgnoreLOS0x30C 1 char m_portraitNum
3 <padding>0x310 4 int m_bResolvePortraitNum0x314 4 int m_centerBamWait0x318 4 int m_forceInitialWait0x31C 4 int m_oneTargetOnly0x320 4 unsigned long m_targetCount0x324 4 unsigned long m_hpLimit
Continued on next page
620 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 30 – continued from previous page0x328 4 unsigned long m_animationID0x32C 4 unsigned long m_animationIDStatic0x330 8 CResRef m_fireBallSound0x338 8 CResRef m_fireBallArea0x340 8 CResRef m_fireBallRing0x348 4 unsigned long m_fireBallFlags0x34C 2 unsigned short m_granularity0x34E 2 unsigned short m_granDivider0x350 2 unsigned short m_childCount
2 <padding>0x354 4 int m_bPointsInited0x358 32 CPoint m_points[4]
5.15.27 CProjectileAreaFileFormat
Offset Size Type Field0x00 504 CProjectileBAMFileFormat m_cProjectileBAMFileFormat0x1F8 4 unsigned long m_dwAreaFlags0x1FC 2 unsigned short m_triggerRange0x1FE 2 unsigned short m_explosionRange0x200 8 CResRef m_explodeSound0x208 2 unsigned short m_nDelay0x20A 2 unsigned short m_explodeId0x20C 2 unsigned short m_sparkleExplosionProjectile0x20E 1 unsigned char m_nRepetitionCount0x20F 1 unsigned char m_fireBallType0x210 1 unsigned char m_ringColor0x211 1 unsigned char padding10x212 2 unsigned short m_secondaryProjectile0x214 8 CResRef m_centerVVC0x21C 2 unsigned short m_coneSize0x21E 2 unsigned short padding20x220 8 CResRef m_fireBallArea0x228 8 CResRef m_fireBallRing0x230 8 CResRef m_fireBallSound0x238 4 unsigned long m_fireBallFlags0x23C 2 unsigned short m_targetDiceCount0x23E 2 unsigned short m_targetDiceSize0x240 2 unsigned short m_granularity0x242 2 unsigned short m_granDivider0x244 180 unsigned long reservedSpace[45]
Notes
Related to PRO V1 Projectile area of effect
5.15. CP Structures 621
EEex Documentation, Release 1.0
5.15.28 CProjectileBAM
Offset Size Type Field0x00 348 CProjectile m_cProjectile0x15C 4 CVidCell* m_currentVidCell0x160 4 CVidCell* m_shadowVidCell0x164 36 CVidPalette m_palette0x188 4 int m_tint0x18C 4 int m_height0x190 4 int m_glow0x194 8 CSize m_glowSize0x19C 2 short m_glowIntensity
2 <padding>0x1A0 4 int m_shadow0x1A4 2 short m_numDirections0x1A6 2 short m_direction0x1A8 2 short m_newDirection
2 <padding>0x1AC 4 int m_render0x1B0 176 CVidBitmap m_newPalette0x260 1 unsigned char m_bNewPalette0x261 1 unsigned char m_bDuration
2 <padding>0x264 4 int m_bSmoke0x268 1 unsigned char m_smokePeriod0x269 7 unsigned char m_smokeColorRange[7]0x270 1 unsigned char m_smokeCount
1 <padding>0x272 2 unsigned short m_smokeAnimationCode0x274 8 CResRef m_cPuffEffect10x27C 8 CResRef m_cPuffEffect20x284 8 CResRef m_cPuffEffect30x28C 2 unsigned short m_nPuff1Spacing0x28E 2 unsigned short m_nPuff2Spacing0x290 2 unsigned short m_nPuff3Spacing
2 <padding>0x294 4 unsigned long m_dwPuffFlags0x298 4 long m_puffCounter
Notes
Related to PRO V1 Projectile graphics
622 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.15.29 CProjectileBAMFileFormat
Offset Size Type Field0x00 248 CProjectileFileFormat m_cProjectileBAMFileFormat0xF8 4 unsigned long m_dwBAMFlags0xfC 8 CResRef m_vidCell0x104 8 CResRef m_shadowVidCell0x10C 1 unsigned char m_seqVidCell0x10D 1 unsigned char m_seqShadowVidCell0x10E 2 short m_glowIntensity0x110 2 short m_glowSizeX0x112 2 short m_glowSizeY0x114 8 CResRef m_paletteResRef0x11C 7 unsigned char m_colors[7]0x123 1 unsigned char m_smokePeriod0x124 7 unsigned char m_smokeColors[7]0x12B 1 unsigned char m_numDirections0x12C 2 unsigned short m_smokeAnimationCode0x12E 8 CResRef m_cPuffEffect10x136 8 CResRef m_cPuffEffect20x13E 8 CResRef m_cPuffEffect30x146 2 unsigned short m_nPuff1Spacing0x148 2 unsigned short m_nPuff2Spacing0x14A 2 unsigned short m_nPuff3Spacing0x14C 4 unsigned long m_dwPuffFlags0x150 168 unsigned long reservedSpace[42]
Notes
Related to PRO V1 Projectile graphics
5.15.30 CProjectileCallLightning
Offset Size Type Field0x00 348 CProjectileInstant m_cProjectileInstant
5.15.31 CProjectileCastingGlow
Offset Size Type Field0x00 348 CProjectile m_cProjectile0x15C 192 CVidCell m_animation0x21C 176 CVidBitmap m_newPalette0x2CC 4 unsigned long m_dwRenderFlags0x2D0 1 unsigned char m_bNewPalette0x2D1 1 unsigned char m_transparency0x2D2 1 unsigned char m_duration0x2D3 1 unsigned char m_delay
5.15. CP Structures 623
EEex Documentation, Release 1.0
5.15.32 CProjectileChain
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29c 2 short m_numProjectile0x29E 2 short m_nDelay0x2A0 4 int m_bOriginCaster0x2A4 2 unsigned short m_secondaryProjectileType
2 <padding>0x2A8 4 CProjectile* m_carrierProjectile0x2AC 4 int m_carrierArrived0x2B0 20 CAIObjectType m_targetType0x2C4 4 long m_nHeight0x2C8 2 short m_nType
2 <padding>0x2CC 4 int m_bUseLineOfSight0x2D0 2 short m_nDelayCount
2 <padding>
5.15.33 CProjectileColorSpray
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29C 2 short m_counter
2 <padding>
5.15.34 CProjectileConeOfCold
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29C 2 short m_counter
2 <padding>
624 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.15.35 CProjectileFall
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29C 4 int m_sideMove0x2A0 4 long m_nSideSpeed0x2A4 4 int m_bAreaEffect0x2A8 2 short m_nAreaRange
2 <padding>0x2AC 20 CAIObjectType m_targetType
5.15.36 CProjectileFile
Offset Size Type Field0x00 12 CResHelper m_cResHelper
5.15.37 CProjectileFileFormat
Offset Size Type Field0x00 2 unsigned short m_wFileType0x02 2 short m_speed0x04 4 unsigned long m_dwFlags0x08 8 CResRef m_fireSoundRef0x10 8 CResRef m_arrivalSoundRef0x18 8 CResRef m_visualEffectRef0x20 2 short m_sparkleColor0x22 2 short m_lanceWidth0x24 4 unsigned long m_extFlags0x28 4 unsigned long m_strRef0x2C 4 unsigned long m_color0x30 2 unsigned short m_colorSpeed0x32 2 unsigned short m_shake0x34 2 unsigned short m_IDSValue10x36 2 unsigned short m_IDSType10x38 2 unsigned short m_IDSValue20x3A 2 unsigned short m_IDSType20x3C 8 CResRef m_failureSpell0x44 8 CResRef m_successSpell0x4C 4 long m_maxBounces0x50 168 unsigned long reservedSpace[42]
Notes
Related to PRO V1 File Format
5.15. CP Structures 625
EEex Documentation, Release 1.0
5.15.38 CProjectileFireHands
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29C 2 short m_counter
2 <padding>
5.15.39 CProjectileInstant
Offset Size Type Field0x00 348 CProjectile m_cProjectile
5.15.40 CProjectileInvisibleTravelling
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM
5.15.41 CProjectileLightningBolt
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM
5.15.42 CProjectileLightningBoltGround
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29C 4 long m_maxBounces
5.15.43 CProjectileLightningBounce
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29C 4 long m_lifeSpan
626 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.15.44 CProjectileLightningStorm
Offset Size Type Field0x00 722 CProjectileChain m_cProjectileChain
2 <padding>
5.15.45 CProjectileMagicMissileMulti
Offset Size Type Field0x00 696 CProjectileMulti m_cProjectileMulti
5.15.46 CProjectileMulti
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29C 28 CTypedPtrList m_projectiles
5.15.47 CProjectileMushroom
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM
5.15.48 CProjectileNewScorcher
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29C 1 unsigned char m_nSegments
3 <padding>0x2A0 4 long m_deltaZ0x2A4 256 long itsAffectedCreatures[64]0x3A4 4 int itsNumAffectedCreatures0x3A8 4 int itsAIUpdateCounter0x3AC 4 int itsApplyEffectsInterval0x3B0 4 int itsClearAffectedCreaturesInterval0x3B4 4 int itsTargetID
5.15. CP Structures 627
EEex Documentation, Release 1.0
5.15.49 CProjectileScorcher
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29C 1 unsigned char m_lifeSpan0x29D 1 unsigned char m_nSegments
2 <padding>0x2A0 4 long m_deltaZ0x2A4 1 unsigned char m_bGlow
3 <padding>
5.15.50 CProjectileSegment
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM0x29C 2 short m_counter
2 <padding>
5.15.51 CProjectileSkyStrike
Offset Size Type Field0x00 348 CProjectile m_cProjectile0x15C 192 CVidCell m_animation0x21C 36 CVidPalette m_palette0x240 4 int m_bGlow0x244 2 unsigned short m_duration
2 <padding>
5.15.52 CProjectileSkyStrikeBAM
Offset Size Type Field0x00 668 CProjectileBAM m_cProjectileBAM
628 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.15.53 CProjectileSpellHit
Offset Size Type Field0x00 348 CProjectile m_cProjectile0x15C 192 CVidCell m_animation0x21C 176 CVidBitmap m_newPalette0x2CC 4 unsigned long m_dwRenderFlags0x2D0 1 unsigned char m_bNewPalette0x2D1 1 unsigned char m_transparency
2 <padding>
5.15.54 CProjectileTravelDoor
Offset Size Type Field0x00 348 CProjectile m_cProjectile0x15C 192 CVidCell m_animation0x21C 176 CVidBitmap m_newPalette0x2CC 4 unsigned long m_dwRenderFlags0x2D0 1 unsigned char m_bNewPalette0x2D1 1 unsigned char m_transparency
2 <padding>0x2D4 4 CString m_animationStr0x2D8 1 unsigned char m_nState
3 <padding>
5.15.55 CPtrArray
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 void** m_pData0x08 4 int m_nSize0x0C 4 int m_nMaxSize0x10 4 int m_nGrowBy
5.15.56 CPtrList
Used by the CPtrList Class
5.15. CP Structures 629
EEex Documentation, Release 1.0
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CPtrList::CNode* m_pNodeHead0x08 4 CPtrList::CNode* m_pNodeTail0x0C 4 int m_nCount0x10 4 CPtrList::CNode* m_pNodeFree0x14 4 CPlex* m_pBlocks0x18 4 int m_nBlockSize
5.15.57 CPtrList::CNode
Offset Size Type Field0x00 4 CPtrList::CNode* pNext0x04 4 CPtrList::CNode* pPrev0x08 4 void* data
5.16 CR Structures
• CRainDrop
• CRainStorm
• CRect
• CRes
• CResArea
• CResBIO
• CResBinary
• CResBitmap
• CResCHR
• CResCRE
• CResCell
• CResDLG
• CResEffect
• CResFont
• CResGame
• CResHelper
• CResINI
• CResInfTile
• CResItem
630 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CResMosaic
• CResPLT
• CResPVR
• CResPng
• CResRef
• CResSpell
• CResStore
• CResText
• CResTile
• CResTileSet
• CResUI
• CResWED
• CResWave
• CResWebm
• CResWorldMap
• CRuleTables
5.16.1 CRainDrop
Offset Size Type Field0x00 52 CParticle m_cParticle
5.16.2 CRainStorm
Offset Size Type Field0x00 4 CRainDrop* m_pRainDrops0x04 2 unsigned short m_nCurrentDensity
2 <padding>0x08 16 CRect m_rOldWorldViewPort0x18 2 short m_nWindGustCounter
2 <padding>0x1C 4 int m_nRainDrops
5.16. CR Structures 631
EEex Documentation, Release 1.0
5.16.3 CRect
Note: Actually defined as RECT but adapted/recreated as its own structure.
Used by the CRect Class
Offset Size Type Field0x00 4 long left0x04 4 long top0x08 4 long right0x0C 4 long bottom
5.16.4 CRes
Offset Size Type Field0x00 4 vfptr vfptr0x04 4 const char* resref0x08 4 int type0x0C 16 view_t view0x1C 4 unsigned int nID0x20 4 int zip_id0x24 4 int override_id0x28 4 void* pData0x2C 4 unsigned long nSize0x30 4 unsigned long nCount0x34 1 bool bWasMalloced0x35 1 bool bLoaded
2 <padding>
5.16.5 CResArea
Offset Size Type Field0x00 56 CRes m_cRes
5.16.6 CResBIO
Offset Size Type Field0x00 56 CRes m_cRes
632 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.16.7 CResBinary
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 char m_resVersion[4]
5.16.8 CResBitmap
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 unsigned char* m_pDataDecompressed0x3C 4 int texture0x40 4 int nColors0x44 4 int nXWords0x48 4 unsigned char* m_pData0x4C 4 BITMAPFILEHEADER* pBitmapFileHeader0x50 4 BITMAPINFOHEADER* pBitmapInfoHeader0x54 4 RGBQUAD* pColorTable
5.16.9 CResCHR
Offset Size Type Field0x00 56 CRes m_cRes
5.16.10 CResCRE
Offset Size Type Field0x00 56 CRes m_cRes
5.16. CR Structures 633
EEex Documentation, Release 1.0
5.16.11 CResCell
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 void* pUncompressedData0x3C 4 unsigned long nUncompressedSize0x40 4 bamHeader_st* m_pBamHeader0x44 4 BAMHEADERV2* m_pBamHeaderV20x48 4 MOSAICQUAD* m_pQuads0x4C 4 frameTableEntry_st* m_pFrames0x50 4 sequenceTableEntry_st* m_pSequences0x54 4 unsigned short* m_pFrameList0x58 2 unsigned short m_nFrameList
2 <padding>0x5C 4 RGBQUAD* m_pPalette0x60 4 int m_bParsing
5.16.12 CResDLG
Offset Size Type Field0x00 56 CRes m_cRes
5.16.13 CResEffect
Offset Size Type Field0x00 56 CRes m_cRes
5.16.14 CResFont
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 void* font
5.16.15 CResGame
Offset Size Type Field0x00 56 CRes m_cRes
634 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.16.16 CResHelper
Offset Size Type Field0x00 4 CResArea* pRes0x04 8 CResRef cResRef
5.16.17 CResINI
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 int bLoaded
5.16.18 CResInfTile
Offset Size Type Field0x00 12 CResTile m_cResTile0x0C 4 int nVRamTile0x10 4 TILE_CODE renderCode0x14 4 CResTile* pDualTileRes0x18 1 VRAM_FLAGS flags
3 <padding>
5.16.19 CResItem
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 Item_ability_st* pAbilities0x3C 4 Item_effect_st* pEffects0x40 4 Item_Header_st* pHeader
5.16. CR Structures 635
EEex Documentation, Release 1.0
5.16.20 CResMosaic
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 void* pUncompressedData0x3C 4 unsigned long nUncompressedSize0x40 4 int texture0x44 4 MOSAICHEADERV2* pMosaicHeaderV20x48 4 MOSAICQUAD* quads0x4C 4 mosHeader_st* pMosaicHeader0x50 4 RGBQUAD* pPalettes0x54 4 unsigned char* m_pData0x58 4 unsigned long* pOffsets
5.16.21 CResPLT
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 unsigned char* m_pData0x3C 4 PLTHeader_st* m_pHeader
5.16.22 CResPVR
Offset Size Type Field0x00 56 CRes m_cRes0x38 int texture0x3C int format0x40 int filtering0x44 CSize size
5.16.23 CResPng
Offset Size Type Field0x00 56 CRes m_cRes0x38 8 CSize size0x40 4 int texture
636 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.16.24 CResRef
Used by the CResRef Class
Offset Size Type Field0x00 8 unsigned char m_resRef[8]
5.16.25 CResSpell
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 Spell_ability_st* pAbilities0x3C 4 Item_effect_st* pEffects0x40 4 Spell_Header_st* pHeader
5.16.26 CResStore
Offset Size Type Field0x00 56 CRes m_cRes
5.16.27 CResText
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 CString m_string
5.16.28 CResTile
Offset Size Type Field0x00 4 CResTileSet* tis0x04 4 int tileIndex0x08 4 CResPVR* pvr
5.16. CR Structures 637
EEex Documentation, Release 1.0
5.16.29 CResTileSet
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 ResFixedHeader_st* h
5.16.30 CResUI
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 UI_Header_st* pHeader0x3C 4 UI_PanelHeader_st* pPanels0x40 4 UI_ControlTableEntry_st* pControlTable
5.16.31 CResWED
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 WED_WedHeader_st* pWEDHeader0x3C 4 WED_LayerHeader_st* pLayers0x40 4 WED_PolyHeader_st* pPolyHeader0x44 4 WED_ScreenSectionList* pScreenSectionList0x48 4 WED_PolyList_st* pPolyList0x4C 4 WED_PolyPoint_st* pPolyPoints
5.16.32 CResWave
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 int m_bCompressed0x3C 4 int m_bIsOgg0x40 4 unsigned long m_nWaveNormalSize0x44 4 unsigned long m_nWaveCompressedSize0x48 4 unsigned char* m_pWaveData0x4C 4 WAV_Header* m_pWaveFormatEx
638 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.16.33 CResWebm
Offset Size Type Field0x00 56 CRes m_cRes0x38 4 void* m_pCodec0x3C 4 unsigned long m_nFirstFrameTime0x40 4 unsigned long m_nFrameWaitTime0x44 1 bool m_bComplete0x45 1 bool m_bLooping
2 <padding>0x48 16 CRect m_rRender0x58 4 int m_texture0x5C 1 bool m_bGreyscale0x5D 1 bool m_bTiled
2 <padding>0x60 4 int m_nTransparent0x64 1 bool m_bUseTone
3 <padding>0x68 4 float m_nDeltaX0x6C 4 float m_nDeltaY0x70 4 float m_nOffsetX0x74 4 float m_nOffsetY
5.16.34 CResWorldMap
Offset Size Type Field0x00 56 CRes m_cRes
5.16.35 CRuleTables
Used by the CRuleTables Class
Offset Size Type Field0x00 32 C2DArray m_tReactionModCharisma0x20 32 C2DArray m_tReactionModReputation0x40 32 C2DArray m_tReputationMod0x60 60 CAIIdList m_lNoDecodeList0x9C 32 C2DArray m_tProficiencySlots0xBC 32 C2DArray m_tProficiencySlotsMax0xDC 32 C2DArray m_tSkillPointsRace0xFC 32 C2DArray m_tSkillPointsDex0x11C 32 C2DArray m_tSkillPointsBard0x13C 32 C2DArray m_tSkillPointsRanger0x15C 32 C2DArray m_tSkillPointsShaman
Continued on next page
5.16. CR Structures 639
EEex Documentation, Release 1.0
Table 32 – continued from previous page0x17C 32 C2DArray m_tAbilityRaceReq0x19C 32 C2DArray m_tAbilityRaceAdj0x1BC 32 C2DArray m_tAbilityClassReq0x1DC 32 C2DArray m_tAbilityClassMod0x1FC 32 C2DArray m_tAbilityDualClassSrcReq0x21C 32 C2DArray m_tAbilityDualClassDstReq0x23C 32 C2DArray m_tSavingThrowPriest0x25C 32 C2DArray m_tSavingThrowWarrior0x27C 32 C2DArray m_tSavingThrowWizard0x29C 32 C2DArray m_tSavingThrowRogue0x2BC 32 C2DArray m_tSavingThrowDwarfHalfling0x2DC 32 C2DArray m_tSavingThrowGnome0x2FC 32 C2DArray m_tSavingThrowMonk0x31C 32 C2DArray m_tClassHitPointsTables0x33C 32 C2DArray m_tHitPointsCONBonus0x35C 32 C2DArray m_tStartingGold0x37C 32 C2DArray m_tTHAC00x39C 32 C2DArray m_tMaxSpellsPriest0x3BC 32 C2DArray m_tMaxSpellsPriestPaladin0x3DC 32 C2DArray m_tMaxSpellsPriestRanger0x3FC 32 C2DArray m_tMaxSpellsMage0x41C 32 C2DArray m_tMaxSpellsMageBard0x43C 32 C2DArray m_tMaxSpellsMageSorcerer0x45C 32 C2DArray m_tMaxSpellsMageDragonDisciple0x47C 32 C2DArray m_tMaxSpellsShaman0x49C 32 C2DArray m_tMaxSpellsPriestWISBonus0x4BC 32 C2DArray m_tMaxSpellsPriestDruid0x4DC 32 C2DArray m_tKnownSpellsSorcerer0x4FC 32 C2DArray m_tKnownSpellsShaman0x51C 32 C2DArray m_tBackstabMultiplier0x53C 32 C2DArray m_tSneakAttack0x55C 32 C2DArray m_tCripplingStrike0x57C 32 C2DArray m_tExperienceLevels0x59C 32 C2DArray m_tLayOnHandsAmount0x5BC 32 CAIIdList m_lInstantActions0x5F8 32 CAIIdList m_lAllowWhileSleepingActions0x634 32 C2DArray m_tMonsterSummon10x654 32 C2DArray m_tMonsterSummon20x674 32 C2DArray m_tMonsterSummon30x694 32 C2DArray m_tAnimalSummon10x6B4 32 C2DArray m_tAnimalSummon20x6D4 32 C2DArray m_tStrengthMod0x6F4 32 C2DArray m_tStrengthModExtra0x714 32 C2DArray m_tIntoxicationMod0x734 32 C2DArray m_tFatigueMod0x754 32 C2DArray m_tEffectText0x774 32 C2DArray m_tPlayerInteraction0x794 32 C2DArray m_tNumSpells0x7B4 32 C2DArray m_tToolTips0x7D4 32 C2DArray m_tStartArea
Continued on next page
640 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 32 – continued from previous page0x7F4 32 C2DArray m_tStartPos0x814 32 C2DArray m_tSparkleColors0x834 32 C2DArray m_tMonths0x854 32 C2DArray m_tYears0x874 32 C2DArray m_tDexterityMod0x894 32 C2DArray m_tPostDialog0x8B4 32 C2DArray m_tCharacterSounds0x8D4 32 C2DArray m_tRandomEquipment0x8F4 32 C2DArray m_tRandomTreasure0x914 32 C2DArray m_tRandomTreasureIWD0x934 32 C2DArray m_tRandomMagic0x954 32 C2DArray m_tRandomScroll0x974 32 C2DArray m_tRandomWeapon0x994 32 C2DArray m_tInteractionDialog0x9B4 32 C2DArray m_tIntelligenceMod0x9D4 32 C2DArray m_tDonateRumor0x9f4 32 C2DArray m_tAreaLinkageCaching0xA14 32 C2DArray m_tAreaLinkageCachingSingle0xA34 32 C2DArray m_tCacheValidation0xA54 32 C2DArray m_tScriptDescription0xA74 32 C2DArray m_tCharacterStateDescription0xA94 32 C2DArray m_tMasterArea0xAB4 32 C2DArray m_tMovieDescription0xAD4 32 C2DArray m_tSpellDescription0xAF4 32 C2DArray m_tBountyChance0xB14 32 C2DArray m_tNPCLevel0xB34 32 C2DArray m_tNPCLevel250xB54 32 C2DArray m_tDeathSounds0xB74 32 C2DArray m_tAlignment0xB94 32 C2DArray m_tReputationStoreMod0xBB4 32 C2DArray m_tReputationStart0xBD4 32 C2DArray m_tXPCap0xBF4 32 C2DArray m_tWeaponSpecialization0xC14 32 C2DArray m_tWeaponAttacks0xC34 32 C2DArray m_tLore0xC54 32 C2DArray m_tLoreBonus0xC74 32 C2DArray m_tCharismaStoreMod0xC94 32 C2DArray m_tRaiseDeadCost0xCB4 32 C2DArray m_tHappiness0xCD4 32 C2DArray m_tReputationDescription0xCF4 32 C2DArray m_tPortraitReplacement0xD14 32 C2DArray m_tIntoxication0xD34 32 C2DArray m_tCustomSound0xD54 32 C2DArray m_tExclusiveItems0xD74 32 CAIIdList m_lChaseActions0xDB0 32 CAIIdList m_lVEFProjectile0xDEC 32 CAIIdList m_lProjectile0xE28 32 C2DArray m_tContingencyConditions0xE48 32 C2DArray m_tContingencyTargets0xE68 32 C2DArray m_tAbilitiesStart
Continued on next page
5.16. CR Structures 641
EEex Documentation, Release 1.0
Table 32 – continued from previous page0xE88 32 C2DArray m_tWeaponProficiencies0xEA8 32 C2DArray m_tClassAbilitiesFighterTrue0xEC8 32 C2DArray m_tClassAbilitiesFighterBerserker0xEE8 32 C2DArray m_tClassAbilitiesFighterWizardslayer0xF08 32 C2DArray m_tClassAbilitiesFighterKensai0xF28 32 C2DArray m_tClassAbilitiesPaladinTrue0xF48 32 C2DArray m_tClassAbilitiesPaladinCavalier0xF68 32 C2DArray m_tClassAbilitiesPaladinInquisitor0xF88 32 C2DArray m_tClassAbilitiesPaladinUndeadhunter0xFA8 32 C2DArray m_tClassAbilitiesPaladinFallen0xFC8 32 C2DArray m_tClassAbilitiesRangerTrue0xFE8 32 C2DArray m_tClassAbilitiesRangerFeralan0x1008 32 C2DArray m_tClassAbilitiesRangerStalker0x1028 32 C2DArray m_tClassAbilitiesRangerBeastmaster0x1048 32 C2DArray m_tClassAbilitiesRangerFallen0x1068 32 C2DArray m_tClassAbilitiesThiefTrue0x1088 32 C2DArray m_tClassAbilitiesThiefAssassin0x10A8 32 C2DArray m_tClassAbilitiesThiefBountyhunter0x10C8 32 C2DArray m_tClassAbilitiesThiefSwashbuckler0x10E8 32 C2DArray m_tClassAbilitiesBardTrue0x1108 32 C2DArray m_tClassAbilitiesBardBlade0x1128 32 C2DArray m_tClassAbilitiesBardJester0x1148 32 C2DArray m_tClassAbilitiesBardSkald0x1168 32 C2DArray m_tClassAbilitiesDruidTrue0x1188 32 C2DArray m_tClassAbilitiesShamanTrue0x11A8 32 C2DArray m_tClassAbilitiesDruidTotemicdruid0x11C8 32 C2DArray m_tClassAbilitiesDruidShapeshifter0x11E8 32 C2DArray m_tClassAbilitiesDruidBeastfriend0x1208 32 C2DArray m_tClassAbilitiesClericTrue0x1228 32 C2DArray m_tClassAbilitiesClericTalos0x1248 32 C2DArray m_tClassAbilitiesClericHelm0x1268 32 C2DArray m_tClassAbilitiesClericLathander0x1288 32 C2DArray m_tClassAbilitiesMageTrue0x12A8 32 C2DArray m_tClassAbilitiesMageAbjurer0x12C8 32 C2DArray m_tClassAbilitiesMageNecromancer0x12E8 32 C2DArray m_tClassAbilitiesMageTransmuter0x1308 32 C2DArray m_tClassAbilitiesMageDiviner0x1328 32 C2DArray m_tClassAbilitiesMageConjurer0x1348 32 C2DArray m_tClassAbilitiesMageInvoker0x1368 32 C2DArray m_tClassAbilitiesMageIllusionist0x1388 32 C2DArray m_tClassAbilitiesMageEnchanter0x13A8 32 C2DArray m_tClassAbilitiesMonkTrue0x13C8 32 C2DArray m_tClassAbilitiesMonkDarkMoon0x13E8 32 C2DArray m_tClassAbilitiesMonkSunSoul0x1408 32 C2DArray m_tClassAbilitiesBarbarianTrue0x1428 32 C2DArray m_tSpellAutmaticPicker0x1448 32 C2DArray m_tSpellAutmaticPickerShaman0x1468 32 C2DArray m_tDualClassAllowed0x1488 32 C2DArray m_tRandomColors0x14A8 32 C2DArray m_tSpawnGroup
Continued on next page
642 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 32 – continued from previous page0x14C8 32 C2DArray m_tItemUseAnimation0x14E8 32 C2DArray m_tRangerHatedRace0x1508 32 C2DArray m_tXPBonus0x1528 32 C2DArray m_tCleanAir0x1548 32 C2DArray m_tSplashScreens0x1568 32 C2DArray m_tLevelModWildMage0x1588 32 C2DArray m_tKitTable0x15A8 32 C2DArray m_tKitList0x15C8 1024 C2DArray* m_apKitList[256]0x19C8 32 C2DArray m_tSoundEnvironmentResRef0x19E8 32 C2DArray m_tSoundEnvironmentEnvirons0x1A08 32 C2DArray m_tItemDialog0x1A28 32 C2DArray m_tLoadingHints0x1A48 32 C2DArray m_tSchoolMessage0x1A68 32 C2DArray m_tSecTypeMessage0x1A88 32 C2DArray m_tContingencyExceptions0x1AA8 32 C2DArray m_tClassAbbreviations0x1AC8 32 C2DArray m_tNumLevelUpAbilities0x1AE8 32 C2DArray m_tXPList0x1B08 32 C2DArray m_tTracking0x1B28 32 C2DArray m_tMovieSoundOverride0x1B48 32 C2DArray m_t25StartEquipment0x1B68 32 C2DArray m_tWish0x1B88 32 C2DArray m_tEntries0x1BA8 32 C2DArray m_tLoadingHints250x1BC8 32 C2DArray m_tStartingWeapon0x1BE8 32 C2DArray m_tFamiliars0x1C08 32 C2DArray m_tThiefSkills0x1C28 32 C2DArray m_tThiefScaling0x1C48 32 C2DArray m_tClassTHAC00x1C68 32 C2DArray m_tClassInnateSkills0x1C88 32 C2DArray m_tTBPStartparty0x1CA8 32 C2DArray m_tExtraAnimations0x1CC8 32 C2DArray m_tExtraAnimationSpeeds0x1CE8 32 C2DArray m_tWildMagic0x1D08 32 C2DArray m_tItemType0x1d28 32 C2DArray m_tRaceTHAC0Bonus0x1D48 32 C2DArray m_tClassColours0x1D68 32 C2DArray m_tRaceColours0x1D88 32 C2DArray m_tSlotSteal0x1DA8 32 C2DArray m_tNumWeaponSlots0x1DC8 32 C2DArray m_tItemUse0x1DE8 32 C2DArray m_tRaceText0x1E08 32 C2DArray m_tTokenText0x1E28 32 C2DArray m_tClassText0x1E48 32 C2DArray m_tSetSnareLimit0x1E68 32 C2DArray m_tSummonLimit0x1E88 32 C2DArray m_tWeaponStyleBonus0x1EA8 32 C2DArray m_tBanterTimings0x1EC8 32 C2DArray m_tClassRaceRestrictions
Continued on next page
5.16. CR Structures 643
EEex Documentation, Release 1.0
Table 32 – continued from previous page0x1EE8 32 C2DArray m_tMageRaceRestrictions0x1F08 32 C2DArray m_tClassSpecialBonuses0x1F28 32 C2DArray m_tMonkFists0x1F48 32 C2DArray m_tSpellsToHide0x1F68 32 C2DArray m_tSpellProtections0x1F88 32 C2DArray m_tSpellAbilities0x1FA8 32 C2DArray m_tSummoningTables0x1FC8 4 C2DArray* m_apSummoningList0x1FCC 32 C2DArray m_tSevenEyes0x1FEC 32 C2DArray m_tItemSpec0x200C 32 C2DArray m_tRaceFeatures0x202C 32 C2DArray m_tAreaCreatureNodes0x204C 32 C2DArray m_tFogAreaSettings0x206C 32 C2DArray m_tFogPointSettings0x208C 32 C2DArray m_tCampaign0x20AC 32 C2DArray m_tPartyAI0x20CC 32 C2DArray m_tContainerIcons0x20EC 32 C2DArray m_tFallen0x210C 32 C2DArray m_tAchievements0x212C 32 C2DArray m_tStatValues0x214C 60 CAIIdList m_lStats0x2188 32 C2DArray m_tSaveName0x21A8 1 unsigned char m_bPPHostile0x21A9 1 unsigned char m_bPPReport0x21AA 1 unsigned char m_bPPBreakInvis
1 <padding>0x21AC 4 int m_nConcentration0x21B0 128 CResRef m_damageSounds[16]0x2230 128 CResRef m_damageEffectAnims[16]0x22B0 128 CResRef m_damageSplashAnims[16]0x2330 64 unsigned long m_damageStrings[16]0x2370 200 int m_speechOffsets[50]0x2438 200 int m_speechNums[50]
5.17 CS Structures
• CSaveGameSlot
• CSavedGameFamiliars
• CSavedGameHeader
• CSavedGameJournalEntry
• CSavedGamePartyCreature
• CSavedGameStoredLocation
• CSchoolAndSecondaryDecrementing
• CScreenAI
• CScreenChapter
644 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CScreenCharacter
• CScreenCharacterStoredMageSpell
• CScreenConnection
• CScreenCreateChar
• CScreenCreateParty
• CScreenDLC
• CScreenInventory
• CScreenJournal
• CScreenLoad
• CScreenMap
• CScreenMovies
• CScreenMultiPlayer
• CScreenOptions
• CScreenPriestSpell
• CScreenSave
• CScreenStart
• CScreenStore
• CScreenStoreItem
• CScreenWizSpell
• CScreenWorld
• CScreenWorldMap
• CScriptCache
• CSearchBitmap
• CSearchRequest
• CSelectiveBonus
• CSelectiveBonusList
• CSelectiveWeaponType
• CSelectiveWeaponTypeList
• CSequenceSound
• CSequenceSoundList
• CSize
• CSnowFlake
• CSnowStorm
• CSound
• CSoundChannel
• CSoundExtensionBase
5.17. CS Structures 645
EEex Documentation, Release 1.0
• CSoundExtensionFile
• CSoundImp
• CSoundMixer
• CSoundMixerImp
• CSoundProperties
• CSparkle
• CSparkleCluster
• CSpawn
• CSpawnFile
• CSpawnList
• CSpawnPoint
• CSpawnPointArray
• CSpawnPointVar
• CSpawnVar
• CSpell
• CSpellLevelDecrementing
• CSteam
• CSteamID
• CSteamID::SteamID_t
• CSteamID::SteamID_t::SteamIDComponent_t
• CStore
• CStoreFile
• CStoreFileDrinks
• CStoreFileHeader
• CStoreFileItem
• CStoreFileSpell
• CString
• CStringData
• CStringList
• CStringList::CNode
646 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.17.1 CSaveGameSlot
Offset Size Type Field0x00 4 CString m_sFileName0x04 4 CString m_sSlotName0x08 88 CResBitmap m_cResScreenShot0x60 88 CResBitmap m_cBmpResPortrait00xB8 88 CResBitmap m_cBmpResPortrait10x110 88 CResBitmap m_cBmpResPortrait20x168 88 CResBitmap m_cBmpResPortrait30x1C0 88 CResBitmap m_cBmpResPortrait40x218 88 CResBitmap m_cBmpResPortrait50x270 8 CResRef m_cResPortrait0x278 4 CString m_sCharacterName0x27C 4 unsigned long m_nTime0x280 4 int m_nChapter0x284 4 CString m_sChapter
5.17.2 CSavedGameFamiliars
Offset Size Type Field0x00 72 unsigned char m_resrefDefault[9][8]0x48 4 unsigned long m_resrefOffset0x4C 324 unsigned long m_resrefCount[9][9]
5.17.3 CSavedGameHeader
Offset Size Type Field0x00 4 unsigned long m_worldTime0x04 2 short m_curFormation0x06 10 short m_quickFormations[5]0x10 4 unsigned long m_nPartyGold0x14 2 unsigned short m_nPCAreaViewed0x16 2 unsigned short m_wWeatherFlags0x18 4 unsigned long m_partyCreatureTableOffset0x1C 4 unsigned long m_partyCreatureTableCount0x20 4 unsigned long m_partyInventoryTableOffset0x24 4 unsigned long m_partyInventoryTableCount0x28 4 unsigned long m_globalCreatureTableOffset0x2C 4 unsigned long m_globalCreatureTableCount0x30 4 unsigned long m_globalVariablesOffset0x34 4 unsigned long m_globalVariablesCount0x38 8 unsigned char m_currentWorldArea[8]
Continued on next page
5.17. CS Structures 647
EEex Documentation, Release 1.0
Table 33 – continued from previous page0x40 4 unsigned long m_currentLink0x44 4 unsigned long m_journalEntriesCount0x48 4 unsigned long m_journalEntriesOffset0x4C 4 long m_reputation0x50 8 unsigned char m_masterArea[8]0x58 4 unsigned long m_dwFlags0x5C 4 unsigned long m_versionNumber0x60 4 unsigned long m_familiarsOffset0x64 4 unsigned long m_storedLocationsOffset0x68 4 unsigned long m_storedLocationsCount0x6C 4 unsigned long m_gameTime0x70 4 unsigned long m_storedLocationsOffsetPocketPlane0x74 4 unsigned long m_storedLocationsCountPocketPlane0x78 4 unsigned long m_zoomLevel0x7C 8 unsigned char m_encounterArea[8]0x84 8 unsigned char m_worldMap[8]0x8C 8 unsigned char m_campaign[8]0x94 4 unsigned long m_nFamiliarSummoner0x98 20 char m_encounterEntry[20]
5.17.4 CSavedGameJournalEntry
Offset Size Type Field0x00 4 unsigned long m_strEntry0x04 4 unsigned long m_time0x08 1 unsigned char m_chapter0x09 1 unsigned char m_read0x0A 1 unsigned char m_type0x0B 1 unsigned char m_character
5.17.5 CSavedGamePartyCreature
Offset Size Type Field0x00 2 unsigned short m_wFlags0x02 2 unsigned short m_portraitId0x04 4 unsigned long m_creatureOffset0x08 4 unsigned long m_creatureSize0x0C 8 unsigned char m_creatureResRef[8]0x14 4 unsigned long m_creatureFacing0x18 8 unsigned char m_areaName[8]0x20 2 unsigned short m_posX0x22 2 unsigned short m_posY0x24 2 unsigned short m_posViewX0x26 2 unsigned short m_posViewY
Continued on next page
648 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 34 – continued from previous page0x28 2 unsigned short m_nModalState0x2A 2 short m_nHappiness0x2C 96 long m_nNumberOfTimesInteractedWith[24]0x8C 8 short m_quickWeaponsItemNum[4]0x94 8 short m_quickWeaponsAbilityNum[4]0x9C 24 unsigned char m_quickSpellsSpellId[3][8]0xB4 6 short m_quickItemsItemNum[3]0xBA 6 short m_quickItemsAbilityNum[3]0xC0 32 char m_name[32]0xE0 4 unsigned long m_numberTimesTalkedTo0xE4 4 unsigned long m_strStrongestKillName0xE8 4 unsigned long m_nStrongestKillXPValue0xEC 4 unsigned long m_nPreviousTimeWithParty0xF0 4 unsigned long m_nJoinPartyTime0xF4 1 unsigned char m_bWithParty0xF5 2 char m_pad1[2]0xF7 1 char m_cFirstResSlot0xF8 4 unsigned long m_nChapterKillsXPValue0xFC 4 unsigned long m_nChapterKillsNumber0x100 4 unsigned long m_nGameKillsXPValue0x104 4 unsigned long m_nGameKillsNumber0x108 32 unsigned char m_lSpellStatsName[4][8]0x128 8 short m_lSpellStatsCount[4]0x130 32 unsigned char m_lWeaponStatsName[4][8]0x150 8 short m_lWeaponStatsCount[4]0x158 8 unsigned char m_secondarySounds[8]
Notes
Related to GAM V2.0 file format
• Offset 0x00 to 0xE0 is related to GAME V2.0 NPCs (both in-party and out-of-party NPCs)
• Offset 0xE4 to 0x158 is related to GAME V2.0 Character stats
• m_nNumberOfTimesInteractedWith[24] (offset 0x2C) doesnt appear to be used
5.17.6 CSavedGameStoredLocation
Offset Size Type Field0x00 8 unsigned char m_areaName[8]0x08 2 unsigned short m_xPos0x0A 2 unsigned short m_yPos
5.17. CS Structures 649
EEex Documentation, Release 1.0
5.17.7 CSchoolAndSecondaryDecrementing
Offset Size Type Field0x00 4 unsigned long m_nType0x04 4 long m_nLevels
5.17.8 CScreenAI
Used by the CScreenAI Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 176 CVidBitmap m_bmpScreen0xDC 32 C2DArray m_tSplashScreens0xFC 2 short m_nSplashScreen
2 <padding>0x100 4 int m_nSplashTimer0x104 4 int m_bInteractiveDemoQuit0x108 1 unsigned char m_nBmpDraw
3 <padding>0x10c 60 CKeyInfo m_pVirtualKeys[5]0x148 20 int m_pVirtualKeysFlags[5]0x15c 1 unsigned char m_bCtrlKeyDown
3 <padding>
5.17.9 CScreenChapter
Used by the CScreenChapter Class
650 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 60 CKeyInfo m_pVirtualKeys[5]0x68 20 int m_pVirtualKeysFlags[5]0x7C 1 unsigned char m_bCtrlKeyDown
3 <padding>0x80 4 int m_nChapter0x84 4 int m_nDream0x88 8 CResRef m_cResText0x90 4 CList* m_pTextList0x94 28 CTypedPtrList m_bmpList0xB0 4 long m_nBmpFlip0xB4 4 long m_nCurrBmp0xB8 4 int m_nParagraph0xBC 4 int m_nLine0xC0 20 CSound m_cVoiceSound0xD4 4 int m_bStartSound0xD8 4 int m_nEngineState0xDC 8 CResRef m_cResPower0xE4 4 int m_nSongCountDown0xE8 32 CVidFont m_preLoadFontRealms0x108 4 int m_bMPRemoveTextScreen0x10C 4 int m_nCustomSong0x110 4 int m_waitingForNetwork0x114 4 CWarp* m_destinationEngine
5.17.10 CScreenCharacter
Used by the CScreenCharacter Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 28 CTypedPtrList m_lPopupStack0x668 1 unsigned char m_nDualClass
3 <padding>0x66C 4 CStringList* m_pScripts0x670 4 int m_nScriptIndex0x674 4 int m_nErrorState0x678 4 int m_nCharacterIndex0x67C 4 CStringList* m_pCharacters0x680 4 int m_bMultiPlayerViewable0x684 4 int m_bMultiPlayerModifyable0x688 4 __POSITION* m_nCurrentPortrait0x68C 4 CStringList* m_pAppearancePortraits0x690 4 CStringList* m_pPortraits
Continued on next page
5.17. CS Structures 651
EEex Documentation, Release 1.0
Table 35 – continued from previous page0x694 4 int m_nCustomSoundSetIndex0x698 4 int m_nCustomSoundIndex0x69C 8 CResRef m_cResPortraitSmall0x6A4 8 CResRef m_cResPortraitLarge0x6AC 7 unsigned char m_aColor[7]
1 <padding>0x6B4 4 CString m_sScript0x6B8 44 int m_bSmartScriptFlags[11]0x6E4 4 CString m_sNewScript0x6E8 8 CResRef m_cResPortraitSmallTemp0x6F0 8 CResRef m_cResPortraitMediumTemp0x6F8 4 unsigned long m_nSpecialization0x6FC 4 CStringList* m_pSounds0x700 8 CResRef m_cResSoundSet0x708 4 CCreatureFileHeader* m_pTempBaseStats0x70C 4 CDerivedStats* m_pTempDerivedStats0x710 28 CTypedPtrList m_lstMageSpells0x72C 4 int m_bShiftKeyDown0x730 4 int m_bCapsLockKeyOn0x734 1 unsigned char m_bCtrlKeyDown
3 <padding>0x738 4 CString m_sExportName0x73C 4 int m_bAddInactiveAbilities0x740 36 int m_OldMageSpells[9]0x764 28 int m_OldPriestSpells[7]0x780 4 int m_bPauseState0x784 4 int m_bIsLevelingUp
5.17.11 CScreenCharacterStoredMageSpell
Offset Size Type Field0x00 8 CResRef m_cResSpell0x08 1 unsigned char m_nSpellLevel
5.17.12 CScreenConnection
Used by the CScreenConnection Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 4 int m_bCtrlKeyDown0x650 4 int m_bShiftKeyDown
Continued on next page
652 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 36 – continued from previous page0x654 4 int m_bCapsLockKeyOn0x658 4 int m_nProtocol0x65C 4 int m_nSessionIndex0x660 16 GUID m_guidSession0x670 4 unsigned long m_dwLastSessionRefresh0x674 4 int m_nEnumServiceProvidersCountDown0x678 4 int m_bStartedCountDown0x67C 1 unsigned char m_bFirstRender0x67D 1 unsigned char m_bEliminateInitialize0x67E 1 unsigned char m_bEMSwapped0x67F 1 unsigned char m_bEMValue0x680 1 unsigned char m_bEMWaiting0x681 1 unsigned char m_nEMEvent0x682 1 unsigned char m_nEMEventStage
1 <padding>0x684 4 int m_nErrorState0x688 4 unsigned long m_strErrorText0x68C 4 int m_nNumErrorButtons0x690 12 unsigned long m_strErrorButtonText[3]0x69C 4 int m_bAllowInput0x6A0 1 unsigned char m_bEnumeratingAsynchronous0x6A1 1 unsigned char m_bJoinWaiting0x6A2 1 unsigned char m_bJoinComplete0x6A3 1 unsigned char m_nJoinEvent0x6A4 4 int m_nJoinErrorCode0x6A8 1 unsigned char m_bJoinReturnValue
3 <padding>0x6AC 4 int m_nWaitingForProviderNumber0x6B0 4 int m_nWaitingForProviderCount
5.17.13 CScreenCreateChar
Used by the CScreenCreateChar Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 32 C2DArray m_kitList0x4C 108 CImportGame m_importGame0xB8 1176 CKeyInfo m_pVirtualKeys[98]0x550 392 int m_pVirtualKeysFlags[98]0x6D8 4 int m_bCtrlKeyDown0x6DC 4 int m_bShiftKeyDown0x6E0 4 int m_bCapsLockKeyOn0x6E4 4 CScreenCreateCharStep m_nFirstStep0x6E8 4 CScreenCreateCharStep m_nCurrentStep0x6EC 4 CScreenCreateCharStep m_nNextStep0x6F0 4 int m_nGameSprite
Continued on next page
5.17. CS Structures 653
EEex Documentation, Release 1.0
Table 37 – continued from previous page0x6F4 4 int m_nExtraProficiencySlots0x6F8 4 int m_nExtraAbilityPoints0x6FC 4 int m_nExtraSpells0x700 4 int m_nExtraSkillPoints0x704 4 int m_nBasePickPockets0x708 4 int m_nBaseOpenLocks0x70C 4 int m_nBaseDetectTraps0x710 4 int m_nBaseMoveSilently0x714 4 int m_nBaseHideInShadows0x718 4 int m_nBaseDetectIllusion0x71C 4 int m_nBaseSetTraps0x720 1 unsigned char m_nMinSTR0x721 1 unsigned char m_nMinDEX0x722 1 unsigned char m_nMinCON0x723 1 unsigned char m_nMinINT0x724 1 unsigned char m_nMinWIS0x725 1 unsigned char m_nMinCHR0x726 1 unsigned char m_nMaxSTR0x727 1 unsigned char m_nMaxDEX0x728 1 unsigned char m_nMaxCON0x729 1 unsigned char m_nMaxINT0x72A 1 unsigned char m_nMaxWIS0x72B 1 unsigned char m_nMaxCHR0x72C 1 unsigned char m_nPreviousMin0x72D 1 unsigned char m_nPreviousMax
2 <padding>0x730 4 int m_nMaxProficiencySlots0x734 4 __POSITION* m_nCurrentPortrait0x738 4 CStringList* m_pAppearancePortraits0x73C 28 CPtrList m_lPopupStack0x758 4 int m_nEngineState0x75C 4 int m_nCharacterSlot0x760 4 int m_nTopHatedRace0x764 1 unsigned char m_nPickRange0x765 1 unsigned char m_nMemorySTR0x766 1 unsigned char m_nMemorySTRExtra0x767 1 unsigned char m_nMemoryDEX0x768 1 unsigned char m_nMemoryCON0x769 1 unsigned char m_nMemoryINT0x76A 1 unsigned char m_nMemoryWIS0x76B 1 unsigned char m_nMemoryCHR0x76C 4 int m_nMemoryExtra0x770 4 int m_nPortraitSmallIndex0x774 4 int m_nPortraitMediumIndex0x778 4 CStringList* m_pPortraits0x77C 4 int m_nCustomSoundSetIndex0x780 4 int m_nCustomSoundIndex0x784 4 int m_nCharacterIndex0x788 4 int m_nPrerollTopIndex0x78C 4 CStringList* m_pCharacters
Continued on next page
654 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 37 – continued from previous page0x790 4 int m_bImported0x794 4 CStringList* m_pSounds0x798 32 CVidFont m_preLoadFontRealms0x7B8 32 CVidFont m_preLoadFontStnSml0x7D8 32 CVidFont m_preLoadFontTool0x7F8 1 unsigned char m_nCurrentSpellLevel
3 <padding>0x7FC 4 int m_nExtraMageSpells0x800 4 CCreatureFileHeader* m_pOldBaseStats0x804 4 CDerivedStats* m_pOldDerivedStats0x808 4 long m_nOldConHPBonus0x80C 1 unsigned char m_nCurrentSpellLevelChoice0x80D 1 unsigned char m_nCurrentSpellLevelChoiceMax0x80E 2 unsigned short m_nImportedCharHPs0x810 2 unsigned short m_nImportedCharConBonus0x812 1 unsigned char m_nImportedDualClass
1 <padding>0x814 4 unsigned long m_nImportedDualKit0x818 4 int m_nImportedDualReactivated0x81C 1 unsigned char m_byImportedCharVersion
1 <padding>0x81E 2 short m_nSelectedSpecialistSpells0x820 2 short m_nMemorizedSpecialistSpells
2 <padding>0x824 4 int m_nTotalKits0x828 2 unsigned short m_nHatedRaces
2 <padding>0x82C 4 importStateType m_importState0x830 4 unsigned long m_strDefaultHelpString0x834 1 unsigned char m_bUpdatedHelp
3 <padding>0x838 4 unsigned long m_strCurrentHelpString0x83C 4 int m_bGaveExtraXP0x840 4 long m_nExtraXP0x844 4 CString m_sImportCharName0x848 4 int m_nErrorState0x84C 4 unsigned long m_strErrorText0x850 4 int m_nNumErrorButtons0x854 12 unsigned long m_strErrorButtonText[3]0x860 36 int m_OldMageSpells[9]0x884 28 int m_OldPriestSpells[7]0x8A0 20 CTypedPtrArray m_aBaseProficiencySlots0x8B4 4 CCreatureFileHeader* m_pTempBaseStats0x8B8 4 CDerivedStats* m_pTempDerivedStats0x8BC 28 int m_storedSkillPoints[7]0x8D8 4 int m_bAddInactiveAbilities0x8DC 4 CStringList* m_szCharInfoStorage0x8E0 4 int m_nSpellcasterLevel0x8E4 4 int m_nNumLevelUpAbilities0x8E8 1 unsigned char m_nCurrentAbilityLevelChoice
Continued on next page
5.17. CS Structures 655
EEex Documentation, Release 1.0
Table 37 – continued from previous page3 <padding>
0x8EC 4 int m_bFinishedAbilitySelection0x8F0 4 CGameAbilityList* m_lstLevelUpAbilitiesList0x8F4 24 unsigned char m_lstSelectedAbility[24]0x90C 1 unsigned char m_nSelectedAbilityInd
3 <padding>0x910 4 int m_nDualClass0x914 4 int m_nSpecialization
5.17.14 CScreenCreateParty
Used by the CScreenCreateParty Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 60 CKeyInfo m_pVirtualKeys[5]0x68 4 int m_bCtrlKeyDown0x6C 20 int m_pVirtualKeysFlags[5]0x80 4 int m_nEngineState0x84 4 int m_firstCall0x88 32 CVidFont m_preloadFontStnSml0xA8 4 int m_nCharacterSlot
5.17.15 CScreenDLC
Used by the CScreenDLC Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 4 int m_bExitProgram0x650 28 CPtrList m_lPopupStack0x66C 4 unsigned long m_dwErrorTextId0x670 4 unsigned long m_dwErrorState0x674 4 int m_nNumErrorButtons0x678 12 unsigned long m_strErrorButtonText[3]0x684 28 CTypedPtrList m_lOptionsStack0x6A0 4 int m_bSpriteMirror0x6A4 1 unsigned char m_bCtrlKeyDown
3 <padding>0x6A8 32 CVidFont m_preLoadFontRealms0x6C8 32 CVidFont m_preLoadFontStnSml0x6E8 4 int m_nNumDLC0x6EC 4 int m_nCurrentDLC0x6F0 4 int m_nDlcState
656 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.17.16 CScreenInventory
Used by the CScreenInventory Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 4 CItem* m_pTempItem0x30 1176 CKeyInfo m_pVirtualKeys[98]0x4C8 392 int m_pVirtualKeysFlags[98]0x650 1 unsigned char m_bCtrlKeyDown
3 <padding>0x654 8 CPoint m_cLastMousePosition0x65C 4 int m_nTopGroundItem0x660 24 long m_nGroundPile[6]0x678 24 int m_bGroundPileQueried[6]0x690 4 int m_nErrorState0x694 4 unsigned long m_strErrorText0x698 4 int m_nNumErrorButtons0x69C 4 int m_nLastSwapPortrait0x6A0 4 unsigned long m_dwLastSwapButton0x6A4 4 int m_bMultiPlayerViewable0x6A8 8 CResRef m_cCheckLearnSpellRes0x6B0 4 int m_nCheckLearnSpellCountDown0x6B4 4 int m_bDroppedItemInHand0x6B8 1 unsigned char m_bPauseWarningDisplayed
3 <padding>0x6BC 32 CVidFont m_preLoadFontRealms0x6DC 32 CVidFont m_preLoadFontStnSml0x6FC 32 CVidFont m_preLoadFontTool0x71C 4 unsigned long m_stSpellsDisabled0x720 4 int m_bLearnSpellFailed0x724 4 unsigned long m_strLearnSpellFailedReason0x728 4 int m_bPauseState
5.17.17 CScreenJournal
Used by the CScreenJournal Class
5.17. CS Structures 657
EEex Documentation, Release 1.0
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 4 int m_bShiftKeyDown0x650 4 int m_bCapsLockKeyOn0x654 1 unsigned char m_bCtrlKeyDown0x655 8 CResRef m_oldMosaic0x65D 8 CResRef m_oldFont
3 <padding>0x668 4 unsigned long m_rgbOldText0x66C 4 unsigned long m_rgbOldBackground0x670 32 CVidFont m_preLoadFontRealms0x690 32 CVidFont m_preLoadFontTool0x6B0 4 int m_bPauseState
5.17.18 CScreenLoad
Used by the CScreenLoad Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 60 CKeyInfo m_pVirtualKeys[5]0x68 20 int m_pVirtualKeysFlags[5]0x7C 1 unsigned char m_bCtrlKeyDown
3 <padding>0x80 4 int m_nTopGameSlot0x84 4 int m_nNumGameSlots0x88 4 int m_nEngineState0x8C 20 CTypedPtrArray m_aGameSlots0xA0 4 int m_nCurrentGameSlot0xA4 4 unsigned long m_strErrorText0xA8 12 unsigned long m_strErrorButtonText[3]0xB4 4 int m_nNumErrorButtons0xB8 28 CPtrList m_lPopupStack0xD4 4 int m_nMaxSlotNumber0xD8 32 CVidFont m_preLoadFontRealms0xF8 32 CVidFont m_preLoadFontStnSml0x118 4 int m_bHideSoA0x11C 4 int m_bHideToB
5.17.19 CScreenMap
Used by the CScreenMap Class
658 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 28 CPtrList m_lPopupStack0x668 2 short m_nLastPicked
2 <padding>0x66C 4 int m_nErrorState0x670 4 unsigned long m_strErrorText0x674 4 int m_nNumErrorButtons0x678 12 unsigned long m_strErrorButtonText[3]0x684 1 unsigned char m_bSelectWorldOnUp
3 <padding>0x688 32 CVidFont m_preLoadFontRealms0x6A8 32 CVidFont m_preLoadFontTool0x6C8 32 CVidFont m_preLoadFontStnSml0x6E8 4 unsigned long m_noteStrref0x6EC 4 int m_bShiftKeyDown0x6F0 4 int m_bCapsLockKeyOn0x6F4 1 unsigned char m_bCtrlKeyDown
3 <padding>0x6F8 4 long m_nClairvoyanceCaster0x6FC 4 long m_nClairvoyanceDuration0x700 1 unsigned char m_bClairvoyanceCastInBlack
3 <padding>0x704 4 int m_nScrollState0x708 4 unsigned long m_nTimeLButtonHeld0x70C 16 CRect m_HoldArea0x71C 1 bool m_bDisplayExploredMap
3 <padding>0x720 168 CVidMosaic m_vmMap0x7C8 4 int m_bHaveMap0x7CC 4 unsigned long m_mapTint0x7D0 4 CGameArea* m_pArea0x7D4 16 CRect m_rViewPort0x7E4 72 MAP_CHAR_POSITIONS m_charPositions[6]0x82C 2 unsigned short m_nCharInArea
2 <padding>0x830 4 int m_nCharactersChanged0x834 4 unsigned long m_nUserNoteId0x838 16 CRect m_rMap
5.17.20 CScreenMovies
Used by the CScreenMovies Class
5.17. CS Structures 659
EEex Documentation, Release 1.0
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 4 int m_nEngineState0x650 4 CStringList* m_pMovies0x654 4 int m_nMovieIndex0x658 4 CString m_sSelectedMovie
5.17.21 CScreenMultiPlayer
Used by the CScreenMultiPlayer Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 4 int m_bCtrlKeyDown0x650 4 int m_bShiftKeyDown0x654 4 int m_bCapsLockKeyOn0x658 28 CPtrList m_lPopupStack0x674 4 int m_nModifiedCharacterSlot0x678 4 int m_nEngineState0x67C 4 int m_nChatMessageCount0x680 4 int m_nPermissionsChatMessageCount0x684 4 int m_nKickPlayerSlot0x688 4 int m_nCharacterSlot0x68C 1 unsigned char m_bMultiplayerStartup
3 <padding>0x690 4 int m_bLastLockAllowInput0x694 32 CVidFont m_preLoadFontRealms0x6B4 32 CVidFont m_preLoadFontStnSml0x6D4 32 CVidFont m_preLoadFontTool0x6F4 1 unsigned char m_bSentGameDemand
3 <padding>0x6F8 24 CString m_playerNames[6]0x710 24 CString m_characterNames[6]0x728 24 CString m_characterPortrait[6]
5.17.22 CScreenOptions
Used by the CScreenOptions Class
Offset Size Type FieldContinued on next page
660 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 39 – continued from previous page0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 4 int m_bExitProgram0x650 28 CPtrList m_lPopupStack0x66C 4 unsigned long m_dwErrorTextId0x670 4 unsigned long m_dwErrorState0x674 4 int m_nNumErrorButtons0x678 12 unsigned long m_strErrorButtonText[3]0x684 28 CTypedPtrList m_lOptionsStack0x6A0 4 int m_bSpriteMirror0x6A4 1 unsigned char m_bCtrlKeyDown
3 <padding>0x6A8 32 CVidFont m_preLoadFontRealms0x6C8 32 CVidFont m_preLoadFontStnSml0x6E8 1 unsigned char m_bFullScreenOptions0x6E9 1 unsigned char m_bReQuietSound
2 <padding>0x6EC 4 int m_nTopKeymap0x6F0 4 int m_nSelectedKeymap0x6F4 4 int m_nNumKeymapEntries0x6F8 4 int m_nKeymapEditIndex0x6FC 4 char* m_cKeymapEditSection0x700 4 char* m_cKeymapEditConflictSection0x704 4 char* m_cKeymapEditConflictKey0x708 4 int m_nKeymapEditConflictIndex0x70C 1 char m_cKeymapEditConflictValue
3 <padding>0x710 4 int m_bPauseState0x714 4 int m_nEngineState
<padding>
5.17.23 CScreenPriestSpell
Used by the CScreenPriestSpell Class
5.17. CS Structures 661
EEex Documentation, Release 1.0
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 4 int m_nSpellLevel0x650 8 CResRef m_cResCurrentSpell0x658 4 int m_nErrorState0x65C 4 unsigned long m_strErrorText0x660 4 int m_nNumErrorButtons0x664 12 unsigned long m_strErrorButtonText[3]0x670 4 int m_bMultiPlayerViewable0x674 4 int m_nMemorizedSpellIndex0x678 1 unsigned char m_bCtrlKeyDown
3 <padding>0x67C 4 int m_nEngineState0x680 4 int m_bPriestPage0x684 4 int m_bPauseState0x688 4 int m_bControlled
5.17.24 CScreenSave
Used by the CScreenSave Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 4 int m_bQuitGameSave0x30 1176 CKeyInfo m_pVirtualKeys[98]0x4C8 392 int m_pVirtualKeysFlags[98]0x650 4 int m_bShiftKeyDown0x654 4 int m_bCapsLockKeyOn0x658 4 int m_nTopGameSlot0x65C 4 int m_nNumGameSlots0x660 4 int m_nEngineState0x664 20 CTypedPtrArray m_aGameSlots0x678 28 CPtrList m_lPopupStack0x694 4 unsigned long m_strErrorText0x698 12 unsigned long m_strErrorButtonText[3]0x6A4 4 int m_nNumErrorButtons0x6A8 4 int m_nCurrentGameSlot0x6AC 4 int m_nMaxSlotNumber0x6B0 1 unsigned char m_bCtrlKeyDown
3 <padding>0x6B4 32 CVidFont m_preLoadFontRealms0x6D4 32 CVidFont m_preLoadFontStnSml0x6F4 4 int m_bPauseState
662 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.17.25 CScreenStart
Used by the CScreenStart Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 4 int m_bStartMusic0x30 4 int m_bExitProgram0x34 60 CKeyInfo m_pVirtualKeys[5]0x70 4 int m_bCtrlKeyDown0x74 20 int m_pVirtualKeysFlags[5]0x88 1 unsigned char m_bMovieOn
3 <padding>0x8C 4 int m_nEngineState0x90 4 int m_firstCall0x94 28 CPtrList m_lPopupStack0xB0 4 int m_nErrorState0xB4 4 unsigned long m_strErrorText0xB8 4 int m_nNumErrorButtons0xBC 16 unsigned long m_strErrorButtonText[4]0xCC 4 int m_bPlayEndCredits0xD0 4 int m_bSplashScreens0xD4 4 int m_bNeedCDCheck0xD8 4 int m_nCurrentDLC0xDC 4 int m_nNumDLC0xE0 4 int m_nLastImageUpdate0xE4 4 int m_nDlcState0xE8 32 CVidFont m_preloadFontStnSml
5.17.26 CScreenStore
Used by the CScreenStore Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 1 unsigned char m_bCtrlKeyDown0x64D 1 unsigned char m_bShiftKeyDown
2 <padding>0x650 4 int m_bCapsLockKeyOn0x654 4 int m_nTopGroupItem0x658 28 CPtrList m_lGroupItems0x674 4 int m_nTopStoreItem0x678 28 CPtrList m_lStoreItems0x694 4 int m_nTopSpellItem0x698 28 CPtrList m_lSpellItems0x6B4 4 int m_nTopIdentifyItem
Continued on next page
5.17. CS Structures 663
EEex Documentation, Release 1.0
Table 40 – continued from previous page0x6B8 28 CPtrList m_lIdentifyItems0x6D4 4 int m_nTopDrinkItem0x6D8 8 CResRef m_cResStore0x6E0 8 CResRef m_cResBag0x6E8 16 unsigned long m_adwButtonPanelId[4]0x6F8 4 CStore* m_pStore0x6FC 4 CStore* m_pBag0x700 4 long m_nStoreCost0x704 4 long m_nGroupCost0x708 4 unsigned long m_dwSpellCost0x70C 4 unsigned long m_dwIdentifyCost0x710 4 unsigned long m_dwRoomType0x714 20 CAIObjectType m_cAIProprietor0x728 20 CAIObjectType m_cAICustomer0x73C 4 unsigned long m_dwDonationAmount0x740 4 long m_nDrinkRumorIndex0x744 4 long m_nDonateRumorIndex0x748 28 CPtrList m_lPopupStack0x764 4 CItem* m_pHistoryItem0x768 4 int m_bHistoryUseEnabled0x76C 8 CResRef m_cResInfoSpell0x774 4 int m_nChatMessageCount0x778 4 int m_nErrorState0x77C 4 unsigned long m_strErrorText0x780 4 int m_nNumErrorButtons0x784 12 unsigned long m_strErrorButtonText[3]0x790 1 unsigned char m_nCharisma
3 <padding>0x794 32 CVidFont m_preLoadFontRealms0x7B4 32 CVidFont m_preLoadFontStnSml0x7D4 32 CVidFont m_preLoadFontTool0x7F4 4 unsigned long m_nRequesterAmount0x7F8 4 int m_nRequesterButtonId0x7FC 4 int m_bStoreIndex0x800 4 int m_bStoreStarted0x804 4 int m_nBagCount0x808 4 float m_fPanStorage
664 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.17.27 CScreenStoreItem
Offset Size Type Field0x00 8 CResRef m_cResSpell0x08 4 CItem* m_pItem0x0C 4 int m_bSelected0x10 4 int m_bEnabled0x14 4 int m_nSlot0x18 4 long m_nValue0x1C 4 long m_nSingleValue0x20 4 unsigned long m_nCount0x24 4 unsigned long m_nMaxCount0x28 4 unsigned long m_nStoreCount
5.17.28 CScreenWizSpell
Used by the CScreenWizSpell Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 4 int m_nSpellLevel0x650 4 int m_bMultiPlayerViewable0x654 4 int m_nMemorizedSpellIndex0x658 1 unsigned char m_bCtrlKeyDown
3 <padding>0x65C 4 int m_bMagePage0x660 1 unsigned char m_nContingencyMaxLevel0x661 1 unsigned char m_nContingencyMaxSpells0x662 2 short m_bContingencyRestrictTarget0x664 4 CBaldurEngine* m_pOldEngine0x668 1 unsigned char m_nContingencyCurrentLevel
3 <padding>0x66C 4 int m_bContingencyCleric0x670 2 unsigned short m_nMaxContingencies
2 <padding>0x674 28 CTypedPtrList m_spellList0x690 8 CResRef m_refContingencyResRef0x698 4 int m_bControlled0x69C 4 int m_bPauseState0x6A0 4 int m_bContingency
5.17. CS Structures 665
EEex Documentation, Release 1.0
5.17.29 CScreenWorld
Used by the CScreenWorld Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 4 long m_nStupidMovieWait0x30 4 int m_bProtagonistInStartArea0x34 4 long m_nProtagonistMoveMax0x38 4 int m_bWaitToRender0x3C 56 SDL_Event flickEvent0x74 4 int m_bIgnoreDisplayTextTop0x78 4 int nCounter0x7C 4 long m_boredCount0x80 4 int m_bored0x84 4 int m_playerShutdown0x88 4 int m_bShiftKeyDown0x8C 4 int m_bMenuKeyDown0x90 4 int m_bCtrlKeyDown0x94 4 int m_bCapsLockKeyOn0x98 1 unsigned char m_bPaused0x99 1 unsigned char m_bHardPaused0x9A 1 unsigned char m_bHostOnlyPaused0x9B 1 unsigned char m_bVisualPaused0x9C 1 unsigned char m_bFirstRender
3 <padding>0xA0 4 int m_bPausedBeforePickParty0xA4 4 int m_bCheatKeys0xA8 4 int m_bMButtonDown0xAC 4 int m_bMButtonDragged0xB0 4 int m_bSetStartViewCenter0xB4 8 CPoint m_ptStartViewCenter0xBC 2 short m_sequence0xBE 1 unsigned char m_facing0xBF 1 unsigned char m_bloodLevel0xC0 2 unsigned short m_castingGlow0xC2 1 unsigned char m_hitEffect
1 <padding>0xC4 2 short m_renderText
2 <padding>0xC8 4 int m_newText0xCC 32 CVidFont m_vidFont0xEC 32 CVidFont m_vidFont20x10C 1176 CKeyInfo m_pVirtualKeys[98]0x5A4 392 int m_pVirtualKeysFlags[98]0x72C 104 CGameDialogSprite m_internalLoadedDialog0x794 4 CGameDialogSprite* m_pCurrentDialog0x798 8 CPoint m_dialogStartPos0x7A0 8 CResRef m_dialogStartArea0x7A8 4 int m_dialogPausing0x7AC 16 CRect m_newViewSize
Continued on next page
666 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 41 – continued from previous page0x7BC 4 int m_bForceViewSize0x7C0 1 unsigned char m_waitingOnResize0x7C1 1 unsigned char m_storeText
2 <padding>0x7C4 4 CString m_consoleText0x7C8 4 int m_nTopContainerRow0x7CC 4 int m_nTopGroupRow0x7D0 1 unsigned char m_bForceDitherToggledOn
3 <padding>0x7D4 276 CWeather m_WeatherController0x8E8 4 long m_scrollLockId0x8EC 2 short m_nResponseMarker
2 <padding>0x8F0 4 int m_bBlockStepDialog0x8F4 4 long m_interactionIndex0x8F8 4 long m_interactionTarget0x8FC 4 CString m_interactionString0x900 4 long m_interactionCounter0x904 4 int m_interactionForce0x908 4 long m_interactionTime0x90C 4 long m_lastInteractionIndex0x910 1 unsigned char m_bSetNightOnActivate0x911 1 unsigned char m_bSetDayOnActivate
2 <padding>0x914 4 int m_ambianceForce0x918 4 unsigned long m_deltaTime0x91C 4 int m_nChatMessageCount0x920 8 CResRef m_movie0x928 1 unsigned char m_bInControlOfDialog0x929 1 unsigned char m_bInControlOfStore
2 <padding>0x92C 4 int m_bGameOverPanel0x930 8 CResRef m_movieDelay0x938 4 long m_autoPauseId0x93C 4 unsigned long m_autoPauseRef0x940 4 unsigned long m_autoPauseColor0x944 4 unsigned long m_autoPauseName0x948 4 int m_nStoreChatMessageCount0x94C 4 long m_nPickPartyRemoveCharacterId0x950 40 long m_aPickPartyCharacter[10]0x978 4 int m_nPickPartyNumCharacters0x97C 4 unsigned long m_strErrorText0x980 12 unsigned long m_strErrorButtonText[3]0x98C 4 unsigned long m_nDialogPanelOnStartDialog0x990 1 unsigned char m_bDialogPressedAButton0x991 1 unsigned char m_bEndMajorEventListenToJoin0x992 1 unsigned char m_bEndMajorEventPauseStatus0x993 1 unsigned char m_bChapterTransitionPending0x994 4 int m_nChapterTransition0x998 8 unsigned char m_szChapterTransitionResRef[8]—-
Continued on next page
5.17. CS Structures 667
EEex Documentation, Release 1.0
Table 41 – continued from previous page0x9A0 1 unsigned char m_bTextScreenTransitionPending0x9A1 8 unsigned char m_szTextScreenTransitionResRef[8]0x9A9 1 unsigned char m_bMoviePending0x9AA 8 unsigned char m_szMovieResRef[8]0x9B2 1 unsigned char m_bPendingMapWorld
1 <padding>0x9B4 4 int m_idPendingMapWorldController0x9B8 2 short m_nPendingMapWorldDirection0x9BA 1 unsigned char m_bRestPending0x9BB 1 unsigned char m_bRestRenting0x9BC 1 unsigned char m_bRestMovie
3 <padding>0x9C0 4 int m_nRestHP0x9C4 4 int m_nRestGP0x9C8 4 long m_nBattleCryTimeOut0x9CC 28 CTypedPtrList m_deathSoundList0x9E8 4 long m_nPartySizeCheckStartDelay0x9EC 1 unsigned char m_bPlayEndCredits0x9ED 1 unsigned char m_bPendingReformParty0x9EE 1 unsigned char m_bLeaveAreaLuaPanicPending
1 <padding>0x9F0 4 unsigned long m_ulLeaveAreaLuaPanicTimer0x9F4 8 CPoint m_ptLeaveAreaLuaPanicLocation0x9FC 2 short m_nLeaveAreaLuaPanicDirection
2 <padding>0xA00 4 CString m_sLeaveAreaLuaPanicAreaName0xA04 4 CString m_sLeaveAreaLuaPanicParchment0xA08 4 unsigned long m_dwPausedTickCount0xA0C 4 unsigned long m_dwLastDialogTickCount0xA10 4 long m_lastAmbiance0xA14 4 long m_comingOutOfDialog0xA18 1 unsigned char m_nAutoHideInterface0xA19 1 unsigned char m_nAutoUnhideInterface
2 <padding>0xA1C 16 CRect m_rCurrViewPort0xA2C 4 int m_bLeftPanel0xA30 4 int m_bRightPanel0xA34 1 unsigned char m_bCheckRestrict
3 <padding>0xA38 28 CTypedPtrList m_otherTalkers0xA54 4 long m_nInteractionBlockCnt0xA58 4 int m_bInteractionBlock0xA5C 4 int m_nStateOverride0xA60 4 long m_nStateOverrideCnt0xA64 4 long m_nBlackOutCountDown0xA68 4 long m_nCutSceneDeadZoneCountDown0xA6C 4 long m_nContainerOutline0xA70 4 int m_tutorialWaitTimer0xA74 4 int m_bPausedBeforeStore0xA78 4 long m_nPauseMessageUpdate
Continued on next page
668 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 41 – continued from previous page0xA7C 4 unsigned long m_deathStrRef0xA80 4 int m_bHighlightEnabled0xA84 4 float m_fPanStorage0xA88 4 int m_bViewingContainer0xA8C 4 int m_bInDialog0xA90 4 int m_bDead0xA94 4 int m_bInCommand0xA98 4 int m_bPickingParty0xA9C 4 int m_bAutoZooming0xAA0 4 float m_fPreviousZoom0xAA4 4 float m_fTargetZoom0xAA8 16 CRect m_rPreviousViewPort0xAB8 8 CPoint m_ptPreviousView0xAC0 8 CPoint m_ptTarget0xAC8 4 int m_nZoomCurStep0xACC 16 CRect m_rOriginalViewPort0xADC 8 CPoint m_ptOriginalView0xAE4 4 float m_fOriginalZoom0xAE8 4 long* m_storedGroup0xAEC 4 int m_nStoredGroupMembers
5.17.30 CScreenWorldMap
Used by the CScreenWorldMap Class
Offset Size Type Field0x00 44 CBaldurEngine m_cBaldurEngine0x2C 1176 CKeyInfo m_pVirtualKeys[98]0x4C4 392 int m_pVirtualKeysFlags[98]0x64C 1 unsigned char m_bCtrlKeyDown0x64D 1 unsigned char m_bShiftKeyDown
2 <padding>0x650 4 int m_bCapsLockKeyOn0x654 28 CPtrList m_lPopupStack0x670 8 CSize m_mapSize0x678 4 int m_nEngineState0x67C 8 CPoint m_ptMapView0x684 168 CVidMosaic m_vmMap0x72C 192 CVidCell m_vcAreas0x7EC 192 CVidCell m_vcMarker0x8AC 32 CVidFont m_vfLabel0x8CC 1024 RGBQUAD m_aPalette[256]0xCCC 4 unsigned long m_wAreaForeground0xCD0 4 unsigned long m_nHighlightArea0xCD4 4 unsigned long m_nSelectedArea0xCD8 4 int m_bSelectedReachable0xCDC 4 int m_bOverSelectedArea
Continued on next page
5.17. CS Structures 669
EEex Documentation, Release 1.0
Table 42 – continued from previous page0xCE0 8 CPoint m_ptMapStartMousePos0xCE8 8 CPoint m_ptMapStartView0xCF0 4 int m_bMapLeftDown0xCF4 4 int m_bMapDragging0xCF8 4 CGameArea* m_pCurrentArea0xCFC 4 long m_nLeaderSprite0xD00 4 CList* m_pPath0xD04 4 long m_nLeavingEdge0xD08 4 unsigned long m_nCurrentLink0xD0C 8 CResRef m_cResCurrentArea0xD14 20 CArray m_aAreaRect0xD28 4 CUIControlTextDisplay* m_pChatDisplay0xD2C 4 int m_nChatMessageCount0xD30 1 unsigned char m_bInControl0xD31 1 unsigned char m_bClickedArea
2 <padding>0xD34 4 int m_nCurrentSong0xD38 4 unsigned long m_nToolTip0xD3C 32 CVidFont m_preLoadFontRealms0xD5C 32 CVidFont m_preLoadFontTool0xD7C 1 unsigned char m_nScrollState0xD7D 8 CResRef m_rForceRandomEncounter
3 <padding>0xD88 4 CString m_sForcedEncounterEntry0xD8C 4 int m_bFontDropShadow
5.17.31 CScriptCache
Used by the CScriptCache Class
Offset Size Type Field0x00 4 CAIScript** m_scriptMap0x04 4 long m_nTableEntries
5.17.32 CSearchBitmap
Used by the CSearchBitmap Class
670 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Offset Size Type Field0x00 176 CVidBitmap m_resSearch0xb0 4 unsigned char* m_pDynamicCost0xb4 4 unsigned char* m_snapshotDynamicCost0xb8 4 const unsigned char* m_snapshotTerrainTable0xbc 8 CSize m_GridSquareDimensions0xc4 4 CGameArea* m_pArea0xc8 1 unsigned char m_sourceSide0xc9 1 unsigned char m_snapshotPersonalSpace
2 <padding>
5.17.33 CSearchRequest
Offset Size Type Field0x00 1 unsigned char m_serviceState0x01 1 unsigned char m_collisionDelay
2 <padding>0x04 4 int m_collisionSearch0x08 1 unsigned char m_sourceSide0x09 1 unsigned char m_nPartyIds0x0A 1 unsigned char m_nTargetIds0x0B 1 unsigned char m_nTargetPoints0x0C 4 int m_removeSelf0x10 1 unsigned char m_frontList
3 <padding>0x14 4 CSearchBitmap* m_searchBitmap0x18 16 unsigned char m_terrainTable[16]0x28 4 int m_pathSmooth0x2C 4 int m_exclusiveTargetPoints0x30 4 long m_sourceId0x34 8 POINT m_sourcePt0x3C 4 long* m_partyIds0x40 4 long* m_targetIds0x44 4 POINT* m_targetPoints0x48 4 long m_minNodes0x4C 4 long m_maxNodes0x50 4 long m_minNodesBack0x54 4 long m_maxNodesBack0x58 4 int m_bBump0x5C 2 short m_searchRc0x5E 2 short m_nPath0x60 4 long* m_pPath
5.17. CS Structures 671
EEex Documentation, Release 1.0
5.17.34 CSelectiveBonus
Offset Size Type Field0x00 20 CAIObjectType m_type0x14 4 long m_bonus
5.17.35 CSelectiveBonusList
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.17.36 CSelectiveWeaponType
Offset Size Type Field0x00 4 int m_slot0x04 20 CAIObjectType m_type0x18 16 CWeaponIdentification m_weapon
5.17.37 CSelectiveWeaponTypeList
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList
5.17.38 CSequenceSound
Offset Size Type Field0x00 8 CResRef m_sound0x08 4 long m_offset
672 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.17.39 CSequenceSoundList
Used by the CSequenceSoundList Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList0x1C 4 __POSITION* m_currentSound0x20 4 int m_soundPlaying0x24 4 long m_channel
5.17.40 CSize
Note: Actually defined as SIZE but adapted/recreated as its own structure.
Offset Size Type Field0x00 4 long cx0x04 4 long cy
5.17.41 CSnowFlake
Offset Size Type Field0x00 52 CParticle m_cParticle0x34 1 unsigned char m_nDriftWidth0x35 1 unsigned char m_nDriftCounter0x36 2 unsigned short m_nMeltTime0x38 4 long m_nLastDriftVelocity
5.17.42 CSnowStorm
Offset Size Type Field0x00 4 CSnowFlake* m_pSnowFlakes0x04 2 unsigned short m_nCurrentDensity
2 <padding>0x08 16 CRect m_rOldWorldViewPort
5.17. CS Structures 673
EEex Documentation, Release 1.0
5.17.43 CSound
Used by the CSound Class
Offset Size Type Field0x00 4 CObject m_cObject0x04 12 CResHelper m_cResHelper0x10 4 CSoundImp* pimpl
5.17.44 CSoundChannel
Used by the CSoundChannel Class
Offset Size Type Field0x00 4 CObject m_cObject0x04 28 CObList lQueue0x20 4 long m_nVolumeInit0x24 4 long nVolume0x28 4 int nType0x2C 1 bool bDucked
3 <padding>0x30 4 int m_nDuckingAmount
5.17.45 CSoundExtensionBase
Offset Size Type Field0x00 4 unsigned long m_nRange0x04 4 unsigned long m_dwFlags0x08 4 long m_nPitchVariance0x0C 4 long m_nVolumeVariance0x10 240 unsigned long reservedSpace[60]
5.17.46 CSoundExtensionFile
Used by the CSoundExtensionFile Class
Offset Size Type Field0x00 12 CResHelper m_cResHelper
674 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.17.47 CSoundImp
Used by the CSoundImp Class
Offset Size Type Field0x00 4 CObject m_cObject0x04 12 CResHelper m_cResHelper0x10 4 CSound* m_pParent0x14 4 int m_bPositionedSound0x18 4 int m_dwBufferSize0x1C 4 int m_dwFrequency0x20 4 int m_nBufferFormat0x24 4 int m_nRange0x28 4 int m_nRangeVolume0x2C 4 int m_nXCoordinate0x30 4 int m_nYCoordinate0x34 4 int m_nZCoordinate0x38 4 long m_nPan0x3C 4 long m_nVolume0x40 1 bool m_bSoundInitialized
3 <padding>0x44 4 int m_nChannel0x48 4 int m_nPriority0x4C 4 int m_nLooping0x50 4 long m_nPitchVariance0x54 4 long m_nVolumeVariance0x58 1 bool m_b3DPositionning
3 <padding>0x5C 4 unsigned int m_nSource0x60 4 unsigned int m_nBuffer0x64 1 bool m_bFireForget
3 <padding>0x68 4 unsigned int m_nArea0x6C 4 int m_dwOverrideFlags0x70 1 bool m_bSoundIsntDucked
3 <padding>
5.17.48 CSoundMixer
Used by the CSoundMixer Class
Offset Size Type Field0x00 4 CSoundMixerImp* pimpl
5.17.49 CSoundMixerImp
5.17. CS Structures 675
EEex Documentation, Release 1.0
Offset Size Type Field0x00 4 ALCcontext_struct* alContext0x04 4 ALCdevice_struct* alDevice0x08 12 float pos[3]0x14 4 int bMixerInitialized0x18 4 int bStreamPlaying0x1C 4 int m_bMusicInitialized0x20 4 int bInPositionUpdate0x24 4 int bInSoundUpdate0x28 4 int bInQueueUpdate0x2C 4 int bInLoopingUpdate0x30 4 unsigned long m_dwEAXProperties0x34 16 CSoundProperties m_soundProperties0x44 4 int m_nNumSongs0x48 4 int m_nLastSong0x4C 4 int m_nCurrentSong0x50 4 int m_nQuietMusicVolume0x54 4 unsigned int m_nActiveArea0x58 4 int m_nDuckingOn0x5C 20 CDWordArray m_aMusicSlots0x70 10001 unsigned char m_tSqrtTable[10001]
3 <padding>0x2784 4 int nMaxVoices0x2788 28 CObList lVoices0x27A4 28 CObList lWaiting0x27C0 28 CObList lLooping0x27DC 20 CObArray aChannels0x27F0 4 int nMaxChannels0x27F4 4 int nGlobalVolume0x27F8 4 int nPanRange0x27FC 4 int nXCoordinate0x2800 4 int nYCoordinate0x2804 4 int nZCoordinate0x2808 28 CTypedPtrList m_lMusicPositions
5.17.50 CSoundProperties
Offset Size Type Field0x00 16 _EAXPRESET m_iEAXpreset
676 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.17.51 CSparkle
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 2 short m_nType
2 <padding>0x4C 8 CPoint m_posExact0x54 8 CPoint m_posDelta0x5C 8 CPoint m_posDest0x64 1 unsigned char m_moveScale0x65 16 unsigned char m_terrainTable[16]
10x76 2 short m_nConjureDuration0x78 4 long m_nTimer0x7C 4 long m_destId0x80 4 long m_srcId0x84 4 CAIAction* m_pTargetAction
5.17.52 CSparkleCluster
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 4 CVidMode* m_pVidMode0x4C 28 CTypedPtrList m_particleList0x68 4 unsigned long m_colorStart0x6C 4 unsigned long m_colorFade10x70 4 unsigned long m_colorFade20x74 4 unsigned long m_colorFade30x78 4 unsigned long m_colorFade40x7C 1 unsigned char m_fade1Height0x7D 1 unsigned char m_fade2Height0x7E 1 unsigned char m_fade3Height0x7F 1 unsigned char m_fade4Height0x80 16 CRect m_rBounding0x90 2 unsigned short m_wType
2 <padding>0x94 4 unsigned long m_nTimer0x98 2 unsigned short m_nConjureDuration
2 <padding>0x9C 8 CPoint m_explosionDir0xA4 4 int m_nGravity
5.17. CS Structures 677
EEex Documentation, Release 1.0
5.17.53 CSpawn
Used by the CSpawn Class
Offset Size Type Field0x00 4 vfptr vfptr0x04 4 unsigned int Interval0x08 4 CString SectionAlias0x0C 4 unsigned long SpawnFlags0x10 4 int DataIsValid0x14 20 CAIObjectType mSearchAI0x28 4 int mSearchQty0x2C 16 int mSearchRegion[4]0x3C 4 CSpawnVar* mpSearchKeyVar0x40 4 CSpawnVar* mpSearchQtyVar0x44 28 CStringList mCREFiles0x60 4 int mCreateQty0x64 4 CString* mpCreateQtyScope0x68 4 CString* mpCreateQtyLabel0x6C 4 CString* mpScriptName0x70 1 unsigned char mEA0x71 1 unsigned char mGeneral0x72 1 unsigned char mRace0x73 1 unsigned char mClass0x74 1 unsigned char mGender0x75 1 unsigned char mSpecifics0x76 1 unsigned char mFaction0x77 1 unsigned char mTeam0x78 1 unsigned char mAlignment
3 <padding>0x7C 4 CString* mpOverrideScript0x80 4 CString* mpClassScript0x84 4 CString* mpRaceScript0x88 4 CString* mpGeneralScript0x8C 4 CString* mpDefaultScript0x90 4 CString* mpAreaScript0x94 4 CString* mpSpecificsScript0x98 28 CStringList mDialogFiles0xB4 4 int mDeathGoodModifier0xB8 4 int mDeathLawModifier0xBC 4 int mDeathLadyModifier0xC0 4 int mDeathMurderModifier0xC4 4 int Facing0xC8 24 CSpawnPointArray mSpawnPointArray0xE0 16 CSpawnPoint mSpelectedPoint0xF0 4 CSpawn::ePMode mPointSelectMode0xF4 4 CString* pPointIndexScope0xF8 4 CString* pPointIndexLabel0xFC 4 CSpawnPointVar* mpExplicitSpawnPoint0x100 4 CString* pExplicitSpawnFacingScope0x104 4 CString* pExplicitSpawnFacingLabel
Continued on next page
678 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 45 – continued from previous page0x108 4 CSpawnPointVar* mpSpawnPointStorage0x10C 4 CString* pSpawnFacingStorageScope0x110 4 CString* pSpawnFacingStorageLabel0x114 4 int mSequentialStartValue0x118 4 unsigned long mTimeOfDay
5.17.54 CSpawnFile
Used by the CSpawnFile Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList0x1C 4 CSpawnList* mpExitList0x20 4 CSpawnList* mpEnterList0x24 4 int m_bInSpawn
5.17.55 CSpawnList
Used by the CSpawnList Class
Offset Size Type Field0x00 28 CTypedPtrList m_cTypedPtrList0x1C 4 CString mSectionAlias0x20 4 int ReceivedFirstSpawnCall0x24 4 unsigned long LastSpawnTime0x28 4 int CheckSpawnTimes0x2C 4 unsigned long SpawnTimeOfDay0x30 4 unsigned int mInterval0x34 4 CSpawnVar* pControlVar
5.17.56 CSpawnPoint
Used by the CSpawnPoint Class
Offset Size Type Field0x00 4 vfptr vfptr0x04 8 CPoint mLocation0x0c 4 int mFacing
5.17. CS Structures 679
EEex Documentation, Release 1.0
5.17.57 CSpawnPointArray
Offset Size Type Field0x00 20 CTypedPtrArray m_cTypedPtrArray0x14 4 int mDefaultFacing
5.17.58 CSpawnPointVar
Offset Size Type Field0x00 8 CSpawnVar m_cSpawnVar
5.17.59 CSpawnVar
Offset Size Type Field0x00 4 CString mScope0x04 4 CString mLabel
5.17.60 CSpell
Used by the CSpell Class
Offset Size Type Field0x00 12 CResHelper m_cResHelper
5.17.61 CSpellLevelDecrementing
Offset Size Type Field0x00 4 int m_bImmune0x04 4 long m_nLevels
680 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.17.62 CSteam
Note: Only applies to Steam builds, which are built with Steamworks integrations
Used by the CSteam Class
Offset Size Type Field0x00 1 bool m_isSteamConnected0x01 8 CSteamID m_SteamID
7 <padding>0x10 32 CCallResult m_CreateItemCompleted0x30 32 CCallResult m_PublishedQueryCompleted0x50 32 CCallResult m_SubmitItemUpdateCompleted0x70 4 int m_RemainingPublished0x74 4 int m_CurPagePublished0x78 4 CString m_PublishingName0x7C 4 CString m_PublishingDir0x80 4 int m_CloudState
4 <padding>0x88 32 CCallResult m_RequestUGCDetailsCompleted0xA8 136 CSteam::SubscribedItems m_Subscribed0x130 8 unsigned __int64 m_nUploadId0x138 4 ISteamRemoteStorage* m_RemoteStorage0x13C 4 ISteamUGC* m_UGC0x140 4 ISteamUserStats* m_UserStats0x144 4 void (__cdecl * logger)
5.17.63 CSteam::SubscribedItems
Note: Only applies to Steam builds, which are built with Steamworks integrations
Offset Size Type Field0x00 128 unsigned __int64 vecPublished[16]0x80 4 int curSubscribed0x84 4 int numSubscribed
5.17.64 CSteamID
Note: Only applies to Steam builds, which are built with Steamworks integrations
5.17. CS Structures 681
EEex Documentation, Release 1.0
Offset Size Type Field0x00 8 CSteamID::SteamID_t m_steamid
5.17.65 CSteamID::SteamID_t (CSteamIDSteamID)
Note: Only applies to Steam builds, which are built with Steamworks integrations
Offset Size Type Field0x00 8 CSteamID::SteamID_t::SteamIDComponent_t m_comp0x00 8 unsigned __int64 m_unAll64Bits
5.17.66 CSteamID::SteamID_t::SteamIDComponent_t (CSteamIDSteamIDSteamID-Component)
Note: Only applies to Steam builds, which are built with Steamworks integrations
Offset Size Type Field0x00 4 unsigned int m_unAccountID : 320x04 4 unsigned int m_unAccountInstance : 200x04 4 unsigned int m_EAccountType : 40x04 4 EUniverse m_EUniverse : 8
5.17.67 CStore
Used by the CStore Class
Offset Size Type Field0x00 8 CResRef m_resRef0x08 148 CStoreFileHeader m_header0x9C 28 CTypedPtrList m_lInventory0xB8 4 unsigned long* m_pBuyTypes0xBC 4 unsigned long m_nBuyTypes0xC0 4 CStoreFileDrinks* m_pDrinks0xC4 4 unsigned long m_nDrinks0xC8 4 CStoreFileSpell* m_pSpells0xCC 4 unsigned long m_nSpells0xD0 8 unsigned char m_pVersion[8]0xD8 4 int m_bLocalCopy
682 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.17.68 CStoreFile
Offset Size Type Field0x00 12 CResHelper m_cResHelper
5.17.69 CStoreFileDrinks
Offset Size Type Field0x00 8 unsigned char m_icon[8]0x08 4 unsigned long m_strName0x0C 4 unsigned long m_nCost0x10 4 unsigned long m_nRumorChance
Notes
Related to STOR V1.0 Drinks for Sale
5.17.70 CStoreFileHeader
Offset Size Type Field0x00 4 unsigned long m_nStoreType0x04 4 unsigned long m_strName0x08 4 unsigned long m_nStoreFlags0x0C 4 unsigned long m_nBuyMarkUp0x10 4 unsigned long m_nSellMarkDown0x14 4 unsigned long m_nAdditionalMarkDown0x18 2 unsigned short m_nStealDifficulty0x1A 2 unsigned short m_nMaxItems0x1C 8 unsigned char m_script[8]0x24 4 unsigned long m_nbuyTypesOffset0x28 4 unsigned long m_nbuyTypesCount0x2C 4 unsigned long m_nInventoryOffset0x30 4 unsigned long m_nInventoryCount0x34 4 unsigned long m_nLore0x38 4 unsigned long m_nIdentifyCost0x3C 8 unsigned char m_resRumor[8]0x44 4 unsigned long m_drinkOffset0x48 4 unsigned long m_drinkCount0x4C 8 unsigned char m_resDonation[8]0x54 4 unsigned long m_nInnFlags0x58 4 unsigned long m_nRoomCostPeasant0x5C 4 unsigned long m_nRoomCostMerchant0x60 4 unsigned long m_nRoomCostNoble0x64 4 unsigned long m_nRoomCostRoyal
Continued on next page
5.17. CS Structures 683
EEex Documentation, Release 1.0
Table 46 – continued from previous page0x68 4 unsigned long m_spellOffset0x6C 4 unsigned long m_spellCount0x70 4 unsigned long m_rouletMaxBet0x74 4 unsigned long m_crapsMaxBet0x78 4 unsigned long m_wheelMaxBet0x7C 4 unsigned long m_rouletWinChance0x80 4 unsigned long m_crapsWinChance0x84 4 unsigned long m_wheelWinChance0x88 4 unsigned long m_rouletWinAmount0x8C 4 unsigned long m_crapsWinAmount0x90 4 unsigned long m_wheelWinAmount
Notes
Related to STOR V1.0 Header
5.17.71 CStoreFileItem
Offset Size Type Field0x00 8 unsigned char m_itemId[8]0x08 2 unsigned short m_wear0x0A 6 unsigned short m_usageCount[3]0x10 4 unsigned long m_dynamicFlag0x14 4 unsigned long m_nInStock0x18 4 unsigned long m_nStoreFlags
Notes
Related to STOR V1.0 Items for Sale
5.17.72 CStoreFileSpell
Offset Size Type Field0x00 8 unsigned char m_spell[8]0x08 4 unsigned long m_cost
Notes
Related to STOR V1.0 Cures for Sale
684 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.17.73 CString
Used by the CString Class
Offset Size Type Field0x00 4 char* m_pchData
C Definition
typedef struct tagCString {DWORD m_pchData;
} CString; // size 0x4
5.17.74 CStringData
Offset Size Type Field0x00 4 long nRefs0x04 4 int nDataLength0x08 4 int nAllocLength
5.17.75 CStringList
Used by the CStringList Class
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CStringList::CNode* m_pNodeHead0x08 4 CStringList::CNode* m_pNodeTail0x0C 4 int m_nCount0x10 4 CStringList::CNode* m_pNodeFree0x14 4 CPlex* m_pBlocks0x18 4 int m_nBlockSize
5.17.76 CStringList::CNode
Offset Size Type Field0x00 4 CStringList::CNode* pNext0x04 4 CStringList::CNode* pPrev0x08 4 CString::CNode data
5.17. CS Structures 685
EEex Documentation, Release 1.0
5.18 CT Structures
• CTiledObject
• CTime
• CTimeSpan
• CTimer
• CTimerWorld
• CTlkFileOverride
• CTlkTable
• CTypedPtrArray
• CTypedPtrList
5.18.1 CTiledObject
Used by the CTiledObject Class
Offset Size Type Field0x00 4 long m_nWedIndex0x04 4 CResWED* m_pResWed0x08 2 unsigned short m_wAIState0x0A 2 unsigned short m_wRenderState0x0C 4 __POSITION* m_posAreaList0x10 8 CResRef m_resId
5.18.2 CTime
Used by the CTime Class
Offset Size Type Field0x00 8 __int64 m_time
5.18.3 CTimeSpan
Offset Size Type Field0x00 8 __int64 m_timeSpan
686 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.18.4 CTimer
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 int bEveryIteration0x08 4 int bOnceOnly0x0C 4 int bTimerStarted0x10 4 CWarp* pEngine0x14 4 __POSITION* pos0x18 4 long nTimerInterval0x1C 4 long nElaspedTime
5.18.5 CTimerWorld
Used by the CTimerWorld Class
Offset Size Type Field0x00 4 unsigned long m_gameTime0x04 1 unsigned char m_active0x05 1 unsigned char m_nLastPercentage
2 <padding>
5.18.6 CTlkFileOverride
Used by the CTlkFileOverride Class
Offset Size Type Field0x00 4 int bLoaded0x04 4 int m_UserAddedCount
5.18.7 CTlkTable
Used by the CTlkTable Class
Offset Size Type Field0x00 28 CMapStringToString m_mapTokens0x1c 1 unsigned char m_currentGender
3 <padding>0x20 8 CTlkFileOverride m_override0x28 8 CFileView* m_tlkFiles[2]0x30 4 unsigned long* m_engineStrings0x34 4 unsigned long m_nEngineStrings0x38 4 unsigned long m_nEngineStringBase
5.18. CT Structures 687
EEex Documentation, Release 1.0
5.18.8 CTypedPtrArray
Offset Size Type Field0x00 20 CPtrArray m_cPtrArray
5.18.9 CTypedPtrList
Offset Size Type Field0x00 28 CPtrList m_cPtrList
5.19 CU Structures
• CUIControlTextDisplay
• CUtil
5.19.1 CUIControlTextDisplay
Offset Size Type Field0 <padding>
5.19.2 CUtil
Offset Size Type Field1 <padding>
5.20 CV Structures
• CVariable
• CVariableHash
• CVEFEvent
• CVEFVidCell
• CVEFVidCellBase
• CVEFVidCellFile
688 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• CVidBitmap
• CVidCell
• CVidCellFont
• CVidDrawable
• CVideo
• CVidFont
• CVidImage
• CVIDIMG_PALETTEAFFECT
• CVidMode
• CVidMosaic
• CVidPalette
• CVidPng
• CVidPoly
• CVidTile
• CVIDMODE_CLIP_OUTCODE
• CVIDMODE_RECTICLE_DESCRIPTION
• CVIDPALETTE_COLOR
• CVIDPOLY_VERTEX
• CVisibilityMap
• CVisibilityMapEllipse
• CVisibilityMapTreeNode
• CVisualEffect
• CVisualEffectBase
• CVisualEffectFile
• CVoice
• CVRamPool
• CVVCHash
• CVVCHashEntry
5.20.1 CVariable
Offset Size Type Field0x00 84 CAreaVariable m_cAreaVariable
5.20. CV Structures 689
EEex Documentation, Release 1.0
5.20.2 CVariableHash
Used by the CVariableHash Class
Offset Size Type Field0x00 4 CVariable* m_hashEntries0x04 4 long m_nTableEntries
5.20.3 CVEFEvent
Offset Size Type Field0x00 4 long m_nTimeFrame0x04 4 unsigned long m_dwFlags0x08 4 long m_nRepeatRate0x0C 4 unsigned long m_nResType0x10 8 CResRef m_res0x18 4 unsigned long m_specialFlags0x1C 196 unsigned long m_pad[49]
5.20.4 CVEFVidCell
Used by the CVEFVidCell Class
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 484 CVEFVidCellBase m_cVEFVidCellBase0x22C 4 CVidCell* m_cVidCell0x230 4 CVidCell* m_cShadowVidCell0x234 36 CVidPalette m_palette0x258 176 CVidBitmap m_newPalette0x308 4 int m_done0x30C 4 long m_newDirection0x310 16 unsigned char m_terrainTable[16]0x320 20 CSound m_sound0x334 4 CVidCell* m_cAlphaBam0x338 1 unsigned char m_level0x339 1 unsigned char m_nCurSound
2 <padding>0x33C 4 unsigned long m_renderMask0x340 4 unsigned long m_renderType0x344 4 unsigned long m_myRenderMask0x348 4 unsigned long m_priority
690 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.20.5 CVEFVidCellBase
Offset Size Type Field0x00 8 CResRef m_cVidCellRef0x08 8 CResRef m_cShadowVidCellRef0x10 4 unsigned long m_bltFlags0x14 4 unsigned long m_bltInfo0x18 4 unsigned long m_bltFlagsExtra0x1C 4 unsigned long m_bltInfoExtra0x20 8 CPoint m_offset0x28 4 unsigned long m_offsetFlags0x2C 4 long m_animationSpeed0x30 4 long m_numDirections0x34 4 long m_direction0x38 4 unsigned long m_directionFlags0x3C 8 CResRef m_cNewPaletteRef0x44 4 long m_height0x48 8 CPoint m_glowSize0x50 4 unsigned long m_glowIntensity0x54 4 long m_nDuration0x58 8 CResRef m_cVVCResRes0x60 4 long m_nStartSequence0x64 4 long m_nLoopSequence0x68 4 long m_nCurrentSequence0x6C 4 unsigned long m_sequenceFlags0x70 8 CResRef m_cStartSoundRef0x78 8 CResRef m_cLoopSoundRef0x80 8 CResRef m_cAlphaBamRef0x88 4 long m_nEndSequence0x8C 8 CResRef m_cEndSoundRef0x94 336 unsigned long m_extra[84]
5.20.6 CVEFVidCellFile
Offset Size Type Field0x00 12 CResHelper m_cResHelper
5.20.7 CVidBitmap
Used by the CVidBitmap Class
5.20. CV Structures 691
EEex Documentation, Release 1.0
Offset Size Type Field0x00 156 CVidImage m_cVidImage0x9C 12 CResHelper m_cResHelper0xa8 2 short m_nBitCount
2 <padding>0xAC 4 CString m_szResFileName
5.20.8 CVidCell
Used by the CVidCell Class
Offset Size Type Field0x00 4 DWORD vfptr0x04 156 CVidImage m_cVidImage0xA0 12 CResHelper m_cResHelper0xAC 2 short m_nCurrentFrame0xAE 2 unsigned short m_nCurrentSequence0xB0 4 int m_nAnimType0xB4 4 int m_bPaletteChanged0xB8 4 frameTableEntry_st* m_pFrame0xBC 1 unsigned char m_bShadowOn
3 <padding>
5.20.9 CVidCellFont
Offset Size Type Field0x00 189 CVidCell m_cVidCell
3 <padding>
5.20.10 CVidDrawable
Used by the CVidDrawable Class
Offset Size Type Field0x00 4 int texType0x04 4 void* tex
692 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.20.11 CVideo
Used by the CVideo Class
Offset Size Type Field0x00 4 CVidMode* pCurrentMode
5.20.12 CVidFont
Used by the CVidFont Class
Offset Size Type Field0x00 12 CResHelper m_cResHelper0x0C 4 CVidCellFont* vidCellFont0x10 4 unsigned long foreground0x14 4 unsigned long tintcolor0x18 4 int pointSize0x1C 4 int zoom
5.20.13 CVidImage
Used by the CVidImage Class
Offset Size Type Field0x00 36 CVidPalette m_cPalette0x24 120 CVIDIMG_PALETTEAFFECT mPaletteAffects
5.20.14 CVIDIMG_PALETTEAFFECT
Offset Size Type Field0x00 4 unsigned long rgbTintColor0x04 4 unsigned long rgbAddColor0x08 4 unsigned long rgbLightColor0x0C 28 unsigned long* pRangeTints[7]0x28 8 unsigned char aRangeTintPeriods[8]0x30 28 unsigned long* pRangeAdds[7]0x4C 8 unsigned char aRangeAddPeriods[8]0x54 28 unsigned long* pRangeLights[7]0x70 7 unsigned char aRangeLightPeriods[7]0x77 1 unsigned char suppressTints
5.20. CV Structures 693
EEex Documentation, Release 1.0
5.20.15 CVidMode
Used by the CVidMode Class
Offset Size Type Field0x00 4 int m_nPrintFile0x04 4 int m_nPointerNumber0x08 4 unsigned long m_dwCursorRenderFlags0x0C 4 unsigned long m_dwRedMask0x10 4 unsigned long m_dwGreenMask0x14 4 unsigned long m_dwBlueMask0x18 1 unsigned char m_bFadeTo0x19 1 unsigned char m_nFade
2 <padding>0x1C 4 SDL_Window* m_pWindow0x20 4 void* m_glContext0x24 176 CVidBitmap m_circle0xD4 4 int nWidth0xD8 4 int nHeight0xDC 1 bool bRedrawEntireScreen0xDD 1 bool bHardwareMouseCursor
2 <padding>0xE0 4 CVidCell* pPointerVidCell0xE4 4 CVidCell* pTooltipVidCell0xE8 1 unsigned char m_bPrintScreen
3 <padding>0xEC 4 unsigned long nTickCount0xF0 4 float m_fInputScale0xF4 4 unsigned long rgbGlobalTint0xF8 1 unsigned char m_nGammaCorrection0xF9 1 unsigned char m_nBrightnessCorrection
2 <padding>0xFC 4 int m_nScreenScrollY0x100 4 int m_nScreenScrollX0x104 4 int nRShift0x108 4 int nGShift0x10C 4 int nBShift0x110 4 RGBQUAD rgbTint0x114 4 int bPointerEnabled0x118 16 CRect rPointerStorage0x128 16 CRect m_rLockedRect0x138 4 CVidCell* m_lastCursor0x13C 4 int m_lastCursorFrame0x140 4 int m_lastCursorSequence0x144 4 int m_lastCursorNumber0x148 4 unsigned long m_lastCursorFlags0x14C 4 unsigned int m_lastCursorResId0x150 4 SDL_Cursor* m_hwCursor0x154 4 SDL_Surface* m_hwCursorSurface0x158 4 int nVRamSurfaces0x15C 176 CVidBitmap m_rgbMasterBitmap
694 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.20.16 CVidMosaic
Used by the CVidMosaic Class
Offset Size Type Field0x00 156 CVidImage m_cVidImage0x9C 12 CResHelper m_cResHelper
5.20.17 CVidPalette
Used by the CVidPalette Class
Offset Size Type Field0x00 4 unsigned int m_nAUCounter0x04 4 unsigned int m_nAUCounterBase0x08 4 RGBQUAD* m_pPalette0x0C 4 int m_nEntries0x10 4 unsigned long rgbGlobalTint0x14 2 unsigned short m_nType0x16 1 unsigned char m_bPaletteOwner
1 <padding>0x18 4 int m_bSubRangesCalculated0x1C 7 unsigned char m_rangeColors[7]
1 <padding>
5.20.18 CVidPng
Used by the CVidPng Class
Offset Size Type Field0x00 156 CVidImage m_cVidImage0x9C 12 CResHelper m_cResHelper
5.20.19 CVidPoly
Used by the CVidPoly Class
Offset Size Type Field0x00 4 CVIDPOLY_VERTEX* m_pVertices0x04 4 int m_nVertices0x08 4 _EdgeDescription* m_pET0x0C 4 _EdgeDescription* m_pAET0x10 4 void m_pDrawHLineFunction
5.20. CV Structures 695
EEex Documentation, Release 1.0
5.20.20 CVidTile
Used by the CVidTile Class
Offset Size Type Field0x00 156 CVidImage m_cVidImage0x9C 4 CResTile* pRes0xA0 4 unsigned long m_dwFlags
5.20.21 CVIDMODE_CLIP_OUTCODE
Offset Size Type Field0x00 4 unsigned int all0x04 4 unsigned int left : 40x04 4 unsigned int right : 40x04 4 unsigned int bottom : 40x04 4 unsigned int top : 4
5.20.22 CVIDMODE_RECTICLE_DESCRIPTION
Offset Size Type Field0x00 8 CPoint ptCenter0x08 2 short xAxis0x0A 2 short yAxis0x0c 2 short piePiecePtXOffset0x0e 2 short piePiecePtYOffset0x10 2 short piePieceXOffset0x12 2 short piePieceYOffset0x14 2 short xGap0x16 2 short yGap0x18 2 short cursor
2 <padding>
5.20.23 CVIDPALETTE_COLOR
Offset Size Type Field0x00 4 int rgbRed0x04 4 int rgbGreen0x08 4 int rgbBlue
696 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.20.24 CVIDPOLY_VERTEX
Offset Size Type Field0x00 2 unsigned short x0x02 2 unsigned short y
5.20.25 CVisibilityMap
Used by the CVisibilityMap Class
Offset Size Type Field0x00 4 unsigned short* m_pMap0x04 4 long m_nMapSize0x08 2 short m_nWidth0x0A 2 short m_nHeight0x0C 1 unsigned char m_bOutDoor
3 <padding>0x10 4 CSearchBitmap* m_pSearchMap0x14 60 long m_aCharacterIds[15]0x50 4 CVisibilityMapTreeNode** m_pVisMapTrees0x54 4 CVisibilityMapEllipse* m_pVisMapEllipses
5.20.26 CVisibilityMapEllipse
Offset Size Type Field0x00 2 short m_nXExploreRange0x02 2 short m_nYExploreRange0x04 4 unsigned char* m_pXEllipsePts0x08 4 unsigned char* m_pYEllipsePts0x0C 1 unsigned char m_nXPtsSize0x0D 1 unsigned char m_nYPtsSize
2 <padding>
5.20.27 CVisibilityMapTreeNode
Offset Size Type Field0x00 8 CPoint m_relativePos0x08 2 unsigned short m_nRange0x0A 6 short m_aChildren[3]0x10 2 short m_parent
2 <padding>
5.20. CV Structures 697
EEex Documentation, Release 1.0
5.20.28 CVisualEffect
Used by the CVisualEffect Class
Offset Size Type Field0x00 71 CGameObject m_cGameObject
1 <padding>0x48 448 CVisualEffectBase m_cVisualEffectBase0x208 28 CTypedPtrList m_activeAnimations0x224 28 CTypedPtrList m_timedEvents0x240 28 CTypedPtrList m_triggeredEvents0x25C 8 CPoint m_ptTargetPos0x264 4 long m_nTargetId0x268 8 CPoint m_posExact0x270 8 CPoint m_posOld0x278 4 long m_nExistanceCounter0x27C 4 long m_nDirection0x280 4 long m_nNewDirection0x284 8 CPoint m_posDelta0x28C 16 unsigned char m_terrainTable[16]0x29C 4 CStringList* pList0x2A0 4 _POSITION* m_listPos0x2A4 4 int m_startedList0x2A8 4 unsigned long m_renderMask
5.20.29 CVisualEffectBase
Offset Size Type Field0x00 4 unsigned long m_nTimedEventOffset0x04 4 unsigned long m_nTimedEventCount0x08 4 unsigned long m_nTriggeredEventOffset0x0C 4 unsigned long m_nTriggeredEventCount0x10 4 unsigned long m_nTargetType0x14 4 long m_nSpeed0x18 4 long m_nDuration0x1C 8 CPoint m_ptStartDeltaV0x24 4 long m_nDeltaVDec0x28 4 long m_nHeight0x2C 4 unsigned long m_flags0x30 400 unsigned long m_extra[100]
5.20.30 CVisualEffectFile
Offset Size Type Field0x00 12 CResHelper m_cResHelper
698 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.20.31 CVoice
Used by the CVoice Class
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CSound* m_pSound0x08 4 unsigned int m_nBuffer0x0C 4 unsigned int m_nSource0x10 4 int m_nChannel0x14 4 int m_nPriority0x18 1 bool m_bDuckedOthers
3 <padding>
5.20.32 CVRamPool
Offset Size Type Field0x00 4 int nVTiles0x04 4 st_tiledef* pTileDef
5.20.33 CVVCHash
Offset Size Type Field0x00 4 CVVCHashEntry* m_hashEntries0x04 4 long m_nTableEntries
5.20.34 CVVCHashEntry
Offset Size Type Field0x00 8 CResRef m_name0x08 2 unsigned short m_priority
2 <padding>0x0C 4 unsigned long m_renderType0x10 4 unsigned long m_renderMask
5.20. CV Structures 699
EEex Documentation, Release 1.0
5.21 CW Structures
• CWarp
• CWeaponIdentification
• CWeather
• CWildSurge
• CWnd
• CWorldMap
• CWorldMapArea
• CWorldMapData
• CWorldMapFile
• CWorldMapHeader
• CWorldMapLinks
5.21.1 CWarp
Used by the CWarp Class
Offset Size Type Field0x00 4 CObject m_cObject0x04 4 CWarp* pLastEngine0x08 28 CObList lTimers
5.21.2 CWeaponIdentification
Offset Size Type Field0x00 2 unsigned short m_itemType
2 <padding>0x04 4 unsigned long m_itemFlags0x08 4 unsigned long m_itemFlagMask0x0C 4 unsigned long m_attributes
5.21.3 CWeather
Used by the CWeather Class
700 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Offset Size Type Field0x00 1 unsigned char m_bOverCast
1 <padding>0x02 2 unsigned short m_nLightningFreq0x04 2 unsigned short m_nCurrentWeather0x06 2 unsigned short m_nWeatherLevel0x08 4 unsigned long m_nWeatherEndTime0x0C 4 unsigned long m_nWeatherStageEndTime0x10 4 unsigned long m_nWeatherDuration0x14 4 unsigned long m_nLastTimeChecked0x18 2 unsigned short m_nWindLevel
2 <padding>0x1C 4 unsigned long m_rgbCurrentOverCastColor0x20 4 unsigned long m_nDurationCounter0x24 24 CSnowStorm m_snowStorm0x3C 32 CRainStorm m_rainStorm0x5C 124 CFog m_fog0xD8 20 CSound m_sndRain0xEC 20 CSound m_sndWind0x100 1 unsigned char m_bWindOn0x101 1 unsigned char m_bUpgrading
2 <padding>0x104 4 unsigned long m_nNextTimeToStartChecking0x108 4 unsigned long m_nWindVolumeLevel0x10C 4 unsigned long m_nRainVolumeLevel0x110 1 unsigned char m_bReInitialize
3 <padding>
5.21.4 CWildSurge
Offset Size Type Field0x00 2 unsigned short m_projectileOverride
2 <padding>0x04 4 unsigned long m_projectileSpeedMod0x08 4 unsigned long m_durationMod0x0C 4 unsigned long m_levelMod0x10 4 unsigned long m_bApplyEffects0x14 4 long m_saveMod0x18 4 int m_bClearTargetRestriction0x1C 4 int m_bClearSelfRestriction
5.21.5 CWnd
Offset Size Type Field0x00 4 CCmdTarget m_cCmdTarget0x04 4 HWND* m_hWnd
5.21. CW Structures 701
EEex Documentation, Release 1.0
5.21.6 CWorldMap
Used by the CWorldMap Class
Offset Size Type Field0x00 8 CResRef m_cResRef0x08 8 CWorldMapHeader m_cHeader0x10 4 CWorldMapData* m_pData0x14 4 CWorldMapArea** m_ppAreas0x18 4 CWorldMapLinks** m_ppLinks
5.21.7 CWorldMapArea
Offset Size Type Field0x00 8 unsigned char m_resCurrentArea[8]0x08 8 unsigned char m_resOriginalArea[8]0x10 32 char m_strName[32]0x30 4 unsigned long m_dwFlags0x34 4 unsigned long m_sequence0x38 4 unsigned long m_mapLocationX0x3C 4 unsigned long m_mapLocationY0x40 4 unsigned long m_strLabel0x44 4 unsigned long m_strAreaName0x48 8 unsigned char m_resAreaLoadMosaic[8]0x50 4 unsigned long m_nNorthEdgeStartingLink0x54 4 unsigned long m_nNorthEdgeCount0x58 4 unsigned long m_nWestEdgeStartingLink0x5C 4 unsigned long m_nWestEdgeCount0x60 4 unsigned long m_nSouthEdgeStartingLink0x64 4 unsigned long m_nSouthEdgeCount0x68 4 unsigned long m_nEastEdgeStartingLink0x6C 4 unsigned long m_nEastEdgeCount0x70 128 unsigned long nUnused[32]
702 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.21.8 CWorldMapData
Offset Size Type Field0x00 8 unsigned char m_resMosaic[8]0x08 4 unsigned long m_nWidth0x0C 4 unsigned long m_nHeight0x10 4 unsigned long m_nMapID0x14 4 unsigned long m_strTitle0x18 4 unsigned long m_nStartCenteredOnX0x1C 4 unsigned long m_nStartCenteredOnY0x20 4 unsigned long m_nAreas0x24 4 unsigned long m_nAreasOffset0x28 4 unsigned long m_nOffsetToLinks0x2C 4 unsigned long m_nLinks0x30 8 unsigned char m_resAreaIcons[8]0x38 4 unsigned long m_dwFlags0x3C 124 unsigned long nUnused[31]
5.21.9 CWorldMapFile
Offset Size Type Field0x00 12 CResHelper m_cResHelper
5.21.10 CWorldMapHeader
Offset Size Type Field0x00 4 unsigned long m_nMapCount0x04 4 unsigned long m_nMapOffset
5.21.11 CWorldMapLinks
Offset Size Type Field0x00 4 unsigned long m_nArea0x04 32 char m_entryPoint[32]0x24 4 unsigned long m_nDistanceScale0x28 4 unsigned long m_dwLinkFlags0x2C 8 unsigned char m_resRandomEncounterArea0[8]0x34 8 unsigned char m_resRandomEncounterArea1[8]0x3C 8 unsigned char m_resRandomEncounterArea2[8]0x44 8 unsigned char m_resRandomEncounterArea3[8]0x4C 8 unsigned char m_resRandomEncounterArea4[8]0x54 4 unsigned long m_nEncounterProbability0x58 128 unsigned long nUnused[32]
5.21. CW Structures 703
EEex Documentation, Release 1.0
5.22 CZ Structures
• CZipFile
5.22.1 CZipFile
Offset Size Type Field0x00 4 unsigned int zip0x04 4 const char* path0x08 4 const char* name0x0C 4 const char* ext0x10 4 long offset0x14 4 long size
5.23 UI Structures
• uiColumn
• uiItem
• uiItem::bam
• uiItem::bmp
• uiItem::button
• uiItem::edit
• uiItem::list
• uiItem::map
• uiItem::mosaic
• uiItem::movie
• uiItem::progressBar
• uiItem::rectangle
• uiItem::scrollbar
• uiItem::slider
• uiItem::slot
• uiItem::text
• uiItem::tooltip
• uiItem::uiTemplate
• uiMenu
• uiVariant
• UI_ControlTableEntry_st
• UI_Control_Button_st
704 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• UI_Control_Edit_st
• UI_Control_Label_st
• UI_Control_ScrollBar_st
• UI_Control_Slider_st
• UI_Control_TextDisplay_st
• UI_Control_st
• UI_Header_st
• UI_PanelHeader_st
5.23.1 uiColumn
Offset Size Type Field0x00 4 uiVariant* width0x04 4 uiItem* items0x08 4 uiColumn* next
5.23.2 uiItem
Offset Size Type Field0x00 4 uiItemType type0x04 4 uiMenu* menu0x08 4 const char* name0x0C 4 int instanceId0x10 4 const char* templateName0x14 16 Marker areaSrc0x24 16 SDL_Rect area0x34 16 SDL_Rect pad0x44 4 int enabled0x48 4 int ignoreEvents0x4C 4 int ha0x50 4 int va0x54 4 uiVariant* alpha0x58 4 uiVariant* fill0x5C 4 int useOverlayTint0x60 12 int overlayTint[3]0x6C 40 uiItem::text text0x94 4 uiItem::uiTemplate uiTemplate0x98 28 uiItem::bam bam0xB4 24 uiItem::bmp bmp0xCC 56 uiItem::list list0x104 40 uiItem::scrollbar scrollbar0x12C 20 uiItem::slider slider0x140 28 uiItem::edit edit
Continued on next page
5.23. UI Structures 705
EEex Documentation, Release 1.0
Table 48 – continued from previous page0x15C 8 uiItem::mosaic mosaic0x164 36 uiItem::movie movie0x188 44 uiItem::button button0x1B4 4 uiItem::map map0x1B8 12 uiItem::progressBar progressBar0x1C4 20 uiItem::slot slot0x1D8 8 uiItem::rectangle rectangle0x1E0 4 int action0x1E4 4 int actionDbl0x1E8 4 int actionAlt0x1EC 4 int actionDrag0x1F0 4 int actionEnter0x1F4 4 int actionExit0x1F8 4 int actionUpdate0x1FC 4 int actionSimpleDrag0x200 4 int actionSimpleDrop0x204 4 int actionHold0x208 4 int actionScroll0x20C 4 int framesHeld0x210 20 uiItem::tooltip tooltip0x224 4 uiVariant* glow0x228 4 uiVariant* pulse0x22C 4 uiItem* next
Notes
enum uiItemType {ITEM_NONE = 0ITEM_TEXT = 1ITEM_BUTTON = 2ITEM_LIST = 3ITEM_EDIT = 4ITEM_MOVIE = 5ITEM_SLIDER = 6ITEM_HANDLE = 7ITEM_DRAGGABLE = 8ITEM_SLOT = 9ITEM_MAP = 10ITEM_TEMPLATE = 11
}
Note: UI elements defined and used in the UI.MENU file, use this data structure. Some of the field names are exposedvia lua and the UI system and are available to retrieve and/or set the field value.
Note: The fields beginning with action are processed as events (when something occurs) and can be assigned tolua script actions to perform when the event happens. The lua scripts to assign to an action event are enclosed indouble-quotes ". For example:
actionDbl "Infinity_OnPortraitDblClick(0)"
706 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
calls the lua Infinity_OnPortraitDblClick function when the mouse double clicks the portrait.
5.23.3 uiItem::bam
Offset Size Type Field0x00 4 uiVariant* resref0x04 4 uiVariant* sequence0x08 4 uiVariant* sequenceonce0x0C 4 uiVariant* frame0x10 4 uiVariant* greyscale0x14 4 uiVariant* usealpha0x18 4 int scaletoclip
5.23.4 uiItem::bmp
Offset Size Type Field0x00 4 int resname
5.23.5 uiItem::button
Offset Size Type Field0x00 4 uiVariant* portrait0x04 4 uiVariant* paperdoll0x08 4 int encumbrance0x0C 4 int colorDisplay0x10 4 int frameTimes0x14 4 const char* toggle0x18 4 const char* on0x1C 4 const char* highlightGroup0x20 4 uiVariant* clickable0x24 4 uiVariant* actionBar0x28 4 const char* sound
5.23. UI Structures 707
EEex Documentation, Release 1.0
5.23.6 uiItem::edit
Offset Size Type Field0x00 4 const char* var0x04 4 int maxlines0x08 4 int maxchars0x0C 4 uiVariant* placeholder0x10 4 int cursor0x14 4 int selectStart0x18 4 int selectEnd
5.23.7 uiItem::list
Offset Size Type Field0x00 4 int table0x04 4 int printrow0x08 4 int rowheight0x0C 4 int rowwidth0x10 4 uiVariant* rowbackground0x14 4 int dynamicHeight0x18 4 uiColumn* columns0x1C 4 int category0x20 4 int showHighlight0x24 4 int seperator0x28 4 int selected0x2C 4 int height0x30 4 uiVariant* color0x34 4 int currentRow
5.23.8 uiItem::map
Offset Size Type Field0x00 4 int type
5.23.9 uiItem::mosaic
Offset Size Type Field0x00 4 uiVariant* resref0x04 4 int respectClipping
708 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.23.10 uiItem::movie
Offset Size Type Field0x00 4 void* res0x04 16 SDL_Rect subtitle0x14 4 int transparent0x18 4 unsigned int background0x1C 4 int loop0x20 4 uiVariant* queuedMovie
5.23.11 uiItem::progressBar
Offset Size Type Field0x00 4 uiVariant* percent0x04 4 uiVariant* color0x08 4 uiVariant* fullColor
5.23.12 uiItem::rectangle
Offset Size Type Field0x00 4 int number0x04 4 uiVariant* opacity
5.23.13 uiItem::scrollbar
Offset Size Type Field0x00 4 const char* bam0x04 4 const char* function0x08 4 uiVariant* hide0x0C 4 int top0x10 4 int held0x14 4 int dragging0x18 4 int contentHeight0x1C 4 int respectConstraints0x20 4 int clunkyScroll0x24 4 int skipReset
5.23. UI Structures 709
EEex Documentation, Release 1.0
5.23.14 uiItem::slider
Offset Size Type Field0x00 4 const char* position0x04 4 uiVariant* settings0x08 4 int palette0x0C 4 const char* background0x10 4 int right
5.23.15 uiItem::slot
Offset Size Type Field0x00 4 uiVariant* icon0x04 4 uiVariant* count0x08 4 uiVariant* usages0x0C 4 uiVariant* highlight0x10 4 uiVariant* tint
5.23.16 uiItem::text
Offset Size Type Field0x00 4 const char* originalText0x04 4 uiVariant* text0x08 4 const char* font0x0C 4 int point0x10 4 int useFontZoom0x14 4 uiVariant* color0x18 4 int upper0x1C 4 int lower0x20 4 uiVariant* shadow0x24 4 uiVariant* showhighlight
5.23.17 uiItem::tooltip
Offset Size Type Field0x00 4 const char* originalText0x04 4 uiVariant* text0x08 4 uiVariant* force0x0C 4 int position0x10 4 int forceTop
710 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.23.18 uiItem::uiTemplate
Offset Size Type Field0x00 4 uiItem* item
5.23.19 uiMenu
Offset Size Type Field0x00 16 Marker menuSrc0x10 4 const char* name0x14 4 int panel0x18 4 int state0x1C 4 uiItem* items0x20 4 uiVariant* modal0x24 4 uiVariant* opacity0x28 4 uiVariant* greyscale0x2C 4 int onOpen0x30 4 int onClose0x34 4 SDL_Point offset0x3C 4 int ha0x40 4 int va0x44 4 int width0x48 4 int height0x4C 4 int enabled0x50 4 int ignoreEsc
5.23.20 uiVariant
Offset Size Type Field0x00 4 uiVariantType type0x04 4 uiVariant::value value
Notes
enum uiVariantType {UIVAR_INT = 0UIVAR_FUNCTION = 1UIVAR_STRING = 2UIVAR_FLOAT = 3
}
5.23. UI Structures 711
EEex Documentation, Release 1.0
5.23.21 UI_ControlTableEntry_st
Offset Size Type Field0x00 4 unsigned long nControlOffset0x04 4 unsigned long nControlSize
5.23.22 UI_Control_Button_st
Offset Size Type Field0x00 4 unsigned long nID0x04 2 unsigned short x0x06 2 unsigned short y0x08 2 unsigned short nWidth0x0A 2 unsigned short nHeight0x0C 2 unsigned short nType0x0E 8 unsigned char refBam[8]0x16 1 unsigned char nSequence0x17 1 unsigned char bFlags0x18 1 unsigned char nFrameUp0x19 1 unsigned char refPtXLower0x1A 1 unsigned char nFrameDown0x1B 1 unsigned char refPtXHigher0x1C 1 unsigned char nFrameFocus0x1D 1 unsigned char refPtYLower0x1E 1 unsigned char nFrameDisabled0x1F 1 unsigned char refPtYHigher
712 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.23.23 UI_Control_Edit_st
Offset Size Type Field0x00 4 unsigned long nID0x04 2 unsigned short x0x06 2 unsigned short y0x08 2 unsigned short nWidth0x0A 2 unsigned short nHeight0x0C 2 unsigned short nType0x0E 8 unsigned char refEdit[8]0x16 8 unsigned char refEditClientFocus[8]0x1E 8 unsigned char refEditClientNoFocus[8]0x26 8 unsigned char refEditCaret[8]0x2E 2 unsigned short nSequenceEditCaret0x30 2 unsigned short nFrameEditCaret0x32 2 unsigned short xEditClientOffset0x34 2 unsigned short yEditClientOffset0x36 2 unsigned short xEditCaretOffset0x38 2 unsigned short yEditCaretOffset0x3A 8 unsigned char refTextFont[8]0x42 2 unsigned short nSequenceText0x44 32 unsigned char defaultString[32]0x64 2 unsigned short maxChars0x66 2 unsigned short caseFormat0x68 2 unsigned short typeFormat
5.23.24 UI_Control_Label_st
Offset Size Type Field0x00 4 unsigned long nID0x04 2 unsigned short x0x06 2 unsigned short y0x08 2 unsigned short nWidth0x0A 2 unsigned short nHeight0x0C 2 unsigned short nType0x0E 4 unsigned long textStrRef0x12 8 unsigned char refTextFont[8]0x1A 4 unsigned long rgbTextForeground0x1E 4 unsigned long rgbBackground0x22 2 unsigned short nLabelType
5.23. UI Structures 713
EEex Documentation, Release 1.0
5.23.25 UI_Control_ScrollBar_st
Offset Size Type Field0x00 4 unsigned long nID0x04 2 unsigned short x0x06 2 unsigned short y0x08 2 unsigned short nWidth0x0A 2 unsigned short nHeight0x0C 2 unsigned short nType0x0E 8 unsigned char refBam[8]0x16 2 unsigned short nSequence0x18 2 unsigned short nTopFrameUp0x1A 2 unsigned short nTopFrameDown0x1C 2 unsigned short nBottomFrameUp0x1E 2 unsigned short nBottomFrameDown0x20 2 unsigned short nBarFrame0x22 2 unsigned short nThumbFrame0x24 4 unsigned long nControlWindowId
5.23.26 UI_Control_Slider_st
Offset Size Type Field0x00 4 unsigned long nID0x04 2 unsigned short x0x06 2 unsigned short y0x08 2 unsigned short nWidth0x0A 2 unsigned short nHeight0x0C 2 unsigned short nType0x0E 8 unsigned char refSlider[8]0x16 8 unsigned char refSliderThumb[8]0x1E 2 unsigned short nSequenceThumb0x20 2 unsigned short nFrameThumbNormal0x22 2 unsigned short nFrameThumbSelected0x24 2 unsigned short xThumbOffset0x26 2 unsigned short yThumbOffset0x28 2 unsigned short tickSize0x2A 2 unsigned short nTicks0x2C 2 unsigned short activeBarTop0x2E 2 unsigned short activeBarBottom0x30 2 unsigned short activeBarLeft0x32 2 unsigned short activeBarRight
714 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.23.27 UI_Control_TextDisplay_st
Offset Size Type Field0x00 4 unsigned long nID0x04 2 unsigned short x0x06 2 unsigned short y0x08 2 unsigned short nWidth0x0A 2 unsigned short nHeight0x0C 2 unsigned short nType0x0E 8 unsigned char refTextFont[8]0x16 8 unsigned char refNameFont[8]0x1E 4 unsigned long rgbTextForeground0x22 4 unsigned long rgbDefaultName0x26 4 unsigned long rgbBackground0x2A 4 unsigned long nScrollBarId
5.23.28 UI_Control_st
Offset Size Type Field0x00 4 unsigned long nID0x04 2 unsigned short x0x06 2 unsigned short y0x08 2 unsigned short nWidth0x0A 2 unsigned short nHeight0x0C 2 unsigned short nType
5.23.29 UI_Header_st
Offset Size Type Field0x00 4 unsigned long nFileType0x04 4 unsigned long nFileVersion0x08 4 unsigned long nPanels0x0C 4 unsigned long nOffsetToControlTable0x10 4 unsigned long nOffsetToPanelTable
5.23. UI Structures 715
EEex Documentation, Release 1.0
5.23.30 UI_PanelHeader_st
Offset Size Type Field0x00 4 unsigned long nPanelID0x04 2 unsigned short x0x06 2 unsigned short y0x08 2 unsigned short nWidth0x0A 2 unsigned short nHeight0x0C 2 unsigned short nType0x0E 2 unsigned short nControls0x10 8 unsigned char refMosaic[8]0x18 2 unsigned short nFirstControl0x1A 2 unsigned short wFlags
5.24 Other Structures
• BAMHEADERV2
• Item_Header_st
• Item_ability_st
• Item_effect_st
• KeyFileHeader_st
• KeyFileKeyEntry_st
• KeyFileResFileName_st
• Marker
• MAP_CHAR_POSITIONS
• MOSAICHEADERV2
• MOSAICQUAD
• Mod_t
• PLTHeader_st
• PVRTextureHeaderV3
• RLEDestFormat
• ResFixedHeader_st
• SAreaFileCreatureWrapper
• SAreaFileDoorWrapper
• SAreaFileWrapper
• SDL_Rect
• STR_RES
• STR_RES_HEADER
• Spell_Header_st
716 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
• Spell_ability_st
• SProjectileWrapper
• SSavedGamePartyCreatureReferenceWrapper
• StatRating
• STriggerObjectWrapper
• TILE_CODE
• TLK_FILE_HEADER
• TLK_FILE_OVERRIDE_ENTRY
• TLK_FILE_OVERRIDE_HEADER
• TLK_FILE_OVERRIDE_TEXT_BLOCK
• TLK_FILE_OVERRIDE_TEXT_HEADER
• WAV_Header
• WED_LayerHeader_st
• WED_PolyHeader_st
• WED_PolyList_st
• WED_PolyPoint_st
• WED_ScreenSectionList
• WED_TILE
• WED_TileData_st
• WED_TiledObject_st
• WED_WedHeader_st
• bamHeader_st
• biffFixedTableEntry_st
• biffHeader_st
• biffVarTableEntry_st
• biff_t
• campaignTable
• forcedTooltip
• frame
• frameTableEntry_st
• frameTableEntry_st::<unnamed-tag>::<unnamed-type-v2>
• mosHeader_st
• st_tiledef
5.24. Other Structures 717
EEex Documentation, Release 1.0
5.24.1 BAMHEADERV2
Offset Size Type Field0x00 4 unsigned long nFileType0x04 4 unsigned long nFileVersion0x08 4 unsigned long nFrames0x0C 4 unsigned long nSequences0x10 4 unsigned long nQuads0x14 4 unsigned long nFramesOffset0x18 4 unsigned long nSequencesOffset0x1C 4 unsigned long nQuadsOffset
Notes
Related to BAM v2 Header
5.24.2 Item_Header_st
Offset Size Type Field0x00 4 unsigned long nFileType0x04 4 unsigned long nFileVersion0x08 4 unsigned long genericName0x0C 4 unsigned long identifiedName0x10 8 unsigned char usedUpItemID[8]0x18 4 unsigned long itemFlags0x1C 2 unsigned short itemType0x1E 4 unsigned long notUsableBy0x22 2 unsigned char animationType[2]0x24 2 unsigned short minLevelRequired0x26 2 unsigned short minSTRRequired0x28 1 unsigned char minSTRBonusRequired0x29 1 unsigned char notUsableBy2a0x2A 1 unsigned char minINTRequired0x2B 1 unsigned char notUsableBy2b0x2C 1 unsigned char minDEXRequired0x2D 1 unsigned char notUsableBy2c0x2E 1 unsigned char minWISRequired0x2F 1 unsigned char notUsableBy2d0x30 1 unsigned char minCONRequired0x31 1 unsigned char proficiencyType0x32 2 unsigned short minCHRRequired0x34 4 unsigned long baseValue0x38 2 unsigned short maxStackable0x3A 8 unsigned char itemIcon[8]0x42 2 unsigned short loreValue0x44 8 unsigned char groundIcon[8]0x4C 4 unsigned long baseWeight0x50 4 unsigned long genericDescription
Continued on next page
718 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Table 49 – continued from previous page0x54 4 unsigned long identifiedDescription0x58 8 unsigned char descriptionPicture[8]0x60 4 unsigned long attributes0x64 4 unsigned long abilityOffset0x68 2 unsigned short abilityCount0x6A 4 unsigned long effectsOffset0x6E 2 unsigned short equipedStartingEffect0x70 2 unsigned short equipedEffectCount
Notes
Related to ITM V1.0 Header
5.24.3 Item_ability_st
Offset Size Type Field0x00 2 unsigned short type0x02 1 unsigned char quickSlotType0x03 1 unsigned char largeDamageDice0x04 8 unsigned char quickSlotIcon[8]0x0C 1 unsigned char actionType0x0D 1 unsigned char actionCount0x0E 2 unsigned short range0x10 1 unsigned char launcherType0x11 1 unsigned char largeDamageDiceCount0x12 1 unsigned char speedFactor0x13 1 unsigned char largeDamageDiceBonus0x14 2 short thac0Bonus0x16 1 unsigned char damageDice0x17 1 unsigned char school0x18 1 unsigned char damageDiceCount0x19 1 unsigned char secondaryType0x1A 2 short damageDiceBonus0x1C 2 unsigned short damageType0x1E 2 unsigned short effectCount0x20 2 unsigned short startingEffect0x22 2 unsigned short maxUsageCount0x24 2 unsigned short usageFlags0x26 4 unsigned long abilityFlags0x2A 2 unsigned short missileType0x2C 12 unsigned short attackProbability[6]
Notes
Related to ITM V1.0 Extended Header
5.24. Other Structures 719
EEex Documentation, Release 1.0
5.24.4 Item_effect_st
Offset Size Type Field0x00 2 unsigned short effectID0x02 1 unsigned char targetType0x03 1 unsigned char spellLevel0x04 4 int effectAmount0x08 4 unsigned long dwFlags0x0C 2 unsigned short durationType0x0E 4 unsigned long duration0x12 1 unsigned char probabilityUpper0x13 1 unsigned char probabilityLower0x14 8 unsigned char res[8]0x1C 4 unsigned long numDice0x20 4 unsigned long diceSize0x24 4 unsigned long savingThrow0x28 4 long saveMod0x2C 4 unsigned long special
Notes
Related to ITM V1.0 Feature Block and SPL V1 Feature Block
5.24.5 KeyFileHeader_st
Offset Size Type Field0x00 4 unsigned long nFileType0x04 4 unsigned long nFileVersion0x08 4 unsigned long nResFiles0x0C 4 unsigned long nKeys0x10 4 unsigned long nOffsetToFileTable0x14 4 unsigned long nOffsetToKeyTable
Notes
Related to KEY V1 Header
5.24.6 KeyFileKeyEntry_st
Offset Size Type Field0x00 8 unsigned char resRef[8]0x08 2 unsigned short nType0x0A 4 unsigned int nID
Notes
Related to KEY V1 Resource Entries
720 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.24.7 KeyFileResFileName_st
Offset Size Type Field0x00 4 unsigned long nFileSize0x04 4 unsigned long nFileNameOffset0x08 2 unsigned short nFileNameSize0x0A 2 unsigned short bDrives
Notes
Related to KEY V1 Bif Entries
5.24.8 Marker
Offset Size Type Field0x00 4 const char* src0x04 4 int start0x08 4 int count0x0C 4 int line
5.24.9 MAP_CHAR_POSITIONS
Offset Size Type Field0x00 8 CPoint ptPos0x08 4 long id
5.24.10 MOSAICHEADERV2
Offset Size Type Field0x00 4 unsigned long nFileType0x04 4 unsigned long nFileVersion0x08 4 unsigned long nWidth0x0C 4 unsigned long nHeight0x10 4 unsigned long nQuads0x14 4 unsigned long nOffsetToQuads
Notes
Related to MOS V2 Header
5.24. Other Structures 721
EEex Documentation, Release 1.0
5.24.11 MOSAICQUAD
Offset Size Type Field0x00 4 int textureIndex0x04 4 int x0x08 4 int y0x0C 4 int w0x10 4 int h0x14 4 int sx0x18 4 int sy
Notes
Related to MOS V2 Data Block and BAM V2 Data Block
5.24.12 Mod_t
Offset Size Type Field0x00 4 CString archiveName0x04 4 CString osPath0x08 4 CString modName
5.24.13 PLTHeader_st
Offset Size Type Field0x00 4 unsigned long nType0x04 4 unsigned long nVersion0x08 4 unsigned long nLayers0x0C 4 unsigned long nCompressed0x10 4 unsigned long nWidth0x14 4 unsigned long nHeight
722 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.24.14 PVRTextureHeaderV3
Offset Size Type Field0x00 4 unsigned int u32Version0x04 4 unsigned int u32Flags0x08 4 unsigned int u64PixelFormatlo0x0C 4 unsigned int u64PixelFormathi0x10 4 unsigned int u32ColourSpace0x14 4 unsigned int u32ChannelType0x18 4 unsigned int u32Height0x1C 4 unsigned int u32Width0x20 4 unsigned int u32Depth0x24 4 unsigned int u32NumSurfaces0x28 4 unsigned int u32NumFaces0x2C 4 unsigned int u32MIPMapCount0x30 4 unsigned int u32MetaDataSize
5.24.15 RLEDestFormat
Offset Size Type Field0x00 1 unsigned char BytesPerPixel0x01 3 unsigned char padding[3]0x04 4 unsigned int Rmask0x08 4 unsigned int Gmask0x0C 4 unsigned int Bmask0x10 4 unsigned int Amask0x14 1 unsigned char Rloss0x15 1 unsigned char Gloss0x16 1 unsigned char Bloss0x17 1 unsigned char Aloss0x18 1 unsigned char Rshift0x19 1 unsigned char Gshift0x1A 1 unsigned char Bshift0x1B 1 unsigned char Ashift
5.24.16 ResFixedHeader_st
Offset Size Type Field0x00 4 unsigned long nFileType0x04 4 unsigned long nFileVersion0x08 4 unsigned long nNumber0x0C 4 unsigned long nSize0x10 4 unsigned long nTableOffset
5.24. Other Structures 723
EEex Documentation, Release 1.0
Notes
Related to TIS V1 Header
5.24.17 SAreaFileCreatureWrapper
Offset Size Type Field0x00 4 CAreaFileCreature* creature0x04 4 unsigned char* pCreatureOffset
5.24.18 SAreaFileDoorWrapper
Offset Size Type Field0x00 4 CAreaFileDoorObject* pDoorObject0x04 4 CAreaPoint* pClosedSearchSquaresStart0x08 4 CAreaPoint* pOpenSearchSquaresStart0x0C 4 CAreaPoint* pClosedSelectionPointStart0x10 4 CAreaPoint* pOpenSelectionPointStart
5.24.19 SAreaFileWrapper
Offset Size Type Field0x00 4 CAreaFileContainer* pContainer0x04 4 CCreatureFileItem* pStartingItem0x08 4 CAreaPoint* pPickPointStart
5.24.20 SDL_Rect
Offset Size | Type Field0x00 4 | int x0x04 4 | int y0x08 4 | int w0x0C 4 | int h
724 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.24.21 STR_RES
Offset Size Type Field0x00 4 CString szText0x04 20 CSound cSound
5.24.22 STR_RES_HEADER
Offset Size Type Field0x00 2 unsigned short wFlags0x02 8 unsigned char sndResRef[8]0x0A 4 unsigned long volumeVariance0x0E 4 unsigned long pitchVariance0x12 4 unsigned long offsetToStr0x16 4 unsigned long strSize
Notes
Related to TLK V1 Entries
5.24.23 Spell_Header_st
Offset Size Type Field0x00 4 unsigned long nFileType0x04 4 unsigned long nFileVersion0x08 4 unsigned long genericName0x0C 4 unsigned long identifiedName0x10 8 unsigned char usedUpItemID[8]0x18 4 unsigned long itemFlags0x1C 2 unsigned short itemType0x1E 4 unsigned long notUsableBy0x22 2 unsigned short castingAnimationType0x24 1 unsigned char minLevelRequired0x25 1 unsigned char school0x26 1 unsigned char minSTRRequired0x27 1 unsigned char secondaryType0x28 1 unsigned char minSTRBonusRequired0x29 1 unsigned char notUsableBy2a0x2A 1 unsigned char minINTRequired0x2B 1 unsigned char notUsableBy2b0x2C 1 unsigned char minDEXRequired0x2D 1 unsigned char notUsableBy2c0x2E 1 unsigned char minWISRequired0x2F 1 unsigned char notUsableBy2d
Continued on next page
5.24. Other Structures 725
EEex Documentation, Release 1.0
Table 50 – continued from previous page0x30 2 unsigned short minCONRequired0x32 2 unsigned short minCHRRequired0x34 4 unsigned long spellLevel0x38 2 unsigned short maxStackable0x3A 8 unsigned char itemIcon[8]0x42 2 unsigned short loreValue0x44 8 unsigned char groundIcon[8]0x4C 4 unsigned long baseWeight0x50 4 unsigned long genericDescription0x54 4 unsigned long identifiedDescription0x58 8 unsigned char descriptionPicture[8]0x60 4 unsigned long attributes0x64 4 unsigned long abilityOffset0x68 2 unsigned short abilityCount0x6A 4 unsigned long effectsOffset0x6E 2 unsigned short castingStartingEffect0x70 2 unsigned short castingEffectCount
Notes
Related to SPL V1 Header
5.24.24 Spell_ability_st
Offset Size Type Field0x00 2 unsigned short type0x02 2 unsigned short quickSlotType0x04 8 unsigned char quickSlotIcon[8]0x0C 1 unsigned char actionType0x0D 1 unsigned char actionCount0x0E 2 unsigned short range0x10 2 unsigned short minCasterLevel0x12 2 unsigned short speedFactor0x14 2 unsigned short timesPerDay0x16 2 unsigned short damageDice0x18 2 unsigned short damageDiceCount0x1A 2 unsigned short damageDiceBonus0x1C 2 unsigned short damageType0x1E 2 unsigned short effectCount0x20 2 unsigned short startingEffect0x22 2 unsigned short maxUsageCount0x24 2 unsigned short usageFlags0x26 2 unsigned short missileType
Notes
Related to SPL V1 Extended Header
726 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.24.25 SProjectileWrapper
Offset Size Type Field0x00 4 CAreaFileProjectileObject* pProjectileObject0x04 4 unsigned char* pEffectList
5.24.26 SSavedGamePartyCreatureReferenceWrapper
Offset Size Type Field0x00 352 CSavedGamePartyCreature creature0x160 4 unsigned char* pCreatureOffset
5.24.27 StatRating
Offset Size Type Field0x00 4 CString name0x04 4 float value0x08 4 float rating
5.24.28 STriggerObjectWrapper
Offset Size Type Field0x00 4 CAreaFileTriggerObject* pTriggerObject0x04 4 CAreaPoint* pPickPointStart
5.24.29 TILE_CODE
Offset Size Type Field0x00 1 unsigned char tileNW0x01 1 unsigned char tileNE0x02 1 unsigned char tileSW0x03 1 unsigned char tileSE
5.24. Other Structures 727
EEex Documentation, Release 1.0
5.24.30 TLK_FILE_HEADER
Offset Size Type Field0x00 4 unsigned long fileType0x04 4 unsigned long versionNum0x08 2 unsigned short LanguageType0x0E 4 unsigned long nStrEntries0x0E 4 unsigned long strEntriesOffset
Notes
Related to TLK V1 Header
5.24.31 TLK_FILE_OVERRIDE_ENTRY
Offset Size Type Field0x00 4 unsigned long strRef0x04 4 unsigned long wFlags0x08 8 unsigned char sndResRef[8]0x10 4 unsigned long volumeVariance0x14 4 unsigned long pitchVariance0x18 4 unsigned long offsetToStr
Notes
Related to TLK V1 Entries
5.24.32 TLK_FILE_OVERRIDE_HEADER
Offset Size Type Field0x00 4 unsigned long fileType0x04 4 unsigned long versionNum0x08 4 unsigned long LanguageType0x0C 4 unsigned long nStrEntries0x10 4 unsigned long strEntriesOffset
Notes
Related to TLK V1 Header
728 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.24.33 TLK_FILE_OVERRIDE_TEXT_BLOCK
Offset Size Type Field0x00 4 unsigned long m_dwFlags0x04 4 unsigned long m_nOffsetToPrevious0x08 512 char m_text[512]0x208 4 unsigned long m_nOffsetToNext
5.24.34 TLK_FILE_OVERRIDE_TEXT_HEADER
Offset Size Type Field0x00 4 unsigned long m_nOffsetToFirstFree
5.24.35 WAV_Header
Offset Size Type Field0x00 2 unsigned short wFormatTag0x02 2 unsigned short nChannels0x04 4 unsigned long nSamplesPerSec0x08 4 unsigned long nAvgBytesPerSec0x0C 2 unsigned short nBlockAlign0x0E 2 unsigned short wBitsPerSample0x10 2 unsigned short cbSize
5.24.36 WED_LayerHeader_st
Offset Size Type Field0x00 2 unsigned short nTilesAcross0x02 2 unsigned short nTilesDown0x04 8 unsigned char rrTileSet[8]0x0C 2 unsigned short nNumUniqueTiles0x0E 2 unsigned short nLayerFlags0x10 4 unsigned long nOffsetToTileData0x14 4 unsigned long nOffsetToTileList
5.24. Other Structures 729
EEex Documentation, Release 1.0
5.24.37 WED_PolyHeader_st
Offset Size Type Field0x00 4 unsigned long nPolys0x04 4 unsigned long nOffsetToPolyList0x08 4 unsigned long nOffsetToPointList0x0C 4 unsigned long nOffsetToScreenSectionList0x10 4 unsigned long nOffsetToScreenPolyList
5.24.38 WED_PolyList_st
Offset Size Type Field0x00 4 unsigned long nStartingPoint0x04 4 unsigned long nNumPoints0x08 1 unsigned char nType0x09 1 unsigned char nHeight0x0A 2 unsigned short nLeft0x0C 2 unsigned short nRight0x0e 2 unsigned short nTop0x10 2 unsigned short nBottom
5.24.39 WED_PolyPoint_st
Offset Size Type Field0x00 2 unsigned short x0x02 2 unsigned short y
5.24.40 WED_ScreenSectionList
Offset Size Type Field0x00 2 unsigned short nStartingPoly0x02 2 unsigned short nNumPolys
730 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.24.41 WED_TILE
Offset Size Type Field0x00 4 int texture0x04 4 int x0x08 4 int y
5.24.42 WED_TileData_st
Offset Size Type Field0x00 2 unsigned short nStartingTile0x02 2 unsigned short nNumTiles0x04 2 short nSecondary0x06 1 unsigned char bFlags0x07 1 unsigned char bAnimSpeed0x08 2 unsigned short wFlags
5.24.43 WED_TiledObject_st
Offset Size Type Field0x00 8 unsigned char resID[8]0x08 2 unsigned short bType0x0A 2 unsigned short nStartingTile0x0C 2 unsigned short nNumTiles0x10 2 unsigned short nNumPrimaryPolys0x12 4 unsigned long nOffsetToPrimaryPolys0x16 4 unsigned long nOffsetToSecondaryPolys
5.24. Other Structures 731
EEex Documentation, Release 1.0
5.24.44 WED_WedHeader_st
Offset Size Type Field0x00 4 unsigned long nFileType0x04 4 unsigned long nFileVersion0x08 4 unsigned long nLayers0x0c 4 unsigned long nTiledObjects0x10 4 unsigned long nOffsetToLayerHeaders0x14 4 unsigned long nOffsetToPolyHeader0x18 4 unsigned long nOffsetToTiledObjects0x1c 4 unsigned long nOffsetToObjectTileList0x20 2 unsigned short nVisiblityRange0x22 2 unsigned short nChanceOfRain0x24 2 unsigned short nChanceOfFog0x26 2 unsigned short nChanceOfSnow0x28 4 unsigned long dwFlags
5.24.45 bamHeader_st
Offset Size Type Field0x00 4 unsigned long nFileType0x04 4 unsigned long nFileVersion0x08 2 unsigned short nFrames0x0A 1 unsigned char nSequences0x0B 1 unsigned char nTransparentColor0x0C 4 unsigned long nTableOffset0x10 4 unsigned long nPaletteOffset0x14 4 unsigned long nFrameListOffset
Notes
Related to BAM V1 Header
5.24.46 biffFixedTableEntry_st
Offset Size Type Field0x00 4 unsigned int nID0x04 4 unsigned long nOffset0x08 4 unsigned long nNumber0x0C 4 unsigned long nSize0x10 4 unsigned long nType
Notes
Related to BIFF V1 Tileset Entries
732 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.24.47 biffHeader_st
Offset Size Type Field0x00 4 unsigned long dwFileType0x04 4 unsigned long dwVersion0x08 4 unsigned long nVarRes0x0C 4 unsigned long nFixedRes0x10 4 unsigned long nTableOffset
Notes
Related to BIFF V1 Header
5.24.48 biffVarTableEntry_st
Offset Size Type Field0x00 4 unsigned int nID0x04 4 unsigned long nOffset0x08 4 unsigned long nSize0x0C 4 unsigned long nType
Notes
Related to BIFF V1 File Entries
5.24.49 biff_t
Offset Size Type Field0x00 4 const char* name0x04 20 file_t file0x18 16 view_t view0x28 4 biffVarTableEntry_st* v0x2C 4 biffFixedTableEntry_st* f
5.24.50 campaignTable
Offset Size Type Field0x00 4 char* column0x04 4 C2DArray* table
5.24. Other Structures 733
EEex Documentation, Release 1.0
5.24.51 forcedTooltip
Offset Size Type Field0x00 4 uiItem* current0x04 16 SDL_Rect r0x14 4 forcedTooltip* next0x18 4 int alpha
5.24.52 frame
Offset Size Type Field0x00 4 unsigned char* data0x04 4 unsigned int length0x08 4 frame* next
5.24.53 frameTableEntry_st
Offset Size Type Field0x00 2 unsigned short nWidth0x02 2 unsigned short nHeight0x04 2 short nCenterX0x06 2 short nCenterY0x08 4 unsigned long nOffset0x08 4 frameTableEntry_st::<unnamed-tag>::<unnamed-type-v2> v2
Notes
Related to BAM v2 Frame Entries
5.24.54 frameTableEntry_st::<unnamed-tag>::<unnamed-type-v2
Offset Size Type Field0x00 2 short nQuadStart0x02 2 short nQuadCount
Notes
Related to BAM v2 Cycle Entries
734 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.24.55 mosHeader_st
Offset Size Type Field0x00 4 unsigned long nFileType0x04 4 unsigned long nFileVersion0x08 2 unsigned short nWidth0x0A 2 unsigned short nHeight0x0C 2 unsigned short nXTiles0x0E 2 unsigned short nYTiles0x10 2 unsigned short nTileSize0x12 1 unsigned char nTransparentColor0x13 1 unsigned char nCompressed0x14 4 unsigned long nPaletteOffset
5.24.56 st_tiledef
Offset Size Type Field0x00 4 int nTile0x04 4 int nUsageCount0x08 4 int texture0x0C 4 CInfTileSet* pTileSet
5.25 File Format Structures
Note: The sections below link to structures that are related to each particular Infinty Engine (IE) and/or EnhancedEdition (EE) game file formats. For further details on these file formats please see IESDP (Infinity Engine StructuresDescription Project) File Formats
Note: Dont assume the EE game structures related to the IESDP file formats are a one-to-one match when loadedinto memory. There is a large amount of overlap between the two, but in some cases there are some differences. OtherEE game structures, which may be related to the file format, but have no direct mapping to them, may also be used tomanage or represent the underlying file format data.
5.25.1 2DA
• C2DArray
• CRuleTables
5.25.2 ARE
• CAreaFile
5.25. File Format Structures 735
EEex Documentation, Release 1.0
• CAreaFileCharacterEntryPoint
• CAreaFileContainer
• CAreaFileCreature
• CAreaFileDoorObject
• CAreaFileHeader
• CAreaFileOffsets
• CAreaFileProjectileObject
• CAreaFileRandomMonsterSpawningPoint
• CAreaFileRestEncounter
• CAreaFileSoundObject
• CAreaFileStaticObject
• CAreaFileTiledObject
• CAreaFileTriggerObject
• CAreaPoint
• CAreaSoundsAndMusic
• CAreaUserNote
• CAreaVariable
• CGameArea
• CGameAreaNotes
• CResArea
• CResWED
• CSearchBitmap
• CVisibilityMap
• SAreaFileCreatureWrapper
• SAreaFileDoorWrapper
• SAreaFileWrapper
5.25.3 BAM
• bamHeader_st
• BAMHEADERV2
• frame
• frameTableEntry_st
• frameTableEntry_st::<unnamed-tag>::<unnamed-type-v2>
• MOSAICQUAD
736 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.25.4 BIF
• biffFixedTableEntry_st
• biffHeader_st
• biffVarTableEntry_st
• biff_t
5.25.5 CRE
• CCreatureFileEquipment
• CCreatureFileHeader
• CCreatureFileItem
• CCreatureFileKnownSpell
• CCreatureFileMemorizedSpell
• CCreatureFileMemorizedSpellLevel
• CCreatureFileOffsets
• CResCRE
5.25.6 DLG
• CDialogFile
• CDialogFile_ActionScript
• CDialogFile_Dialog
• CDialogFile_Header
• CDialogFile_Reply
• CDialogFile_ReplyConditional
• CDialogFile_StartingConditional
• CResDLG
5.25.7 EFF
• CResEffect
• CGameEffectBase
• CGameEffect Structures
5.25.8 GAM
• CSaveGameSlot
• CSavedGameFamiliars
• CSavedGameHeader
5.25. File Format Structures 737
EEex Documentation, Release 1.0
• CSavedGameJournalEntry
• CSavedGamePartyCreature
• CSavedGameStoredLocation
• SSavedGamePartyCreatureReferenceWrapper
5.25.9 ITM
• Item_ability_st
• Item_effect_st
• Item_Header_st
• CItem
• CResItem
5.25.10 KEY
• KeyFileHeader_st
• KeyFileKeyEntry_st
• KeyFileResFileName_st
• CResRef
5.25.11 MOS
• MOSAICHEADERV2
• MOSAICQUAD
• mosHeader_st
• PVRTextureHeaderV3
• CResMosaic
• CResPVR
5.25.12 PLT
• PLTHeader_st
• CResPLT
.._PRO:
5.25.13 PRO
• CProjectileAreaFileFormat
• CProjectileBAMFileFormat
• CProjectileFileFormat
738 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
5.25.14 SAV
• CSaveGameSlot
• CSavedGameFamiliars
• CSavedGameHeader
• CSavedGameJournalEntry
• CSavedGamePartyCreature
• CSavedGameStoredLocation
• SSavedGamePartyCreatureReferenceWrapper
5.25.15 SPL
• Item_effect_st
• Spell_ability_st
• Spell_Header_st
• CResSpell
5.25.16 STO
• CStore
• CStoreFile
• CStoreFileDrinks
• CStoreFileHeader
• CStoreFileItem
• CStoreFileSpell
• CResStore
5.25.17 TIS
• CResInfTile
• CResTile
• CResTileSet
• CResPVR
• CTiledObject
• ResFixedHeader_st
• st_tiledef
• TILE_CODE
5.25. File Format Structures 739
EEex Documentation, Release 1.0
5.25.18 TLK
• CTlkFileOverride
• CTlkTable
• STR_RES
• STR_RES_HEADER
• TLK_FILE_HEADER
• TLK_FILE_OVERRIDE_ENTRY
• TLK_FILE_OVERRIDE_HEADER
• TLK_FILE_OVERRIDE_TEXT_BLOCK
• TLK_FILE_OVERRIDE_TEXT_HEADER
5.25.19 WBM
• CResWebm
5.25.20 WED
• CResWED
• WED_LayerHeader_st
• WED_PolyHeader_st
• WED_PolyList_st
• WED_PolyPoint_st
• WED_ScreenSectionList
• WED_TILE
• WED_TileData_st
• WED_TiledObject_st
• WED_WedHeader_st
5.25.21 WMAP
• CResWorldMap
• CWorldMap
• CWorldMapArea
• CWorldMapData
• CWorldMapFile
• CWorldMapHeader
• CWorldMapLinks
740 Chapter 5. EE Game Structures (x86)
EEex Documentation, Release 1.0
Note: The structures, information and data listed here have been extracted primarily from debug symbol informationlocated in .pdb files and from debugging the EE game executables - using IDA, x64dbg, llvm-pdbutil and other tools.As the primary source of this information is Baldur.pdb from Baldur’s Gate II: Throne of Bhall EnhancedEdition, please note that some of the information presented may be incorrect when compared to other EnhancedEdition games.
Note: Structures (class and struct definitions) are output using llvm-pdbutil with: llvm-pdbutil pretty-classes -class-definitions=layout -class-order=name baldur.pdb > out.txt
5.26 Data Types
The following table lists some of the basic standard win32 data-types that may be encountered in the various structuresand other data listed in this section.
Type Size NotesBYTE 1 A byte (8 bits). 8-bit unsigned integer. 0 through 255WORD 2 16-bit unsigned integer. 0 through 65535DWORD 4 32-bit unsigned integer. 0 through 4294967295QWORD 8 64-bit unsigned integer. 0 through 18446744073709551615void 4 Any typebool 1 Boolean variable (should be TRUE or FALSE)char 1 8-bit character (a sequence of chars is denoted with [n])unsigned char 1 8-bit character (a sequence of chars is denoted with [n])short 2 16-bit integer. 32768 through 32767unsigned short 2 16-bit integer. 0 through 65535long 4 32-bit signed integer. 2147483648 through 2147483647unsigned long 4 32-bit unsigned integer. 0 through 4294967295int 4 32-bit signed integer. -2147483648 through 2147483647unsigned int 4 32-bit unsigned integer. 0 through 4294967295fieldname[n] * length of fieldname is denoted by the n value inside the brackets<type>* 4 Pointer to a structure or other data type, denoted by asterisk char<padding> * padding for structure alignment, length is in the size field
5.26. Data Types 741
EEex Documentation, Release 1.0
742 Chapter 5. EE Game Structures (x86)
CHAPTER 6
EE Game Classes (x86)
6.1 C2DArray Class
• Overview
• Quick Reference
• Constructors
• Methods
6.1.1 Overview
Note: The C2DArray class handles 2D (two dimensional) arrays for handling .2da text files that store game data(typically rules etc) in columns and rows. See 2DA file format for details.
The structure used for this class is C2DArray
743
EEex Documentation, Release 1.0
6.1.2 Quick Reference
Quick Refvoid C2DArray::~C2DArray()unsigned char C2DArray::Find(CString& sSearchString, CString& sXLabel, CString& sYLabel, unsigned charbSearchLabels)unsigned char C2DArray::Find(CString& sSearchString, CPoint& ptLocation, unsigned char bSearchLabels)CString& C2DArray::GetAt(CString& nX, CString& nY)const long C2DArray::GetAtLong(CPoint& coordinates)void C2DArray::Load(CResRef & res)void C2DArray::LoadLines(CResRef & res)
6.1.3 Constructors
Name DescriptionC2DArray::~C2DArray Destroys a C2DArray object
C2DArray::~C2DArray
Destroys the C2DArray object.
~C2DArray();
Remarks
Destroys the C2DArray object.
6.1.4 Methods
Name DescriptionC2DArray::Find Locate a text value in the 2da array using column and row text headers to limit searchC2DArray::GetAt Return a text value from the specified x and y coords of the 2da arrayC2DArray::GetAtLong Return a long integer value from the specified x and y coords of the 2da arrayC2DArray::Load Load a 2da resource into the C2DArray classC2DArray::LoadLines Load a 2da resource into the C2DArray class
C2DArray::Find
Locates a text value in the 2da array using column and row text headers to limit search.
744 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
unsigned char C2DArray::Find(CString& sSearchString,CString& sXLabel,CString& sYLabel,unsigned char bSearchLabels);
Parameters
• CString& sSearchString - text string to search for
• CString& sXLabel - column to search
• CString& sYLabel - row to search
• unsigned char bSearchLabels - search among labels for sSearchString
Return Value
Returns the result of the search as an unsigned char.
Remarks
bSearchLabels can be set to TRUE to search labels.
C2DArray::Find
Locate a text value in the 2da array using x and y coords to limit search
unsigned char C2DArray::Find(CString& sSearchString,CPoint& ptLocation,unsigned char bSearchLabels);
Parameters
• CString& sSearchString - text string to search for
• CPoint& ptLocation - x and y coordinates to search
• unsigned char bSearchLabels - search among labels for sSearchString
Return Value
Returns the result of the search as an unsigned char.
Remarks
bSearchLabels can be set to TRUE to search labels.
C2DArray::GetAt
Get a text value from the specified x and y coordinates
CString& C2DArray::GetAt(CString& nX,CString& nY);
Parameters
6.1. C2DArray Class 745
EEex Documentation, Release 1.0
• CString& nX - x coordinate to get the text value from
• CString& nY - y coordinate to get the text value from
Return Value
Returns the text value as CString&
C2DArray::GetAtLong
Get a numeric value from the specified x and y coordinates
const long C2DArray::GetAtLong(CPoint& coordinates);
Parameters
• CPoint& coordinates - x and y coordinates to get the numeric value from
Return Value
Returns the numeric value as a long integer
C2DArray::Load
Loads the specified 2da resource
void C2DArray::Load(CResRef& res);
Parameters
• CResRef & res - resource reference of the 2da file to load
Remarks
The disassembly below shows the following:
• in a loop, loading of 17 strings and turning them into resource references with the CResRef::CResRef classmethod
• passing the newly created CResRef (resource reference) to the C2DArray::Load class method to load thespecified .2da file resource
• note: esi is compared to 18 decimal (0x12) and continues the loop is below that value: cmp esi,12, jbbaldur.604232
746 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
The equivalant in C++ might be:
string 2dalist[18] = {"LOADHINT", "MASTAREA", "NPCLEVEL", "TBPPARTY", "PDIALOG",→˓"STARTARE", "STRTGOLD", "STARTPOS", "STWEAPON", "XPCAP", "XPLIST", "25STWEAP",→˓"INTERACT", "YEARS", "REPUTATION" ,"CLASTEXT", "RACETEXT"};
CResRef ref;C2DArray array;
for (int i = 0; i < 18; i++){
CResRef ref((const char*)2dalist[i]);array.Load(ref);
}
C2DArray::LoadLines
Loads the specified 2da resource
void C2DArray::LoadLines(CResRef& res);
Parameters
• CResRef & res - resource reference of the 2da file to load
6.2 CAIAction Class
• Overview
• Quick Reference
• Constructors
• Methods
6.2. CAIAction Class 747
EEex Documentation, Release 1.0
6.2.1 Overview
Note: The CAIAction class handles AI processing of creature actions
The structure used for this class is CAIAction
6.2.2 Quick Reference
Quick Refvoid CAIAction::CAIAction()void CAIAction::~CAIAction()void CAIAction::Decode(CGameAIBase* caller)unsigned char CAIAction::OfType(short type)void CAIAction::Read(CString data, CString source)
6.2.3 Constructors
Name DescriptionCAIAction::CAIAction Constructs a CAIAction objectCAIAction::~CAIAction Destroys a CAIAction object
CAIAction::CAIAction
Constructs a CAIAction object
void CAIAction();
Remarks
Constructs a CAIAction object
CAIAction::~CAIAction
Destroys the CAIAction object
void ~CAIAction();
Remarks
Destroys the CAIAction object
748 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.2.4 Methods
Name DescriptionCAIAction::Decode DecodesCAIAction::OfTypeCAIAction::Read Reads
CAIAction::Decode
Decode action
void CAIAction::Decode(CGameAIBase* caller);
Parameters
• CGameAIBase* caller - pointer to the CGameAIBase caller
Remarks
Decodes action
CAIAction::OfType
OfType
unsigned char CAIAction::OfType(short type);
Parameters
• short type - the type to get
Return Value
Returns as an unsigned char
Remarks
CAIAction::Read
Reads the action
void CAIAction::Read(CString data, CString source);
Parameters
• CString data - action data to read
• CString source - source of action
Remarks
6.2. CAIAction Class 749
EEex Documentation, Release 1.0
6.3 CAICondition Class
• Overview
• Quick Reference
• Constructors
• Methods
6.3.1 Overview
Note: The CAICondition class handles conditions for triggers
The structure used for this class is CAICondition
6.3.2 Quick Reference
Quick Refvoid CAICondition::~CAICondition()void CAICondition::Add(CAITrigger& trigger)int CAICondition::Hold(CTypedPtrList& triggerList, CGameAIBase* caller)void CAICondition::Read(CString data)void CAICondition::Set(CAICondition& temp)int CAICondition::TriggerHolds(CAITrigger* pTrigger, CTypedPtrList& triggerList, CGameAIBase* caller)
6.3.3 Constructors
Name DescriptionCAICondition::~CAICondition Destroys a CAICondition object
CAICondition::~CAICondition
Destroys the CAICondition object
void ~CAICondition();
Remarks
Destroys the CAICondition object
750 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.3.4 Methods
Name DescriptionCAICondition::Add Adds a trigger to a conditionCAICondition::HoldCAICondition::ReadCAICondition::SetCAICondition::TriggerHolds
CAICondition::Add
Adds a trigger to a condition
void CAICondition::Add(CAITrigger& trigger);
Parameters
• CAITrigger& trigger - trigger to add to condition
Remarks
CAICondition::Hold
int CAICondition::Hold(CTypedPtrList& triggerList,CGameAIBase* caller);
Parameters
• CTypedPtrList& triggerList -
• CGameAIBase* caller -
Return Value
int
Remarks
CAICondition::Read
void CAICondition::Read(CString data);
Parameters
• CString data -
Remarks
6.3. CAICondition Class 751
EEex Documentation, Release 1.0
CAICondition::Set
void CAICondition::Set(CAICondition& temp);
Parameters
• CAICondition& temp -
Remarks
CAICondition::TriggerHolds
int CAICondition::TriggerHolds(CAITrigger* pTrigger,CTypedPtrList& triggerList,CGameAIBase* caller);
Parameters
• CAITrigger* pTrigger -
• CTypedPtrList& triggerList -
• CGameAIBase* caller -
Return Value
Returns an int value
Remarks
6.4 CAIGroup Class
• Overview
• Quick Reference
• Methods
6.4.1 Overview
Note: The CAIGroup class handles group selection of party, characters and/or allied creatures
The structure used for this class is CAIGroup
752 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.4.2 Quick Reference
Quick RefPOSITION* CAIGroup::Add(long spriteIndex)void CAIGroup::Add(CGameSprite* pSprite)void CAIGroup::AddEffect(CGameEffect* effect)void CAIGroup::AddToSearch(CSearchBitmap* search)void CAIGroup::AddTrigger(CAITrigger& trigger)void CAIGroup::ClearActions()void CAIGroup::FollowLeader(CPoint target, int additive)short* CAIGroup::GetFacings(short formationType, short direction)long CAIGroup::GetGroupLeader()long* CAIGroup::GetGroupList()CPoint* CAIGroup::GetOffsets(short formationType, short direction, unsigned char bFullParty)void CAIGroup::GroupAction(CAIAction action, int override, CAIAction* leaderAction)void CAIGroup::GroupCancelMove()void CAIGroup::GroupDrawMove(CPoint target, short formationType, CPoint cursor)void CAIGroup::GroupProtectPoint(CPoint target, short formationType, CPoint cursor, long range)void CAIGroup::GroupSetTarget(long iObject)void CAIGroup::GroupSetTarget(CPoint target, int additive, short formationType, CPoint cursor)void CAIGroup::HandleFollowPath(long* pPath, short nPath, CPoint target, CPoint start, int additive)int CAIGroup::InList(long index)int CAIGroup::IsPartyLeader()void CAIGroup::Remove(long id)void CAIGroup::Remove(CGameSprite* pSprite)void CAIGroup::RemoveFromSearch(CSearchBitmap* search)virtual void __cdecl CAIGroup::RotateOffsets(CPoint* offsets, short numOffsets, short degreesOfRotation) = 0void CAIGroup::SetGroupTriggerId(long triggerId)void CAIGroup::Sort()
6.4. CAIGroup Class 753
EEex Documentation, Release 1.0
6.4.3 Methods
Name DescriptionCAIGroup::AddCAIGroup::AddCAIGroup::AddEffectCAIGroup::AddToSearchCAIGroup::AddTriggerCAIGroup::ClearActionsCAIGroup::FollowLeaderCAIGroup::GetFacingsCAIGroup::GetGroupLeaderCAIGroup::GetGroupListCAIGroup::GetOffsetsCAIGroup::GroupActionCAIGroup::GroupCancelMoveCAIGroup::GroupDrawMoveCAIGroup::GroupProtectPointCAIGroup::GroupSetTargetCAIGroup::GroupSetTargetCAIGroup::HandleFollowPathCAIGroup::InListCAIGroup::IsPartyLeaderCAIGroup::RemoveCAIGroup::RemoveFromSearchCAIGroup::RotateOffsetsCAIGroup::SetGroupTriggerIdCAIGroup::Sort
CAIGroup::Add
POSITION* CAIGroup::Add(long spriteIndex);
Parameters
• long spriteIndex -
Return Value
POSITION
Remarks
CAIGroup::Add
void CAIGroup::Add(CGameSprite* pSprite);
Parameters
754 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CGameSprite* pSprite -
Remarks
CAIGroup::AddEffect
void CAIGroup::AddEffect(CGameEffect* effect);
Parameters
• CGameEffect* effect -
Remarks
CAIGroup::AddToSearch
void CAIGroup::AddToSearch(CSearchBitmap* search);
Parameters
• CSearchBitmap* search -
Remarks
CAIGroup::AddTrigger
void CAIGroup::AddTrigger(CAITrigger& trigger);
Parameters
• CAITrigger& trigger -
Remarks
CAIGroup::ClearActions
void CAIGroup::ClearActions();
Remarks
6.4. CAIGroup Class 755
EEex Documentation, Release 1.0
CAIGroup::FollowLeader
void CAIGroup::FollowLeader(CPoint target,int additive);
Parameters
• CPoint target -
• int additive -
Remarks
CAIGroup::GetFacings
short* CAIGroup::GetFacings(short formationType,short direction);
Parameters
• short formationType -
• short direction -
Return Value
short*
Remarks
CAIGroup::GetGroupLeader
long CAIGroup::GetGroupLeader();
Return Value
long
Remarks
CAIGroup::GetGroupList
long* CAIGroup::GetGroupList();
Return Value
long*
Remarks
756 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAIGroup::GetOffsets
CPoint* CAIGroup::GetOffsets(short formationType,short direction,unsigned char bFullParty);
Parameters
• short formationType -
• short direction -
• unsigned char bFullParty -
Return Value
CPoint*
Remarks
CAIGroup::GroupAction
void CAIGroup::GroupAction(CAIAction action,int override,CAIAction* leaderAction);
Parameters
• CAIAction action -
• int override -
• CAIAction* leaderAction -
Return Value
Remarks
CAIGroup::GroupCancelMove
void CAIGroup::GroupCancelMove();
Remarks
6.4. CAIGroup Class 757
EEex Documentation, Release 1.0
CAIGroup::GroupDrawMove
void CAIGroup::GroupDrawMove(CPoint target,short formationType,CPoint cursor);
Parameters
• CPoint target -
• short formationType -
• CPoint cursor -
Remarks
CAIGroup::GroupProtectPoint
void CAIGroup::GroupProtectPoint(CPoint target,short formationType,CPoint cursor,long range);
Parameters
• CPoint target -
• short formationType -
• CPoint cursor -
• long range -
Remarks
CAIGroup::GroupSetTarget
void CAIGroup::GroupSetTarget(long iObject);
Parameters
• long iObject -
Remarks
758 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAIGroup::GroupSetTarget
void CAIGroup::GroupSetTarget(CPoint target,int additive,short formationType,CPoint cursor);
Parameters
• CPoint target -
• int additive -
• short formationType -
• CPoint cursor -
Remarks
CAIGroup::HandleFollowPath
void CAIGroup::HandleFollowPath(long* pPath,short nPath,CPoint target,CPoint start,int additive);
Parameters
• long* pPath -
• short nPath -
• CPoint target -
• CPoint start -
• int additive
Remarks
CAIGroup::InList
int CAIGroup::InList(long index);
Parameters
• long index -
Return Value
int
Remarks
6.4. CAIGroup Class 759
EEex Documentation, Release 1.0
CAIGroup::IsPartyLeader
int CAIGroup::IsPartyLeader();
Return Value
int
Remarks
CAIGroup::Remove
void CAIGroup::Remove(long id);
Parameters
• long id -
Remarks
CAIGroup::Remove
void CAIGroup::Remove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Remarks
CAIGroup::RemoveFromSearch
void CAIGroup::RemoveFromSearch(CSearchBitmap* search);
Parameters
• CSearchBitmap* search -
Remarks
760 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAIGroup::RotateOffsets
virtual void __cdecl CAIGroup::RotateOffsets(CPoint* offsets,short numOffsets,short degreesOfRotation);
Parameters
• CPoint* offsets -
• short numOffsets -
• short degreesOfRotation -
Remarks
CAIGroup::SetGroupTriggerId
void CAIGroup::SetGroupTriggerId(long triggerId);
Parameters
• long triggerId -
Remarks
CAIGroup::Sort
void CAIGroup::Sort();
Remarks
6.5 CAIIdList Class
The structure used for this class is CAIIdList
Quick Refvoid CAIIdList::CAIIdList(CResRef id)void CAIIdList::CAIIdList()virtual void CAIIdList::~CAIIdList()CAIId* CAIIdList::Find(long id)CAIId* CAIIdList::Find(CString name, int caseSensetive)void CAIIdList::LoadList(int faster)void CAIIdList::LoadList(CResRef id, int faster)
6.5. CAIIdList Class 761
EEex Documentation, Release 1.0
6.5.1 Constructors
CAIIdList::CAIIdList
Constructs a CAIIdList object
void CAIIdList::CAIIdList();
Remarks
Constructs a CAIIdList object
CAIIdList::CAIIdList
Constructs a CAIIdList object
void CAIIdList::CAIIdList(CResRef id);
Parameters
• CResRef id - resource reference id
Remarks
Constructs a CAIIdList object
CAIIdList::~CAIIdList
Destroys the CAIIdList object
void ~CAIIdList();;
Remarks
Destroys the CAIIdList object
6.5.2 Methods
Name DescriptionCAIIdList::FindCAIIdList::LoadList
762 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAIIdList::Find
CAIId* CAIIdList::Find(long id);
Parameters
• long id -
Return Value
Returns a pointer to CAIId
Remarks
CAIIdList::Find
CAIId* CAIIdList::Find(CString name,int caseSensetive);
Parameters
• CString name - text to search for
• int caseSensetive - case sensitive searching enabled or not
Return Value
Returns a pointer to CAIId
Remarks
CAIIdList::LoadList
void CAIIdList::LoadList(int faster);
Parameters
• int faster -
Remarks
CAIIdList::LoadList
void CAIIdList::LoadList(CResRef id, int faster);
Parameters
• CResRef id - resource reference id
• int faster -
Remarks
6.5. CAIIdList Class 763
EEex Documentation, Release 1.0
6.6 CAIObjectType Class
The structure used for this class is CAIObjectType
Quick Refvoid CAIObjectType::CAIObjectType(unsigned char EnemyAlly, unsigned char General, unsigned char Race,unsigned char Class, unsigned char Specifics, unsigned char Gender, unsigned char Alignment, long Instance)void CAIObjectType::CAIObjectType(unsigned char EnemyAlly, unsigned char General, unsigned char Race,unsigned char Class, unsigned char Specifics, unsigned char Gender, unsigned char Alignment, long Instance, constunsigned char* SpecialCase, CString& name)void CAIObjectType::Decode(CGameAIBase* caller)void CAIObjectType::GetActiveInactiveClasses(unsigned char& nActiveClass, unsigned char& nInactiveClass)unsigned char CAIObjectType::GetClass()CAIObjectType CAIObjectType::GetEnemyOf()CGameObject* CAIObjectType::GetShare(CGameAIBase* caller, int checkBackList)CGameObject* CAIObjectType::GetShareType(CGameAIBase* caller, unsigned char type, int checkBackList)int CAIObjectType::IsAllyOf(CAIObjectType& type)int CAIObjectType::IsEnemyOf(CAIObjectType& type)int CAIObjectType::IsUsableSubClass(unsigned char nSubClass, int bAsync)int CAIObjectType::Match(CAIObjectType& y)unsigned char CAIObjectType::OfType(CAIObjectType* type, int checkForNonSprites, int noNonSprites, intdeathMatchAllowance)void CAIObjectType::Read(CString data)void CAIObjectType::Set(CAIObjectType& type)void CAIObjectType::SetSpecialCase(unsigned char* temp)CAIObjectType& CAIObjectType::operator=(CAIObjectType& y)int CAIObjectType::operator==(CAIObjectType& y)
6.6.1 Constructors
Name DescriptionCAIObjectType::CAIObjectType Constructs a CAIObjectType object
CAIObjectType::CAIObjectType
Constructs a CAIObjectType object
void CAIObjectType::CAIObjectType(unsigned char EnemyAlly,unsigned char General,unsigned char Race,unsigned char Class,unsigned char Specifics,unsigned char Gender,unsigned char Alignment,long Instance);
Parameters
764 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• unsigned char EnemyAlly - * *
• unsigned char General - * *
• unsigned char Race - * *
• unsigned char Class - * *
• unsigned char Specifics - * *
• unsigned char Gender - * *
• unsigned char Alignment - * *
• long Instance - * *
Remarks
Constructs a CAIObjectType object
CAIObjectType::CAIObjectType
Constructs a CAIObjectType object
void CAIObjectType::CAIObjectType(unsigned char EnemyAlly,unsigned char General,unsigned char Race,unsigned char Class,unsigned char Specifics,unsigned char Gender,unsigned char Alignment,long Instance,const unsigned char* SpecialCase,CString& name);
Parameters
• unsigned char EnemyAlly - * *
• unsigned char General - * *
• unsigned char Race - * *
• unsigned char Class - * *
• unsigned char Specifics - * *
• unsigned char Gender - * *
• unsigned char Alignment - * *
• long Instance - * *
• const unsigned char* SpecialCase - * *
• CString& name - * *
Remarks
Constructs a CAIObjectType object
6.6. CAIObjectType Class 765
EEex Documentation, Release 1.0
6.6.2 Methods
Name DescriptionCAIObjectType::DecodeCAIObjectType::GetActiveInactiveClassesCAIObjectType::GetClassCAIObjectType::GetEnemyOfCAIObjectType::GetShareCAIObjectType::GetShareTypeCAIObjectType::IsAllyOfCAIObjectType::IsEnemyOfCAIObjectType::IsUsableSubClassCAIObjectType::MatchCAIObjectType::OfTypeCAIObjectType::ReadCAIObjectType::SetCAIObjectType::SetSpecialCase
CAIObjectType::Decode
Decode CAIObjectType
void CAIObjectType::Decode(CGameAIBase* caller);
Parameters
• CGameAIBase* caller -
Remarks
CAIObjectType::GetActiveInactiveClasses
Gets active and inactive classes
void CAIObjectType::GetActiveInactiveClasses(unsigned char& nActiveClass,unsigned char& nInactiveClass) ;
Parameters
• unsigned char& nActiveClass -
• ‘‘unsigned char‘‘& nInactiveClass -
Remarks
CAIObjectType::GetClass
Get class
766 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
unsigned char CAIObjectType::GetClass();
Return Value
unsigned char
Remarks
CAIObjectType::GetEnemyOf
CAIObjectType CAIObjectType::GetEnemyOf();
Return Value
CAIObjectType
Remarks
CAIObjectType::GetShare
CGameObject* CAIObjectType::GetShare(CGameAIBase* caller,int checkBackList);
Parameters
• CGameAIBase* caller -
• int checkBackList -
Return Value
Returns a pointer to CGameObject
Remarks
CAIObjectType::GetShareType
CGameObject<CGameObject>* CAIObjectType::GetShareType(CGameAIBase* caller,unsigned char type,int checkBackList);
Parameters
• CGameAIBase* caller -
• unsigned char type -
• int checkBackList -
6.6. CAIObjectType Class 767
EEex Documentation, Release 1.0
Return Value
Returns a pointer to CGameObject
Remarks
CAIObjectType::IsAllyOf
int CAIObjectType::IsAllyOf(CAIObjectType& type);
Parameters
• CAIObjectType& type -
Return Value
int
Remarks
CAIObjectType::IsEnemyOf
int CAIObjectType::IsEnemyOf(CAIObjectType& type);
Parameters
• CAIObjectType& type -
Return Value
int
Remarks
CAIObjectType::IsUsableSubClass
int CAIObjectType::IsUsableSubClass(unsigned char nSubClass,int bAsync);
Parameters
• unsigned char nSubClass -
• int bAsync - asynchronous or synchronous
Return Value
int
Remarks
768 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAIObjectType::Match
int CAIObjectType::Match(CAIObjectType& y);
Parameters
• CAIObjectType& y -
Return Value
int
Remarks
CAIObjectType::OfType
unsigned char CAIObjectType::OfType(CAIObjectType* type,int checkForNonSprites,int noNonSprites,int deathMatchAllowance);
Parameters
• CAIObjectType* type - * *
• int checkForNonSprites -
• int noNonSprites -
• int deathMatchAllowance -
Return Value
unsigned char
Remarks
CAIObjectType::Read
void CAIObjectType::Read(CString data);
Parameters
• CString data - string containing data to read
Remarks
6.6. CAIObjectType Class 769
EEex Documentation, Release 1.0
CAIObjectType::Set
void CAIObjectType::Set(CAIObjectType& type);
Parameters
• CAIObjectType& type - type to set object as
Remarks
CAIObjectType::SetSpecialCase
void CAIObjectType::SetSpecialCase(unsigned char* temp);
Parameters
• unsigned char* temp -
Remarks
6.6.3 Operators
Name DescriptionCAIObjectType::operator= Assign a new value to a CAIObjectType objectCAIObjectType::operator== Determines if two values are equal
CAIObjectType::operator=
Assign y to a CAIObjectType object
CAIObjectType& CAIObjectType::operator=(CAIObjectType& y);
Parameters
• CAIObjectType& y - the new value to assign
Return Value
CAIObjectType&
Remarks
770 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAIObjectType::operator==
Logical comparison equals operator
int CAIObjectType::operator==(CAIObjectType& y);
Parameters
• CAIObjectType& y - the value to be compared
Return Value
int
Remarks
6.7 CAIResponse Class
The structure used for this class is CAIResponse
Quick Refvoid CAIResponse::CAIResponse()void CAIResponse::~CAIResponse()void CAIResponse::Add(CAIResponse& res)void CAIResponse::Add(CAIAction& action)unsigned char CAIResponse::InListEnd(short actionID)void CAIResponse::Read(CString data, CString source)void CAIResponse::Set(CAIResponse& temp)
6.7.1 Constructors
Name DescriptionCAIResponse::CAIResponse Constructs a CAIResponse objectCAIResponse::~CAIResponse Destroys a CAIResponse object
CAIResponse::CAIResponse
Constructs a CAIResponse object
void CAIResponse();
Remarks
Constructs a CAIResponse object
6.7. CAIResponse Class 771
EEex Documentation, Release 1.0
CAIResponse::~CAIResponse
Destroys the CAIResponse object
void ~CAIResponse();
Remarks
Destroys the CAIResponse object
6.7.2 Methods
Name DescriptionCAIResponse::AddCAIResponse::InListEndCAIResponse::ReadCAIResponse::Set
CAIResponse::Add
void CAIResponse::Add(CAIResponse& res);
Parameters
• CAIResponse& res - response to add
Remarks
CAIResponse::Add
void CAIResponse::Add(CAIAction& action);
Parameters
• CAIAction& action - action to add to response object
Remarks
CAIResponse::InListEnd
unsigned char CAIResponse::InListEnd(short actionID);
Parameters
• short actionID - action id to check occurs in the list
772 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
unsigned char
Remarks
CAIResponse::Read
void CAIResponse::Read(CString data,CString source);
Parameters
• CString data - string containing data
• CString source - string containing source
Remarks
CAIResponse::Set
void CAIResponse::Set(CAIResponse& temp);
Parameters
• CAIResponse& temp -
Remarks
6.8 CAIScript Class
The structure used for this class is CAIScript
Quick Refvoid CAIScript::CAIScript(CResRef cNewResRef, int playerscript)void CAIScript::CAIScript()void CAIScript::~CAIScript()void CAIScript::Add(CAICondition& condition, CAIResponseSet& responseSet)void CAIScript::Copy(CTypedPtrList& copyList)CAIResponse* CAIScript::Find(CTypedPtrList& triggerList, CGameAIBase* caller)void CAIScript::Read(CResRef fileName, int playerScript)void CAIScript::WriteToDisk(CString fileName, CGameObject* pAIObj)
6.8. CAIScript Class 773
EEex Documentation, Release 1.0
6.8.1 Constructors
Name DescriptionCAIScript::CAIScript Constructs a CAIScript objectCAIScript::~CAIScript Destroys a CAIScript object
CAIScript::CAIScript
Constructs a CAIScript object
void CAIScript();
Remarks
Constructs a CAIScript object
CAIScript::CAIScript
Constructs a CAIScript object
void **CAIScript\:\:CAIScript**\(:ref:`CResRef<CResRef>` cNewResRef, int→˓playerscript);
Parameters
• CResRef cNewResRef -
• int playerscript -
Remarks
Constructs a CAIScript object
CAIScript::~CAIScript
Destroys the CAIScript object
void ~CAIScript();;
Remarks
Destroys the CAIScript object
774 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.8.2 Methods
Name DescriptionCAIScript::Add Add a condition and response to an existing scriptCAIScript::Copy Copy a list of script itemsCAIScript::Find Find a trigger within a script and return the response for thatCAIScript::Read Read a script file from disk as specified by fileNameCAIScript::WriteToDisk Writes a script to a file as specified by fileName
CAIScript::Add
Add a condition (CAICondition) and a response (CAIResponseSet) to an existing script
void CAIScript::Add(CAICondition& condition,CAIResponseSet& responseSet);
Parameters
• CAICondition& condition -
• CAIResponseSet& responseSet -
Remarks
CAIScript::Copy
Copy a list of script items
void CAIScript::Copy(CTypedPtrList& copyList);
Parameters
• CTypedPtrList& copyList -
Remarks
CAIScript::Find
Find a trigger within a script and return the response for that
CAIResponse* CAIScript::Find(CTypedPtrList& triggerList,CGameAIBase* caller);
Parameters
• CTypedPtrList& triggerList -
• CGameAIBase* caller -
6.8. CAIScript Class 775
EEex Documentation, Release 1.0
Return Value
Returns a pointer to a CAIResponse
Remarks
CAIScript::Read
Read a script file from disk as specified by fileName
void CAIScript::Read(CResRef fileName,int playerScript);
Parameters
• CResRef fileName - resource reference of script file to read
• int playerScript -
Remarks
CAIScript::WriteToDisk
Writes a script to a file as specified by fileName
void CAIScript::WriteToDisk(CString fileName,CGameObject* pAIObj);
Parameters
• CString fileName - script filename to write data to
• CGameObject* pAIObj -
Remarks
6.9 CAIScriptFile Class
The structure used for this class is CAIScriptFile
Quick Refvoid CAIScriptFile::CAIScriptFile()void CAIScriptFile::~CAIScriptFile()void CAIScriptFile::Clear()short CAIScriptFile::DecodeActionID(CString name)short CAIScriptFile::DecodeActionType(CString IDLine, long& paramCount)unsigned char CAIScriptFile::DecodeSpecialCase(CString name)short CAIScriptFile::DecodeTriggerID(CString name)void CAIScriptFile::DecompileAction(CAIAction action, CGameObject* pAIObj)
Continued on next page
776 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 1 – continued from previous pagevoid CAIScriptFile::DecompileInt(long num, CString constFile)void CAIScriptFile::DecompileObject(CAIObjectType object, CGameObject* pAIObj)void CAIScriptFile::DecompilePoint(CPoint point)void CAIScriptFile::DecompileResponseSet(CAIResponseSet& resSet, CGameObject* pAIObj)void CAIScriptFile::DecompileScript(CAIScript& script, CGameObject* pAIObj)void CAIScriptFile::DecompileTrigger(CAITrigger& trigger, CGameObject* pAIObj)unsigned char CAIScriptFile::DontMergeStrings(CString IDLine)CString CAIScriptFile::GetConstFile(CString parameter)CString CAIScriptFile::GetIdLine(CAIIdList& ids, CString& name)CString CAIScriptFile::GetParameter(short parNum, CString IDLine)CString CAIScriptFile::GetParameterType(CString param)void CAIScriptFile::NewConditional()void CAIScriptFile::NewResponse(short weight)void CAIScriptFile::NewResponseSet()CAIAction CAIScriptFile::ParseAction(CString line)void CAIScriptFile::ParseConditionalString(CString data)void CAIScriptFile::ParseError(CString message)long CAIScriptFile::ParseInt(CString input, CString constFile)CAIObjectType CAIScriptFile::ParseObjectAtomic(CString input)CAIObjectType CAIScriptFile::ParseObjectFunction(CString input)CAIObjectType CAIScriptFile::ParseObjectType(CString& input)short CAIScriptFile::ParseOneLine(CString line)CPoint CAIScriptFile::ParsePoint(CString input)void CAIScriptFile::ParseResponseString(CString data)short CAIScriptFile::ParseTrigger(CString line)CString CAIScriptFile::ReadAfterChar(CString line, char c)CString CAIScriptFile::ReadToChar(CString line, char c)void CAIScriptFile::SaveEntry()int CAIScriptFile::WriteDecompileText(CString text)
6.9.1 Constructors
Name DescriptionCAIScriptFile::CAIScriptFile Constructs a CAIScriptFile objectCAIScriptFile::~CAIScriptFile Destroys a CAIScriptFile object
CAIScriptFile::CAIScriptFile
Constructs a CAIScriptFile object
void CAIScriptFile::CAIScriptFile();
Remarks
Constructs a CAIScriptFile object
6.9. CAIScriptFile Class 777
EEex Documentation, Release 1.0
CAIScriptFile::~CAIScriptFile
Destroys the CAIScriptFile object
void CAIScriptFile::~CAIScriptFile();;
Remarks
Destroys the CAIScriptFile object
6.9.2 Methods
Name DescriptionCAIScriptFile::Clear Clear the contents of a script fileCAIScriptFile::DecodeActionID Decodes and returns an action id name for the name specifiedCAIScriptFile::DecodeActionType Decodes and returns an action type name for the line specifiedCAIScriptFile::DecodeSpecialCase Decodes a special caseCAIScriptFile::DecodeTriggerID Decodes and returns an trigger id name for the name specifiedCAIScriptFile::DecompileAction Decompile an actionCAIScriptFile::DecompileIntCAIScriptFile::DecompileObject Decompile an objectCAIScriptFile::DecompilePoint Decompile an x and y point coordinateCAIScriptFile::DecompileResponseSet Decompile a response setCAIScriptFile::DecompileScript Decompile a scriptCAIScriptFile::DecompileTrigger Decompile a triggerCAIScriptFile::DontMergeStringsCAIScriptFile::GetConstFileCAIScriptFile::GetIdLineCAIScriptFile::GetParameter Returns a parameter from a line in a scriptCAIScriptFile::GetParameterType Returns a parameter type from the specified parameter nameCAIScriptFile::NewConditional Creates a new conditionCAIScriptFile::NewResponse Create a new responseCAIScriptFile::NewResponseSet Create a new response setCAIScriptFile::ParseAction Parse a line in a script file for an actionCAIScriptFile::ParseConditionalString Parse a string that contains a conditionalCAIScriptFile::ParseError Parse an error message for a script fileCAIScriptFile::ParseInt Parse a script file and returns an integer from the inputCAIScriptFile::ParseObjectAtomic Parse input for an atomic object and return a CAIObjectType objectCAIScriptFile::ParseObjectFunction Parse input for an object function and return a CAIObjectType objectCAIScriptFile::ParseObjectType Parse input for an object type and return a CAIObjectType objectCAIScriptFile::ParseOneLine Parse a single lineCAIScriptFile::ParsePointCAIScriptFile::ParseResponseString Parse a string containing response dataCAIScriptFile::ParseTrigger Parse a string line containing a triggerCAIScriptFile::ReadAfterChar Read a script line for a specific character and return the rest after that characterCAIScriptFile::ReadToChar Read a script line up to a specific character and return the portion before thatCAIScriptFile::SaveEntry Save entry to a script fileCAIScriptFile::WriteDecompileText Write decompiled text to a script
778 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAIScriptFile::Clear
Clear the contents of a script file
void CAIScriptFile::Clear();
Remarks
CAIScriptFile::DecodeActionID
Decodes and returns an action id name for the name specified
short CAIScriptFile::DecodeActionID(CString name);
Parameters
• CString name - action name
Return Value
Returns a short value representing the action id for the name specified
Remarks
CAIScriptFile::DecodeActionType
Decodes and returns an action type name for the line specified
short CAIScriptFile::DecodeActionType(CString IDLine,long& paramCount);
Parameters
• CString IDLine - line identifier
• long& paramCount - count of parameters
Return Value
Returns a short value representing the action type
Remarks
CAIScriptFile::DecodeSpecialCase
Decodes a special case
unsigned char CAIScriptFile::DecodeSpecialCase(CString name);
Parameters
• CString name - special case name
6.9. CAIScriptFile Class 779
EEex Documentation, Release 1.0
Return Value
unsigned char
Remarks
CAIScriptFile::DecodeTriggerID
Decodes and returns an trigger id name for the name specified
short CAIScriptFile::DecodeTriggerID(CString name);
Parameters
• CString name - trigger name
Return Value
Returns a short value representing the trigger id for the name specified
Remarks
CAIScriptFile::DecompileAction
Decompile an action
void CAIScriptFile::DecompileAction(CAIAction action,CGameObject* pAIObj);
Parameters
• CAIAction action - the action to decompile
• CGameObject* pAIObj - pointer to game object
Remarks
CAIScriptFile::DecompileInt
void CAIScriptFile::DecompileInt(long num,CString constFile);
Parameters
• long num -
• CString constFile - string containing filename to decompile
Remarks
780 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAIScriptFile::DecompileObject
Decompile a CAIObjectType object
void CAIScriptFile::DecompileObject(CAIObjectType object,CGameObject* pAIObj);
Parameters
• CAIObjectType object - object to decompile
• CGameObject* pAIObj - pointer to game object
Remarks
CAIScriptFile::DecompilePoint
Decompile an x and y point coordinate
void CAIScriptFile::DecompilePoint(CPoint point);
Parameters
• CPoint point - x, y coordinate to decompile
Remarks
CAIScriptFile::DecompileResponseSet
Decompile a response set
void CAIScriptFile::DecompileResponseSet(CAIResponseSet& resSet,CGameObject* pAIObj);
Parameters
• CAIResponseSet& resSet - address of response set to decompile
• CGameObject* pAIObj -*pointer to game object
Remarks
CAIScriptFile::DecompileScript
Decompile a script
void CAIScriptFile::DecompileScript(CAIScript& script,CGameObject* pAIObj);
6.9. CAIScriptFile Class 781
EEex Documentation, Release 1.0
Parameters
• CAIScript& script - address of script to decompile
• CGameObject* pAIObj - pointer to game object
Remarks
CAIScriptFile::DecompileTrigger
Decompile a CAITrigger trigger
void CAIScriptFile::DecompileTrigger(CAITrigger& trigger,CGameObject* pAIObj);
Parameters
• CAITrigger& trigger - address of trigger to decompile
• CGameObject* pAIObj - pointer to game object
Remarks
CAIScriptFile::DontMergeStrings
unsigned char CAIScriptFile::DontMergeStrings(CString IDLine);
Parameters
• CString IDLine - line identifier
Return Value
unsigned char
Remarks
CAIScriptFile::GetConstFile
CString CAIScriptFile::GetConstFile(CString parameter);
Parameters
• CString parameter -
Return Value
Returns a CString
Remarks
782 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAIScriptFile::GetIdLine
CString CAIScriptFile::GetIdLine(CAIIdList& ids,CString& name);
Parameters
• CAIIdList& ids -
• CString& name -
Return Value
Returns a CString
Remarks
CAIScriptFile::GetParameter
Returns a parameter from a line in a script
CString CAIScriptFile::GetParameter(short parNum,CString IDLine);
Parameters
• short parNum - parameter number to fetch
• CString IDLine - line identifier
Return Value
Returns a CString
Remarks
CAIScriptFile::GetParameterType
Returns a parameter type from the specified parameter name
CString CAIScriptFile::GetParameterType(CString param);
Parameters
• CString param - name of the parameter to return the type for
Return Value
Returns a CString
Remarks
6.9. CAIScriptFile Class 783
EEex Documentation, Release 1.0
CAIScriptFile::NewConditional
Creates a new condition
void CAIScriptFile::NewConditional();
Remarks
CAIScriptFile::NewResponse
Create a new response
void CAIScriptFile::NewResponse(short weight);
Parameters
• short weight -
Remarks
CAIScriptFile::NewResponseSet
Create a new response set
void CAIScriptFile::NewResponseSet();
Remarks
CAIScriptFile::ParseAction
Parse a line in a script file for an action
CAIAction CAIScriptFile::ParseAction(CString line);
Parameters
• CString line - the line number of the script to parse for an action
Return Value
Returns a CAIAction
Remarks
CAIScriptFile::ParseConditionalString
Parse a string that contains a conditional
784 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CAIScriptFile::ParseConditionalString(CString data);
Parameters
• CString data - string containing the conditional to parse
Remarks
CAIScriptFile::ParseError
Parse an error message for a script file
void CAIScriptFile::ParseError(CString message);
Parameters
• CString message - the error message to parse
Remarks
CAIScriptFile::ParseInt
Parse a script file and returns an integer from the input
long CAIScriptFile::ParseInt(CString input,CString constFile);
Parameters
• CString input - string containing input to parse
• CString constFile - string containing script filename to parse an integer for
Return Value
Returns a long value
Remarks
CAIScriptFile::ParseObjectAtomic
Parse input for an atomic object and return a CAIObjectType
CAIObjectType CAIScriptFile::ParseObjectAtomic(CString input);
Parameters
• CString input - string containing input to parse
Return Value
Returns a CAIObjectType
Remarks
6.9. CAIScriptFile Class 785
EEex Documentation, Release 1.0
CAIScriptFile::ParseObjectFunction
Parse input for an object function and return a CAIObjectType
CAIObjectType CAIScriptFile::ParseObjectFunction(CString input);
Parameters
• CString input - string containing input to parse
Return Value
Returns a CAIObjectType
Remarks
CAIScriptFile::ParseObjectType
Parse input for an object type and return a CAIObjectType
CAIObjectType CAIScriptFile::ParseObjectType(CString& input);
Parameters
• CString& input - address of string containing input to parse
Return Value
Returns a CAIObjectType
Remarks
CAIScriptFile::ParseOneLine
Parse a single line
short CAIScriptFile::ParseOneLine(CString line);
Parameters
• CString line - string containing line to parse
Return Value
Returns a short value
Remarks
786 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAIScriptFile::ParsePoint
CPoint CAIScriptFile::ParsePoint(CString input);
Parameters
• CString input - string containing input to parse
Return Value
Returns an x and y point coordinate as CPoint
Remarks
CAIScriptFile::ParseResponseString
Parse a string containing response data
void CAIScriptFile::ParseResponseString(CString data);
Parameters
• CString data - string containing response data to parse
Remarks
CAIScriptFile::ParseTrigger
Parse a string line containing a trigger
short CAIScriptFile::ParseTrigger(CString line);
Parameters
• CString line - string containing line that has a trigger to parse
Return Value
Returns a short value
Remarks
CAIScriptFile::ReadAfterChar
Read a script line for a specific character and return the rest of line after that character
CString CAIScriptFile::ReadAfterChar(CString line,char c);
Parameters
• CString line - string containing line to read
6.9. CAIScriptFile Class 787
EEex Documentation, Release 1.0
• char c - character byte to read after
Return Value
Returns a CString
Remarks
CAIScriptFile::ReadToChar
Read a script line up to a specific character and return the portion before that
CString CAIScriptFile::ReadToChar(CString line,char c);
Parameters
• CString line - string containing line to read
• char c - character byte to read up to
Return Value
Returns a CString
Remarks
CAIScriptFile::SaveEntry
Save entry to a script file
void CAIScriptFile::SaveEntry();
Remarks
CAIScriptFile::WriteDecompileText
Write decompiled text to a script
int CAIScriptFile::WriteDecompileText(CString text);
Parameters
• CString text - string containing script text to write to script file
Return Value
Returns an int value
Remarks
788 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.10 CAITrigger Class
The structure used for this class is CAITrigger
Quick Refvoid CAITrigger::CAITrigger(CAITrigger& __that)void CAITrigger::~CAITrigger()void CAITrigger::CAITrigger(short triggerID, CAIObjectType& cause, long specific)void CAITrigger::CAITrigger(short triggerID, long specific)unsigned char CAITrigger::OfType(CAITrigger& trigger)void CAITrigger::Read(CString& sData)CAITrigger& CAITrigger::operator=(CAITrigger& __that)
6.10.1 Constructors
Name DescriptionCAITrigger::CAITrigger Constructs a CAITrigger objectCAITrigger::~CAITrigger Destroys a CAITrigger object
CAITrigger::CAITrigger
Constructs a CAITrigger object
void CAITrigger(CAITrigger& __that);
Parameters
• CAITrigger& __that -
Remarks
Constructs a CAITrigger object
CAITrigger::CAITrigger
Constructs a CAITrigger object
void CAITrigger(short triggerIDCAIObjectType& cause,long specific);
Parameters
• short triggerID -
• CAIObjectType& cause -
• long specific -
6.10. CAITrigger Class 789
EEex Documentation, Release 1.0
Remarks
Constructs a CAITrigger object
CAITrigger::CAITrigger
Constructs a CAITrigger object
void CAITrigger(short triggerID,long specific);
Parameters
• short triggerID -
• long specific -
Remarks
Constructs a CAITrigger object
CAITrigger::~CAITrigger
Destroys the CAITrigger object
void CAITrigger::~CAITrigger();
Remarks
Destroys the CAITrigger object
6.10.2 Methods
Name DescriptionCAITrigger::OfTypeCAITrigger::Read
CAITrigger::OfType
unsigned char CAITrigger::OfType(CAITrigger& trigger);
Parameters
• CAITrigger& trigger -
Return Value
unsigned char
Remarks
790 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAITrigger::Read
void CAITrigger::Read(CString& sData);
Parameters
• CString& sData - string containing trigger data to read
Remarks
6.10.3 Operators
Name DescriptionCAITrigger::operator=
CAITrigger::operator=
CAITrigger& CAITrigger::operator=(CAITrigger& __that);
Parameters
• CAITrigger& __that -
Return Value
CAITrigger&
Remarks
6.11 CAIUtil Class
Utility class
Quick Refvirtual long __cdecl CAIUtil::CountSquares(CPoint& start, CPoint& end) = 0virtual CString __cdecl CAIUtil::ReadAfterChar(CString& line, char c) = 0virtual CString __cdecl CAIUtil::ReadBetween(CString& in, CString pattern) = 0virtual CString __cdecl CAIUtil::ReadTo(CString& in, CString pattern, int updateIn) = 0virtual CString __cdecl CAIUtil::ReadToChar(CString& line, char c) = 0virtual CString __cdecl CAIUtil::RemoveAllWS(CString in) = 0virtual long __cdecl CAIUtil::RangeSquared(CPoint start, CPoint end) = 0
6.11. CAIUtil Class 791
EEex Documentation, Release 1.0
6.11.1 Methods
Name DescriptionCAIUtil::CountSquares Count all squares in the specified pointsCAIUtil::ReadAfterChar Reads a string and returns the portion of the string after the specified characterCAIUtil::ReadBetween Reads a string and returns the portion of the string that matches the pattern specifiedCAIUtil::ReadTo Reads a string and returns the portion of the string that matches up to the patternCAIUtil::ReadToChar Reads a string and returns the portion of the string before and upto the specified charCAIUtil::RemoveAllWS Removes all whitespace characters (space, tab, line feed, carriage return) from a stringCAIUtil::RangeSquared Returns the range squared of the specified points
CAIUtil::CountSquares
Count all squares in the specified points
virtual long __cdecl CAIUtil::CountSquares(CPoint& start,CPoint& end);
Parameters
• CPoint& start - start coordinates
• CPoint& end - end coordinates
Return Value
Returns a long value representing the count of squares
Remarks
CAIUtil::ReadAfterChar
Read a string and returns the portion of the string after the specified character
virtual CString __cdecl CAIUtil::ReadAfterChar(CString& line,char c);
Parameters
• CString& line - the source string to read
• char c - the character byte to start reading the portion of the string after
Return Value
Returns a CString as the portion of the string read
Remarks
792 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CAIUtil::ReadBetween
Reads a string and returns the portion of the string that matches the pattern specified
virtual CString __cdecl CAIUtil::ReadBetween(CString& in,CString pattern);
Parameters
• CString& in - the source string to read
• CString pattern - the string pattern to match
Return Value
CString
Remarks
CAIUtil::ReadTo
Reads a string and returns the portion of the string that matches up to the pattern specified
virtual CString __cdecl CAIUtil::ReadTo(CString& in,CString pattern,int updateIn);
Parameters
• CString& in - the source string to read
• CString pattern - the string pattern to match
• int updateIn -
Return Value
CString
Remarks
CAIUtil::ReadToChar
Reads a string and returns the portion of the string before and upto the specified character
virtual CString __cdecl CAIUtil::ReadToChar(CString& line,char c);
Parameters
• CString& line - the source string to read
• char c - the character byte to start reading the portion of the string before and upto
6.11. CAIUtil Class 793
EEex Documentation, Release 1.0
Return Value
Returns a CString as the portion of the string read
Remarks
CAIUtil::RemoveAllWS
Removes all whitespace characters (space, tab, line feed, carriage return) from a string
virtual CString __cdecl CAIUtil::RemoveAllWS(CString in);
Parameters
• CString in - the source string to strip of whitespace
Return Value
Returns a CString which has all the whitespace characters removed
Remarks
CAIUtil::RangeSquared
Returns the range squared of the specified points
virtual long __cdecl CAIUtil::RangeSquared(CPoint start,CPoint end);
Parameters
• CPoint start - start coordinate for range
• CPoint end - end coordinates for range
Return Value
Returns a long value
Remarks
6.12 CBaldurChitin Class
• Overview
• Quick Reference
• Constructors
• Methods
794 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.12.1 Overview
The structure used for this class is CBaldurChitin
6.12.2 Quick Reference
Quick Refvoid CBaldurChitin::CBaldurChitin(int argc, char** argv)void CBaldurChitin::~CBaldurChitin()void CBaldurChitin::AddPlayedMovie(CResRef & cResMovie)virtual CRes* CBaldurChitin::AllocResObject(int nType)virtual void CBaldurChitin::AsynchronousUpdate(unsigned int uTimerID, unsigned int uMsg, unsigned long dwUser, unsigned long dw1, unsigned long dw2)virtual void CBaldurChitin::BroadcastMultiplayerProgressBarInfo()void CBaldurChitin::CheckGUISong()virtual int CBaldurChitin::ConfirmQuit()virtual unsigned char CBaldurChitin::CutsceneModeActive()virtual int CBaldurChitin::FontRectOutline()virtual int CBaldurChitin::GetEAXActive()virtual void CBaldurChitin::GetGameSpyCode(CString& sGameSpyCode)virtual void CBaldurChitin::GetGameSpyGameName(CString& sGameSpyName)virtual CString& CBaldurChitin::GetIconRes()virtual unsigned long CBaldurChitin::GetIDSBadDeskTopBitDepth()virtual unsigned long CBaldurChitin::GetIDSChoosePixelFormat()virtual unsigned long CBaldurChitin::GetIDSExclusiveMode()virtual unsigned long CBaldurChitin::GetIDSInvalidVideoMode()virtual unsigned long CBaldurChitin::GetIDSOpenGLDll()virtual unsigned long CBaldurChitin::GetIDSSetGameBitDepth()virtual unsigned long CBaldurChitin::GetIDSSetGameResolution()virtual unsigned long CBaldurChitin::GetIDSSetPixelFormat()virtual unsigned long CBaldurChitin::GetIDSWindowsFonts()virtual const char* CBaldurChitin::GetKeyFileName()virtual long CBaldurChitin::GetMovieVolume()virtual unsigned short CBaldurChitin::GetMultiplayerDirectPlayPort()virtual unsigned short CBaldurChitin::GetMultiplayerGameSpyPort()virtual unsigned char CBaldurChitin::GetNumberSoundChannels()virtual void CBaldurChitin::GetPanicCDStrings(CString& sMediaRemoved, CString& sPlaceCD, CString& sInDrive)CStringList* CBaldurChitin::GetPlayedMovies()virtual void CBaldurChitin::GetScreenShotFilePrefix(CString& szGameFileName)virtual unsigned char CBaldurChitin::GetSoundEnvironment(CString stAreaRef, unsigned long& dwEnvironment, float& fDamping, float& fDecay, float& fVolume, float& fReverbLevel)void CBaldurChitin::Init()virtual int CBaldurChitin::Is3DSound(int nChannel)void CBaldurChitin::LoadDialogFiles()virtual void CBaldurChitin::LoadOptions()virtual void __cdecl CBaldurChitin::Log(const char* format, . . . ) = 0virtual int CBaldurChitin::MessageCallback(unsigned char* pData, unsigned long dwSize)virtual void CBaldurChitin::OnMixerInitialize()virtual void CBaldurChitin::OnMultiplayerPlayerJoin(int playerID, CString& sPlayerName)virtual void CBaldurChitin::OnMultiplayerPlayerLeave(int playerID, CString& sPlayerName)
Continued on next page
6.12. CBaldurChitin Class 795
EEex Documentation, Release 1.0
Table 3 – continued from previous pagevirtual void CBaldurChitin::OnMultiplayerPlayerVisible(int playerID)virtual void CBaldurChitin::OnMultiplayerSessionClose()virtual void CBaldurChitin::OnMultiplayerSessionOpen(CString& sJoinedGame, CString& sDroppedGame, CString& sLeftGame)virtual void CBaldurChitin::OnMultiplayerSessionToClose()virtual void CBaldurChitin::PreLoadFonts()void CBaldurChitin::SaveOptions()virtual void CBaldurChitin::SetProgressBar(unsigned char bEnabled, long nProgressBarCaption, int nBytesCopied, int nTotalBytes, unsigned char bTravel, long nParchmentCaption, unsigned char bWaiting, long nWaitingReason, unsigned char bDisplayMinibars, unsigned char bTimeoutCounter, unsigned long nSecondsToTimeout)virtual void CBaldurChitin::SetProgressBarActivateEngine(int bValue)virtual void CBaldurChitin::SetSoundVolumes()virtual void CBaldurChitin::SetupPanels()virtual void CBaldurChitin::ShutDown(int nLineNumber, char* szFileName, const char* text)virtual void CBaldurChitin::SynchronousUpdate()virtual void CBaldurChitin::UnloadFonts()
6.12.3 Constructors
Name DescriptionCBaldurChitin::CBaldurChitin Constructs a CBaldurChitin objectCBaldurChitin::~CBaldurChitin Destroys a CBaldurChitin object
CBaldurChitin::CBaldurChitin
Constructs a CBaldurChitin object
void CBaldurChitin::CBaldurChitin(int argc,char** argv);
Parameters
• int argc - An integer that contains the count of arguments that follow in argv
• char** argv - An array of null-terminated strings representing command-line arguments
Remarks
By convention, argv[0] is the command with which the program is invoked, argv[1] is the first command-lineargument, and so on.
Constructs a CBaldurChitin object
CBaldurChitin::~CBaldurChitin
Destroys the CBaldurChitin object
void CBaldurChitin::~CBaldurChitin()
Remarks
Destroys the CBaldurChitin object
796 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.12.4 Methods
Name DescriptionCBaldurChitin::AddPlayedMovie Add a movie to the already played listCBaldurChitin::AllocResObject Creates and allocates memory for a resourceCBaldurChitin::AsynchronousUpdateCBaldurChitin::BroadcastMultiplayerProgressBarInfo Broadcast to all connected sessions the progress bar informationCBaldurChitin::CheckGUISongCBaldurChitin::ConfirmQuit Displays a prompt to confirm if players wishes to quit, save before quit, etcCBaldurChitin::CutsceneModeActive Determines if the cutscene mode is active or not (for dreams etc)CBaldurChitin::FontRectOutlineCBaldurChitin::GetEAXActive Determines if the EAX sound feature is active or notCBaldurChitin::GetGameSpyCode Gets the game spy codeCBaldurChitin::GetGameSpyGameName Gets the game spy game nameCBaldurChitin::GetIconRes Gets default icon resolutionCBaldurChitin::GetIDSBadDeskTopBitDepthCBaldurChitin::GetIDSChoosePixelFormatCBaldurChitin::GetIDSExclusiveModeCBaldurChitin::GetIDSInvalidVideoModeCBaldurChitin::GetIDSOpenGLDllCBaldurChitin::GetIDSSetGameBitDepthCBaldurChitin::GetIDSSetGameResolutionCBaldurChitin::GetIDSSetPixelFormatCBaldurChitin::GetIDSWindowsFontsCBaldurChitin::GetKeyFileName Returns a pointer to a string containing the default key file (usually chitin.key)CBaldurChitin::GetMovieVolume Returns movie volumeCBaldurChitin::GetMultiplayerDirectPlayPort Returns port no used in DirectPlayCBaldurChitin::GetMultiplayerGameSpyPort Returns port no used in GameSpyCBaldurChitin::GetNumberSoundChannels Returns number of sound channels supported by local machineCBaldurChitin::GetPanicCDStrings Legacy function for when game was distributed on CD/DVDCBaldurChitin::GetPlayedMovies Returns a list of movies that have been playedCBaldurChitin::GetScreenShotFilePrefixCBaldurChitin::GetSoundEnvironmentCBaldurChitin::Init Initialize CBaldurChitin classCBaldurChitin::Is3DSound* Returns if 3D sound is supported on local machineCBaldurChitin::LoadDialogFiles Load dialog filesCBaldurChitin::LoadOptions Load optionsCBaldurChitin::Log Output text to a log, similar to printf and uses variable no of argumentsCBaldurChitin::MessageCallbackCBaldurChitin::OnMixerInitializeCBaldurChitin::OnMultiplayerPlayerJoin Event action when a player joins a multiplayer game sessionCBaldurChitin::OnMultiplayerPlayerLeave Event action when a player leaves a multiplayer game sessionCBaldurChitin::OnMultiplayerPlayerVisible Event action when a player in a multiplayer game session becomes visible to othersCBaldurChitin::OnMultiplayerSessionClose Event action when a multiplayer game session closesCBaldurChitin::OnMultiplayerSessionOpen Event action when a multiplayer game session opensCBaldurChitin::OnMultiplayerSessionToClose Event action when a multiplayer game session is about to closeCBaldurChitin::PreLoadFonts Preload fonts for gameCBaldurChitin::SaveOptions Save optionsCBaldurChitin::SetProgressBar Set progress bar on screenCBaldurChitin::SetProgressBarActivateEngine
Continued on next page
6.12. CBaldurChitin Class 797
EEex Documentation, Release 1.0
Table 4 – continued from previous pageCBaldurChitin::SetSoundVolumesCBaldurChitin::SetupPanelsCBaldurChitin::ShutDownCBaldurChitin::SynchronousUpdateCBaldurChitin::UnloadFonts Unload fonts previously loaded by game engine, typically when game is closing
CBaldurChitin::AddPlayedMovie
Add a movie to the already played list
void CBaldurChitin::AddPlayedMovie(CResRef& cResMovie);
Parameters
• CResRef & cResMovie - resource reference of movie to add to played list
Remarks
CBaldurChitin::AllocResObject
Creates and allocates memory for a resource
virtual CRes* CBaldurChitin::AllocResObject(int nType);
Parameters
• int nType - type of resource to create
Return Value
Returns a CRes object
Remarks
CBaldurChitin::AsynchronousUpdate
virtual void CBaldurChitin::AsynchronousUpdate(unsigned int uTimerID,unsigned int uMsg,unsigned long dwUser,unsigned long dw1,unsigned long dw2);
Parameters
• unsigned int uTimerID -
• unsigned int uMsg -
• unsigned long dwUser -
• unsigned long dw1 -
798 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• unsigned long dw2 -
Remarks
CBaldurChitin::BroadcastMultiplayerProgressBarInfo
Broadcast to all connected sessions the progress bar information
virtual void CBaldurChitin::BroadcastMultiplayerProgressBarInfo();
Remarks
CBaldurChitin::CheckGUISong
void CBaldurChitin::CheckGUISong();
Remarks
CBaldurChitin::ConfirmQuit
Displays a prompt to confirm if players wishes to quit, save before quit, etc
virtual int CBaldurChitin::ConfirmQuit();
Return Value
Returns an int
Remarks
CBaldurChitin::CutsceneModeActive
Determines if the cutscene mode is active or not (for dreams etc)
virtual unsigned char CBaldurChitin::CutsceneModeActive();
Return Value
Returns a unsigned char
Remarks
6.12. CBaldurChitin Class 799
EEex Documentation, Release 1.0
CBaldurChitin::FontRectOutline
virtual int CBaldurChitin::FontRectOutline();
Return Value
Returns an int
Remarks
CBaldurChitin::GetEAXActive
Determines if the EAX sound feature is active or not
virtual int CBaldurChitin::GetEAXActive();
Return Value
Returns an int representing true 1 or false 0
Remarks
CBaldurChitin::GetGameSpyCode
Gets the game spy code
virtual void CBaldurChitin::GetGameSpyCode(CString& sGameSpyCode);
Parameters
• CString& sGameSpyCode - address of string to store the game spy code in
Remarks
CBaldurChitin::GetGameSpyGameName
Gets the game spy game name
virtual void CBaldurChitin::GetGameSpyGameName(CString& sGameSpyName);
Parameters
• CString& sGameSpyName - address of string to store the game spy name in
Remarks
CBaldurChitin::GetIconRes
Gets default icon resolution
800 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual CString& CBaldurChitin::GetIconRes();
Return Value
Returns a CString&
Remarks
CBaldurChitin::GetIDSBadDeskTopBitDepth
virtual unsigned long CBaldurChitin::GetIDSBadDeskTopBitDepth();
Return Value
Returns an unsigned long
Remarks
CBaldurChitin::GetIDSChoosePixelFormat
virtual unsigned long CBaldurChitin::GetIDSChoosePixelFormat();
Return Value
Returns an unsigned long
Remarks
CBaldurChitin::GetIDSExclusiveMode
virtual unsigned long CBaldurChitin::GetIDSExclusiveMode();
Return Value
Returns an unsigned long
Remarks
CBaldurChitin::GetIDSInvalidVideoMode
virtual unsigned long CBaldurChitin::GetIDSInvalidVideoMode();
Return Value
Returns an unsigned long
Remarks
6.12. CBaldurChitin Class 801
EEex Documentation, Release 1.0
CBaldurChitin::GetIDSOpenGLDll
virtual unsigned long CBaldurChitin::GetIDSOpenGLDll();
Return Value
Returns an unsigned long
Remarks
CBaldurChitin::GetIDSSetGameBitDepth
virtual unsigned long CBaldurChitin::GetIDSSetGameBitDepth();
Return Value
Returns an unsigned long
Remarks
CBaldurChitin::GetIDSSetGameResolution
virtual unsigned long CBaldurChitin::GetIDSSetGameResolution();
Return Value
Returns an unsigned long
Remarks
CBaldurChitin::GetIDSSetPixelFormat
virtual unsigned long CBaldurChitin::GetIDSSetPixelFormat();
Return Value
Returns an unsigned long
Remarks
CBaldurChitin::GetIDSWindowsFonts
virtual unsigned long CBaldurChitin::GetIDSWindowsFonts();
Return Value
Returns an unsigned long
Remarks
802 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CBaldurChitin::GetKeyFileName
Returns a pointer to a string containing the default key file (usually chitin.key) for the game engine
virtual const char* CBaldurChitin::GetKeyFileName();
Return Value
Returns const char*, a pointer to a string containing key file
Remarks
CBaldurChitin::GetMovieVolume
Returns movie volume
virtual long CBaldurChitin::GetMovieVolume();
Return Value
Returns long representing movie volume
Remarks
CBaldurChitin::GetMultiplayerDirectPlayPort
Returns port no used in DirectPlay
virtual unsigned short CBaldurChitin::GetMultiplayerDirectPlayPort();
Return Value
Returns an unsigned short representing the port
Remarks
CBaldurChitin::GetMultiplayerGameSpyPort
Returns port no used in GameSpy
virtual unsigned short CBaldurChitin::GetMultiplayerGameSpyPort();
Return Value
Returns an unsigned short representing the port
Remarks
6.12. CBaldurChitin Class 803
EEex Documentation, Release 1.0
CBaldurChitin::GetNumberSoundChannels
Returns number of sound channels supported by local machine
virtual unsigned char CBaldurChitin::GetNumberSoundChannels();
Return Value
Returns unsigned char
Remarks
CBaldurChitin::GetPanicCDStrings
Legacy function for when game was distributed on CD/DVD
virtual void CBaldurChitin::GetPanicCDStrings(CString& sMediaRemoved,CString& sPlaceCD,CString& sInDrive);
Parameters
• CString& sMediaRemoved - address of string to store media string
• CString& sPlaceCD - address of string to store place cd/dvd string
• CString& sInDrive - address of string to store in drive string
Remarks
CBaldurChitin::GetPlayedMovies
Returns a list of movies that have been played
CStringList* CBaldurChitin::GetPlayedMovies();
Return Value
Returns a CStringList*
Remarks
CBaldurChitin::GetScreenShotFilePrefix
virtual void CBaldurChitin::GetScreenShotFilePrefix(CString& szGameFileName);
Parameters
• CString& szGameFileName - address of string to store screenshot filename prefix to
Remarks
804 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CBaldurChitin::GetSoundEnvironment
virtual unsigned char CBaldurChitin::GetSoundEnvironment(CString stAreaRef,unsigned long& dwEnvironment,float& fDamping,float& fDecay,float& fVolume,float& fReverbLevel;
Parameters
• CString stAreaRef - string containing area resource reference
• unsigned long& dwEnvironment - address of long variable to store sound environment info
• float& fDamping - address of float variable to store sound damping value
• float& fDecay - address of float variable to store sound decay value
• float& fVolume - address of float variable to store sound volume
• float& fReverbLevel - address of float variable to store reverb level
Return Value
Returns unsigned char
Remarks
CBaldurChitin::Init
Initialize CBaldurChitin class
void CBaldurChitin::Init();
Remarks
CBaldurChitin::Is3DSound
Returns true if 3D sound is supported on local machine
virtual int CBaldurChitin::Is3DSound(int nChannel);
Parameters
• int nChannel -
Return Value
Returns an int representing true 1 or false 0
Remarks
6.12. CBaldurChitin Class 805
EEex Documentation, Release 1.0
CBaldurChitin::LoadDialogFiles
Load dialog files
void CBaldurChitin::LoadDialogFiles();
Remarks
CBaldurChitin::LoadOptions
Load options
virtual void CBaldurChitin::LoadOptions();
Remarks
CBaldurChitin::Log
Output text to a log, similar to printf and uses variable no of arguments after the format string
virtual void __cdecl CBaldurChitin::Log(const char* format,...);
Parameters
• const char* format - special format string for handling other passed parameters
• . . . - * *
Remarks
CBaldurChitin::MessageCallback
virtual int CBaldurChitin::MessageCallback(unsigned char* pData,unsigned long dwSize);
Parameters
• unsigned char* pData - pointer to data to send in message callback
• unsigned long dwSize - size of message callback data
Return Value
Returns int
Remarks
806 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CBaldurChitin::OnMixerInitialize
virtual void CBaldurChitin::OnMixerInitialize();
Remarks
CBaldurChitin::OnMultiplayerPlayerJoin
Event action when a player joins a multiplayer game session
virtual void CBaldurChitin::OnMultiplayerPlayerJoin(int playerID,CString& sPlayerName);
Parameters
• int playerID - id of player joining multiplayer session
• CString& sPlayerName - address of string variable that contains player name
Remarks
CBaldurChitin::OnMultiplayerPlayerLeave
Event action when a player leaves a multiplayer game session
virtual void CBaldurChitin::OnMultiplayerPlayerLeave(int playerID,CString& sPlayerName);
Parameters
• int playerID - id of player leaving multiplayer session
• CString& sPlayerName - address of string variable that contains player name
Remarks
CBaldurChitin::OnMultiplayerPlayerVisible
Event action when a player in a multiplayer game session becomes visible to other existing players
virtual void CBaldurChitin::OnMultiplayerPlayerVisible(int playerID);
Parameters
• int playerID - id of multiplayer player
Remarks
6.12. CBaldurChitin Class 807
EEex Documentation, Release 1.0
CBaldurChitin::OnMultiplayerSessionClose
Event action when a multiplayer game session closes
virtual void CBaldurChitin::OnMultiplayerSessionClose();
Remarks
CBaldurChitin::OnMultiplayerSessionOpen
Event action when a multiplayer game session opens
virtual void CBaldurChitin::OnMultiplayerSessionOpen(CString& sJoinedGame,CString& sDroppedGame,CString& sLeftGame);
Parameters
• CString& sJoinedGame - address of string containing joined game text
• CString& sDroppedGame - address of string containing dropped game text
• CString& sLeftGame - address of string containing left game text
Remarks
CBaldurChitin::OnMultiplayerSessionToClose
Event action when a multiplayer game session is about to close
virtual void CBaldurChitin::OnMultiplayerSessionToClose();
Remarks
CBaldurChitin::PreLoadFonts
Preload fonts for game
virtual void CBaldurChitin::PreLoadFonts();
Remarks
CBaldurChitin::SaveOptions
Save options
808 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CBaldurChitin::SaveOptions();
Remarks
CBaldurChitin::SetProgressBar
Set progress bar on screen
virtual void CBaldurChitin::SetProgressBar(unsigned char bEnabled,long nProgressBarCaption,int nBytesCopied,int nTotalBytes,unsigned char bTravel,long nParchmentCaption,unsigned char bWaiting,long nWaitingReason,unsigned char bDisplayMinibars,unsigned char bTimeoutCounter,unsigned long nSecondsToTimeout);
Parameters
• unsigned char bEnabled -
• long nProgressBarCaption -
• int nBytesCopied -
• int nTotalBytes -
• unsigned char bTravel -
• long nParchmentCaption -
• unsigned char bWaiting -
• long nWaitingReason -
• unsigned char bDisplayMinibars -
• unsigned char bTimeoutCounter -
• unsigned long nSecondsToTimeout -
Remarks
CBaldurChitin::SetProgressBarActivateEngine
virtual void CBaldurChitin::SetProgressBarActivateEngine(int bValue);
Parameters
• int bValue -
Remarks
6.12. CBaldurChitin Class 809
EEex Documentation, Release 1.0
CBaldurChitin::SetSoundVolumes
virtual void CBaldurChitin::SetSoundVolumes();
Remarks
CBaldurChitin::SetupPanels
virtual void CBaldurChitin::SetupPanels();
Remarks
CBaldurChitin::ShutDown
virtual void CBaldurChitin::ShutDown(int nLineNumber,char* szFileName,const char* text);
Parameters
• int nLineNumber - line number that shutdown occured at
• char* szFileName - file that shutdown occured at
• const char* text - message text for shutdown reason to output to log
Remarks
CBaldurChitin::SynchronousUpdate
virtual void CBaldurChitin::SynchronousUpdate();
Remarks
CBaldurChitin::UnloadFonts
Unload fonts previously loaded by game engine, typically when game is closing.
virtual void CBaldurChitin::UnloadFonts();
Remarks
810 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.13 CBaldurEngine Class
• Overview
• Quick Reference
• Constructors
• Methods
6.13.1 Overview
Note: The CBaldurEngine class handles
The structure used for this class is CBaldurEngine
6.13.2 Quick Reference
Quick Refvoid CBaldurEngine::CBaldurEngine()virtual void CBaldurEngine::CancelEngine()virtual void CBaldurEngine::CheckEnableLeftPanel()virtual void CBaldurEngine::CheckEnablePortraits(unsigned long dwPanelId)virtual void CBaldurEngine::EnablePortrait(unsigned long dwPanelId, unsigned long dwControlId, int bEnable)virtual CString __cdecl CBaldurEngine::FetchDialogString(const unsigned long dwStrId)virtual CString __cdecl CBaldurEngine::FetchString(const unsigned long dwStrId)virtual void CBaldurEngine::GetChatEditBoxStatus(CString& sChatText, int& bInputCapture)virtual int CBaldurEngine::GetPickedCharacter()virtual int CBaldurEngine::GetSelectedCharacter()virtual bool CBaldurEngine::OnEvent(SDL_Event* e)void CBaldurEngine::OnLeftPanelButtonClick(unsigned long dwButtonId)virtual void CBaldurEngine::OnLowMemory()virtual void CBaldurEngine::OnPortraitLClick(unsigned long id)virtual void CBaldurEngine::OnPortraitLDblClick(unsigned long __formal)virtual void CBaldurEngine::OnRestButtonClick()void CBaldurEngine::PlayGUISound(CResRef & cResSound)virtual void CBaldurEngine::RenderUI()virtual void CBaldurEngine::RequestPause()virtual void CBaldurEngine::SelectEngine(CWarp* pWarp)virtual void CBaldurEngine::SetChatEditBoxStatus(CString& sChatText, int bInputCapture)virtual void CBaldurEngine::SetPickedCharacter(int nPickedCharacter)virtual void CBaldurEngine::SetSelectedCharacter(int nNewSelectedCharacter)virtual void __cdecl CBaldurEngine::SetupFullKeyboardInput(CKeyInfo* keys, int* flags, int keyCount)virtual void __cdecl CBaldurEngine::SetupSmallKeyboardInput(CKeyInfo* keys, int* flags, int keyCount)virtual int CBaldurEngine::StopMusic()virtual void CBaldurEngine::TimerUpdate()
Continued on next page
6.13. CBaldurEngine Class 811
EEex Documentation, Release 1.0
Table 5 – continued from previous pagevirtual void CBaldurEngine::UpdateCharacterStatus(long nCharacterId)virtual void CBaldurEngine::UpdateContainerStatus(long __formal)virtual void CBaldurEngine::UpdateCursorShape(unsigned char nCursor)virtual void CBaldurEngine::UpdateGroundItems()virtual void CBaldurEngine::UpdatePartyGoldStatus()virtual void CBaldurEngine::UpdatePersonalItemStatus(long __formal)
6.13.3 Constructors
Name DescriptionCBaldurEngine::CBaldurEngine Constructs a CBaldurEngine object
CBaldurEngine::CBaldurEngine
Constructs a CBaldurEngine object
void CBaldurEngine::CBaldurEngine();
Remarks
Constructs a CBaldurEngine object
6.13.4 Methods
Name DescriptionCBaldurEngine::CancelEngineCBaldurEngine::CheckEnableLeftPanelCBaldurEngine::CheckEnablePortraitsCBaldurEngine::EnablePortraitCBaldurEngine::FetchDialogStringCBaldurEngine::FetchStringCBaldurEngine::GetChatEditBoxStatusCBaldurEngine::GetPickedCharacterCBaldurEngine::GetSelectedCharacterCBaldurEngine::OnEventCBaldurEngine::OnLeftPanelButtonClickCBaldurEngine::OnLowMemoryCBaldurEngine::OnPortraitLClickCBaldurEngine::OnPortraitLDblClickCBaldurEngine::OnRestButtonClickCBaldurEngine::PlayGUISoundCBaldurEngine::RenderUICBaldurEngine::RequestPauseCBaldurEngine::SelectEngineCBaldurEngine::SetChatEditBoxStatus
Continued on next page
812 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 6 – continued from previous pageCBaldurEngine::SetPickedCharacterCBaldurEngine::SetSelectedCharacterCBaldurEngine::SetupFullKeyboardInputCBaldurEngine::SetupSmallKeyboardInputCBaldurEngine::StopMusicCBaldurEngine::TimerUpdateCBaldurEngine::UpdateCharacterStatusCBaldurEngine::UpdateContainerStatusCBaldurEngine::UpdateCursorShapeCBaldurEngine::UpdateGroundItemsCBaldurEngine::UpdatePartyGoldStatusCBaldurEngine::UpdatePersonalItemStatus
CBaldurEngine::CancelEngine
virtual void CBaldurEngine::CancelEngine();
Remarks
CBaldurEngine::CheckEnableLeftPanel
virtual void CBaldurEngine::CheckEnableLeftPanel();
Remarks
CBaldurEngine::CheckEnablePortraits
virtual void CBaldurEngine::CheckEnablePortraits(unsigned long dwPanelId);
Parameters
• unsigned long dwPanelId -
Remarks
CBaldurEngine::EnablePortrait
virtual void CBaldurEngine::EnablePortrait(unsigned long dwPanelId,unsigned long dwControlId,int bEnable);
Parameters
• unsigned long dwPanelId -
6.13. CBaldurEngine Class 813
EEex Documentation, Release 1.0
• unsigned long dwControlId -
• int bEnable -
Remarks
CBaldurEngine::FetchDialogString
virtual CString __cdecl CBaldurEngine::FetchDialogString(const unsigned long dwStrId);
Parameters
• const unsigned long dwStrId -
Return Value
Returns CString
Remarks
CBaldurEngine::FetchString
virtual CString __cdecl CBaldurEngine::FetchString(const unsigned long dwStrId);
Parameters
• const unsigned long dwStrId -
Return Value
Returns CString
Remarks
CBaldurEngine::GetChatEditBoxStatus
virtual void CBaldurEngine::GetChatEditBoxStatus(CString& sChatText,int& bInputCapture);
Parameters
• CString& sChatText -
• int& bInputCapture -
Remarks
CBaldurEngine::GetPickedCharacter
814 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual int CBaldurEngine::GetPickedCharacter();
Return Value
Returns int
Remarks
CBaldurEngine::GetSelectedCharacter
virtual int CBaldurEngine::GetSelectedCharacter();
Return Value
Returns int
Remarks
CBaldurEngine::OnEvent
virtual bool CBaldurEngine::OnEvent(SDL_Event* e);
Parameters
• SDL_Event* e -
Return Value
Returns bool
Remarks
CBaldurEngine::OnLeftPanelButtonClick
void CBaldurEngine::OnLeftPanelButtonClick(unsigned long dwButtonId);
Parameters
• unsigned long dwButtonId -
Remarks
CBaldurEngine::OnLowMemory
virtual void CBaldurEngine::OnLowMemory();
Remarks
6.13. CBaldurEngine Class 815
EEex Documentation, Release 1.0
CBaldurEngine::OnPortraitLClick
virtual void CBaldurEngine::OnPortraitLClick((unsigned long id);
Parameters
• unsigned long id -
Remarks
CBaldurEngine::OnPortraitLDblClick
virtual void CBaldurEngine::OnPortraitLDblClick(unsigned long __formal);
Parameters
• unsigned long __formal -
Remarks
CBaldurEngine::OnRestButtonClick
virtual void CBaldurEngine::OnRestButtonClick();
Remarks
CBaldurEngine::PlayGUISound
void CBaldurEngine::PlayGUISound(CResRef& cResSound);
Parameters
• CResRef & cResSound - resource reference of sound to play
Remarks
CBaldurEngine::RenderUI
virtual void CBaldurEngine::RenderUI();
Remarks
CBaldurEngine::RequestPause
816 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual void CBaldurEngine::RequestPause();
Remarks
CBaldurEngine::SelectEngine
virtual void CBaldurEngine::SelectEngine(CWarp* pWarp);
Parameters
• CWarp* pWarp -
Remarks
CBaldurEngine::SetChatEditBoxStatus
virtual void CBaldurEngine::SetChatEditBoxStatus(CString& sChatText,int bInputCapture);
Parameters
• CString& sChatText -
• int bInputCapture -
Remarks
CBaldurEngine::SetPickedCharacter
virtual void CBaldurEngine::SetPickedCharacter(int nPickedCharacter);
Parameters
• int nPickedCharacter -
Remarks
CBaldurEngine::SetSelectedCharacter
virtual void CBaldurEngine::SetSelectedCharacter(int nNewSelectedCharacter);
Parameters
• int nNewSelectedCharacter -
Remarks
6.13. CBaldurEngine Class 817
EEex Documentation, Release 1.0
CBaldurEngine::SetupFullKeyboardInput
virtual void __cdecl CBaldurEngine::SetupFullKeyboardInput(CKeyInfo* keys,int* flags,int keyCount);
Parameters
• CKeyInfo* keys -
• int* flags -
• int keyCount -
Remarks
CBaldurEngine::SetupSmallKeyboardInput
virtual void __cdecl CBaldurEngine::SetupSmallKeyboardInput(CKeyInfo* keys,int* flags,int keyCount);
Parameters
• CKeyInfo* keys -
• int* flags -
• int keyCount -
Remarks
CBaldurEngine::StopMusic
virtual int CBaldurEngine::StopMusic();
Return Value
Returns int
Remarks
CBaldurEngine::TimerUpdate
virtual void CBaldurEngine::TimerUpdate();
Remarks
818 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CBaldurEngine::UpdateCharacterStatus
virtual void CBaldurEngine::UpdateCharacterStatus(long nCharacterId);
Parameters
• long nCharacterId -
Remarks
CBaldurEngine::UpdateContainerStatus
virtual void CBaldurEngine::UpdateContainerStatus(long nCharacterId);
Parameters
• long nCharacterId -
Remarks
CBaldurEngine::UpdateContainerStatus
virtual void CBaldurEngine::UpdateContainerStatus(long __formal);
Parameters
• long __formal -
Remarks
CBaldurEngine::UpdateCursorShape
virtual void CBaldurEngine::UpdateCursorShape(unsigned char nCursor);
Parameters
• unsigned char nCursor -
Remarks
CBaldurEngine::UpdateGroundItems
virtual void CBaldurEngine::UpdateGroundItems();
Remarks
6.13. CBaldurEngine Class 819
EEex Documentation, Release 1.0
CBaldurEngine::UpdatePartyGoldStatus
virtual void CBaldurEngine::UpdatePartyGoldStatus();
Remarks
CBaldurEngine::UpdatePersonalItemStatus
virtual void CBaldurEngine::UpdatePersonalItemStatus(long __formal);
Parameters
• long __formal -
Remarks
6.14 CBaldurMessage Class
• Overview
• Quick Reference
• Constructors
• Methods
6.14.1 Overview
The structure used for this class is CBaldurMessage
6.14.2 Quick Reference
Quick Refvoid CBaldurMessage::CBaldurMessage()void CBaldurMessage::~CBaldurMessage()int CBaldurMessage::AddDroppedPlayer(int playerID)unsigned char CBaldurMessage::AnnounceAreaMapANote(CString area, unsigned short startX, unsigned short startY, CString szNote, unsigned long dwFlags, unsigned long strRef)unsigned char CBaldurMessage::AnnounceAreaMapNote(CString area, unsigned short startX, unsigned short startY, CString szNote, unsigned long dwFlags, unsigned long strRef)unsigned char CBaldurMessage::AnnounceBiography(unsigned char nFixedPartyId, CString szBio)unsigned char CBaldurMessage::AnnounceJournalDeleteEntry(unsigned long strText)unsigned char CBaldurMessage::AnnounceJournalEntry(unsigned long strText, int nChapter, long nTime, unsigned short nType)unsigned char CBaldurMessage::AnnounceJournalEntryChange(CString szText, unsigned char nCharacter, int nChapter, unsigned long nIndex)unsigned char CBaldurMessage::AnnounceJournalSetQuestDone(unsigned long strText)unsigned char CBaldurMessage::AnnounceJournalUserEntry(CString szText, unsigned char nCharacter, int nChapter, long nTime, unsigned long nIndex, unsigned short nType, unsigned long strRef)void CBaldurMessage::BroadcastDemandCharacterSlotReply(unsigned char bUpdateAllCharacters, int nUpdatedCharacterSlot, unsigned char bProgressBarInPlace)
Continued on next page
820 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 7 – continued from previous pagevoid CBaldurMessage::BroadcastUpdateCharacterSlot(unsigned char bUpdateAllCharacters, int nUpdatedCharacterSlot, unsigned char bProgressBarInPlace)unsigned char CBaldurMessage::CancelCloseSessionPoll()unsigned char CBaldurMessage::CancelDeleteAreaPoll()unsigned char CBaldurMessage::CancelDialogRequestToServer()unsigned char CBaldurMessage::ChapterAnnounceStatus(unsigned char newChapter, CResRef cResRef)unsigned char CBaldurMessage::CharacterPartyOrderAnnounce()unsigned char CBaldurMessage::CharacterPartyOrderRequest()unsigned char CBaldurMessage::CharacterPartyRemovePickPanel(unsigned char bPauseStatus)void CBaldurMessage::CleanLeaveAreaLuaRequest()void CBaldurMessage::CleanLeaveAreaNameRequest()unsigned char CBaldurMessage::CloseSessionBallotComplete()unsigned char CBaldurMessage::CloseSessionCloseSession(unsigned char bVoteResult)unsigned char CBaldurMessage::CloseSessionReturnBallot(unsigned char bVote)unsigned char CBaldurMessage::CloseSessionStartPoll(unsigned char bResendBallot)unsigned char CBaldurMessage::DeleteAreaBallotComplete()unsigned char CBaldurMessage::DeleteAreaBallotResult()unsigned char CBaldurMessage::DeleteAreaDeleteArea(CString sAreaToDelete, unsigned char bVoteResult)unsigned char CBaldurMessage::DeleteAreaReturnBallot(CString sArea, unsigned char bVote)unsigned char CBaldurMessage::DeleteAreaStartPoll(CString sAreaToDelete, unsigned char bResendBallot)unsigned char CBaldurMessage::DemandCharacterSlot(short nCharacterSlot, unsigned char bDemandFromHost, short nPlayerSlot)unsigned char CBaldurMessage::DemandCharacterSlotReply(CString& sSendTo, short nCharacterSlot, unsigned char bSendCharInfo)unsigned char CBaldurMessage::DemandResourceFromServer(CString& sResName, unsigned int nType, unsigned char bSendMessage, unsigned char bWaitForMessage, unsigned char bSaveToTemp)unsigned char CBaldurMessage::DemandSettingsNightmareMode(bool waitForIt)unsigned char CBaldurMessage::DialogRequestKillOrUse()void CBaldurMessage::HandleBlockingMessages()unsigned char CBaldurMessage::KickOutWaitingForSignal(unsigned char signalType, unsigned char signalToWaitFor)int CBaldurMessage::KickPlayerRequest(CString& sPlayerName)void CBaldurMessage::KickPlayerServerSupport(CString& sPlayerName)unsigned char CBaldurMessage::MovieAnnounceStatus(CResRef cResMovie)unsigned char CBaldurMessage::MultiplayerSynchReply()unsigned char CBaldurMessage::MultiplayerSynchRequest()unsigned char CBaldurMessage::NonBlockingWaitForSignal(unsigned char signalType, unsigned char signalToWaitFor)int CBaldurMessage::ObjectAdd(long localObjectID, unsigned char nObjectType, unsigned char* pObjectData, unsigned long dwObjectDataSize)int CBaldurMessage::ObjectArrayDelete()int CBaldurMessage::ObjectControl()int CBaldurMessage::ObjectControlRequest(long localObjectID)int CBaldurMessage::ObjectControlSuggestion(int playerToSuggestID, long localObjectID)int CBaldurMessage::ObjectDelete(long localObjectID)int CBaldurMessage::ObjectDeleteRequest(long localObjectID)unsigned char CBaldurMessage::OnAnnounceAreaMapANote(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnAnnounceAreaMapNote(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnAnnounceBiography(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnAnnounceJournalDeleteEntry(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnAnnounceJournalEntry(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnAnnounceJournalEntryChange(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnAnnounceJournalSetQuestDone(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnAnnounceJournalUserEntry(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnCancelDialogRequestToServer(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnChapterAnnounceStatus(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnChapterSendRequest(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)
Continued on next page
6.14. CBaldurMessage Class 821
EEex Documentation, Release 1.0
Table 7 – continued from previous pageunsigned char CBaldurMessage::OnCharacterPartyOrderAnnounce(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnCharacterPartyOrderRequest(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnCharacterPartyRemovePickPanel(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnChatMessage(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnCloseSessionCloseSession(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnCloseSessionReturnBallot(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnCloseSessionStartPoll(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnDeleteAreaDeleteArea(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnDeleteAreaReturnBallot(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnDeleteAreaStartPoll(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnDemandCharacterSlot(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnDemandCharacterSlotReply(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnDemandSettingsNightmareMode(int nMsgFrom)unsigned char CBaldurMessage::OnDialogReplyFromServer(unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnDialogRequestKillOrUse(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnDialogRequestToServer(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)int CBaldurMessage::OnKickPlayerHoofedOut(int nMsgFrom)int CBaldurMessage::OnKickPlayerRequest(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnKickPlayerServerSupport(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnLeaveAreaLuaAnnouncement(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnLeaveAreaLuaPanicToServer(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnLeaveAreaLuaReplyFromServer(unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnLeaveAreaLuaRequestToServer(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnLeaveAreaNameAnnouncement(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnLeaveAreaNameReplyFromServer(unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnLeaveAreaNameRequestToServer(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnMapWorldAnnounceArea(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnMapWorldAnnounceAreaRequest(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnMapWorldAnnounceStatus(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnMapWorldCancelRequest(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnMapWorldRequest(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnMapWorldRevealArea(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnMovieAnnounceStatus(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnMovieEndCredits(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnMovieRequest(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnMultiplayerSynchReply(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnMultiplayerSynchRequest(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)int CBaldurMessage::OnObjectAdd(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnObjectArrayDelete(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnObjectControl(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnObjectControlRequest(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnObjectControlSuggestion(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnObjectDelete(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnObjectDeleteRequest(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnPauseAnnounceStatus(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnPauseRequestToServer(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnProgressBarStatus(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnReformPartyAnnounceStatus(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnReformPartyRequest(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnRequestClientSignal(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)
Continued on next page
822 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 7 – continued from previous pageunsigned char CBaldurMessage::OnResourceDemanded(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnResourceReply(unsigned char* pByteMessage, unsigned long dwSize, unsigned char bSaveToTemp)unsigned char CBaldurMessage::OnResourceSuggestLoad(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnRestAnnounceStatus(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnRestRequest(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSendAreaMapANote(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSendAreaMapNote(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSendBiography(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSendEntryJournalChange(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSendJournalDeleteEntry(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSendJournalEntry(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSendJournalSetQuestDone(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSendJournalUserEntry(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSendResourceToServer(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSettingsArbitrationLockAllowInput(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSettingsArbitrationLockRequest(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSettingsArbitrationLockStatus(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnSettingsCharacterControlSet(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnSettingsCharacterReadySet(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSettingsCharacterSlotStatus(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnSettingsFullDemanded(int nMsgFrom)int CBaldurMessage::OnSettingsFullSet(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnSettingsGoreRequirement(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnSettingsImportingOptionSet(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnSettingsJoinRequestOptionSet(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSettingsNightmareMode(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnSettingsPermissionSet(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSettingsPlayerReadySet(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)int CBaldurMessage::OnSettingsRestrictStoreOptionSet(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSignal(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnSwapItemReply(unsigned char* pMessage, unsigned long dwSize, CItem*& pNewItem, unsigned long& strError)unsigned char CBaldurMessage::OnSwapItemRequest(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnTextScreenAnnounceStatus(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnTextScreenCompletion(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnTextScreenSendRequest(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnTimeChangeToServer(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnTimeSynchBroadcast(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnUpdateCharacterSlotReply(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnUpdateDemandCharacterSlot(int nMsgFrom, unsigned char* pMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnVersionServer(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::OnWeatherBroadcast(int nMsgFrom, unsigned char* pByteMessage, unsigned long dwSize)unsigned char CBaldurMessage::PauseAnnounceStatus(unsigned char bHardPauseStatus, unsigned char bPauseStatus, int idPauser, unsigned char bVisualPause, unsigned char bForceCall, unsigned char bRequireHostUnpause)unsigned char* CBaldurMessage::PollSpecificMessageType(unsigned char nMsgType, unsigned char nMsgSubType, int& nMsgFrom, unsigned long& dwSize)int CBaldurMessage::PurgeDroppedPlayers()unsigned char CBaldurMessage::RemoveSignalsFromQueue(unsigned char signalType, unsigned char signalData)unsigned char CBaldurMessage::RequestClientSignal(unsigned char signalToSend)unsigned char CBaldurMessage::ResourceSuggestLoad(CString& sResName, unsigned int nType, unsigned long dwFlags)unsigned char CBaldurMessage::RestAnnounceStatus(unsigned char nDreamToDisplay, int nHP, unsigned char bRenting, unsigned char bMovie, int nGP)unsigned char CBaldurMessage::SendArbitrationLockAllowInput(unsigned char bStatus)unsigned char CBaldurMessage::SendArbitrationLockRequestToServer(unsigned char bLockValue)
Continued on next page
6.14. CBaldurMessage Class 823
EEex Documentation, Release 1.0
Table 7 – continued from previous pageunsigned char CBaldurMessage::SendArbitrationLockStatus(unsigned char bStatus)unsigned char CBaldurMessage::SendAreaMapANoteToServer(CString area, unsigned short startX, unsigned short startY, CString szNote, unsigned long dwFlags, unsigned long strRef)unsigned char CBaldurMessage::SendAreaMapNoteToServer(CString area, unsigned short startX, unsigned short startY, CString szNote, unsigned long dwFlags, unsigned long strRef)unsigned char CBaldurMessage::SendBiographyToServer(unsigned char nFixedPartyId, CString szBio)unsigned char CBaldurMessage::SendChapterRequestToServer(unsigned char newChapter, CResRef cResRef)int CBaldurMessage::SendCharacterControlToServer(CString& sPlayerName, int nCharacterSlot, unsigned char bFlush, unsigned char bCharacterUpdate)int CBaldurMessage::SendCharacterReadyToServer(int nCharacterSlot, unsigned char bCharacterReady)unsigned char CBaldurMessage::SendCharacterSlotStatusToServer(short nCharacterSlot, unsigned char nStatus)unsigned char CBaldurMessage::SendChatMessage(CString& sChatMessage, int nameless)unsigned char CBaldurMessage::SendDialogRequestToServer(unsigned char bTestPermission)int CBaldurMessage::SendFullSettingsToClients(CString& sPlayerName)int CBaldurMessage::SendGoreRequirementToServer(unsigned long nGore, unsigned long nGoreOption)int CBaldurMessage::SendImportingOptionToServer(unsigned char nImportingBitField)int CBaldurMessage::SendJoinRequestOptionToServer(unsigned char bListenToJoin)unsigned char CBaldurMessage::SendJournalDeleteEntryToServer(unsigned long strText)unsigned char CBaldurMessage::SendJournalEntryChangeToServer(CString szText, unsigned char nCharacter, int nChapter, unsigned long nIndex)unsigned char CBaldurMessage::SendJournalEntryToServer(unsigned long strText, int nChapter, long nTime, unsigned short nType)unsigned char CBaldurMessage::SendJournalSetQuestDoneToServer(unsigned long strText)unsigned char CBaldurMessage::SendJournalUserEntry(CString szText, unsigned char nCharacter, int nChapter, long nTime, unsigned long nIndex, unsigned short nType, unsigned long strRef)unsigned char CBaldurMessage::SendLeaveAreaLuaAnnouncement(long iSprite, CPoint ptStart, short nDirection, CString sAreaName, CString sParchment)unsigned char CBaldurMessage::SendLeaveAreaLuaPanicToServer(CPoint ptStart, short nDirection, CString sAreaName, CString sParchment)unsigned char CBaldurMessage::SendLeaveAreaLuaRequestToServer(long iSprite, CPoint ptStart, short nDirection, CString sAreaName, CString sParchment)unsigned char CBaldurMessage::SendLeaveAreaNameAnnouncement(long iSprite, long iTrigger, CString sAreaName)unsigned char CBaldurMessage::SendLeaveAreaNameRequestToServer(long iSprite, long iTrigger, CString sAreaName)unsigned char CBaldurMessage::SendMapWorldAnnounceArea(CString sAreaResRef, unsigned long nLink, CString sEntryPoint, short nFacing, unsigned char bEncounter, unsigned long nTravelTime)unsigned char CBaldurMessage::SendMapWorldAnnounceAreaRequest(CString sAreaResRef, unsigned long nLink, CString sEntryPoint, short nFacing, unsigned char bEncounter, unsigned long nTravelTime)unsigned char CBaldurMessage::SendMapWorldAnnounceStatus(unsigned char bActive, int idController, long nLeavingEdge)unsigned char CBaldurMessage::SendMapWorldCancelRequestToServer()unsigned char CBaldurMessage::SendMapWorldRequestToServer(long facingDirection)unsigned char CBaldurMessage::SendMapWorldRevealArea(CString sAreaResRef, unsigned char enable)unsigned char CBaldurMessage::SendMovieEndCreditsToServer()unsigned char CBaldurMessage::SendMovieRequestToServer(CResRef cResMovie)unsigned char CBaldurMessage::SendPauseRequestToServer(unsigned char bVisualPause, unsigned char bPauseToBeSetTo)int CBaldurMessage::SendPermissionToServer(CString& sPlayerName, int nPermission, unsigned char bValue)unsigned char CBaldurMessage::SendPlayerReadyToServer(int idPlayer, unsigned char bValue)unsigned char CBaldurMessage::SendProgressBarStatus(long nActionProgress, long nActionTarget, unsigned char bWaiting, long nWaitingReason, unsigned char bTimeoutVisible, unsigned long nSecondsToTimeout)unsigned char CBaldurMessage::SendReformPartyAnnounceStatus()unsigned char CBaldurMessage::SendReformPartyRequestToServer()unsigned char CBaldurMessage::SendRestRequestToServer(int nHP, unsigned char bRenting, unsigned char bMovie, int nGP)int CBaldurMessage::SendRestrictStoreOptionToServer(unsigned char bRestrictStore)unsigned char CBaldurMessage::SendSettingsNightmareMode(CString& sPlayerName)unsigned char CBaldurMessage::SendSignal(unsigned char signalType, unsigned char signalToSend)unsigned char CBaldurMessage::SendTextScreenRequestToServer(CResRef cResRef)void CBaldurMessage::SetSignalDefaultSecondsToTimeout()void CBaldurMessage::SetVersionControlShutdownClientString(CString sValue)void CBaldurMessage::SetVersionControlShutdownServerString(CString sValue)unsigned char CBaldurMessage::SwapItemReply(int nSendToLocation, unsigned char bRemoteRetValue, CItem* pItem, unsigned long strError)unsigned char CBaldurMessage::SwapItemRequest(unsigned char nSwapItemType, long localObjectId, short nSlotNumber, CItem*& pNewItem, unsigned long& strError, unsigned short wCount, int bAutoStacking, int bFlexibleSlot)unsigned char CBaldurMessage::TextScreenAnnounceStatus(CResRef cResRef)unsigned char CBaldurMessage::TextScreenCompletion()
Continued on next page
824 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 7 – continued from previous pageunsigned char CBaldurMessage::TimeChangeToServer(unsigned long deltaTime)unsigned char CBaldurMessage::TimeSynchBroadcast(unsigned long nGameTime, unsigned char bCompressTime)unsigned char CBaldurMessage::UpdateCharacterSlotReply(CString& sSendTo, short nCharacterSlot, unsigned char bSendCharInfo)unsigned char CBaldurMessage::UpdateDemandCharacterSlot(short nCharacterSlot, short nPlayerSlot, unsigned char bForceClientToWorld)void CBaldurMessage::UpdateDemandCharacters(unsigned char bUpdateAllCharacters, int nUpdatedCharacterSlot, unsigned char bProgressBarInPlace, unsigned char bForceClientsToWorld)unsigned char CBaldurMessage::VersionServer(CString sPlayerName)unsigned char CBaldurMessage::WaitForSignal(unsigned char signalType, unsigned char signalToWaitFor)unsigned char CBaldurMessage::WeatherBroadcast(unsigned short wWeatherFlags)
6.14.3 Constructors
Name DescriptionCBaldurMessage::CBaldurMessage Constructs a CBaldurMessage objectCBaldurMessage::~CBaldurMessage Destroys a CBaldurMessage object
CBaldurMessage::CBaldurMessage
Constructs a CBaldurMessage object
void CBaldurMessage::CBaldurMessage();
Remarks
Constructs a CBaldurMessage object
CBaldurMessage::~CBaldurMessage
Destroys the CBaldurMessage object
void CBaldurMessage::~CBaldurMessage();
Remarks
Destroys the CBaldurMessage object
6.14.4 Methods
Name DescriptionCBaldurMessage::AddDroppedPlayerCBaldurMessage::AnnounceAreaMapANoteCBaldurMessage::AnnounceAreaMapNoteCBaldurMessage::AnnounceBiographyCBaldurMessage::AnnounceJournalDeleteEntry
Continued on next page
6.14. CBaldurMessage Class 825
EEex Documentation, Release 1.0
Table 8 – continued from previous pageCBaldurMessage::AnnounceJournalEntryCBaldurMessage::AnnounceJournalEntryChangeCBaldurMessage::AnnounceJournalSetQuestDoneCBaldurMessage::AnnounceJournalUserEntryCBaldurMessage::BroadcastDemandCharacterSlotReplyCBaldurMessage::BroadcastUpdateCharacterSlotCBaldurMessage::CancelCloseSessionPollCBaldurMessage::CancelDeleteAreaPollCBaldurMessage::CancelDialogRequestToServerCBaldurMessage::ChapterAnnounceStatusCBaldurMessage::CharacterPartyOrderAnnounceCBaldurMessage::CharacterPartyOrderRequestCBaldurMessage::CharacterPartyRemovePickPanelCBaldurMessage::CleanLeaveAreaLuaRequestCBaldurMessage::CleanLeaveAreaNameRequestCBaldurMessage::CloseSessionBallotCompleteCBaldurMessage::CloseSessionCloseSessionCBaldurMessage::CloseSessionReturnBallotCBaldurMessage::CloseSessionStartPollCBaldurMessage::DeleteAreaBallotCompleteCBaldurMessage::DeleteAreaBallotResultCBaldurMessage::DeleteAreaDeleteAreaCBaldurMessage::DeleteAreaReturnBallotCBaldurMessage::DeleteAreaStartPollCBaldurMessage::DemandCharacterSlotCBaldurMessage::DemandCharacterSlotReplyCBaldurMessage::DemandResourceFromServerCBaldurMessage::DemandSettingsNightmareModeCBaldurMessage::DialogRequestKillOrUseCBaldurMessage::HandleBlockingMessagesCBaldurMessage::KickOutWaitingForSignalCBaldurMessage::KickPlayerRequestCBaldurMessage::KickPlayerServerSupportCBaldurMessage::MovieAnnounceStatusCBaldurMessage::MultiplayerSynchReplyCBaldurMessage::MultiplayerSynchRequestCBaldurMessage::NonBlockingWaitForSignalCBaldurMessage::ObjectAddCBaldurMessage::ObjectArrayDeleteCBaldurMessage::ObjectControlCBaldurMessage::ObjectControlRequestCBaldurMessage::ObjectControlSuggestionCBaldurMessage::ObjectDeleteCBaldurMessage::ObjectDeleteRequestCBaldurMessage::OnAnnounceAreaMapANoteCBaldurMessage::OnAnnounceAreaMapNoteCBaldurMessage::OnAnnounceBiographyCBaldurMessage::OnAnnounceJournalDeleteEntryCBaldurMessage::OnAnnounceJournalEntryCBaldurMessage::OnAnnounceJournalEntryChange
Continued on next page
826 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 8 – continued from previous pageCBaldurMessage::OnAnnounceJournalSetQuestDoneCBaldurMessage::OnAnnounceJournalUserEntryCBaldurMessage::OnCancelDialogRequestToServerCBaldurMessage::OnChapterAnnounceStatusCBaldurMessage::OnChapterSendRequestCBaldurMessage::OnCharacterPartyOrderAnnounceCBaldurMessage::OnCharacterPartyOrderRequestCBaldurMessage::OnCharacterPartyRemovePickPanelCBaldurMessage::OnChatMessageCBaldurMessage::OnCloseSessionCloseSessionCBaldurMessage::OnCloseSessionReturnBallotCBaldurMessage::OnCloseSessionStartPollCBaldurMessage::OnDeleteAreaDeleteAreaCBaldurMessage::OnDeleteAreaReturnBallotCBaldurMessage::OnDeleteAreaStartPollCBaldurMessage::OnDemandCharacterSlotCBaldurMessage::OnDemandCharacterSlotReplyCBaldurMessage::OnDemandSettingsNightmareModeCBaldurMessage::OnDialogReplyFromServerCBaldurMessage::OnDialogRequestKillOrUseCBaldurMessage::OnDialogRequestToServerCBaldurMessage::OnKickPlayerHoofedOutCBaldurMessage::OnKickPlayerRequestCBaldurMessage::OnKickPlayerServerSupportCBaldurMessage::OnLeaveAreaLuaAnnouncementCBaldurMessage::OnLeaveAreaLuaPanicToServerCBaldurMessage::OnLeaveAreaLuaReplyFromServerCBaldurMessage::OnLeaveAreaLuaRequestToServerCBaldurMessage::OnLeaveAreaNameAnnouncementCBaldurMessage::OnLeaveAreaNameReplyFromServerCBaldurMessage::OnLeaveAreaNameRequestToServerCBaldurMessage::OnMapWorldAnnounceAreaCBaldurMessage::OnMapWorldAnnounceAreaRequestCBaldurMessage::OnMapWorldAnnounceStatusCBaldurMessage::OnMapWorldCancelRequestCBaldurMessage::OnMapWorldRequestCBaldurMessage::OnMapWorldRevealAreaCBaldurMessage::OnMovieAnnounceStatusCBaldurMessage::OnMovieEndCreditsCBaldurMessage::OnMovieRequestCBaldurMessage::OnMultiplayerSynchReplyCBaldurMessage::OnMultiplayerSynchRequestCBaldurMessage::OnObjectAddCBaldurMessage::OnObjectArrayDeleteCBaldurMessage::OnObjectControlCBaldurMessage::OnObjectControlRequestCBaldurMessage::OnObjectControlSuggestionCBaldurMessage::OnObjectDeleteCBaldurMessage::OnObjectDeleteRequestCBaldurMessage::OnPauseAnnounceStatus
Continued on next page
6.14. CBaldurMessage Class 827
EEex Documentation, Release 1.0
Table 8 – continued from previous pageCBaldurMessage::OnPauseRequestToServerCBaldurMessage::OnProgressBarStatusCBaldurMessage::OnReformPartyAnnounceStatusCBaldurMessage::OnReformPartyRequestCBaldurMessage::OnRequestClientSignalCBaldurMessage::OnResourceDemandedCBaldurMessage::OnResourceReplyCBaldurMessage::OnResourceSuggestLoadCBaldurMessage::OnRestAnnounceStatusCBaldurMessage::OnRestRequestCBaldurMessage::OnSendAreaMapANoteCBaldurMessage::OnSendAreaMapNoteCBaldurMessage::OnSendBiographyCBaldurMessage::OnSendEntryJournalChangeCBaldurMessage::OnSendJournalDeleteEntryCBaldurMessage::OnSendJournalEntryCBaldurMessage::OnSendJournalSetQuestDoneCBaldurMessage::OnSendJournalUserEntryCBaldurMessage::OnSendResourceToServerCBaldurMessage::OnSettingsArbitrationLockAllowInputCBaldurMessage::OnSettingsArbitrationLockRequestCBaldurMessage::OnSettingsArbitrationLockStatusCBaldurMessage::OnSettingsCharacterControlSetCBaldurMessage::OnSettingsCharacterReadySetCBaldurMessage::OnSettingsCharacterSlotStatusCBaldurMessage::OnSettingsFullDemandedCBaldurMessage::OnSettingsFullSetCBaldurMessage::OnSettingsGoreRequirementCBaldurMessage::OnSettingsImportingOptionSetCBaldurMessage::OnSettingsJoinRequestOptionSetCBaldurMessage::OnSettingsNightmareModeCBaldurMessage::OnSettingsPermissionSetCBaldurMessage::OnSettingsPlayerReadySetCBaldurMessage::OnSettingsRestrictStoreOptionSetCBaldurMessage::OnSignalCBaldurMessage::OnSwapItemReplyCBaldurMessage::OnSwapItemRequestCBaldurMessage::OnTextScreenAnnounceStatusCBaldurMessage::OnTextScreenCompletionCBaldurMessage::OnTextScreenSendRequestCBaldurMessage::OnTimeChangeToServerCBaldurMessage::OnTimeSynchBroadcastCBaldurMessage::OnUpdateCharacterSlotReplyCBaldurMessage::OnUpdateDemandCharacterSlotCBaldurMessage::OnVersionServerCBaldurMessage::OnWeatherBroadcastCBaldurMessage::PauseAnnounceStatusCBaldurMessage::PollSpecificMessageTypeCBaldurMessage::PurgeDroppedPlayersCBaldurMessage::RemoveSignalsFromQueue
Continued on next page
828 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 8 – continued from previous pageCBaldurMessage::RequestClientSignalCBaldurMessage::ResourceSuggestLoadCBaldurMessage::RestAnnounceStatusCBaldurMessage::SendArbitrationLockAllowInputCBaldurMessage::SendArbitrationLockRequestToServerCBaldurMessage::SendArbitrationLockStatusCBaldurMessage::SendAreaMapANoteToServerCBaldurMessage::SendAreaMapNoteToServerCBaldurMessage::SendBiographyToServerCBaldurMessage::SendChapterRequestToServerCBaldurMessage::SendCharacterControlToServerCBaldurMessage::SendCharacterReadyToServerCBaldurMessage::SendCharacterSlotStatusToServerCBaldurMessage::SendChatMessageCBaldurMessage::SendDialogRequestToServerCBaldurMessage::SendFullSettingsToClientsCBaldurMessage::SendGoreRequirementToServerCBaldurMessage::SendImportingOptionToServerCBaldurMessage::SendJoinRequestOptionToServerCBaldurMessage::SendJournalDeleteEntryToServerCBaldurMessage::SendJournalEntryChangeToServerCBaldurMessage::SendJournalEntryToServerCBaldurMessage::SendJournalSetQuestDoneToServerCBaldurMessage::SendJournalUserEntryCBaldurMessage::SendLeaveAreaLuaAnnouncementCBaldurMessage::SendLeaveAreaLuaPanicToServerCBaldurMessage::SendLeaveAreaLuaRequestToServerCBaldurMessage::SendLeaveAreaNameAnnouncementCBaldurMessage::SendLeaveAreaNameRequestToServerCBaldurMessage::SendMapWorldAnnounceAreaCBaldurMessage::SendMapWorldAnnounceAreaRequestCBaldurMessage::SendMapWorldAnnounceStatusCBaldurMessage::SendMapWorldCancelRequestToServerCBaldurMessage::SendMapWorldRequestToServerCBaldurMessage::SendMapWorldRevealAreaCBaldurMessage::SendMovieEndCreditsToServerCBaldurMessage::SendMovieRequestToServerCBaldurMessage::SendPauseRequestToServerCBaldurMessage::SendPermissionToServerCBaldurMessage::SendPlayerReadyToServerCBaldurMessage::SendProgressBarStatusCBaldurMessage::SendReformPartyAnnounceStatusCBaldurMessage::SendReformPartyRequestToServerCBaldurMessage::SendRestRequestToServerCBaldurMessage::SendRestrictStoreOptionToServerCBaldurMessage::SendSettingsNightmareModeCBaldurMessage::SendSignalCBaldurMessage::SendTextScreenRequestToServerCBaldurMessage::SetSignalDefaultSecondsToTimeoutCBaldurMessage::SetVersionControlShutdownClientString
Continued on next page
6.14. CBaldurMessage Class 829
EEex Documentation, Release 1.0
Table 8 – continued from previous pageCBaldurMessage::SetVersionControlShutdownServerStringCBaldurMessage::SwapItemReplyCBaldurMessage::SwapItemRequestCBaldurMessage::TextScreenAnnounceStatusCBaldurMessage::TextScreenCompletionCBaldurMessage::TimeChangeToServerCBaldurMessage::TimeSynchBroadcastCBaldurMessage::UpdateCharacterSlotReplyCBaldurMessage::UpdateDemandCharacterSlotCBaldurMessage::UpdateDemandCharactersCBaldurMessage::VersionServerCBaldurMessage::WaitForSignalCBaldurMessage::WeatherBroadcast
CBaldurMessage::AddDroppedPlayer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::AnnounceAreaMapANote
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
830 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CBaldurMessage::AnnounceAreaMapNote
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::AnnounceBiography
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::AnnounceJournalDeleteEntry
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
6.14. CBaldurMessage Class 831
EEex Documentation, Release 1.0
CBaldurMessage::AnnounceJournalEntry
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::AnnounceJournalEntryChange
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::AnnounceJournalSetQuestDone
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
832 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CBaldurMessage::AnnounceJournalUserEntry
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::BroadcastDemandCharacterSlotReply
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::BroadcastUpdateCharacterSlot
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
6.14. CBaldurMessage Class 833
EEex Documentation, Release 1.0
CBaldurMessage::CancelCloseSessionPoll
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::CancelDeleteAreaPoll
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::CancelDialogRequestToServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
834 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CBaldurMessage::ChapterAnnounceStatus
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::CharacterPartyOrderAnnounce
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::CharacterPartyOrderRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
6.14. CBaldurMessage Class 835
EEex Documentation, Release 1.0
CBaldurMessage::CharacterPartyRemovePickPanel
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::CleanLeaveAreaLuaRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::CleanLeaveAreaNameRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::CloseSessionBallotComplete
836 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::CloseSessionCloseSession
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::CloseSessionReturnBallot
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::CloseSessionStartPoll
6.14. CBaldurMessage Class 837
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::DeleteAreaBallotComplete
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::DeleteAreaBallotResult
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::DeleteAreaDeleteArea
838 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::DeleteAreaReturnBallot
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::DeleteAreaStartPoll
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::DemandCharacterSlot
6.14. CBaldurMessage Class 839
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::DemandCharacterSlotReply
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::DemandResourceFromServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::DemandSettingsNightmareMode
840 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::DialogRequestKillOrUse
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::HandleBlockingMessages
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::KickOutWaitingForSignal
6.14. CBaldurMessage Class 841
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::KickPlayerRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::KickPlayerServerSupport
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::MovieAnnounceStatus
842 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::MultiplayerSynchReply
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::MultiplayerSynchRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::NonBlockingWaitForSignal
6.14. CBaldurMessage Class 843
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::ObjectAdd
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::ObjectArrayDelete
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::ObjectControl
844 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::ObjectControlRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::ObjectControlSuggestion
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::ObjectDelete
6.14. CBaldurMessage Class 845
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::ObjectDeleteRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnAnnounceAreaMapANote
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnAnnounceAreaMapNote
846 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnAnnounceBiography
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnAnnounceJournalDeleteEntry
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnAnnounceJournalEntry
6.14. CBaldurMessage Class 847
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnAnnounceJournalEntryChange
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnAnnounceJournalSetQuestDone
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnAnnounceJournalUserEntry
848 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnCancelDialogRequestToServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnChapterAnnounceStatus
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnChapterSendRequest
6.14. CBaldurMessage Class 849
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnCharacterPartyOrderAnnounce
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnCharacterPartyOrderRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnCharacterPartyRemovePickPanel
850 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnChatMessage
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnCloseSessionCloseSession
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnCloseSessionReturnBallot
6.14. CBaldurMessage Class 851
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnCloseSessionStartPoll
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnDeleteAreaDeleteArea
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnDeleteAreaReturnBallot
852 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnDeleteAreaStartPoll
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnDemandCharacterSlot
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnDemandCharacterSlotReply
6.14. CBaldurMessage Class 853
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnDemandSettingsNightmareMode
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnDialogReplyFromServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnDialogRequestKillOrUse
854 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnDialogRequestToServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnKickPlayerHoofedOut
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnKickPlayerRequest
6.14. CBaldurMessage Class 855
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnKickPlayerServerSupport
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnLeaveAreaLuaAnnouncement
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnLeaveAreaLuaPanicToServer
856 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnLeaveAreaLuaReplyFromServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnLeaveAreaLuaRequestToServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnLeaveAreaNameAnnouncement
6.14. CBaldurMessage Class 857
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnLeaveAreaNameReplyFromServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnLeaveAreaNameRequestToServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnMapWorldAnnounceArea
858 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnMapWorldAnnounceAreaRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnMapWorldAnnounceStatus
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnMapWorldCancelRequest
6.14. CBaldurMessage Class 859
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnMapWorldRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnMapWorldRevealArea
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnMovieAnnounceStatus
860 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnMovieEndCredits
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnMovieRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnMultiplayerSynchReply
6.14. CBaldurMessage Class 861
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnMultiplayerSynchRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnObjectAdd
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnObjectArrayDelete
862 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnObjectControl
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnObjectControlRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnObjectControlSuggestion
6.14. CBaldurMessage Class 863
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnObjectDelete
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnObjectDeleteRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnPauseAnnounceStatus
864 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnPauseRequestToServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnProgressBarStatus
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnReformPartyAnnounceStatus
6.14. CBaldurMessage Class 865
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnReformPartyRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnRequestClientSignal
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnResourceDemanded
866 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnResourceReply
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnResourceSuggestLoad
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnRestAnnounceStatus
6.14. CBaldurMessage Class 867
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnRestRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSendAreaMapANote
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSendAreaMapNote
868 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSendBiography
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSendEntryJournalChange
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSendJournalDeleteEntry
6.14. CBaldurMessage Class 869
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSendJournalEntry
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSendJournalSetQuestDone
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSendJournalUserEntry
870 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSendResourceToServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsArbitrationLockAllowInput
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsArbitrationLockRequest
6.14. CBaldurMessage Class 871
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsArbitrationLockStatus
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsCharacterControlSet
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsCharacterReadySet
872 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsCharacterSlotStatus
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsFullDemanded
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsFullSet
6.14. CBaldurMessage Class 873
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsGoreRequirement
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsImportingOptionSet
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsJoinRequestOptionSet
874 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsNightmareMode
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsPermissionSet
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsPlayerReadySet
6.14. CBaldurMessage Class 875
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSettingsRestrictStoreOptionSet
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSignal
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSwapItemReply
876 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnSwapItemRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnTextScreenAnnounceStatus
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnTextScreenCompletion
6.14. CBaldurMessage Class 877
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnTextScreenSendRequest
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnTimeChangeToServer
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnTimeSynchBroadcast
878 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnUpdateCharacterSlotReply
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnUpdateDemandCharacterSlot
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnVersionServer
6.14. CBaldurMessage Class 879
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::OnWeatherBroadcast
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::PauseAnnounceStatus
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::PollSpecificMessageType
880 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::PurgeDroppedPlayers
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::RemoveSignalsFromQueue
x;
Parameters
• – * ·
• – * ·
• – * ·
• – * ·
Return Value
Remarks
CBaldurMessage::RequestClientSignal
6.14. CBaldurMessage Class 881
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::ResourceSuggestLoad
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::RestAnnounceStatus
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendArbitrationLockAllowInput
882 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendArbitrationLockRequestToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendArbitrationLockStatus
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendAreaMapANoteToServer
6.14. CBaldurMessage Class 883
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendAreaMapNoteToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendBiographyToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendChapterRequestToServer
884 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendCharacterControlToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendCharacterReadyToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendCharacterSlotStatusToServer
6.14. CBaldurMessage Class 885
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendChatMessage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendDialogRequestToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendFullSettingsToClients
886 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendGoreRequirementToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendImportingOptionToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendJoinRequestOptionToServer
6.14. CBaldurMessage Class 887
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendJournalDeleteEntryToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendJournalEntryChangeToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendJournalEntryToServer
888 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendJournalSetQuestDoneToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendJournalUserEntry
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendLeaveAreaLuaAnnouncement
6.14. CBaldurMessage Class 889
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendLeaveAreaLuaPanicToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendLeaveAreaLuaRequestToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendLeaveAreaNameAnnouncement
890 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendLeaveAreaNameRequestToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendMapWorldAnnounceArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendMapWorldAnnounceAreaRequest
6.14. CBaldurMessage Class 891
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendMapWorldAnnounceStatus
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendMapWorldCancelRequestToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendMapWorldRequestToServer
892 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendMapWorldRevealArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendMovieEndCreditsToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendMovieRequestToServer
6.14. CBaldurMessage Class 893
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendPauseRequestToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendPermissionToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendPlayerReadyToServer
894 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendProgressBarStatus
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendReformPartyAnnounceStatus
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendReformPartyRequestToServer
6.14. CBaldurMessage Class 895
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendRestRequestToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendRestrictStoreOptionToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendSettingsNightmareMode
896 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendSignal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SendTextScreenRequestToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SetSignalDefaultSecondsToTimeout
6.14. CBaldurMessage Class 897
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SetVersionControlShutdownClientString
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SetVersionControlShutdownServerString
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SwapItemReply
898 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::SwapItemRequest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::TextScreenAnnounceStatus
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::TextScreenCompletion
6.14. CBaldurMessage Class 899
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::TimeChangeToServer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::TimeSynchBroadcast
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::UpdateCharacterSlotReply
900 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::UpdateDemandCharacterSlot
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::UpdateDemandCharacters
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::VersionServer
6.14. CBaldurMessage Class 901
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::WaitForSignal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CBaldurMessage::WeatherBroadcast
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
902 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.15 CBaldurProjector Class
• Overview
• Quick Reference
• Constructors
• Methods
6.15.1 Overview
Note: The CBaldurProjector class handles playing chapter movies
The structure used for this class is CBaldurProjector
6.15.2 Quick Reference
Quick Refvoid CBaldurProjector::CBaldurProjector()virtual void CBaldurProjector::~CBaldurProjector()virtual int CBaldurProjector::CheckMouseLButton()virtual void CBaldurProjector::EngineActivated()virtual void CBaldurProjector::EngineDeactivated()virtual void CBaldurProjector::EngineGameInit()virtual void CBaldurProjector::EngineGameUninit()virtual CKeyInfo* CBaldurProjector::GetVirtualKeys()virtual int* CBaldurProjector::GetVirtualKeysFlags()virtual short CBaldurProjector::GetNumVirtualKeys()virtual bool CBaldurProjector::OnEvent(SDL_Event* e)virtual void CBaldurProjector::OnKeyUp(int nKeyFlags)virtual void CBaldurProjector::OnLButtonUp(CPoint cPoint)void CBaldurProjector::PlayMovie(CResRef & cResRef)void CBaldurProjector::PlayMovieInternal(CResRef & cResRef, int bAsynchThread)void CBaldurProjector::PlayMovieNext(CResRef & cResRef)virtual int CBaldurProjector::StopMusic()virtual void CBaldurProjector::TimerAsynchronousUpdate()virtual void CBaldurProjector::TimerSynchronousUpdate()
6.15.3 Constructors
Name DescriptionCBaldurProjector::CBaldurProjector Constructs a x objectCBaldurProjector::~CBaldurProjector Destroys a x object
6.15. CBaldurProjector Class 903
EEex Documentation, Release 1.0
CBaldurProjector::CBaldurProjector
Constructs a CBaldurProjector object
void CBaldurProjector::CBaldurProjector();
Remarks
Constructs a CBaldurProjector object
CBaldurProjector::~CBaldurProjector
Destroys the CBaldurProjector object
virtual void CBaldurProjector::~CBaldurProjector();
Remarks
Destroys the CBaldurProjector object
6.15.4 Methods
Name DescriptionCBaldurProjector::CheckMouseLButton Checks if left mouse button is downCBaldurProjector::EngineActivated Event signalling for when CBaldurProjector is activatedCBaldurProjector::EngineDeactivated Event signalling for when CBaldurProjector is deactivatedCBaldurProjector::EngineGameInit Initialize CBaldurProjectorCBaldurProjector::EngineGameUninit Uninitialize CBaldurProjectorCBaldurProjector::GetVirtualKeys Key press event processingCBaldurProjector::GetVirtualKeysFlags Key press event processing for key flagsCBaldurProjector::GetNumVirtualKeys Returns number of keys supported by keyboard for key event pro-
cessingCBaldurProjector::OnEvent Event handling using SDL libraryCBaldurProjector::OnKeyUp Key press event for when a key has been pressed and releasedCBaldurProjector::OnLButtonUp Mouse button event for when the left mouse has been clicked and
releasedCBaldurProjector::PlayMovie Plays the WEBM movie as specified by the resource referenceCBaldurProjector::PlayMovieInternal Plays the WEBM movie as specified by the resource referenceCBaldurProjector::PlayMovieNext Play the next movieCBaldurProjector::StopMusic Stop the movie music/sound/voice-over curently playingCBaldurProjec-tor::TimerAsynchronousUpdate
Timer asynchronous update
CBaldurProjec-tor::TimerSynchronousUpdate
Timer synchronous update
904 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CBaldurProjector::CheckMouseLButton
Checks if left mouse button is down
virtual int CBaldurProjector::CheckMouseLButton();
Return Value
Returns an int that represents true (1) or false (0)
Remarks
CBaldurProjector::EngineActivated
Event signalling for when CBaldurProjector is activated
virtual void CBaldurProjector::EngineActivated();
Remarks
CBaldurProjector::EngineDeactivated
Event signalling for when CBaldurProjector is deactivated
virtual void CBaldurProjector::EngineDeactivated();
Remarks
CBaldurProjector::EngineGameInit
Initialize CBaldurProjector
virtual void CBaldurProjector::EngineGameInit();
Remarks
CBaldurProjector::EngineGameUninit
Uninitialize CBaldurProjector
virtual void CBaldurProjector::EngineGameUninit();
Remarks
6.15. CBaldurProjector Class 905
EEex Documentation, Release 1.0
CBaldurProjector::GetVirtualKeys
Return keyCode and other information for current keypress
virtual CKeyInfo* CBaldurProjector::GetVirtualKeys();
Return Value
Returns CKeyInfo*
Remarks
CKeyInfo contains keyCode and other keyboard information: repeatCount, repeatDelay and repeatRate
CBaldurProjector::GetVirtualKeysFlags
Key press event processing for key flags
virtual int* CBaldurProjector::GetVirtualKeysFlags();
Return Value
Returns int*
Remarks
CBaldurProjector::GetNumVirtualKeys
Returns number of keys supported by keyboard for key event processing
virtual short CBaldurProjector::GetNumVirtualKeys();
Return Value
Returns a short value indicating number of keys supported
Remarks
CBaldurProjector::OnEvent
Event handling using SDL library
virtual bool CBaldurProjector::OnEvent(SDL_Event* e);
Parameters
• SDL_Event* e - SDL event
Return Value
Returns bool
Remarks
906 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CBaldurProjector::OnKeyUp
Key press event for when a key has been pressed (down) and released (up)
virtual void CBaldurProjector::OnKeyUp(int nKeyFlags);
Parameters
• int nKeyFlags -
Remarks
CBaldurProjector::OnLButtonUp
Mouse button event for when the left mouse has been clicked (down) and released (up)
virtual void CBaldurProjector::OnLButtonUp(CPoint cPoint);
Parameters
• CPoint cPoint - x and y coordinate for the mouse position
Remarks
CBaldurProjector::PlayMovie
Plays the WEBM movie as specified by the resource reference
void CBaldurProjector::PlayMovie(CResRef& cResRef);
Parameters
• CResRef & cResRef - WBM movie resource reference to play
Remarks
Calls CBaldurProjector::PlayMovieInternal which handles the internals of playing the movie
CBaldurProjector::PlayMovieInternal
Plays the WEBM movie as specified by the resource reference
void CBaldurProjector::PlayMovieInternal(CResRef& cResRef,int bAsynchThread);
Parameters
• CResRef & cResRef - WBM movie resource reference to play
• int bAsynchThread - boolean indicating the use of an asynchronous thread (true) or a synchronous threadinstead (false)
6.15. CBaldurProjector Class 907
EEex Documentation, Release 1.0
Remarks
Called from CBaldurProjector::PlayMovie. Depending on the thread type specified by bAsyncThread determines theupdate used: CBaldurProjector::TimerAsynchronousUpdate or CBaldurProjector::TimerSynchronousUpdate
CBaldurProjector::PlayMovieNext
Play the next movie. Adds movie to queue to play next?
void CBaldurProjector::PlayMovieNext(CResRef& cResRef);
Parameters
• CResRef & cResRef - WBM movie resource reference to play next
Remarks
CBaldurProjector::StopMusic
Stop the movie music/sound/voice-over curently playing
virtual int CBaldurProjector::StopMusic();
Return Value
Returns int
Remarks
CBaldurProjector::TimerAsynchronousUpdate
Timer asynchronous update
virtual void CBaldurProjector::TimerAsynchronousUpdate();
Remarks
CBaldurProjector::TimerSynchronousUpdate
Timer synchronous update
virtual void CBaldurProjector::TimerSynchronousUpdate();
Remarks
908 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.16 CBounceList Class
The structure used for this class is CBounceList
Quick Refvoid CBounceList::Add(CGameEffect* pEffect, long levelDecrement, unsigned long effectId, CGameSprite*pSprite, int decrementOnly, unsigned long string, int stringOnly, int recoverSpellLevels)void CBounceList::ClearAll()void CBounceList::Process(CGameSprite* pSprite)
6.16.1 Methods
Name DescriptionCBounceList::AddCBounceList::ClearAllCBounceList::Process
CBounceList::Add
void CBounceList::Add(CGameEffect* pEffect,long levelDecrement,unsigned long effectId,CGameSprite* pSprite,int decrementOnly,unsigned long string,int stringOnly,int recoverSpellLevels);
Parameters
• CGameEffect* pEffect - pointer to game effect to add
• long levelDecrement -
• unsigned long effectId -
• CGameSprite* pSprite - pointer to game sprite object
• int decrementOnly -
• unsigned long string -
• int stringOnly -
• int recoverSpellLevels -
Remarks
6.16. CBounceList Class 909
EEex Documentation, Release 1.0
CBounceList::ClearAll
void CBounceList::ClearAll();
Remarks
CBounceList::Process
void CBounceList::Process(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
6.17 CCacheStatus Class
The structure used for this class is CCacheStatus
Quick Refvoid CCacheStatus::Init()void CCacheStatus::CCacheStatus()void CCacheStatus::~CCacheStatus()void CCacheStatus::InvalidateScreen()
6.17.1 Constructors
Name DescriptionCCacheStatus::CCacheStatus Constructs a CCacheStatus objectCCacheStatus::~CCacheStatus Destroys a CCacheStatus object
CCacheStatus::CCacheStatus
Constructs a CCacheStatus object
void CCacheStatus::CCacheStatus();
Remarks
Constructs a CCacheStatus object
910 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CCacheStatus::~CCacheStatus
Destroys the CCacheStatus object
void CCacheStatus::~CCacheStatus();
Remarks
Destroys the CCacheStatus object
6.17.2 Methods
Name DescriptionCCacheStatus::Init Initialize screen cache statusCCacheStatus::InvalidateScreen Invalidate cache status to allow screen to update
CCacheStatus::Init
Initialize screen cache status
void CCacheStatus::Init();
Remarks
CCacheStatus::InvalidateScreen
Invalidate cache status to allow screen to update
void CCacheStatus::InvalidateScreen();
Remarks
6.18 CChatBuffer Class
The structure used for this class is CChatBuffer
Quick Refvoid CChatBuffer::CChatBuffer()void CChatBuffer::~CChatBuffer()void CChatBuffer::AddMessage(CString& sLabel, CString& sNewMessage)void CChatBuffer::ClearMessages()void CChatBuffer::UpdateTextDisplay()
6.18. CChatBuffer Class 911
EEex Documentation, Release 1.0
6.18.1 Constructors
Name DescriptionCChatBuffer::CChatBuffer Constructs a CChatBuffer objectCChatBuffer::~CChatBuffer Destroys a CChatBuffer object
CChatBuffer::CChatBuffer
Constructs a CChatBuffer object
void CChatBuffer::CChatBuffer();
Remarks
Constructs a CChatBuffer object
CChatBuffer::~CChatBuffer
Destroys the CChatBuffer object
void CChatBuffer::~CChatBuffer();
Remarks
Destroys the CChatBuffer object
6.18.2 Methods
Name DescriptionCChatBuffer::AddMessage Add a message to chatCChatBuffer::ClearMessages Clear chat messagesCChatBuffer::UpdateTextDisplay Refresh and update chat
CChatBuffer::AddMessage
Add a message to chat
void CChatBuffer::AddMessage(CString& sLabel,CString& sNewMessage);
Parameters
• CString& sLabel - address of string containing label text
• CString& sNewMessage - address of string containing message text
Remarks
912 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CChatBuffer::ClearMessages
Clear chat messages
void CChatBuffer::ClearMessages();
Remarks
CChatBuffer::UpdateTextDisplay
Refresh and update chat
void CChatBuffer::UpdateTextDisplay();
Remarks
6.19 CChitin Class
• Overview
• Quick Reference
• Constructors
• Methods
6.19.1 Overview
The structure used for this class is CChitin
6.19.2 Quick Reference
Quick Refvoid CChitin::CChitin(int argc, char** argv)void CChitin::~CChitin()void CChitin::AddEngine(CWarp* pNewEngine)virtual CRes* CChitin::AllocResObject(int nType)virtual void CChitin::AsynchronousUpdate(unsigned int __formal)virtual void CChitin::BroadcastMultiplayerProgressBarInfo()virtual int CChitin::ConfirmQuit()virtual unsigned char CChitin::CutsceneModeActive()virtual int CChitin::FontRectOutline()unsigned char CChitin::FullScreen()void CChitin::EnginesGameInit()void CChitin::EnginesGameUninit()
Continued on next page
6.19. CChitin Class 913
EEex Documentation, Release 1.0
Table 9 – continued from previous pagevirtual int CChitin::GetEAXActive()virtual unsigned char CChitin::GetGamespyResponse(unsigned char __formal)virtual void CChitin::GetGameSpyCode(CString& sGameSpyCode)virtual void CChitin::GetGameSpyGameName(CString& sGameSpyName)virtual CString& CChitin::GetIconRes()virtual unsigned long CChitin::GetIDSBadDeskTopBitDepth()virtual unsigned long CChitin::GetIDSChoosePixelFormat()virtual unsigned long CChitin::GetIDSExclusiveMode()virtual unsigned long CChitin::GetIDSInvalidVideoMode()virtual unsigned long CChitin::GetIDSOpenGLDll()virtual unsigned long CChitin::GetIDSSetGameBitDepth()virtual unsigned long CChitin::GetIDSSetGameResolution()virtual unsigned long CChitin::GetIDSSetPixelFormat()virtual unsigned long CChitin::GetIDSWindowsFonts()virtual const char* CChitin::GetKeyFileName()virtual long CChitin::GetMovieVolume()virtual CString __cdecl CChitin::GetNetworkVersionString() = 0virtual unsigned char CChitin::GetNumberSoundChannels()virtual void CChitin::GetPanicCDStrings(CString& sMediaRemoved, CString& sPlaceCD, CString& sInDrive)virtual void CChitin::GetScreenShotFilePrefix(CString& szGameFileName)int CChitin::GetTimer(int timer)virtual CString __cdecl CChitin::GetVersionString() = 0virtual unsigned short CChitin::GetMultiplayerDirectPlayPort()virtual unsigned short CChitin::GetMultiplayerGameSpyPort()int CChitin::HasDirectX()void CChitin::HideVirtualKeyboard()int CChitin::InitInstance()void CChitin::InitResources()unsigned char CChitin::InitSound()void CChitin::InitVideo()virtual int CChitin::InitializeServices()void CChitin::InitializeVariables()virtual int CChitin::Is3DSound(int nChannel)int CChitin::IsAndroid()int CChitin::IsHosting()int CChitin::IsIOS()int CChitin::IsMultiplayer()int CChitin::IsTouchUI()virtual void CChitin::LoadOptions()void CChitin::OnAltEnter()void CChitin::OnDropFile(const char* path)void CChitin::OnLowMemory()virtual void CChitin::OnMixerInitialize()virtual void CChitin::OnMultiplayerPlayerJoin(int __formal)virtual void CChitin::OnMultiplayerPlayerLeave(int __formal)virtual void CChitin::OnMultiplayerPlayerVisible(int __formal)virtual void CChitin::OnMultiplayerSessionClose()virtual void CChitin::OnMultiplayerSessionOpen(CString& __formal)virtual void CChitin::OnMultiplayerSessionToClose()void CChitin::OnResizeWindow(int w, int h)
Continued on next page
914 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 9 – continued from previous pagevirtual int CChitin::MessageCallback(unsigned char* __formal)void CChitin::ParseCommandLine()virtual void CChitin::PreLoadFonts()int CChitin::ProcessEvents()void CChitin::ReadIniFiles()virtual void CChitin::RedrawScreen()void CChitin::Resume()virtual void CChitin::SetCDSwitchActivateEngine(int bValue)virtual void CChitin::SetCDSwitchStatus(unsigned char __formal)virtual void CChitin::SelectEngine(CWarp* pNewEngine)virtual void CChitin::SetupPanels()virtual void CChitin::SetProgressBar(unsigned char __formal)virtual void CChitin::SetProgressBarActivateEngine(int bValue)virtual void CChitin::SetRenderCount(unsigned char nCount)virtual void CChitin::SetSoundVolumes()void CChitin::ShowVirtualKeyboard(int multiline)virtual void CChitin::ShutDown(int nLineNumber, const char* szFileName, const char* text)virtual void CChitin::SynchronousUpdate()unsigned char CChitin::UninitSound()void CChitin::Update()int CChitin::WinMain()
6.19.3 Constructors
Name DescriptionCChitin::CChitin Constructs a CChitin objectCChitin::~CChitin Destroys a CChitin object
CChitin::CChitin
Constructs a CChitin object
void CChitin::CChitin(int argc,char** argv);
Parameters
• int argc - An integer that contains the count of arguments that follow in argv
• char** argv - An array of null-terminated strings representing command-line arguments
Remarks
By convention, argv[0] is the command with which the program is invoked, argv[1] is the first command-lineargument, and so on. See CChitin::ParseCommandLine for details on command line parsing.
Constructs a CChitin object
6.19. CChitin Class 915
EEex Documentation, Release 1.0
CChitin::~CChitin
Destroys the CChitin object
void CChitin::~CChitin();
Remarks
Destroys the CChitin object
6.19.4 Methods
Name DescriptionCChitin::AddEngineCChitin::AllocResObject Creates and allocates memory for a resourceCChitin::AsynchronousUpdateCChitin::BroadcastMultiplayerProgressBarInfo Broadcast to all connected sessions the progress bar informationCChitin::ConfirmQuit Displays a prompt to confirm if players wishes to quit, save before quit, etcCChitin::CutsceneModeActive Determines if the cutscene mode is active or not (for dreams etc)CChitin::FontRectOutlineCChitin::FullScreenCChitin::EnginesGameInitCChitin::EnginesGameUninitCChitin::GetEAXActive Determines if the EAX sound feature is active or notCChitin::GetGamespyResponseCChitin::GetGameSpyCode Gets the game spy codeCChitin::GetGameSpyGameName Gets the game spy game nameCChitin::GetIconRes Gets default icon resolutionCChitin::GetIDSBadDeskTopBitDepthCChitin::GetIDSChoosePixelFormatCChitin::GetIDSExclusiveModeCChitin::GetIDSInvalidVideoModeCChitin::GetIDSOpenGLDllCChitin::GetIDSSetGameBitDepthCChitin::GetIDSSetGameResolutionCChitin::GetIDSSetPixelFormatCChitin::GetIDSWindowsFontsCChitin::GetKeyFileName Returns a pointer to a string containing the default key file (usually chitin.key)CChitin::GetMovieVolume Returns movie volumeCChitin::GetNetworkVersionStringCChitin::GetNumberSoundChannels Returns number of sound channels supported by local machineCChitin::GetPanicCDStrings Legacy function for when game was distributed on CD/DVDCChitin::GetScreenShotFilePrefixCChitin::GetTimerCChitin::GetVersionStringCChitin::GetMultiplayerDirectPlayPort Returns port no used in DirectPlayCChitin::GetMultiplayerGameSpyPort Returns port no used in GameSpyCChitin::HasDirectXCChitin::HideVirtualKeyboard
Continued on next page
916 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 10 – continued from previous pageCChitin::InitInstanceCChitin::InitResourcesCChitin::InitSoundCChitin::InitVideoCChitin::InitializeServicesCChitin::InitializeVariablesCChitin::Is3DSound Returns if 3D sound is supported on local machineCChitin::IsAndroid Returns true if running on an Android operating systemCChitin::IsHosting Returns true if game instance is hosting a multiplayer gameCChitin::IsIOS Returns true if running on an Apple IOS (iPad) operating systemCChitin::IsMultiplayer Returns true if game instance is a multiplayer gameCChitin::IsTouchUI Returns true if a touch sensitive interface is supported on deviceCChitin::LoadOptions Load optionsCChitin::OnAltEnter Event action for when Alt+Enter keys are pressedCChitin::OnDropFile Event for handling a file dropped onto running game instanceCChitin::OnLowMemoryCChitin::OnMixerInitializeCChitin::OnMultiplayerPlayerJoin Event action when a player joins a multiplayer game sessionCChitin::OnMultiplayerPlayerLeave Event action when a player leaves a multiplayer game sessionCChitin::OnMultiplayerPlayerVisible Event action when a player in a multiplayer game session becomes visible to othersCChitin::OnMultiplayerSessionClose Event action when a multiplayer game session closesCChitin::OnMultiplayerSessionOpen Event action when a multiplayer game session opensCChitin::OnMultiplayerSessionToClose Event action when a multiplayer game session is about to closeCChitin::OnResizeWindow Event action for when window is being resizedCChitin::MessageCallbackCChitin::ParseCommandLine Parses the command line passed to the game executableCChitin::PreLoadFonts Preload fonts for gameCChitin::ProcessEventsCChitin::ReadIniFilesCChitin::RedrawScreenCChitin::ResumeCChitin::SetCDSwitchActivateEngineCChitin::SetCDSwitchStatusCChitin::SelectEngineCChitin::SetupPanelsCChitin::SetProgressBar Set progress bar on screenCChitin::SetProgressBarActivateEngineCChitin::SetRenderCountCChitin::SetSoundVolumesCChitin::ShowVirtualKeyboardCChitin::ShutDownCChitin::SynchronousUpdateCChitin::UninitSoundCChitin::UpdateCChitin::WinMain
CChitin::AddEngine
6.19. CChitin Class 917
EEex Documentation, Release 1.0
void CChitin::AddEngine(CWarp* pNewEngine);
Parameters
• CWarp* pNewEngine - pointer to new engine instance to add
Remarks
CChitin::AllocResObject
Creates and allocates memory for a resource
virtual CRes* CChitin::AllocResObject(int nType);
Parameters
• int nType - type of resource to create
Return Value
Returns a CRes object
Remarks
CChitin::AsynchronousUpdate
virtual void CChitin::AsynchronousUpdate(unsigned int __formal);
Parameters
• unsigned int __formal -
Remarks
CChitin::BroadcastMultiplayerProgressBarInfo
Broadcast to all connected sessions the progress bar information
virtual void CChitin::BroadcastMultiplayerProgressBarInfo();
Remarks
918 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CChitin::ConfirmQuit
Displays a prompt to confirm if players wishes to quit, save before quit, etc
virtual int CChitin::ConfirmQuit();
Return Value
Returns an int
Remarks
CChitin::CutsceneModeActive
Determines if the cutscene mode is active or not (for dreams etc)
virtual unsigned char CChitin::CutsceneModeActive();
Return Value
Returns an unsigned char
Remarks
CChitin::FontRectOutline
virtual int CChitin::FontRectOutline();
Return Value
Returns an int
Remarks
CChitin::FullScreen
unsigned char CChitin::FullScreen();
Return Value
Returns an unsigned char
Remarks
CChitin::EnginesGameInit
void CChitin::EnginesGameInit();
Remarks
6.19. CChitin Class 919
EEex Documentation, Release 1.0
CChitin::EnginesGameUninit
void CChitin::EnginesGameUninit();
Remarks
CChitin::GetEAXActive
Determines if the EAX sound feature is active or not
virtual int CChitin::GetEAXActive();
Return Value
Returns an int representing true 1 or false 0
Remarks
CChitin::GetGamespyResponse
virtual unsigned char CChitin::GetGamespyResponse(unsigned char __formal);
Parameters
• unsigned char __formal -
Return Value
Returns unsigned char
Remarks
CChitin::GetGameSpyCode
Gets the game spy code
virtual void CChitin::GetGameSpyCode(CString& sGameSpyCode);
Parameters
• CString& sGameSpyCode - address of string variable to store game spy code
Remarks
CChitin::GetGameSpyGameName
Gets the game spy game name
920 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual void CChitin::GetGameSpyGameName(CString& sGameSpyName);
Parameters
• CString& sGameSpyName - address of string variable to store game spy name
Remarks
CChitin::GetIconRes
Gets default icon resolution
virtual CString& CChitin::GetIconRes();
Return Value
Returns a CString&
Remarks
CChitin::GetIDSBadDeskTopBitDepth
virtual unsigned long CChitin::GetIDSBadDeskTopBitDepth();
Return Value
Returns unsigned long
Remarks
CChitin::GetIDSChoosePixelFormat
virtual unsigned long CChitin::GetIDSChoosePixelFormat();
Return Value
Returns unsigned long
Remarks
CChitin::GetIDSExclusiveMode
virtual unsigned long CChitin::GetIDSExclusiveMode();
Return Value
Returns unsigned long
Remarks
6.19. CChitin Class 921
EEex Documentation, Release 1.0
CChitin::GetIDSInvalidVideoMode
virtual unsigned long CChitin::GetIDSInvalidVideoMode();
Return Value
Returns unsigned long
Remarks
CChitin::GetIDSOpenGLDll
virtual unsigned long CChitin::GetIDSOpenGLDll();
Return Value
Returns unsigned long
Remarks
CChitin::GetIDSSetGameBitDepth
virtual unsigned long CChitin::GetIDSSetGameBitDepth();
Return Value
Returns unsigned long
Remarks
CChitin::GetIDSSetGameResolution
virtual unsigned long CChitin::GetIDSSetGameResolution();
Return Value
Returns unsigned long
Remarks
CChitin::GetIDSSetPixelFormat
virtual unsigned long CChitin::GetIDSSetPixelFormat();
Return Value
Returns unsigned long
Remarks
922 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CChitin::GetIDSWindowsFonts
virtual unsigned long CChitin::GetIDSWindowsFonts();
Return Value
Returns unsigned long
Remarks
CChitin::GetKeyFileName
Returns a pointer to a string containing the default key file (usually chitin.key)
virtual const char* CChitin::GetKeyFileName();
Return Value
Returns const char*, a pointer to a string containing key file
Remarks
CChitin::GetMovieVolume
Returns movie volume
virtual long CChitin::GetMovieVolume();
Return Value
Returns long representing movie volume
Remarks
CChitin::GetNetworkVersionString
virtual CString __cdecl CChitin::GetNetworkVersionString();
Return Value
Returns a CString containing the network version
Remarks
CChitin::GetNumberSoundChannels
Returns number of sound channels supported by local machine
6.19. CChitin Class 923
EEex Documentation, Release 1.0
virtual unsigned char CChitin::GetNumberSoundChannels();
Return Value
Returns unsigned char
Remarks
CChitin::GetPanicCDStrings
Legacy function for when game was distributed on CD/DVD
virtual void CChitin::GetPanicCDStrings(CString& sMediaRemoved,CString& sPlaceCD,CString& sInDrive);
Parameters
• CString& sMediaRemoved - address of string to store media string
• CString& sPlaceCD - address of string to store place cd/dvd string
• CString& sInDrive - address of string to store in drive string
Remarks
CChitin::GetScreenShotFilePrefix
virtual void CChitin::GetScreenShotFilePrefix(CString& szGameFileName);
Parameters
• CString& szGameFileName - address of string to store screenshot filename prefix to
Remarks
CChitin::GetTimer
int CChitin::GetTimer(int timer);
Parameters
• int timer -
Return Value
Returns an int value
Remarks
924 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CChitin::GetVersionString
virtual CString __cdecl CChitin::GetVersionString();
Return Value
Returns a CString containing the game version
Remarks
CChitin::GetMultiplayerDirectPlayPort
Returns port no used in DirectPlay
virtual unsigned short CChitin::GetMultiplayerDirectPlayPort();
Return Value
Returns an unsigned short representing the port
Remarks
CChitin::GetMultiplayerGameSpyPort
Returns port no used in GameSpy
virtual unsigned short CChitin::GetMultiplayerGameSpyPort();
Return Value
Returns an unsigned short representing the port
Remarks
CChitin::HasDirectX
int CChitin::HasDirectX();
Return Value
Returns an int representing true 1 or false 0
Remarks
CChitin::HideVirtualKeyboard
Hides the virtual keyboard from the screen ui
6.19. CChitin Class 925
EEex Documentation, Release 1.0
void CChitin::HideVirtualKeyboard();
Remarks
See also CChitin::ShowVirtualKeyboard
CChitin::InitInstance
int CChitin::InitInstance();
Return Value
Returns an int value
Remarks
CChitin::InitResources
void CChitin::InitResources();
Remarks
CChitin::InitSound
unsigned char CChitin::InitSound();
Return Value
Returns unsigned char
Remarks
CChitin::InitVideo
void CChitin::InitVideo();
Remarks
926 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CChitin::InitializeServices
virtual int CChitin::InitializeServices();
Return Value
Returns an int value
Remarks
CChitin::InitializeVariables
void CChitin::InitializeVariables();
Remarks
CChitin::Is3DSound
Returns if 3D sound is supported on local machine
virtual int CChitin::Is3DSound(int nChannel);
Parameters
• int nChannel -
Return Value
Returns an int representing true 1 or false 0
Remarks
CChitin::IsAndroid
Returns true if running on an Android operating system
int CChitin::IsAndroid();
Return Value
Returns an int representing true 1 or false 0
Remarks
Compiled and hardcoded to return false 0 on other operating system builds
CChitin::IsHosting
Returns true if game instance is hosting a multiplayer game, or false otherwise
6.19. CChitin Class 927
EEex Documentation, Release 1.0
int CChitin::IsHosting();
Return Value
Returns an int representing true 1 or false 0
Remarks
CChitin::IsIOS
Returns true if running on an Apple IOS (iPad) operating system
int CChitin::IsIOS();
Return Value
Returns an int representing true 1 or false 0
Remarks
Compiled and hardcoded to return false 0 on other operating system builds
CChitin::IsMultiplayer
Returns true if game instance is a multiplayer game, or false otherwise
int CChitin::IsMultiplayer();
Return Value
Returns an int representing true 1 or false 0
Remarks
CChitin::IsTouchUI
Returns true if a touch sensitive interface is supported on device (IOS, Android, Surface etc), or false otherwise
int CChitin::IsTouchUI();
Return Value
Returns an int representing true 1 or false 0
Remarks
CChitin::LoadOptions
Load options
928 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual void CChitin::LoadOptions();
Remarks
CChitin::OnAltEnter
Event action for when Alt+Enter keys are pressed
void CChitin::OnAltEnter();
Remarks
Legacy function for entering and exiting fullscreen mode
CChitin::OnDropFile
Event for handling a file dropped into a specific folder whilst the game instance is running.
void CChitin::OnDropFile(const char* path);
Parameters
• const char* path - full filepath to file “dropped”
Remarks
Unzips the archive file contents to specific folders (based on the extension detected) and then deletes the zip archive.
Looks for files with the following extensions:
• “.bg1character”
• “.bg2character”
• “.iwdcharacter”
• “.bg1data”
• “.bg2data”
• “.iwddata”
• “.bg1portrait”
• “.bg2portrait”
• “.iwdportrait”
• “.bg1override”
• “.bg2override”
• “.iwdoverride”
• “.bg1sounds”
• “.bg2sounds”
• “.iwdsounds”
6.19. CChitin Class 929
EEex Documentation, Release 1.0
• “.bg1save”
• “.bg1mpsave”
• “.bg1mpbpsave”
• “.bg2save”
• “.bg2mpsave”
• “.bg2mpbpsave”
• “.iwdsave”
• “.iwdmpsave”
• “.sodsave”
• “.sodmpsave”
• “.mpsodsave”
CChitin::OnLowMemory
void CChitin::OnLowMemory();
Remarks
CChitin::OnMixerInitialize
virtual void CChitin::OnMixerInitialize();
Remarks
CChitin::OnMultiplayerPlayerJoin
Event action when a player joins a multiplayer game session
virtual void CChitin::OnMultiplayerPlayerJoin(int __formal);
Parameters
• int __formal -
Remarks
See also CBaldurChitin::OnMultiplayerPlayerJoin
930 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CChitin::OnMultiplayerPlayerLeave
Event action when a player leaves a multiplayer game session
virtual void CChitin::OnMultiplayerPlayerLeave(int __formal);
Parameters
• int __formal -
Remarks
See also CBaldurChitin::OnMultiplayerPlayerLeave
CChitin::OnMultiplayerPlayerVisible
Event action when a player in a multiplayer game session becomes visible to other existing players
virtual void CChitin::OnMultiplayerPlayerVisible(int __formal);
Parameters
• int __formal -
Remarks
See also CBaldurChitin::OnMultiplayerPlayerVisible
CChitin::OnMultiplayerSessionClose
Event action when a multiplayer game session closes
virtual void CChitin::OnMultiplayerSessionClose();
Remarks
See also CBaldurChitin::OnMultiplayerSessionClose
CChitin::OnMultiplayerSessionOpen
Event action when a multiplayer game session opens
virtual void CChitin::OnMultiplayerSessionOpen(CString& __formal);
Parameters
• CString& __formal -
Remarks
See also CBaldurChitin::OnMultiplayerSessionOpen
6.19. CChitin Class 931
EEex Documentation, Release 1.0
CChitin::OnMultiplayerSessionToClose
Event action when a multiplayer game session is about to close
virtual void CChitin::OnMultiplayerSessionToClose();
Remarks
See also CBaldurChitin::OnMultiplayerSessionToClose
CChitin::OnResizeWindow
Event action for when window is being resized
void CChitin::OnResizeWindow(int w,int h);
Parameters
• int w - new width of main window
• int h - new height of main window
Remarks
CChitin::MessageCallback
virtual int CChitin::MessageCallback(unsigned char* __formal);
Parameters
• unsigned char* __formal -
Return Value
Returns an int value
Remarks
CChitin::ParseCommandLine
Parses the command line passed to the game executable
void CChitin::ParseCommandLine();
Remarks
The command line accepts the following recognised options and parameters:
• +host "201.48.99.234" - address of the host machine for all players to connect to
• +connect "201.48.99.234" - address of machine to connect to that is hosting the session
932 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• +name "Super5Gang Adventure" - custom description of the hosted session
• +password "mypassword" - secure the online session with a custom password
• +newgame - specified a new multiplayer game is to be created
• +loadgame - specifies an existing game
• +hostname "Boo" - name of the host machine
• +location "location" - location
• +maxplayers "5" - specified max players to allow: 1-6
• +tob - multiplayer game is set for Throne of Bhaal
Options are preceded with a +, parameter values can be enclosed in quotes "
Note: After some reasech it has been determined that this method does not work in the EE games, it can be consideredlegacy code that was originally intended to work with GameSpy networking.
CChitin::PreLoadFonts
Preload fonts for game
virtual void CChitin::PreLoadFonts();
Remarks
CChitin::ProcessEvents
int CChitin::ProcessEvents();
Return Value
Returns an int value
Remarks
CChitin::ReadIniFiles
void CChitin::ReadIniFiles();
Remarks
CChitin::RedrawScreen
6.19. CChitin Class 933
EEex Documentation, Release 1.0
virtual void CChitin::RedrawScreen();
Remarks
CChitin::Resume
void CChitin::Resume();
Remarks
CChitin::SetCDSwitchActivateEngine
virtual void CChitin::SetCDSwitchActivateEngine(int bValue);
Parameters
• int bValue - true or false
Remarks
CChitin::SetCDSwitchStatus
virtual void CChitin::SetCDSwitchStatus(unsigned char __formal);
Parameters
• unsigned char __formal -
Remarks
CChitin::SelectEngine
virtual void CChitin::SelectEngine(CWarp* pNewEngine);
Parameters
• CWarp* pNewEngine - pointer to new engine to select
Remarks
CChitin::SetupPanels
934 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual void CChitin::SetupPanels();
Remarks
CChitin::SetProgressBar
Set progress bar on screen
virtual void CChitin::SetProgressBar(unsigned char __formal);
Parameters
• unsigned char __formal -
Remarks
CChitin::SetProgressBarActivateEngine
virtual void CChitin::SetProgressBarActivateEngine(int bValue);
Parameters
• int bValue - true or false
Remarks
CChitin::SetRenderCount
virtual void CChitin::SetRenderCount(unsigned char nCount);
Parameters
• unsigned char nCount - set render count
Remarks
CChitin::SetSoundVolumes
virtual void CChitin::SetSoundVolumes();
Remarks
CChitin::ShowVirtualKeyboard
6.19. CChitin Class 935
EEex Documentation, Release 1.0
void CChitin::ShowVirtualKeyboard(int multiline);
Parameters
• int multiline - true or false to show multiline virtual keyboard
Remarks
See also CChitin::HideVirtualKeyboard
CChitin::ShutDown
virtual void CChitin::ShutDown(int nLineNumber,const char* szFileName,const char* text);
Parameters
• int nLineNumber - line number that shutdown occured at
• const char* szFileName - file that shutdown occured at
• const char* text - message text for shutdown reason to output to log
Remarks
CChitin::SynchronousUpdate
virtual void CChitin::SynchronousUpdate();
Remarks
CChitin::UninitSound
unsigned char CChitin::UninitSound();
Return Value
Returns unsigned char
Remarks
CChitin::Update
void CChitin::Update();
Remarks
936 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CChitin::WinMain
Main entry point function for windows OS build
int CChitin::WinMain();
Return Value
Returns an int value
Remarks
6.20 CColorEffects Class
Quick RefCColorEffects& CColorEffects::operator=(CColorEffects& y)void CColorEffects::Apply(CGameSprite* pSprite)unsigned long CColorEffects::Marshal(unsigned char** ptrPtr)void CColorEffects::Unmarshal(unsigned char* data, unsigned long nSize)void CColorEffects::ClearAll()
6.20.1 Methods
Name DescriptionCColorEffects::Apply Apply color effects to a game spriteCColorEffects::MarshalCColorEffects::UnmarshalCColorEffects::ClearAll Clear all color effects
CColorEffects::Apply
Apply color effects to a game sprite
void CColorEffects::Apply(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CColorEffects::Marshal
unsigned long CColorEffects::Marshal(unsigned char** ptrPtr);
Parameters
6.20. CColorEffects Class 937
EEex Documentation, Release 1.0
• unsigned char** ptrPtr - pointer to a pointer
Return Value
Returns unsigned long
Remarks
CColorEffects::Unmarshal
void CColorEffects::Unmarshal(unsigned char* data,unsigned long nSize);
Parameters
• unsigned char* data - pointer to data
• unsigned long nSize - size of data
Remarks
CColorEffects::ClearAll
Clear all color effects
void CColorEffects::ClearAll();
Remarks
6.20.2 Operators
Name DescriptionCColorEffects::operator=
CColorEffects::operator=
CColorEffects& CColorEffects::operator=(CColorEffects& y);
Parameters
• CColorEffects& y -
Return Value
CColorEffects&
Remarks
938 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.21 CContingency Class
The structure used for this class is CContingency
Quick Refvoid CContingency::CContingency()CContingency& CContingency::operator=(CContingency& __that)
6.21.1 Constructors
Name DescriptionCContingency::CContingency Constructs a CContingency object
CContingency::CContingency
Constructs a CContingency object
void CContingency::CContingency();
Remarks
Constructs a CContingency object
6.21.2 Operators
Name DescriptionCContingency::operator=
CContingency::operator=
CContingency& CContingency::operator=(CContingency& __that);
Parameters
• CContingency& __that -
Return Value
Returns CContingency&
Remarks
6.21. CContingency Class 939
EEex Documentation, Release 1.0
6.22 CDerivedStats Class
• Overview
• Quick Reference
• Constructors
• Methods
6.22.1 Overview
The structure used for this class is CDerivedStats
6.22.2 Quick Reference
Quick Refvoid CDerivedStats::CDerivedStats()void CDerivedStats::~CDerivedStats()void CDerivedStats::BonusInit()void CDerivedStats::CheckLimits()long CDerivedStats::GetAtOffset(short offset)unsigned char CDerivedStats::GetAverageLevel(unsigned char nClass)unsigned long CDerivedStats::GetCastingTime(int nAbilitySpeed)unsigned char CDerivedStats::GetClassLevel(unsigned char nClass, unsigned char nSubClass)int CDerivedStats::GetCriticalValue(int leftHand, int itemType, int attackType, int hitOrMiss)unsigned long CDerivedStats::GetExtState()unsigned char CDerivedStats::GetFalseColor(unsigned char range)unsigned char CDerivedStats::GetLevel(unsigned char nClass, unsigned char nSubClass)void CDerivedStats::GetLevelField(unsigned char nClass, unsigned char nSubClass, unsigned short*& pLevel)unsigned char CDerivedStats::GetMaximumLevel(unsigned char nClass)unsigned char CDerivedStats::GetPriestLevel(unsigned char nClass)unsigned char CDerivedStats::GetPriestLevelCast(unsigned char nClass)float CDerivedStats::GetRating(CArray<StatRating,StatRating &>& stats)unsigned char CDerivedStats::GetRogueLevel(unsigned char nClass)int CDerivedStats::GetSpellState(unsigned long bit)unsigned char CDerivedStats::GetWarriorLevel(unsigned char nClass)unsigned char CDerivedStats::GetWizardLevel(unsigned char nClass)unsigned char CDerivedStats::GetWizardLevelCast(unsigned char nClass)unsigned long CDerivedStats::GetXP(unsigned char nClass, unsigned char nSubClass, unsigned char nActiveClass, unsigned char nInactiveClass)void CDerivedStats::Marshal(unsigned char** pStats, long* nStats)virtual short __cdecl CDerivedStats::NumAttacksFloatToShort(float f) = 0virtual float __cdecl CDerivedStats::NumAttacksShortToFloat(short s) = 0void CDerivedStats::Reload(CCreatureFileHeader* header, CCreatureFileMemorizedSpellLevel** mageSpells, CCreatureFileMemorizedSpellLevel** priestSpells)void CDerivedStats::SetExtState(unsigned long bit)void CDerivedStats::SetLevel(unsigned char nClass, unsigned char nSubClass, unsigned char nLevel)int CDerivedStats::SetSpellState(unsigned long bit)
Continued on next page
940 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 11 – continued from previous pagevoid CDerivedStats::Unmarshal(unsigned char* pStats, long nStats)CDerivedStats& CDerivedStats::operator=(CDerivedStats& header)CDerivedStats& CDerivedStats::operator+=(CDerivedStats& header)
6.22.3 Constructors
Name DescriptionCDerivedStats::CDerivedStats Constructs a CDerivedStats objectCDerivedStats::~CDerivedStats Destroys a CDerivedStats object
CDerivedStats::CDerivedStats
Constructs a CDerivedStats object
void CDerivedStats::CDerivedStats();
Remarks
Constructs a CDerivedStats object
CDerivedStats::~CDerivedStats
Destroys the CDerivedStats object
void CDerivedStats::~CDerivedStats();
Remarks
Destroys the CDerivedStats object
6.22. CDerivedStats Class 941
EEex Documentation, Release 1.0
6.22.4 Methods
Name DescriptionCDerivedStats::BonusInitCDerivedStats::CheckLimitsCDerivedStats::GetAtOffsetCDerivedStats::GetAverageLevelCDerivedStats::GetCastingTimeCDerivedStats::GetClassLevelCDerivedStats::GetCriticalValueCDerivedStats::GetExtStateCDerivedStats::GetFalseColorCDerivedStats::GetLevelCDerivedStats::GetLevelFieldCDerivedStats::GetMaximumLevelCDerivedStats::GetPriestLevelCDerivedStats::GetPriestLevelCastCDerivedStats::GetRatingCDerivedStats::GetRogueLevelCDerivedStats::GetSpellStateCDerivedStats::GetWarriorLevelCDerivedStats::GetWizardLevelCDerivedStats::GetWizardLevelCastCDerivedStats::GetXPCDerivedStats::MarshalCDerivedStats::NumAttacksFloatToShortCDerivedStats::NumAttacksShortToFloatCDerivedStats::ReloadCDerivedStats::SetExtStateCDerivedStats::SetLevelCDerivedStats::SetSpellStateCDerivedStats::Unmarshal
CDerivedStats::BonusInit
void CDerivedStats::BonusInit();
Remarks
CDerivedStats::CheckLimits
void CDerivedStats::CheckLimits();
Remarks
942 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CDerivedStats::GetAtOffset
long CDerivedStats::GetAtOffset(short offset);
Parameters
• short offset -
Return Value
Returns long
Remarks
CDerivedStats::GetAverageLevel
unsigned char CDerivedStats::GetAverageLevel(unsigned char nClass);
Parameters
• unsigned char nClass -
Return Value
Returns unsigned char
Remarks
CDerivedStats::GetCastingTime
unsigned long CDerivedStats::GetCastingTime(int nAbilitySpeed);
Parameters
• int nAbilitySpeed -
Return Value
Returns unsigned long
Remarks
CDerivedStats::GetClassLevel
unsigned char CDerivedStats::GetClassLevel(unsigned char nClass,unsigned char nSubClass);
Parameters
• unsigned char nClass -
• unsigned char nSubClass -
6.22. CDerivedStats Class 943
EEex Documentation, Release 1.0
Return Value
Returns unsigned char
Remarks
CDerivedStats::GetCriticalValue
int CDerivedStats::GetCriticalValue(int leftHand,int itemType,int attackType,int hitOrMiss);
Parameters
• int leftHand -
• int itemType -
• int attackType -
• int hitOrMiss -
Return Value
Returns int
Remarks
CDerivedStats::GetExtState
unsigned long CDerivedStats::GetExtState();
Return Value
Returns unsigned long
Remarks
CDerivedStats::GetFalseColor
unsigned char CDerivedStats::GetFalseColor(unsigned char range);
Parameters
• unsigned char range -
Return Value
Returns unsigned char
Remarks
944 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CDerivedStats::GetLevel
unsigned char CDerivedStats::GetLevel(unsigned char nClass,unsigned char nSubClass);
Parameters
• unsigned char nClass -
• unsigned char nSubClass -
Return Value
Returns unsigned char
Remarks
CDerivedStats::GetLevelField
void CDerivedStats::GetLevelField(unsigned char nClass,unsigned char nSubClass,unsigned short*& pLevel);
Parameters
• unsigned char nClass -
• unsigned char nSubClass -
• unsigned short*& pLevel -
Remarks
CDerivedStats::GetMaximumLevel
unsigned char CDerivedStats::GetMaximumLevel(unsigned char nClass);
Parameters
• unsigned char nClass -
Return Value
Returns unsigned char
Remarks
CDerivedStats::GetPriestLevel
6.22. CDerivedStats Class 945
EEex Documentation, Release 1.0
unsigned char CDerivedStats::GetPriestLevel(unsigned char nClass);
Parameters
• unsigned char nClass -
Return Value
Returns unsigned char
Remarks
CDerivedStats::GetPriestLevelCast
unsigned char CDerivedStats::GetPriestLevelCast(unsigned char nClass)
Parameters
• unsigned char nClass -
Return Value
Returns unsigned char
Remarks
CDerivedStats::GetRating
float CDerivedStats::GetRating(CArray& stats);
Parameters
• CArray& stats -
Return Value
Returns float
Remarks
CDerivedStats::GetRogueLevel
unsigned char CDerivedStats::GetRogueLevel(unsigned char nClass)
Parameters
• unsigned char nClass -
Return Value
Returns unsigned char
Remarks
946 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CDerivedStats::GetSpellState
int CDerivedStats::GetSpellState(unsigned long bit);
Parameters
• unsigned long bit -
Return Value
Returns int
Remarks
CDerivedStats::GetWarriorLevel
unsigned char CDerivedStats::GetWarriorLevel(unsigned char nClass);
Parameters
• unsigned char nClass -
Return Value
Returns unsigned char
Remarks
CDerivedStats::GetWizardLevel
unsigned char CDerivedStats::GetWizardLevel(unsigned char nClass);
Parameters
• unsigned char nClass -
Return Value
Returns unsigned char
Remarks
CDerivedStats::GetWizardLevelCast
unsigned char CDerivedStats::GetWizardLevelCast(unsigned char nClass);
Parameters
• unsigned char nClass -
Return Value
Returns unsigned char
Remarks
6.22. CDerivedStats Class 947
EEex Documentation, Release 1.0
CDerivedStats::GetXP
unsigned long CDerivedStats::GetXP(unsigned char nClass,unsigned char nSubClass,unsigned char nActiveClass,unsigned char nInactiveClass);
Parameters
• unsigned char nClass -
• unsigned char nSubClass -
• unsigned char nActiveClass -
• unsigned char nInactiveClass -
Return Value
Remarks
CDerivedStats::Marshal
void CDerivedStats::Marshal(unsigned char** pStats,long* nStats);
Parameters
• unsigned char** pStats -
• long* nStats -
Remarks
CDerivedStats::NumAttacksFloatToShort
virtual short __cdecl CDerivedStats::NumAttacksFloatToShort(float f);
Parameters
• float f -
Return Value
Returns short
Remarks
CDerivedStats::NumAttacksShortToFloat
948 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual float __cdecl CDerivedStats::NumAttacksShortToFloat(short s);
Parameters
• short s -
Return Value
Returns float
Remarks
CDerivedStats::Reload
void CDerivedStats::Reload(CCreatureFileHeader* header,CCreatureFileMemorizedSpellLevel** mageSpells,CCreatureFileMemorizedSpellLevel** priestSpells);
Parameters
• CCreatureFileHeader* header -
• CCreatureFileMemorizedSpellLevel** mageSpells -
• CCreatureFileMemorizedSpellLevel** priestSpells -
Remarks
CDerivedStats::SetExtState
void CDerivedStats::SetExtState(unsigned long bit);
Parameters
• unsigned long bit -
Remarks
CDerivedStats::SetLevel
void CDerivedStats::SetLevel(unsigned char nClass,unsigned char nSubClass,unsigned char nLevel);
Parameters
• unsigned char nClass -
• unsigned char nSubClass -
• unsigned char nLevel -
6.22. CDerivedStats Class 949
EEex Documentation, Release 1.0
Remarks
CDerivedStats::SetSpellState
int CDerivedStats::SetSpellState(unsigned long bit);
Parameters
• unsigned long bit -
Return Value
Returns int
Remarks
CDerivedStats::Unmarshal
void CDerivedStats::Unmarshal(unsigned char* pStats,long nStats);
Parameters
• unsigned char* pStats -
• long nStats -
Remarks
Operators
Name DescriptionCDerivedStats::operator=CDerivedStats::operator+=
CDerivedStats::operator=
CDerivedStats& CDerivedStats::operator=(CDerivedStats& header);
Parameters
• CDerivedStats& header -
Return Value
Returns CDerivedStats&
Remarks
950 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CDerivedStats::operator+=
CDerivedStats& CDerivedStats::operator+=(CDerivedStats& header);
Parameters
• CDerivedStats& header -
Return Value
Returns CDerivedStats&
Remarks
6.23 CDungeonMaster Class
The structure used for this class is CDungeonMaster which is the same as CBaldurEngine
Quick Refvoid CDungeonMaster::CDungeonMaster()virtual void CDungeonMaster::EngineActivated()virtual void CDungeonMaster::EngineDeactivated()virtual void CDungeonMaster::EngineDestroyed()virtual void CDungeonMaster::EngineInitialized()virtual void CDungeonMaster::TimerAsynchronousUpdate()virtual void CDungeonMaster::TimerSynchronousUpdate()
6.23.1 Constructors
Name DescriptionCDungeonMaster::CDungeonMaster Constructs a CDungeonMaster object
CDungeonMaster::CDungeonMaster
Constructs a CDungeonMaster object
void CDungeonMaster::CDungeonMaster();
Remarks
Constructs a CDungeonMaster object
6.23. CDungeonMaster Class 951
EEex Documentation, Release 1.0
6.23.2 Methods
Name DescriptionCDungeonMaster::EngineActivated Engine activatedCDungeonMaster::EngineDeactivated Engine deactivatedCDungeonMaster::EngineDestroyed Engine destroyedCDungeonMaster::EngineInitialized Engine initializedCDungeonMaster::TimerAsynchronousUpdate Update timer asynchronouslyCDungeonMaster::TimerSynchronousUpdate Update timer synchronously
CDungeonMaster::EngineActivated
Engine activated
virtual void CDungeonMaster::EngineActivated();
Remarks
CDungeonMaster::EngineDeactivated
Engine deactivated
virtual void CDungeonMaster::EngineDeactivated();
Remarks
CDungeonMaster::EngineDestroyed
Engine destroyed
virtual void CDungeonMaster::EngineDestroyed();
Remarks
CDungeonMaster::EngineInitialized
Engine initialized
virtual void CDungeonMaster::EngineInitialized();
Remarks
952 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CDungeonMaster::TimerAsynchronousUpdate
Update timer asynchronously
virtual void CDungeonMaster::TimerAsynchronousUpdate();
Remarks
CDungeonMaster::TimerSynchronousUpdate
Update timer synchronously
virtual void CDungeonMaster::TimerSynchronousUpdate();
Remarks
6.24 CFile Class
• Overview
• Quick Reference
• Constructors
• Methods
6.24.1 Overview
Note: The CFile class handles basic file operations
The structure used for this class is CFile
6.24. CFile Class 953
EEex Documentation, Release 1.0
6.24.2 Quick Reference
Quick Refvoid CFile::CFile()virtual void CFile::~CFile()virtual void CFile::Abort()virtual void CFile::Close()virtual void CFile::Flush()virtual unsigned int CFile::GetBufferPtr(unsigned int nCommand, unsigned int __formal)virtual CString CFile::GetFileName()virtual CString CFile::GetFilePath()virtual CString CFile::GetFileTitle()virtual unsigned long CFile::GetLength()virtual unsigned long CFile::GetPosition()int CFile::GetStatus(CFileStatus& rStatus)virtual int CFile::Open(const char* lpszFileName, unsigned int nOpenFlags, CFileException* pException)virtual unsigned int CFile::Read(void* lpBuf, unsigned int nCount)virtual void __stdcall CFile::Remove(const char* lpszFileName) = 0virtual long CFile::Seek(long lOff, unsigned int nFrom)virtual void CFile::SetFilePath(const char* lpszNewName)virtual void CFile::SetLength(unsigned long dwNewLen)virtual unsigned int CFile::Write(const void* lpBuf, unsigned int nCount)
6.24.3 Constructors
Name DescriptionCFile::CFile Constructs a CFile objectCFile::~CFile Destroys a CFile object
CFile::CFile
Constructs a CFile object
void CFile::CFile();
Remarks
Constructs a CFile object
CFile::~CFile
Destroys the CFile object
virtual void CFile::~CFile();
954 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Remarks
Destroys the CFile object
6.24.4 Methods
Name DescriptionCFile::Abort Closes a file ignoring all warnings and errorsCFile::Close Closes a file and deletes the objectCFile::Flush Flushes any data yet to be writtenCFile::GetBufferPtrCFile::GetFileName Retrieves the filename of the selected fileCFile::GetFilePath Retrieves the full file path of the selected fileCFile::GetFileTitle Retrieves the title of the selected fileCFile::GetLength Retrieves the length of the fileCFile::GetPosition Retrieves the current file pointerCFile::GetStatus Retrieves the status of the open fileCFile::Open Safely opens a file with an error-testing optionCFile::Read Reads (unbuffered) data from a file at the current file positionCFile::Remove Deletes the specified fileCFile::Seek Positions the current file pointerCFile::SetFilePath Sets the full file path of the selected fileCFile::SetLength Changes the length of the fileCFile::Write Writes (unbuffered) data in a file to the current file position
CFile::Abort
Closes a file ignoring all warnings and errors
virtual void CFile::Abort();
Remarks
If you haven’t closed the file before destroying the object, the destructor closes it for you.
When handling exceptions, CFile::Abort differs from CFile::Close in that it won’t throw an exception on failures,because failures are ignored by Abort.
CFile::Close
Closes a file and deletes the object
virtual void CFile::Close();
Remarks
If you haven’t closed the file before destroying the object, the destructor closes it for you.
6.24. CFile Class 955
EEex Documentation, Release 1.0
CFile::Flush
Flushes any data yet to be written
virtual void CFile::Flush();
Remarks
CFile::GetBufferPtr
virtual unsigned int CFile::GetBufferPtr(unsigned int nCommand,unsigned int __formal);
Parameters
• unsigned int nCommand -
• unsigned int __formal -
Return Value
Returns unsigned int
Remarks
CFile::GetFileName
Retrieves the filename of the selected file
virtual CString CFile::GetFileName();
Return Value
Returns a CString
Remarks
To return the entire path of the file, including the name, call CFile::GetFilePath. To return the title of the file (myfile),call CFile::GetFileTitle.
CFile::GetFilePath
Retrieves the full file path of the selected file
virtual CString CFile::GetFilePath();
Return Value
Returns a CString
Remarks
956 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
To return just the name of the file (myfile.wri), call CFile::GetFileName. To return the title of the file (myfile), callCFile::GetFileTitle.
CFile::GetFileTitle
Retrieves the title of the selected file
virtual CString CFile::GetFileTitle();
Return Value
Returns a CString
Remarks
To return the entire path of the file, including the name, call CFile::GetFilePath. To return just the name of the file,call CFile::GetFileName.
CFile::GetLength
Obtains the current logical length of the file in bytes.
virtual unsigned long CFile::GetLength();
Return Value
Returns unsigned long
Remarks
CFile::GetPosition
Obtains the current value of the file pointer, which can be used in later calls to CFile::Seek
virtual unsigned long CFile::GetPosition();
Return Value
Returns unsigned long
Remarks
6.24. CFile Class 957
EEex Documentation, Release 1.0
CFile::GetStatus
This method retrieves status information related to a given CFile object instance or a given file path.
int CFile::GetStatus(CFileStatus& rStatus);
Parameters
• CFileStatus& rStatus - A reference to a user-supplied CFileStatus structure that will receive the status informa-tion
Return Value
Returns an int value representing one or more of the following values:
• 0x00 normal
• 0x01 readOnly
• 0x02 hidden
• 0x04 system
• 0x08 volume
• 0x10 directory
• 0x20 archive
Remarks
The CFileStatus structure has the following fields:
• CTime m_ctime - The date and time the file was created.
• CTime m_mtime - The date and time the file was last modified.
• CTime m_atime - The date and time the file was last accessed for reading.
• ULONGLONG m_size - The logical size of the file in bytes, as reported by the DIR command.
• BYTE m_attribute - The attribute byte of the file.
• char m_szFullName[_MAX_PATH] - The absolute filename in the Windows character set.
CFile::Open
Safely opens a file with an error-testing option
virtual int CFile::Open(const char* lpszFileName,unsigned int nOpenFlags,CFileException* pException);
Parameters
• const char* lpszFileName - A string that contains the path to the desired file. The path can be relative,absolute, or a network name (UNC)
• unsigned int nOpenFlags - A UINT that defines the file’s sharing and access mode. It specifies the actionto take when opening the file.
958 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CFileException* pException - A pointer to an existing file-exception object that will receive the status of a failedoperation.
Return Value
Nonzero if the open was successful; otherwise 0.
Remarks
“safe” method for opening a file, where a failure is a normal, expected condition.
CFile::Read
Reads data into a buffer from the file associated with the CFile object.
virtual unsigned int CFile::Read(void* lpBuf,unsigned int nCount);
Parameters
• void* lpBuf - Pointer to the user-supplied buffer that is to receive the data read from the file.
• unsigned int nCount - The maximum number of bytes to be read from the file. For text-mode files, carriagereturn-line feed pairs are counted as single characters.
Return Value
The number of bytes transferred to the buffer.
Remarks
For all CFile classes, the return value may be less than nCount if the end of file was reached.
CFile::Remove
Deletes the specified file
virtual void __stdcall CFile::Remove(const char* lpszFileName);
Parameters
• const char* lpszFileName - A string that is the path to the desired file. The path can be relative or absolute,and can contain a network name.
Remarks
CFile::Remove won’t remove a directory.
CFile::Seek
Positions the current file pointer
6.24. CFile Class 959
EEex Documentation, Release 1.0
virtual long CFile::Seek(long lOff,unsigned int nFrom);
Parameters
• long lOff - Number of bytes to move the file pointer. Positive values move the file pointer towards the end ofthe file; negative values move the file pointer towards the start of the file.
• unsigned int nFrom - Position to seek from. See the Remarks section for possible values.
Return Value
The position of the file pointer if the method was successful; otherwise, the return value is undefined and a pointer toa CFileException exception is thrown.
Remarks
The following table lists possible values for the nFrom parameter.
• CFile::begin - Seek from the start of the file.
• CFile::current - Seek from the current location of the file pointer.
• CFile::end - Seek from the end of the file.
When a file is opened, the file pointer is positioned at 0, the start of the file.
You can set the file pointer to a position beyond the end of a file. If you do, the size of the file doesn’t increase untilyou write to the file.
The exception handler for this method must delete the exception object after the exception is processed.
CFile::SetFilePath
Sets the full file path of the selected file
virtual void CFile::SetFilePath(const char* lpszNewName);
Parameters
• const char* lpszNewName - Pointer to a string specifying the new path.
Remarks
CFile::SetFilePath does not open the file or create the file; it simply associates the CFile object with a path name,which can then be used.
CFile::SetLength
Changes the length of the file
virtual void CFile::SetLength(unsigned long dwNewLen);
Parameters
• unsigned long dwNewLen - Desired length of the file in bytes. This value can be larger or smaller than thecurrent length of the file. The file will be extended or truncated as appropriate.
960 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CFile::Write
Writes (unbuffered) data in a file to the current file position
virtual unsigned int CFile::Write(const void* lpBuf,unsigned int nCount);
Parameters
• const void* lpBuf - A pointer to the user-supplied buffer that contains the data to be written to the file.
• unsigned int nCount - The number of bytes to be transferred from the buffer. For text-mode files, carriagereturn-line feed pairs are counted as single characters.
Return Value
Returns unsigned int of bytes written
Remarks
CFile::Write throws an exception in response to several conditions, including the disk-full condition.
6.25 CFileException Class
The structure used for this class is CFileException
Quick Refvirtual void __stdcall CFileException::ThrowOsError(long lOsError, const char* lpszFileName) = 0virtual int __stdcall CFileException::OsErrorToException(long lOsErr) = 0
6.25.1 Methods
Name DescriptionCFileException::ThrowOsErrorCFileException::OsErrorToException
CFileException::ThrowOsError
virtual void __stdcall CFileException::ThrowOsError(long lOsError,const char* lpszFileName);
Parameters
• long lOsError -
• const char* lpszFileName -
6.25. CFileException Class 961
EEex Documentation, Release 1.0
Remarks
CFileException::OsErrorToException
virtual int __stdcall CFileException::OsErrorToException(long lOsErr);
Parameters
• long lOsErr -
Return Value
Returns int
Remarks
6.26 CFileFind Class
The structure used for this class is CFileFind
Quick Refvoid CFileFind::CFileFind()virtual void CFileFind::~CFileFind()void CFileFind::Close()virtual void CFileFind::CloseContext()virtual int CFileFind::FindFile(const char* pstrName, unsigned long __formal)virtual int CFileFind::FindNextFileA()virtual CString CFileFind::GetFileName()virtual CString CFileFind::GetFilePath()virtual CString CFileFind::GetFileTitle()virtual CString CFileFind::GetFileURL()unsigned long CFileFind::GetLength()virtual void CFileFind::GetNameAndExt(CString& name, CString& ext)virtual CString CFileFind::GetRoot()virtual int CFileFind::IsDots()virtual int CFileFind::MatchesMask(unsigned long dwMask)
6.26.1 Constructors
Name DescriptionCFileFind::CFileFind Constructs a CFileFind objectCFileFind::~CFileFind Destroys a CFileFind object
962 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CFileFind::CFileFind
Constructs a CFileFind object
void CFileFind::CFileFind();
Remarks
Constructs a CFileFind object
CFileFind::~CFileFind
Destroys the CFileFind object
virtual void CFileFind::~CFileFind();
Remarks
Destroys the CFileFind object
6.26.2 Methods
Name DescriptionCFileFind::Close Closes the search requestCFileFind::CloseContext Closes the search requestCFileFind::FindFile Searches a directory for a specified file nameCFileFind::FindNextFileA Continues a file search from a previous call to FindFileCFileFind::GetFileName Gets the name, including the extension, of the found fileCFileFind::GetFilePath Gets the whole path of the found fileCFileFind::GetFileTitle Gets the title of the found file. The title does not include the extensionCFileFind::GetFileURL Gets the URL, including the file path, of the found fileCFileFind::GetLength Gets the length of the found file, in bytesCFileFind::GetNameAndExt Gets the title and extension of the found fileCFileFind::GetRoot Gets the root directory of the found fileCFileFind::IsDots Determines if the name of the found file has “.” or “..”, indicating a directoryCFileFind::MatchesMask Indicates the desired file attributes of the file to be found
CFileFind::Close
Closes the search request. Call this member function to end the search, reset the context, and release all resources.
void CFileFind::Close();
Remarks
After calling Close, you do not have to create a new CFileFind instance before calling CFileFind::FindFile to begin anew search.
6.26. CFileFind Class 963
EEex Documentation, Release 1.0
CFileFind::CloseContext
Closes the file specified by the current search handle
virtual void CFileFind::CloseContext();
Remarks
Closes the file specified by the current value of the search handle
CFileFind::FindFile
Searches a directory for a specified file name
virtual int CFileFind::FindFile(const char* pstrName,unsigned long __formal);
Parameters
• const char* pstrName - A pointer to a string containing the name of the file to find. If you pass NULL forpstrName, FindFile does a wildcard (*.*) search.
• unsigned long __formal - Reserved - Must be 0
Return Value
Nonzero if successful; otherwise 0
Remarks
After calling CFileFind::FindFile to begin the file search, call CFileFind::FindNextFileA to retrieve subsequent files.You must call CFileFind::FindNextFileA at least once before calling any of the following attribute member functions:
• CFileFind::GetFileName
• CFileFind::GetFilePath
• CFileFind::GetFileTitle
• CFileFind::GetFileURL
• CFileFind::GetLength
• CFileFind::GetNameAndExt
• CFileFind::GetRoot
• CFileFind::IsDots
• CFileFind::MatchesMask
964 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CFileFind::FindNextFileA
Continues a file search from a previous call to CFileFind::FindFile
virtual int CFileFind::FindNextFileA();
Return Value
Nonzero if there are more files; zero if the file found is the last one in the directory or if an error occurred
Remarks
You must call CFileFind::FindNextFileA at least once before calling any of the following attribute member functions:
• CFileFind::GetFileName
• CFileFind::GetFilePath
• CFileFind::GetFileTitle
• CFileFind::GetFileURL
• CFileFind::GetLength
• CFileFind::GetNameAndExt
• CFileFind::GetRoot
• CFileFind::IsDots
• CFileFind::MatchesMask
CFileFind::GetFileName
Gets the name, including the extension, of the found file
virtual CString CFileFind::GetFileName();
Return Value
Returns a CString containg the name of the most-recently-found file
Remarks
You must call CFileFind::FindNextFileA at least once before calling CFileFind::GetFileName
CFileFind::GetFilePath
Gets the whole path of the found file
virtual CString CFileFind::GetFilePath();
Return Value
Returns a CString containing the path of the specified file
Remarks
You must call CFileFind::FindNextFileA at least once before calling CFileFind::GetFilePath
6.26. CFileFind Class 965
EEex Documentation, Release 1.0
CFileFind::GetFileTitle
Gets the title of the found file. The title does not include the extension
virtual CString CFileFind::GetFileTitle();
Return Value
Returns a CString containing the title of the file
Remarks
You must call CFileFind::FindNextFileA at least once before calling CFileFind::GetFileTitle
CFileFind::GetFileURL
Gets the URL, including the file path, of the found file
virtual CString CFileFind::GetFileURL();
Return Value
Returns a CString containing the complete URL
Remarks
You must call CFileFind::FindNextFileA at least once before calling CFileFind::GetFileURL
CFileFind::GetLength
Gets the length of the found file, in bytes
unsigned long CFileFind::GetLength();
Return Value
The length of the found file, in bytes
Remarks
You must call CFileFind::FindNextFileA at least once before calling CFileFind::GetLength
CFileFind::GetNameAndExt
Gets the title and extension of the found file
virtual void CFileFind::GetNameAndExt(CString& name,CString& ext);
Parameters
• CString& name - address of variable to hold file name
966 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CString& ext - address of variable to file extension
Remarks
You must call CFileFind::FindNextFileA at least once before calling CFileFind::GetNameAndExt
CFileFind::GetRoot
Gets the root directory of the found file
virtual CString CFileFind::GetRoot();
Return Value
Returns a CString containing the root of the active search
Remarks
You must call CFileFind::FindNextFileA at least once before calling CFileFind::GetRoot
CFileFind::IsDots
Determines if the name of the found file has the name “.” or “..”, indicating that is actually a directory
virtual int CFileFind::IsDots();
Return Value
Nonzero if the found file has the name “.” or “..”, which indicates that the found file is actually a directory. Otherwise0
Remarks
You must call CFileFind::FindNextFileA at least once before calling CFileFind::IsDots
CFileFind::MatchesMask
Indicates the desired file attributes of the file to be found
virtual int CFileFind::MatchesMask(unsigned long dwMask);
Parameters
• unsigned long dwMask - Specifies one or more file attributes for the found file
Return Value
Nonzero if successful; otherwise 0
Remarks
You must call CFileFind::FindNextFileA at least once before calling CFileFind::MatchesMask
6.26. CFileFind Class 967
EEex Documentation, Release 1.0
6.27 CFileView Class
The structure used for this class is CFileView
Quick Refvoid CFileView::CFileView()void CFileView::~CFileView()int CFileView::Open(const char* fileName)char* CFileView::fgets(char* buffer, int size)int CFileView::fseek(long offset, int origin)long CFileView::ftell()
6.27.1 Constructors
Name DescriptionCFileView::CFileView Constructs a CFileView objectCFileView::~CFileView Destroys a CFileView object
CFileView::CFileView
Constructs a CFileView object
void CFileView::CFileView();
Remarks
Constructs a CFileView object
CFileView::~CFileView
Destroys the CFileView object
void CFileView::~CFileView();
Remarks
Destroys the CFileView object
6.27.2 Methods
Name DescriptionCFileView::Open Open a view of a file which is memory mappedCFileView::fgets Reads the file view contents into a buffer of a specified sizeCFileView::fseek Move the file view pointerCFileView::ftell Returns the file view pointer position
968 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CFileView::Open
Open a view of a file which is memory mapped
int CFileView::Open\(const char* fileName);
Parameters
• const char* fileName - string containing file name to open a view of a memory mapped file
Return Value
Returns int, a pointer to the file contents in memory
Remarks
CFileView::fgets
Reads the file view contents into a buffer of a specified size
char* CFileView::fgets(char* buffer,int size);
Parameters
• char* buffer - pointer to buffer to read file view data
• int size - size of buffer to read data into
Return Value
Returns char*
Remarks
CFileView::fseek
Move the file view pointer
int CFileView::fseek(long offset,int origin);
Parameters
• long offset - address offset to move file view pointer to
• int origin - move file view pointer relative to beginning, current position or end of file view
Return Value
Returns int
Remarks
6.27. CFileView Class 969
EEex Documentation, Release 1.0
CFileView::ftell
Returns the file view pointer position
long CFileView::ftell();
Return Value
Returns long
Remarks
6.28 CGameAIBase Class
• Overview
• Quick Reference
• Constructors
• Methods
6.28.1 Overview
The structure used for this class is CGameAIBase
6.28.2 Quick Reference
Quick Refvoid CGameAIBase::CGameAIBase()virtual void CGameAIBase::~CGameAIBase()virtual void CGameAIBase::AddAction(CAIAction& action)virtual void CGameAIBase::AddEffect(CGameEffect* pEffect, unsigned char list, int noSave, int immediateApply)short CGameAIBase::AddExperiencePartyGlobal()short CGameAIBase::AddGlobals()short CGameAIBase::AddStoreItem()short CGameAIBase::AddXP2DA()void CGameAIBase::ApplyEffectToParty(CGameEffect* effect)short CGameAIBase::ApplySpell(CGameSprite* target)virtual void CGameAIBase::ApplyTriggers()short CGameAIBase::AttachTransitionToDoor(CGameDoor* pObject)virtual void CGameAIBase::AutoPause(unsigned long type)int CGameAIBase::BlowThroughInstantActions()short CGameAIBase::ChangeAIScript()short CGameAIBase::ChangeTileState(CGameTiledObject* target)int CGameAIBase::CheckAppropriateTarget(CSpell* pSpell, CGameAIBase* pTarget)void CGameAIBase::CheckTimers(long cycles)short CGameAIBase::ClearActions(CGameAIBase* pSprite)
Continued on next page
970 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 12 – continued from previous pagevirtual void CGameAIBase::ClearActions(int leaveOverrides)virtual void CGameAIBase::ClearAI(unsigned char setSequence)short CGameAIBase::ClearAllActions()void CGameAIBase::ClearTriggers()short CGameAIBase::ClickLButtonObject(CGameObject* target)short CGameAIBase::ClickLButtonPoint()short CGameAIBase::ClickRButtonObject(CGameObject* target)short CGameAIBase::ClickRButtonPoint()short CGameAIBase::CloseDoor(CGameDoor* pDoor)virtual unsigned char CGameAIBase::CompressTime(unsigned long deltaTime)short CGameAIBase::ContainerEnable(CGameContainer* pContainer)short CGameAIBase::CreateCreature()short CGameAIBase::CreateCreatureObject(CGameAIBase* pObject)short CGameAIBase::CreateItem()short CGameAIBase::CreateVisualEffect()short CGameAIBase::CreateVisualEffectObject(CGameAIBase* pObject)short CGameAIBase::DeathMatchPosition()void CGameAIBase::DecodeSpell(long spellId, CString& res)short CGameAIBase::DestroyItem()short CGameAIBase::DetectSecretDoor(CGameDoor* target)short CGameAIBase::DisplayString(CGameAIBase* sprite)short CGameAIBase::DisplayStringPoint(CGameArea* area, unsigned long text, CPoint& dest)short CGameAIBase::DisplayStringWait(CGameAIBase* sprite)virtual void CGameAIBase::DoAction()short CGameAIBase::DoubleClickLButton(CPoint dest)short CGameAIBase::DoubleClickLButtonObject(CGameObject* target)short CGameAIBase::DoubleClickLButtonPoint()short CGameAIBase::DoubleClickRButton(CPoint dest)short CGameAIBase::DoubleClickRButtonObject(CGameObject* target)short CGameAIBase::DoubleClickRButtonPoint()long CGameAIBase::EncodeSpell(CString& res, long level)virtual int CGameAIBase::EvaluateStatusTrigger(CAITrigger& inTrigger)virtual short CGameAIBase::ExecuteAction()short CGameAIBase::ExportParty()short CGameAIBase::FadeFromColor()short CGameAIBase::FadeToColor()short CGameAIBase::FireItem(CItem* pItem, long abilityNum, CGameObject* pTarget)short CGameAIBase::FireItemPoint(CItem* pItem, long abilityNum, CPoint& target)short CGameAIBase::FireSpell(CResRef & res, CGameObject* target, int checkRange, unsigned long rangeError, CWildSurge* pSurge, int displayString, int suppressCastingGlow)short CGameAIBase::FireSpellPoint(CResRef & res, CPoint& ptTarget, int checkRange, unsigned long rangeError, CWildSurge* pSurge, int displayString, int suppressCastingGlow)short CGameAIBase::ForceSpell(CGameSprite* target)short CGameAIBase::ForceSpellPoint()virtual short CGameAIBase::GetAttackRange()virtual CRect CGameAIBase::GetBounding()virtual int CGameAIBase::GetCanSeeInvisible()CVariable* CGameAIBase::GetGlobalVariable(CString areaName, CString globalName)virtual short CGameAIBase::GetHelpRange()CAIAction& CGameAIBase::GetNextAction(CAIAction& action)unsigned char CGameAIBase::GetReaction(CGameSprite* pSprite)CGameObject* CGameAIBase::GetTargetShare(CAIObjectType& type)
Continued on next page
6.28. CGameAIBase Class 971
EEex Documentation, Release 1.0
Table 12 – continued from previous pageCGameObject* CGameAIBase::GetTargetShare()CGameObject* CGameAIBase::GetTargetShareType(CAIObjectType& AItype, unsigned char type)CGameObject* CGameAIBase::GetTargetShareType(unsigned char type)virtual const unsigned char* CGameAIBase::GetTerrainTable()CVariable* CGameAIBase::GetVariableReference(CString& areaName, CString& globalName)virtual const unsigned char* CGameAIBase::GetVisibleTerrainTable()virtual short CGameAIBase::GetVisualRange()short CGameAIBase::GiveItemCreate(CGameSprite* pSprite)short CGameAIBase::GiveObjectGoldGlobal(CGameObject* pObject)short CGameAIBase::GiveOrder(CGameAIBase* sprite)short CGameAIBase::GivePartyGold()short CGameAIBase::GivePartyGoldGlobal()short CGameAIBase::IncrementChapter()short CGameAIBase::IncrementGlobal()virtual void CGameAIBase::InsertAction(CAIAction& action)void CGameAIBase::InsertResponse(CAIResponse& res, int checkCurrentResponse, int clearActions)short CGameAIBase::LeaveAreaLuaPanic()short CGameAIBase::LeaveAreaLuaPanicEntry()short CGameAIBase::Lock(CGameAIBase* pObject)short CGameAIBase::MoveContainerContents(CString arg1, CString arg2)short CGameAIBase::MoveCursor(CPoint dest, short speed)short CGameAIBase::MoveCursorPoint()short CGameAIBase::MoveGlobal(CGameSprite* pSprite)short CGameAIBase::MoveGlobalObject(CGameSprite* pTarget)short CGameAIBase::MoveView(CPoint dest, short speed)short CGameAIBase::MoveViewObject(CGameObject* target)short CGameAIBase::MoveViewPoint()short CGameAIBase::MultiPlayerSynch()virtual void CGameAIBase::OnActionRemoval(CAIAction& curAction)short CGameAIBase::OpenDoor(CGameDoor* pDoor)int CGameAIBase::PartyHasItem(CResRef & res)int CGameAIBase::PlaceItem(CItem* pItem, int haveDeny, int dropUnplaced, unsigned long num, int feedback)short CGameAIBase::PlaySound()virtual void CGameAIBase::ProcessAI()void CGameAIBase::ProcessPendingTriggers(int overrideOnly)void CGameAIBase::PutItemGround(CItem* pItem)virtual int CGameAIBase::QuickDecode(CAITrigger& trigger, CGameSprite*& pSprite)virtual void CGameAIBase::RemoveFromArea()short CGameAIBase::RemoveStoreItem()short CGameAIBase::RemoveTrapsNonSprite(CGameAIBase* pObject)short CGameAIBase::RevealAreaOnMap()short CGameAIBase::SaveLocation()short CGameAIBase::SaveObjectLocation(CGameObject* pObject)short CGameAIBase::SendTrigger(CGameAIBase* sprite)void CGameAIBase::SetClassScript(CAIScript* script)virtual void CGameAIBase::SetCurrAction(CAIAction& action)short CGameAIBase::SetGabber(CGameSprite* pCharacter)void CGameAIBase::SetGeneralScript(CAIScript* script)short CGameAIBase::SetGlobal()short CGameAIBase::SetGlobalTimer()
Continued on next page
972 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 12 – continued from previous pagevoid CGameAIBase::SetOverrideScript(CAIScript* script)short CGameAIBase::SetupWish(long column, long count)void CGameAIBase::SetRaceScript(CAIScript* script)virtual void CGameAIBase::SetScript(short level, CAIScript* script)void CGameAIBase::SetTrigger(CAITrigger& trigger)short CGameAIBase::Shout()short CGameAIBase::SmallWait()short CGameAIBase::SpawnPtActivate(CGameSpawning* pObject)short CGameAIBase::SpawnPtDeactivate(CGameSpawning* pObject)short CGameAIBase::SpawnPtSpawn(CGameSpawning* pObject)short CGameAIBase::StartCutScene(unsigned char evaluateCondition)short CGameAIBase::StartMovie()short CGameAIBase::StartTextScreen()short CGameAIBase::StartTimer()short CGameAIBase::StaticPalette(CGameStatic* pObject, CString palette)short CGameAIBase::StaticSequence(CGameStatic* pObject, unsigned short nSequence)short CGameAIBase::StaticStart(CGameStatic* pObject, int bStart)int CGameAIBase::SubtractPartyItemUse(CResRef & res, short charges, short abilityNum)void CGameAIBase::SynchLastObjects()short CGameAIBase::TakeObjectGoldGlobal(CGameObject* pObject)short CGameAIBase::TakePartyGold()short CGameAIBase::TakePartyItem()short CGameAIBase::TakePartyItemList()short CGameAIBase::TransformItem()short CGameAIBase::TriggerActivation(CGameTrigger* target)virtual void CGameAIBase::UpdateTarget(CGameObject* __formal)short CGameAIBase::Unlock(CGameAIBase* pObject)short CGameAIBase::Wait()short CGameAIBase::XEquipItem(CGameSprite* target)
6.28.3 Constructors
Name DescriptionCGameAIBase::CGameAIBase Constructs a CGameAIBase objectCGameAIBase::~CGameAIBase Destroys a CGameAIBase object
CGameAIBase::CGameAIBase
Constructs a CGameAIBase object
void CGameAIBase::CGameAIBase();
Remarks
Constructs a CGameAIBase object
6.28. CGameAIBase Class 973
EEex Documentation, Release 1.0
CGameAIBase::~CGameAIBase
Destroys the CGameAIBase object
virtual void CGameAIBase::~CGameAIBase();
Remarks
Destroys the CGameAIBase object
6.28.4 Methods
Name DescriptionCGameAIBase::AddActionCGameAIBase::AddEffectCGameAIBase::AddExperiencePartyGlobalCGameAIBase::AddGlobalsCGameAIBase::AddStoreItemCGameAIBase::AddXP2DACGameAIBase::ApplyEffectToPartyCGameAIBase::ApplySpellCGameAIBase::ApplyTriggersCGameAIBase::AttachTransitionToDoorCGameAIBase::AutoPauseCGameAIBase::BlowThroughInstantActionsCGameAIBase::ChangeAIScriptCGameAIBase::ChangeTileStateCGameAIBase::CheckAppropriateTargetCGameAIBase::CheckTimersCGameAIBase::ClearActionsCGameAIBase::ClearAICGameAIBase::ClearAllActionsCGameAIBase::ClearTriggersCGameAIBase::ClickLButtonObjectCGameAIBase::ClickLButtonPointCGameAIBase::ClickRButtonObjectCGameAIBase::ClickRButtonPointCGameAIBase::CloseDoorCGameAIBase::CompressTimeCGameAIBase::ContainerEnableCGameAIBase::CreateCreatureCGameAIBase::CreateCreatureObjectCGameAIBase::CreateItemCGameAIBase::CreateVisualEffectCGameAIBase::CreateVisualEffectObjectCGameAIBase::DeathMatchPositionCGameAIBase::DecodeSpellCGameAIBase::DestroyItemCGameAIBase::DetectSecretDoor
Continued on next page
974 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 13 – continued from previous pageCGameAIBase::DisplayStringCGameAIBase::DisplayStringPointCGameAIBase::DisplayStringWaitCGameAIBase::DoActionCGameAIBase::DoubleClickLButtonCGameAIBase::DoubleClickLButtonObjectCGameAIBase::DoubleClickLButtonPointCGameAIBase::DoubleClickRButtonCGameAIBase::DoubleClickRButtonObjectCGameAIBase::DoubleClickRButtonPointCGameAIBase::EncodeSpellCGameAIBase::EvaluateStatusTriggerCGameAIBase::ExecuteActionCGameAIBase::ExportPartyCGameAIBase::FadeFromColorCGameAIBase::FadeToColorCGameAIBase::FireItemCGameAIBase::FireItemPointCGameAIBase::FireSpellCGameAIBase::FireSpellPointCGameAIBase::ForceSpellCGameAIBase::ForceSpellPointCGameAIBase::GetAttackRangeCGameAIBase::GetBoundingCGameAIBase::GetCanSeeInvisibleCGameAIBase::GetGlobalVariableCGameAIBase::GetHelpRangeCGameAIBase::GetNextActionCGameAIBase::GetReactionCGameAIBase::GetTargetShareCGameAIBase::GetTargetShareTypeCGameAIBase::GetTerrainTableCGameAIBase::GetVariableReferenceCGameAIBase::GetVisibleTerrainTableCGameAIBase::GetVisualRangeCGameAIBase::GiveItemCreateCGameAIBase::GiveObjectGoldGlobalCGameAIBase::GiveOrderCGameAIBase::GivePartyGoldCGameAIBase::GivePartyGoldGlobalCGameAIBase::IncrementChapterCGameAIBase::IncrementGlobalCGameAIBase::InsertActionCGameAIBase::InsertResponseCGameAIBase::LeaveAreaLuaPanicCGameAIBase::LeaveAreaLuaPanicEntryCGameAIBase::LockCGameAIBase::MoveContainerContentsCGameAIBase::MoveCursorCGameAIBase::MoveCursorPoint
Continued on next page
6.28. CGameAIBase Class 975
EEex Documentation, Release 1.0
Table 13 – continued from previous pageCGameAIBase::MoveGlobalCGameAIBase::MoveGlobalObjectCGameAIBase::MoveViewCGameAIBase::MoveViewObjectCGameAIBase::MoveViewPointCGameAIBase::MultiPlayerSynchCGameAIBase::OnActionRemovalCGameAIBase::OpenDoorCGameAIBase::PartyHasItemCGameAIBase::PlaceItemCGameAIBase::PlaySoundCGameAIBase::ProcessAICGameAIBase::ProcessPendingTriggersCGameAIBase::PutItemGroundCGameAIBase::QuickDecodeCGameAIBase::RemoveFromAreaCGameAIBase::RemoveStoreItemCGameAIBase::RemoveTrapsNonSpriteCGameAIBase::RevealAreaOnMapCGameAIBase::SaveLocationCGameAIBase::SaveObjectLocationCGameAIBase::SendTriggerCGameAIBase::SetClassScriptCGameAIBase::SetCurrActionCGameAIBase::SetGabberCGameAIBase::SetGeneralScriptCGameAIBase::SetGlobalCGameAIBase::SetGlobalTimerCGameAIBase::SetOverrideScriptCGameAIBase::SetupWishCGameAIBase::SetRaceScriptCGameAIBase::SetScriptCGameAIBase::SetTriggerCGameAIBase::ShoutCGameAIBase::SmallWaitCGameAIBase::SpawnPtActivateCGameAIBase::SpawnPtDeactivateCGameAIBase::SpawnPtSpawnCGameAIBase::StartCutSceneCGameAIBase::StartMovieCGameAIBase::StartTextScreenCGameAIBase::StartTimerCGameAIBase::StaticPaletteCGameAIBase::StaticSequenceCGameAIBase::StaticStartCGameAIBase::SubtractPartyItemUseCGameAIBase::SynchLastObjectsCGameAIBase::TakeObjectGoldGlobalCGameAIBase::TakePartyGoldCGameAIBase::TakePartyItem
Continued on next page
976 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 13 – continued from previous pageCGameAIBase::TakePartyItemListCGameAIBase::TransformItemCGameAIBase::TriggerActivationCGameAIBase::UpdateTargetCGameAIBase::UnlockCGameAIBase::WaitCGameAIBase::XEquipItem
CGameAIBase::AddAction
virtual void CGameAIBase::AddAction(CAIAction& action);
Parameters
• CAIAction& action -
Remarks
CGameAIBase::AddEffect
virtual void CGameAIBase::AddEffect(CGameEffect* pEffect,unsigned char list,int noSave,int immediateApply);
Parameters
• CGameEffect* pEffect -
• unsigned char list -
• int noSave -
• int immediateApply -
Remarks
CGameAIBase::AddExperiencePartyGlobal
short CGameAIBase::AddExperiencePartyGlobal();
Return Value
Returns short
Remarks
6.28. CGameAIBase Class 977
EEex Documentation, Release 1.0
CGameAIBase::AddGlobals
short CGameAIBase::AddGlobals();
Return Value
Returns short
Remarks
CGameAIBase::AddStoreItem
short CGameAIBase::AddStoreItem();
Return Value
Returns short
Remarks
CGameAIBase::AddXP2DA
short CGameAIBase::AddXP2DA();
Return Value
Returns short
Remarks
CGameAIBase::ApplyEffectToParty
void CGameAIBase::ApplyEffectToParty(CGameEffect* effect);
Parameters
• CGameEffect* effect -
Remarks
978 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAIBase::ApplySpell
short CGameAIBase::ApplySpell(CGameSprite* target);
Parameters
• CGameSprite* target -
Return Value
Returns short
Remarks
CGameAIBase::ApplyTriggers
virtual void CGameAIBase::ApplyTriggers();
Remarks
CGameAIBase::AttachTransitionToDoor
short CGameAIBase::AttachTransitionToDoor(CGameDoor* pObject);
Parameters
• CGameDoor* pObject -
Return Value
Returns short
Remarks
CGameAIBase::AutoPause
virtual void CGameAIBase::AutoPause(unsigned long type);
Parameters
• unsigned long type -
Remarks
6.28. CGameAIBase Class 979
EEex Documentation, Release 1.0
CGameAIBase::BlowThroughInstantActions
int CGameAIBase::BlowThroughInstantActions();
Return Value
Returns int
Remarks
CGameAIBase::ChangeAIScript
short CGameAIBase::ChangeAIScript();
Return Value
Returns short
Remarks
CGameAIBase::ChangeTileState
short CGameAIBase::ChangeTileState(CGameTiledObject* target);
Parameters
• CGameTiledObject* target -
Return Value
Returns short
Remarks
CGameAIBase::CheckAppropriateTarget
int CGameAIBase::CheckAppropriateTarget(CSpell* pSpell,CGameAIBase* pTarget);
Parameters
• CSpell* pSpell -
• CGameAIBase* pTarget -
Return Value
Returns int
Remarks
980 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAIBase::CheckTimers
void CGameAIBase::CheckTimers(long cycles);
Parameters
• long cycles -
Remarks
CGameAIBase::ClearActions
short CGameAIBase::ClearActions(CGameAIBase* pSprite);
Parameters
• CGameAIBase* pSprite -
Return Value
Returns short
Remarks
CGameAIBase::ClearActions
virtual void CGameAIBase::ClearActions(int leaveOverrides);
Parameters
• int leaveOverrides -
Remarks
CGameAIBase::ClearAI
virtual void CGameAIBase::ClearAI(unsigned char setSequence);
Parameters
• unsigned char setSequence -
Remarks
6.28. CGameAIBase Class 981
EEex Documentation, Release 1.0
CGameAIBase::ClearAllActions
short CGameAIBase::ClearAllActions();
Return Value
Returns short
Remarks
CGameAIBase::ClearTriggers
void CGameAIBase::ClearTriggers();
Remarks
CGameAIBase::ClickLButtonObject
short CGameAIBase::ClickLButtonObject(CGameObject* target);
Parameters
• CGameObject* target -
Return Value
Returns short
Remarks
CGameAIBase::ClickLButtonPoint
short CGameAIBase::ClickLButtonPoint();
Return Value
Returns short
Remarks
982 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAIBase::ClickRButtonObject
short CGameAIBase::ClickRButtonObject(CGameObject* target);
Parameters
• CGameObject* target -
Return Value
Returns short
Remarks
CGameAIBase::ClickRButtonPoint
short CGameAIBase::ClickRButtonPoint();
Return Value
Returns short
Remarks
CGameAIBase::CloseDoor
short CGameAIBase::CloseDoor(CGameDoor* pDoor);
Parameters
• CGameDoor* pDoor -
Return Value
Returns short
Remarks
CGameAIBase::CompressTime
virtual unsigned char CGameAIBase::CompressTime(unsigned long deltaTime);
Parameters
• unsigned long deltaTime -
Return Value
Returns unsigned char
Remarks
6.28. CGameAIBase Class 983
EEex Documentation, Release 1.0
CGameAIBase::ContainerEnable
short CGameAIBase::ContainerEnable(CGameContainer* pContainer);
Parameters
• CGameContainer* pContainer -
Return Value
Returns short
Remarks
CGameAIBase::CreateCreature
short CGameAIBase::CreateCreature();
Return Value
Returns short
Remarks
CGameAIBase::CreateCreatureObject
short CGameAIBase::CreateCreatureObject(CGameAIBase* pObject);
Parameters
• CGameAIBase* pObject -
Return Value
Returns short
Remarks
CGameAIBase::CreateItem
short CGameAIBase::CreateItem();
Return Value
Returns short
Remarks
CGameAIBase::CreateVisualEffect
984 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
short CGameAIBase::CreateVisualEffect();
Return Value
Returns short
Remarks
CGameAIBase::CreateVisualEffectObject
short CGameAIBase::CreateVisualEffectObject(CGameAIBase* pObject);
Parameters
• CGameAIBase* pObject -
Return Value
Returns short
Remarks
CGameAIBase::DeathMatchPosition
short CGameAIBase::DeathMatchPosition();
Return Value
Returns short
Remarks
CGameAIBase::DecodeSpell
void CGameAIBase::DecodeSpell(long spellId,CString& res);
Parameters
• long spellId -
• CString& res -
Remarks
CGameAIBase::DestroyItem
6.28. CGameAIBase Class 985
EEex Documentation, Release 1.0
short CGameAIBase::DestroyItem();
Return Value
Returns short
Remarks
CGameAIBase::DetectSecretDoor
short CGameAIBase::DetectSecretDoor(CGameDoor* target);
Parameters
• CGameDoor* target -
Return Value
Returns short
Remarks
CGameAIBase::DisplayString
short CGameAIBase::DisplayString(CGameAIBase* sprite);
Parameters
• CGameAIBase* sprite -
Return Value
Returns short
Remarks
CGameAIBase::DisplayStringPoint
short CGameAIBase::DisplayStringPoint(CGameArea* area,unsigned long text,CPoint& dest);
Parameters
• CGameArea* area -
• unsigned long text -
• CPoint& dest -
986 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns short
Remarks
CGameAIBase::DisplayStringWait
short CGameAIBase::DisplayStringWait(CGameAIBase* sprite);
Parameters
• CGameAIBase* sprite -
Return Value
Returns short
Remarks
CGameAIBase::DoAction
virtual void CGameAIBase::DoAction();
Remarks
CGameAIBase::DoubleClickLButton
short CGameAIBase::DoubleClickLButton(CPoint dest);
Parameters
• CPoint dest -
Return Value
Returns short
Remarks
CGameAIBase::DoubleClickLButtonObject
short CGameAIBase::DoubleClickLButtonObject(CGameObject* target);
Parameters
• CGameObject* target -
6.28. CGameAIBase Class 987
EEex Documentation, Release 1.0
Return Value
Returns short
Remarks
CGameAIBase::DoubleClickLButtonPoint
short CGameAIBase::DoubleClickLButtonPoint();
Return Value
Returns short
Remarks
CGameAIBase::DoubleClickRButton
short CGameAIBase::DoubleClickRButton(CPoint dest);
Parameters
• CPoint dest -
Return Value
Returns short
Remarks
CGameAIBase::DoubleClickRButtonObject
short CGameAIBase::DoubleClickRButtonObject(CGameObject* target);
Parameters
• CGameObject* target -
Return Value
Returns short
Remarks
988 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAIBase::DoubleClickRButtonPoint
short CGameAIBase::DoubleClickRButtonPoint();
Return Value
Returns short
Remarks
CGameAIBase::EncodeSpell
long CGameAIBase::EncodeSpell(CString& res,long level);
Parameters
• CString& res -
• long level -
Return Value
Returns long
Remarks
CGameAIBase::EvaluateStatusTrigger
virtual int CGameAIBase::EvaluateStatusTrigger(CAITrigger& inTrigger);
Parameters
• CAITrigger& inTrigger -
Return Value
Returns int
Remarks
CGameAIBase::ExecuteAction
virtual short CGameAIBase::ExecuteAction();
Return Value
Returns short
Remarks
6.28. CGameAIBase Class 989
EEex Documentation, Release 1.0
CGameAIBase::ExportParty
short CGameAIBase::ExportParty();
Return Value
Returns short
Remarks
CGameAIBase::FadeFromColor
short CGameAIBase::FadeFromColor();
Return Value
Returns short
Remarks
CGameAIBase::FadeToColor
short CGameAIBase::FadeToColor();
Return Value
Returns short
Remarks
CGameAIBase::FireItem
short CGameAIBase::FireItem(CItem* pItem,long abilityNum,CGameObject* pTarget);
Parameters
• CItem* pItem -
• long abilityNum -
• CGameObject* pTarget -
Return Value
Returns short
Remarks
990 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAIBase::FireItemPoint
short CGameAIBase::FireItemPoint(CItem* pItem,long abilityNum,CPoint& target);
Parameters
• CItem* pItem -
• long abilityNum -
• CPoint& target -
Return Value
Returns short
Remarks
CGameAIBase::FireSpell
short CGameAIBase::FireSpell(CResRef& res,CGameObject* target,int checkRange,unsigned long rangeError,CWildSurge* pSurge,int displayString,int suppressCastingGlow);
Parameters
• CResRef & res -
• CGameObject* target -
• int checkRange -
• unsigned long rangeError -
• CWildSurge* pSurge -
• int displayString -
• int suppressCastingGlow -
Return Value
Returns short
Remarks
CGameAIBase::FireSpellPoint
6.28. CGameAIBase Class 991
EEex Documentation, Release 1.0
short CGameAIBase::FireSpellPoint(CResRef& res,:CPoint& ptTarget,int checkRange,unsigned long rangeError,CWildSurge* pSurge,int displayString,int suppressCastingGlow);
Parameters
• CResRef & res -
• CPoint& ptTarget -
• int checkRange -
• unsigned long rangeError -
• CWildSurge* pSurge -
• int displayString -
• int suppressCastingGlow -
Return Value
Returns short
Remarks
CGameAIBase::ForceSpell
short CGameAIBase::ForceSpell(CGameSprite* target);
Parameters
• CGameSprite* target -
Return Value
Returns short
Remarks
CGameAIBase::ForceSpellPoint
short CGameAIBase::ForceSpellPoint();
Return Value
Returns short
Remarks
992 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAIBase::GetAttackRange
virtual short CGameAIBase::GetAttackRange();
Return Value
Returns short
Remarks
CGameAIBase::GetBounding
virtual CRect CGameAIBase::GetBounding();
Return Value
Returns CRect
Remarks
CGameAIBase::GetCanSeeInvisible
virtual int CGameAIBase::GetCanSeeInvisible();
Return Value
Returns int
Remarks
CGameAIBase::GetGlobalVariable
CVariable* CGameAIBase::GetGlobalVariable(CString areaName,CString globalName);
Parameters
• CString areaName -
• CString vglobalName -
Return Value
Returns CVariable*
Remarks
CGameAIBase::GetHelpRange
6.28. CGameAIBase Class 993
EEex Documentation, Release 1.0
virtual short CGameAIBase::GetHelpRange();
Return Value
Returns short
Remarks
‘CGameAIBase::GetNextAction
CAIAction& CGameAIBase::GetNextAction(CAIAction& action);
Parameters
• CAIAction& action -
Return Value
Returns CAIAction&
Remarks
CGameAIBase::GetReaction
unsigned char CGameAIBase::GetReaction(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Return Value
Returns unsigned char
Remarks
CGameAIBase::GetTargetShare
CGameObject* CGameAIBase::GetTargetShare(CAIObjectType& type);
Parameters
• CAIObjectType& type -
Return Value
Returns CGameObject*
Remarks
CGameAIBase::GetTargetShare
994 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameObject* CGameAIBase::GetTargetShare();
Return Value
Returns CGameObject*
Remarks
CGameAIBase::GetTargetShareType
CGameObject* CGameAIBase::GetTargetShareType(CAIObjectType& AItype,unsigned char type);
Parameters
• CAIObjectType& AItype -
• unsigned char type -
Return Value
Returns CGameObject*
Remarks
CGameAIBase::GetTargetShareType
CGameObject* CGameAIBase::GetTargetShareType(unsigned char type);
Parameters
• unsigned char type -
Return Value
Returns CGameObject*
Remarks
CGameAIBase::GetTerrainTable
virtual const unsigned char* CGameAIBase::GetTerrainTable();
Return Value
Returns const unsigned char*
Remarks
6.28. CGameAIBase Class 995
EEex Documentation, Release 1.0
CGameAIBase::GetVariableReference
CVariable* CGameAIBase::GetVariableReference(CString& areaName,CString& globalName);
Parameters
• CString& areaName -
• CString& globalName -
Return Value
Returns CVariable*
Remarks
CGameAIBase::GetVisibleTerrainTable
virtual const unsigned char* CGameAIBase::GetVisibleTerrainTable();
Return Value
Returns const unsigned char*
Remarks
CGameAIBase::GetVisualRange
virtual short CGameAIBase::GetVisualRange();
Return Value
Returns short
Remarks
CGameAIBase::GiveItemCreate
short CGameAIBase::GiveItemCreate(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Return Value
Returns short
Remarks
996 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAIBase::GiveObjectGoldGlobal
short CGameAIBase::GiveObjectGoldGlobal(CGameObject* pObject);
Parameters
• CGameObject* pObject -
Return Value
Returns short
Remarks
CGameAIBase::GiveOrder
short CGameAIBase::GiveOrder(CGameAIBase* sprite);
Parameters
• CGameAIBase* sprite -
Return Value
Returns short
Remarks
CGameAIBase::GivePartyGold
short CGameAIBase::GivePartyGold();
Return Value
Returns short
Remarks
CGameAIBase::GivePartyGoldGlobal
short CGameAIBase::GivePartyGoldGlobal();
Return Value
Returns short
Remarks
CGameAIBase::IncrementChapter
6.28. CGameAIBase Class 997
EEex Documentation, Release 1.0
short CGameAIBase::IncrementChapter();
Return Value
Returns short
Remarks
CGameAIBase::IncrementGlobal
short CGameAIBase::IncrementGlobal();
Return Value
Returns short
Remarks
CGameAIBase::InsertAction
virtual void CGameAIBase::InsertAction(CAIAction& action);
Parameters
• CAIAction& action -
Remarks
CGameAIBase::InsertResponse
void CGameAIBase::InsertResponse(CAIResponse& res,int checkCurrentResponse,int clearActions);
Parameters
• CAIResponse& res -
• int checkCurrentResponse -
• int clearActions -
Remarks
CGameAIBase::LeaveAreaLuaPanic
998 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
short CGameAIBase::LeaveAreaLuaPanic();
Return Value
Returns short
Remarks
CGameAIBase::LeaveAreaLuaPanicEntry
short CGameAIBase::LeaveAreaLuaPanicEntry();
Return Value
Returns short
Remarks
CGameAIBase::Lock
short CGameAIBase::Lock(CGameAIBase* pObject);
Parameters
• CGameAIBase* pObject -
Return Value
Returns short
Remarks
CGameAIBase::MoveContainerContents
short CGameAIBase::MoveContainerContents(CString arg1,CString arg2);
Parameters
• CString arg1 -
• CString arg2 -
Return Value
Returns short
Remarks
6.28. CGameAIBase Class 999
EEex Documentation, Release 1.0
CGameAIBase::MoveCursor
short CGameAIBase::MoveCursor(CPoint dest,short speed);
Parameters
• CPoint dest -
• short speed -
Return Value
Returns short
Remarks
CGameAIBase::MoveCursorPoint
short CGameAIBase::MoveCursorPoint();
Return Value
Returns short
Remarks
CGameAIBase::MoveGlobal
short CGameAIBase::MoveGlobal(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Return Value
Returns short
Remarks
CGameAIBase::MoveGlobalObject
short CGameAIBase::MoveGlobalObject(CGameSprite* pTarget);
Parameters
• CGameSprite* pTarget -
1000 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns short
Remarks
CGameAIBase::MoveView
short CGameAIBase::MoveView(CPoint dest,short speed);
Parameters
• CPoint dest -
• short speed -
Return Value
Returns short
Remarks
CGameAIBase::MoveViewObject
short CGameAIBase::MoveViewObject(CGameObject* target);
Parameters
• CGameObject* target -
Return Value
Returns short
Remarks
CGameAIBase::MoveViewPoint
short CGameAIBase::MoveViewPoint();
Return Value
Returns short
Remarks
CGameAIBase::MultiPlayerSynch
6.28. CGameAIBase Class 1001
EEex Documentation, Release 1.0
short CGameAIBase::MultiPlayerSynch();
Return Value
Returns short
Remarks
CGameAIBase::OnActionRemoval
virtual void CGameAIBase::OnActionRemoval(CAIAction& curAction);
Parameters
• CAIAction& curAction -
Remarks
CGameAIBase::OpenDoor
short CGameAIBase::OpenDoor(CGameDoor* pDoor);
Parameters
• CGameDoor* pDoor -
Return Value
Returns short
Remarks
CGameAIBase::PartyHasItem
int CGameAIBase::PartyHasItem(CResRef& res);
Parameters
• CResRef & res -
Return Value
Returns int
Remarks
CGameAIBase::PlaceItem
1002 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
int CGameAIBase::PlaceItem(CItem* pItem,int haveDeny,int dropUnplaced,unsigned long num,int feedback);
Parameters
• CItem* pItem -
• int haveDeny -
• int dropUnplaced -
• unsigned long num -
• int feedback -
Return Value
Returns int
Remarks
CGameAIBase::PlaySound
short CGameAIBase::PlaySound();
Return Value
Returns short
Remarks
CGameAIBase::ProcessAI
virtual void CGameAIBase::ProcessAI();
Remarks
CGameAIBase::ProcessPendingTriggers
void CGameAIBase::ProcessPendingTriggers(int overrideOnly);
Parameters
• int overrideOnly -
Remarks
6.28. CGameAIBase Class 1003
EEex Documentation, Release 1.0
CGameAIBase::PutItemGround
void CGameAIBase::PutItemGround(CItem* pItem);
Parameters
• CItem* pItem -
Remarks
CGameAIBase::QuickDecode
virtual int CGameAIBase::QuickDecode(CAITrigger& trigger,CGameSprite*& pSprite);
Parameters
• CAITrigger& trigger -
• CGameSprite*& pSprite -
Return Value
Returns int
Remarks
CGameAIBase::RemoveFromArea
virtual void CGameAIBase::RemoveFromArea();
Remarks
CGameAIBase::RemoveStoreItem
short CGameAIBase::RemoveStoreItem();
Return Value
Returns short
Remarks
1004 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAIBase::RemoveTrapsNonSprite
short CGameAIBase::RemoveTrapsNonSprite(CGameAIBase* pObject);
Parameters
• CGameAIBase* pObject -
Return Value
Returns short
Remarks
CGameAIBase::RevealAreaOnMap
short CGameAIBase::RevealAreaOnMap();
Return Value
Returns short
Remarks
CGameAIBase::SaveLocation
short CGameAIBase::SaveLocation();
Return Value
Returns short
Remarks
CGameAIBase::SaveObjectLocation
short CGameAIBase::SaveObjectLocation(CGameObject* pObject);
Parameters
• CGameObject* pObject -
Return Value
Returns short
Remarks
CGameAIBase::SendTrigger
6.28. CGameAIBase Class 1005
EEex Documentation, Release 1.0
short CGameAIBase::SendTrigger(CGameAIBase* sprite);
Parameters
• CGameAIBase* sprite -
Return Value
Returns short
Remarks
CGameAIBase::SetClassScript
void CGameAIBase::SetClassScript(CAIScript* script);
Parameters
• CAIScript* script -
Remarks
CGameAIBase::SetCurrAction
virtual void CGameAIBase::SetCurrAction(CAIAction& action);
Parameters
• CAIAction& action -
Remarks
CGameAIBase::SetGabber
short CGameAIBase::SetGabber(CGameSprite* pCharacter);
Parameters
• CGameSprite* pCharacter -
Return Value
Returns short
Remarks
CGameAIBase::SetGeneralScript
1006 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CGameAIBase::SetGeneralScript(CAIScript* script);
Parameters
• CAIScript* script -
Remarks
CGameAIBase::SetGlobal
short CGameAIBase::SetGlobal();
Return Value
Returns short
Remarks
CGameAIBase::SetGlobalTimer
short CGameAIBase::SetGlobalTimer();
Return Value
Returns short
Remarks
CGameAIBase::SetOverrideScript
void CGameAIBase::SetOverrideScript(CAIScript* script);
Parameters
• CAIScript* script -
Remarks
CGameAIBase::SetupWish
short CGameAIBase::SetupWish(long column,long count);
Parameters
• long column -
6.28. CGameAIBase Class 1007
EEex Documentation, Release 1.0
• long count -
Return Value
Returns short
Remarks
CGameAIBase::SetRaceScript
void CGameAIBase::SetRaceScript(CAIScript* script);
Parameters
• CAIScript* script -
Remarks
CGameAIBase::SetScript
virtual void CGameAIBase::SetScript(short level,CAIScript* script);
Parameters
• short level -
• CAIScript* script -
Remarks
CGameAIBase::SetTrigger
void CGameAIBase::SetTrigger(CAITrigger& trigger);
Parameters
• CAITrigger& trigger -
Remarks
CGameAIBase::Shout
short CGameAIBase::Shout();
Return Value
Returns short
Remarks
1008 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAIBase::SmallWait
short CGameAIBase::SmallWait();
Return Value
Returns short
Remarks
CGameAIBase::SpawnPtActivate
short CGameAIBase::SpawnPtActivate(CGameSpawning* pObject);
Parameters
• CGameSpawning* pObject -
Return Value
Returns short
Remarks
CGameAIBase::SpawnPtDeactivate
short CGameAIBase::SpawnPtDeactivate(CGameSpawning* pObject);
Parameters
• CGameSpawning* pObject -
Return Value
Returns short
Remarks
CGameAIBase::SpawnPtSpawn
short CGameAIBase::SpawnPtSpawn(CGameSpawning* pObject);
Parameters
• CGameSpawning* pObject -
Return Value
Returns short
Remarks
6.28. CGameAIBase Class 1009
EEex Documentation, Release 1.0
CGameAIBase::StartCutScene
short CGameAIBase::StartCutScene(unsigned char evaluateCondition);
Parameters
• unsigned char evaluateCondition -
Return Value
Returns short
Remarks
CGameAIBase::StartMovie
short CGameAIBase::StartMovie();
Return Value
Returns short
Remarks
CGameAIBase::StartTextScreen
short CGameAIBase::StartTextScreen();
Return Value
Returns short
Remarks
CGameAIBase::StartTimer
short CGameAIBase::StartTimer();
Return Value
Returns short
Remarks
1010 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAIBase::StaticPalette
short CGameAIBase::StaticPalette(CGameStatic* pObject,CString palette);
Parameters
• CGameStatic* pObject -
• CString palette -
Return Value
Returns short
Remarks
CGameAIBase::StaticSequence
short CGameAIBase::StaticSequence(CGameStatic* pObject,unsigned short nSequence);
Parameters
• CGameStatic* pObject -
• unsigned short nSequence -
Return Value
Returns short
Remarks
CGameAIBase::StaticStart
short CGameAIBase::StaticStart(CGameStatic* pObject,int bStart);
Parameters
• CGameStatic* pObject -
• int bStart -
Return Value
Returns short
Remarks
6.28. CGameAIBase Class 1011
EEex Documentation, Release 1.0
CGameAIBase::SubtractPartyItemUse
int CGameAIBase::SubtractPartyItemUse(CResRef& res,short charges,short abilityNum);
Parameters
• CResRef & res -
• short charges -
• short abilityNum -
Return Value
Returns int
Remarks
CGameAIBase::SynchLastObjects
void CGameAIBase::SynchLastObjects();
Remarks
CGameAIBase::TakeObjectGoldGlobal
short CGameAIBase::TakeObjectGoldGlobal(CGameObject* pObject);
Parameters
• CGameObject* pObject -
Return Value
Returns short
Remarks
CGameAIBase::TakePartyGold
short CGameAIBase::TakePartyGold();
Return Value
Returns short
Remarks
1012 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAIBase::TakePartyItem
short CGameAIBase::TakePartyItem();
Return Value
Returns short
Remarks
CGameAIBase::TakePartyItemList
short CGameAIBase::TakePartyItemList();
Return Value
Returns short
Remarks
CGameAIBase::TransformItem
short CGameAIBase::TransformItem();
Return Value
Returns short
Remarks
CGameAIBase::TriggerActivation
short CGameAIBase::TriggerActivation(CGameTrigger* target);
Parameters
• CGameTrigger* target -
Return Value
Returns short
Remarks
6.28. CGameAIBase Class 1013
EEex Documentation, Release 1.0
CGameAIBase::UpdateTarget
virtual void CGameAIBase::UpdateTarget(CGameObject* __formal);
Parameters
• CGameObject* __formal -
Remarks
CGameAIBase::Unlock
short CGameAIBase::Unlock(CGameAIBase* pObject);
Parameters
• CGameAIBase* pObject -
Return Value
Returns short
Remarks
CGameAIBase::Wait
short CGameAIBase::Wait();
Return Value
Returns short
Remarks
CGameAIBase::XEquipItem
short CGameAIBase::XEquipItem(CGameSprite* target);
Parameters
• CGameSprite* target -
Return Value
Returns short
Remarks
1014 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.29 CGameAnimation Class
• Overview
• Quick Reference
• Methods
6.29.1 Overview
Note: The CGameAnimation class handles game animations
The structure used for this class is CGameAnimation
6.29.2 Quick Reference
Quick Refunsigned char CGameAnimation::DetectedByInfravision()unsigned char CGameAnimation::GetPersonalSpace()int CGameAnimation::IsAnkhegType()
6.29.3 Methods
Name DescriptionCGameAnimation::DetectedByInfravisionCGameAnimation::GetPersonalSpaceCGameAnimation::IsAnkhegType
CGameAnimation::DetectedByInfravision
unsigned char CGameAnimation::DetectedByInfravision();
Return Value
Returns unsigned char
Remarks
6.29. CGameAnimation Class 1015
EEex Documentation, Release 1.0
CGameAnimation::GetPersonalSpace
unsigned char CGameAnimation::GetPersonalSpace();
Return Value
Returns unsigned char
Remarks
CGameAnimation::IsAnkhegType
int CGameAnimation::IsAnkhegType();
Return Value
Returns int
Remarks
6.30 CGameAreaNotes Class
The structure used for this class is CGameAreaNotes
Quick Refvoid CGameAreaNotes::CGameAreaNotes()void CGameAreaNotes::~CGameAreaNotes()void CGameAreaNotes::Add(CString area, unsigned short startX, unsigned short startY, CString szNote, un-signed long dwFlags, unsigned long strRef)void CGameAreaNotes::Add()int CGameAreaNotes::AddANote(CAreaUserNote* cNote)int CGameAreaNotes::AddButton(CPoint ptWorld)void CGameAreaNotes::AddPredefinedNote(unsigned long strref, unsigned long flags, CPoint cPoint, int bAd-dToEnd)int CGameAreaNotes::DeleteANote(unsigned long nButtonId)CAreaUserNote* CGameAreaNotes::GetNoteAt(CPoint& cPt)int CGameAreaNotes::GetNoteButtonColor(unsigned long iD)unsigned long CGameAreaNotes::GetNoteButtonText(unsigned long iD)void CGameAreaNotes::IntrnlInitialize()int CGameAreaNotes::IsANoteThere(CPoint& cPt)void CGameAreaNotes::Marshal(unsigned char**& pArea, unsigned long& cnt)void CGameAreaNotes::PushNoteToLua(CPoint ptWorld, CPoint ptScreen)void CGameAreaNotes::RemoveTextFromNote(unsigned long strref, CPoint cPoint)void CGameAreaNotes::Uninitialize()int CGameAreaNotes::UpdateButton(CPoint ptWorld, int nID)void CGameAreaNotes::UpdateButtonPositions()
1016 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.30.1 Constructors
Name DescriptionCGameAreaNotes::CGameAreaNotes Constructs a CGameAreaNotes objectCGameAreaNotes::~CGameAreaNotes Destroys a CGameAreaNotes object
CGameAreaNotes::CGameAreaNotes
Constructs a CGameAreaNotes object
void CGameAreaNotes::CGameAreaNotes();
Remarks
Constructs a CGameAreaNotes object
CGameAreaNotes::~CGameAreaNotes
Destroys the CGameAreaNotes object
void CGameAreaNotes::~CGameAreaNotes();
Remarks
Destroys the CGameAreaNotes object
6.30.2 Methods
Name DescriptionCGameAreaNotes::Add Add notes to an areaCGameAreaNotes::AddANote Add a note to areaCGameAreaNotes::AddButton Add a note buttonCGameAreaNotes::AddPredefinedNote Add a predefined note using a string reference from the tlk tableCGameAreaNotes::DeleteANote Delete an existing note buttonCGameAreaNotes::GetNoteAt Get note information at a specified coordinateCGameAreaNotes::GetNoteButtonColor Returns note color for a specified note buttonCGameAreaNotes::GetNoteButtonText Returns note text for a specified note buttonCGameAreaNotes::IntrnlInitializeCGameAreaNotes::IsANoteThere Determines if a note exists at the specified coordinatesCGameAreaNotes::MarshalCGameAreaNotes::PushNoteToLua Push a note at a specified world and screen location to the lua stackCGameAreaNotes::RemoveTextFromNote Remove text from an existing noteCGameAreaNotes::UninitializeCGameAreaNotes::UpdateButton Refresh and update note buttonCGameAreaNotes::UpdateButtonPositions Update note positions
6.30. CGameAreaNotes Class 1017
EEex Documentation, Release 1.0
CGameAreaNotes::Add
Add notes to an area
void CGameAreaNotes::Add(CString area,unsigned short startX,unsigned short startY,CString szNote,unsigned long dwFlags,unsigned long strRef);
Parameters
• CString area - map area name to add notes to
• unsigned short startX - x coordinate to add note at
• unsigned short startY - y coordinate to add note at
• CString szNote - the text content of the note to add
• unsigned long dwFlags - flags
• unsigned long strRef - string reference
Remarks
CGameAreaNotes::AddANote
Add a note to area
int CGameAreaNotes::AddANote(CAreaUserNote* cNote);
Parameters
• CAreaUserNote* cNote - note structure to use for adding a note
Return Value
Returns int
Remarks
CGameAreaNotes::AddButton
Add a note button
int CGameAreaNotes::AddButton(CPoint ptWorld);
Parameters
• CPoint ptWorld - x and y coordinates to add note button at
1018 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CGameAreaNotes::AddPredefinedNote
Add a predefined note using a string reference from the tlk table
void CGameAreaNotes::AddPredefinedNote(unsigned long strref,unsigned long flags,CPoint cPoint,int bAddToEnd);
Parameters
• unsigned long strref - string reference of existing note defined in tlk table to add
• unsigned long flags - flags
• CPoint cPoint - x and y coordinates to add note at
• int bAddToEnd - add note to end or beginning
Remarks
CGameAreaNotes::DeleteANote
Delete an existing note button
int CGameAreaNotes::DeleteANote(unsigned long nButtonId);
Parameters
• unsigned long nButtonId - id of note button to delete
Return Value
Returns int
Remarks
CGameAreaNotes::GetNoteAt
Get note information at a specified coordinate
CAreaUserNote* CGameAreaNotes::GetNoteAt(CPoint& cPt);
Parameters
• CPoint& cPt - x and y coordinates to return note at this location for
6.30. CGameAreaNotes Class 1019
EEex Documentation, Release 1.0
Return Value
Returns CAreaUserNote*
Remarks
CGameAreaNotes::GetNoteButtonColor
Returns note color for a specified note button
int CGameAreaNotes::GetNoteButtonColor(unsigned long iD);
Parameters
• unsigned long iD - id of note button to return color for
Return Value
Returns int
Remarks
CGameAreaNotes::GetNoteButtonText
Returns note text for a specified note button
unsigned long CGameAreaNotes::GetNoteButtonText(unsigned long iD);
Parameters
• unsigned long iD - id of note button
Return Value
Returns unsigned long
Remarks
CGameAreaNotes::IntrnlInitialize
void CGameAreaNotes::IntrnlInitialize();
Remarks
1020 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameAreaNotes::IsANoteThere
Determines if a note exists at the specified coordinates
int CGameAreaNotes::IsANoteThere(CPoint& cPt);
Parameters
• CPoint& cPt - x and y coordinates to check if a note exists at
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CGameAreaNotes::Marshal
void CGameAreaNotes::Marshal(unsigned char**& pArea,unsigned long& cnt);
Parameters
• unsigned char**& pArea - pointer to area
• unsigned long& cnt - count
Remarks
CGameAreaNotes::PushNoteToLua
Push a note at a specified world and screen location to the lua stack
void CGameAreaNotes::PushNoteToLua(CPoint ptWorld,CPoint ptScreen);
Parameters
• CPoint ptWorld - x and y coordinates of world
• CPoint ptScreen - x and y coordinates of screen
Remarks
6.30. CGameAreaNotes Class 1021
EEex Documentation, Release 1.0
CGameAreaNotes::RemoveTextFromNote
Remove text from an existing note
void CGameAreaNotes::RemoveTextFromNote(unsigned long strref,CPoint cPoint);
Parameters
• unsigned long strref - string reference to remove from note
• CPoint cPoint - x and y coordinates of note button
Remarks
CGameAreaNotes::Uninitialize
void CGameAreaNotes::Uninitialize();
Remarks
CGameAreaNotes::UpdateButton
Refresh and update note button
int CGameAreaNotes::UpdateButton(CPoint ptWorld,int nID);
Parameters
• CPoint ptWorld - x and y coordinates of note button
• int nID - button id
Return Value
Returns int
Remarks
CGameAreaNotes::UpdateButtonPositions
Update note positions
void CGameAreaNotes::UpdateButtonPositions();
Remarks
1022 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.31 CGameChunk Class
• Overview
• Quick Reference
• Constructors
• Methods
6.31.1 Overview
Note: The CGameChunk class handles game chunks
The structure used for this class is CGameChunk
6.31.2 Quick Reference
Quick Refvoid CGameChunk::CGameChunk(unsigned short animationID, unsigned char* colorRangeValues, CString&sSoundChunk, CGameArea* pArea, CPoint& pos, CPoint& posDelta, long posZ, long posZDelta, unsigned charduration, unsigned char durationFade)virtual void CGameChunk::AIUpdate()virtual unsigned char CGameChunk::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)virtual void CGameChunk::RemoveFromArea()virtual void CGameChunk::Render(CGameArea* pArea, CVidMode* pVidMode)
6.31.3 Constructors
Name DescriptionCGameChunk::CGameChunk Constructs a CGameChunk object
CGameChunk::CGameChunk
Constructs a CGameChunk object
void CGameChunk::CGameChunk(unsigned short animationID,unsigned char* colorRangeValues,CString& sSoundChunk,CGameArea* pArea,CPoint& pos,
(continues on next page)
6.31. CGameChunk Class 1023
EEex Documentation, Release 1.0
(continued from previous page)
CPoint& posDelta,long posZ,long posZDelta,unsigned char duration,unsigned char durationFade);
Parameters
• unsigned short animationID -
• unsigned char* colorRangeValues -
• CString& sSoundChunk -
• CGameArea* pArea -
• CPoint& pos -
• CPoint& posDelta -
• long posZ -
• long posZDelta -
• unsigned char duration -
• unsigned char durationFade -
Remarks
Constructs a CGameChunk object
6.31.4 Methods
Name DescriptionCGameChunk::AIUpdateCGameChunk::CanSaveGameCGameChunk::RemoveFromAreaCGameChunk::Render
CGameChunk::AIUpdate
virtual void CGameChunk::AIUpdate();
Remarks
CGameChunk::CanSaveGame
1024 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual unsigned char CGameChunk::CanSaveGame(unsigned long& strError,int restCheck,int combatCheck);
Parameters
• unsigned long& strError -
• int restCheck -
• int combatCheck -
Return Value
Returns unsigned char
Remarks
CGameChunk::RemoveFromArea
virtual void CGameChunk::RemoveFromArea();
Remarks
CGameChunk::Render
virtual void CGameChunk::Render(CGameArea* pArea,CVidMode* pVidMode);
Parameters
• CGameArea* pArea -
• CVidMode* pVidMode -
Remarks
6.32 CGameContainer Class
The structure used for this class is CGameContainer
Quick Refvoid CGameContainer::CGameContainer(CGameArea* pArea, CRect& rBound)void CGameContainer::CGameContainer(CGameArea* pArea, CAreaFileContainer* pContainerObject, CAreaPoint* pPoints, unsigned short maxPts, CCreatureFileItem* pItems, unsigned long maxItems)virtual void CGameContainer::~CGameContainer()virtual void CGameContainer::AIUpdate()virtual void CGameContainer::AddEffect(CGameEffect* pEffect, unsigned char list, int noSave, int immediateApply)virtual unsigned char CGameContainer::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)
Continued on next page
6.32. CGameContainer Class 1025
EEex Documentation, Release 1.0
Table 14 – continued from previous pagevoid CGameContainer::CompressContainer()virtual unsigned char CGameContainer::CompressTime(unsigned long deltaTime)short CGameContainer::CountItem(CResRef & res)virtual void CGameContainer::DebugDump(CString& message, unsigned char bEchoToScreen)virtual unsigned char CGameContainer::DoAIUpdate(unsigned char active, long counter)short CGameContainer::FindItemSlot(CResRef & res)virtual CRect CGameContainer::GetBounding()CItem* CGameContainer::GetItem(short nSlotNum)virtual short CGameContainer::GetNPoly()short CGameContainer::GetNumTrueItems()virtual CPoint* CGameContainer::GetPoly()unsigned char CGameContainer::HasItemType(unsigned long type)unsigned char CGameContainer::HasItemWithFlag(unsigned long flag, int ignoreDestructible)virtual int CGameContainer::IsOver(CPoint& pt)void CGameContainer::Marshal(SAreaFileWrapper* pContainerWrapper)void CGameContainer::MarshalMessage(unsigned char** pData, unsigned long* dwSize)virtual void CGameContainer::OnActionButton(CPoint& pt)void CGameContainer::OpenContainer(CAIObjectType& user)void CGameContainer::PlaceAllGold(unsigned long gold)unsigned char CGameContainer::PlaceItemInBlankSlot(CItem* pItem, unsigned char bCompressContainer, short nRecommendedSlotNum, int useMessage)void CGameContainer::RefreshRenderPile()virtual void CGameContainer::Render(CGameArea* pArea, CVidMode* pVidMode)virtual void CGameContainer::SetCursor(long nToolTip)void CGameContainer::SetDrawPoly(short time)void CGameContainer::SetFlags(unsigned long dwFlags)void CGameContainer::SetItem(short nSlotNum, CItem* pItem)void CGameContainer::SetTrapActivated(unsigned short active)void CGameContainer::SetTrapDetected(unsigned short state)unsigned long CGameContainer::TakeAllGold()void CGameContainer::TakeCreatureItems(CGameSprite* pSprite, int Type)virtual void CGameContainer::RemoveFromArea()
6.32.1 Constructors
Name DescriptionCGameContainer::CGameContainer Constructs a CGameContainer objectCGameContainer::~CGameContainer Destroys a CGameContainer object
CGameContainer::CGameContainer
Constructs a CGameContainer object
void CGameContainer::CGameContainer(CGameArea* pArea,CRect& rBound);
Parameters
1026 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CGameArea* pArea - pointer to area
• CRect& rBound - bounding rectanble of the container to add to area
Remarks
Constructs a CGameContainer object
CGameContainer::CGameContainer
Constructs a CGameContainer object
void CGameContainer::CGameContainer(CGameArea* pArea,CAreaFileContainer* pContainerObject,CAreaPoint* pPoints,unsigned short maxPts,CCreatureFileItem* pItems,unsigned long maxItems);
Parameters
• CGameArea* pArea - pointer to area
• CAreaFileContainer* pContainerObject - pointer to container object
• CAreaPoint* pPoints - pointer to array of points used for polygon to highlight container
• unsigned short maxPts - count of points in array for polygon
• CCreatureFileItem* pItems - pointer to array of items to add to container
• unsigned long maxItems - count of items in array to add to container
Remarks
Constructs a CGameContainer object
CGameContainer::~CGameContainer
Destroys the CGameContainer object
virtual void CGameContainer::~CGameContainer();
Remarks
Destroys the CGameContainer object
Continued on next page
6.32. CGameContainer Class 1027
EEex Documentation, Release 1.0
Table 15 – continued from previous page
6.32.2 Methods
Name DescriptionCGameContainer::AIUpdateCGameContainer::AddEffect Add a game effect to a containerCGameContainer::CanSaveGameCGameContainer::CompressContainerCGameContainer::CompressTimeCGameContainer::CountItem Returns the number of items in containerCGameContainer::DebugDump Debug message from container classCGameContainer::DoAIUpdateCGameContainer::FindItemSlot Return the slot id for a specific item in a containerCGameContainer::GetBounding Get the bounding rectangle for the containerCGameContainer::GetItem Return an item from a specified slot in a containerCGameContainer::GetNPoly Returns no of polygons points for the containerCGameContainer::GetNumTrueItemsCGameContainer::GetPoly Returns a pointer to an array of points which define the container polygonCGameContainer::HasItemType Determines if a container contains a specific item typeCGameContainer::HasItemWithFlag Determines if a container contains a specific item type with an item flagCGameContainer::IsOver Determines if mouse position is over the containerCGameContainer::MarshalCGameContainer::MarshalMessageCGameContainer::OnActionButton Event action for when mouse is clicked on the containerCGameContainer::OpenContainer Opens container by the specified characterCGameContainer::PlaceAllGold Takes gold and places the specified amount into the shared party gold stashCGameContainer::PlaceItemInBlankSlot Places an item into a blank slot of the containerCGameContainer::RefreshRenderPileCGameContainer::RenderCGameContainer::SetCursor Set the cursor and tooltip when mouse is over the containerCGameContainer::SetDrawPolyCGameContainer::SetFlags Set container flagsCGameContainer::SetItem Set an item in a container slotCGameContainer::SetTrapActivated Sets or clears if a trap is activated on the containerCGameContainer::SetTrapDetected Sets if a trap on a container has been detected yetCGameContainer::TakeAllGold Take all goldCGameContainer::TakeCreatureItems Take items from a creatureCGameContainer::RemoveFromArea Remove from area
CGameContainer::AIUpdate
virtual void CGameContainer::AIUpdate();
Remarks
CGameContainer::AddEffect
Add a game effect to a container
1028 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual void CGameContainer::AddEffect(CGameEffect* pEffect,unsigned char list,int noSave,int immediateApply);
Parameters
• CGameEffect* pEffect - pointer to game effect to add to container
• unsigned char list -
• int noSave - if a saving throw is allowed to avoid or reduce effect if trap is triggered
• int immediateApply - if the effect is immediate or delayed
Remarks
Used for setting trap effects on containers, eg. fireball, lightning, poison, or piercing, slashing damage etc
CGameContainer::CanSaveGame
virtual unsigned char CGameContainer::CanSaveGame(unsigned long& strError,int restCheck,int combatCheck);
Parameters
• unsigned long& strError -
• int restCheck -
• int combatCheck -
Return Value
Returns unsigned char
Remarks
CGameContainer::CompressContainer
void CGameContainer::CompressContainer();
Remarks
6.32. CGameContainer Class 1029
EEex Documentation, Release 1.0
CGameContainer::CompressTime
virtual unsigned char CGameContainer::CompressTime(unsigned long deltaTime);
Parameters
• unsigned long deltaTime -
Return Value
Returns unsigned char
Remarks
CGameContainer::CountItem
Returns the number of items in container
short CGameContainer::CountItem(CResRef& res)
Parameters
• CResRef & res - resource reference of the container to return count of items for
Return Value
Returns a short value reprenting the number of items in the container
Remarks
CGameContainer::DebugDump
Debug message from container class
virtual void CGameContainer::DebugDump(CString& message,unsigned char bEchoToScreen);
Parameters
• CString& message - debug message to output to console
• unsigned char bEchoToScreen - output debug message to screen as well as console
Remarks
1030 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameContainer::DoAIUpdate
virtual unsigned char CGameContainer::DoAIUpdate(unsigned char active,long counter);
Parameters
• unsigned char active -
• long counter -
Return Value
Returns unsigned char
Remarks
CGameContainer::FindItemSlot
Return the slot id for a specific item in a container
short CGameContainer::FindItemSlot(CResRef& res);
Parameters
• CResRef & res - resource reference of item in container
Return Value
Returns a short value representing the slot id for the item in a container
Remarks
Does this return 0 or -1 if item not found in container ?
CGameContainer::GetBounding
Get the bounding rectangle for the container
virtual CRect CGameContainer::GetBounding();
Return Value
Returns a CRect which defines the bounding dimensions of the container
Remarks
CGameContainer::GetItem
Return an item from a specified slot in a container
6.32. CGameContainer Class 1031
EEex Documentation, Release 1.0
CItem* CGameContainer::GetItem(short nSlotNum);
Parameters
• short nSlotNum - slot id to return the item associated with this slot
Return Value
Returns CItem*
Remarks
CGameContainer::GetNPoly
Returns the number of polygons points for the container
virtual short CGameContainer::GetNPoly();
Return Value
Returns a short value indicating no of points that define the containers polygon
Remarks
Polygons are used when highlighting containers with a bright colored outline
See also CGameContainer::GetPoly and CGameContainer::SetDrawPoly
CGameContainer::GetNumTrueItems
short CGameContainer::GetNumTrueItems();
Return Value
Returns short
Remarks
CGameContainer::GetPoly
Returns a pointer to an array of points which define the container polygon
virtual CPoint* CGameContainer::GetPoly();
Return Value
Returns CPoint*, an array of points which define the container polygon
Remarks
Polygons are used when highlighting containers with a bright colored outline
See also CGameContainer::GetNPoly and CGameContainer::SetDrawPoly
1032 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameContainer::HasItemType
Determines if a container contains a specific item type
unsigned char CGameContainer::HasItemType(unsigned long type);
Parameters
• unsigned long type - the type of item to check for
Return Value
Returns unsigned char
Remarks
CGameContainer::HasItemWithFlag
Determines if a container contains a specific item type with an item flag
unsigned char CGameContainer::HasItemWithFlag(unsigned long flag,int ignoreDestructible);
Parameters
• unsigned long flag - item flag to check for
• int ignoreDestructible - ignore destructible items
Return Value
Returns unsigned char
Remarks
CGameContainer::IsOver
Determines if mouse position is over the container
virtual int CGameContainer::IsOver(CPoint& pt);
Parameters
• CPoint& pt - x and y coordinates of the mouse position
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CGameContainer::Marshal
6.32. CGameContainer Class 1033
EEex Documentation, Release 1.0
void CGameContainer::Marshal(SAreaFileWrapper* pContainerWrapper);
Parameters
• SAreaFileWrapper* pContainerWrapper -
Remarks
CGameContainer::MarshalMessage
void CGameContainer::MarshalMessage(unsigned char** pData,unsigned long* dwSize);
Parameters
• unsigned char** pData - pointer to data
• unsigned long* dwSize - size of data
Remarks
CGameContainer::OnActionButton
Event action for when mouse is clicked on the container
virtual void CGameContainer::OnActionButton(CPoint& pt);
Parameters
• CPoint& pt - x and y coordinates of the mouse pointer
Remarks
CGameContainer::OpenContainer
Opens container by the specified character
void CGameContainer::OpenContainer(CAIObjectType& user);
Parameters
• CAIObjectType& user - character that opens the container
Remarks
CGameContainer::PlaceAllGold
Takes gold and places the specified amount into the shared party gold stash
1034 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CGameContainer::PlaceAllGold(unsigned long gold);
Parameters
• unsigned long gold - amount of gold
Remarks
CGameContainer::PlaceItemInBlankSlot
Places an item into a blank slot of the container
unsigned char CGameContainer::PlaceItemInBlankSlot(CItem* pItem,unsigned char bCompressContainer,short nRecommendedSlotNum,int useMessage);
Parameters
• CItem* pItem - item to place in container
• unsigned char bCompressContainer - if the container should be compressed
• short nRecommendedSlotNum - the slot id to place the item into the container at
• int useMessage -
Return Value
Returns unsigned char
Remarks
CGameContainer::RefreshRenderPile
void CGameContainer::RefreshRenderPile();
Remarks
CGameContainer::Render
virtual void CGameContainer::Render(CGameArea* pArea,CVidMode* pVidMode);
Parameters
• CGameArea* pArea - pointer to area
• :ref:‘CVidMode<CVidMode>* pVidMode - pointer to vid mode
Remarks
6.32. CGameContainer Class 1035
EEex Documentation, Release 1.0
CGameContainer::SetCursor
Set the cursor and tooltip when mouse is over the container
virtual void CGameContainer::SetCursor(long nToolTip);
Parameters
• long nToolTip - pointer to tooltip text?
Remarks
CGameContainer::SetDrawPoly
void CGameContainer::SetDrawPoly(short time);
Parameters
• short time - time value
Remarks
Polygons are used when highlighting containers with a bright colored outline
See also CGameContainer::GetNPoly and CGameContainer::GetPoly
CGameContainer::SetFlags
Set container flags
void CGameContainer::SetFlags(unsigned long dwFlags);
Parameters
• unsigned long dwFlags - flags to set for container
Remarks
CGameContainer::SetItem
Set an item in a container slot
void CGameContainer::SetItem(short nSlotNum,CItem* pItem);
Parameters
• short nSlotNum - slot id to set item for
• CItem* pItem - pointer to item to associate with this slot id
Remarks
1036 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameContainer::SetTrapActivated
Sets or clears if a trap is activated on the container
void CGameContainer::SetTrapActivated(unsigned short active);
Parameters
• unsigned short active - trap activated state
Remarks
if trap is to be activated or already sprung, or not enabled
CGameContainer::SetTrapDetected
Sets if a trap on a container has been detected yet
void CGameContainer::SetTrapDetected(unsigned short state);
Parameters
• unsigned short state - trap detected state
Remarks
CGameContainer::TakeAllGold
Take all gold
unsigned long CGameContainer::TakeAllGold();
Return Value
Returns unsigned long
Remarks
CGameContainer::TakeCreatureItems
Take items from a creature
void CGameContainer::TakeCreatureItems(CGameSprite* pSprite,int Type);
Parameters
• CGameSprite* pSprite - pointer to creature to take items from
• int Type - type of item to take
6.32. CGameContainer Class 1037
EEex Documentation, Release 1.0
Remarks
Typically a dead creature is seen as a container for looting purposes.
CGameContainer::RemoveFromArea
Remove from area
virtual void CGameContainer::RemoveFromArea();
Remarks
6.33 CGameDialogEntry Class
The structure used for this class is CGameDialogEntry
Quick Refvirtual void CGameDialogEntry::~CGameDialogEntry()void CGameDialogEntry::Display(CGameSprite* pSprite, unsigned long playerColor, int newDialog, int bSup-pressName, CResRef resItem)CGameDialogIdentifier* CGameDialogEntry::Handle(CGameSprite* pSprite, unsigned long playerColor, intnewDialog, int bSuppressName, CResRef resItem)void CGameDialogEntry::RemoveReplies(long marker, unsigned long nameColor, CString& name)
6.33.1 Constructors
Name DescriptionCGameDialogEntry::~CGameDialogEntry Destroys a CGameDialogEntry object
CGameDialogEntry::~CGameDialogEntry
Destroys the CGameDialogEntry object
virtual void CGameDialogEntry::~CGameDialogEntry();
Remarks
Destroys the CGameDialogEntry object
1038 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.33.2 Methods
Name DescriptionCGameDialogEntry::DisplayCGameDialogEntry::HandleCGameDialogEntry::RemoveReplies
CGameDialogEntry::Display
void CGameDialogEntry::Display(CGameSprite* pSprite,unsigned long playerColor,int newDialog,int bSuppressName,CResRef resItem);
Parameters
• CGameSprite* pSprite - pointer to game sprite object to display in dialog entry
• unsigned long playerColor -
• int newDialog -
• int bSuppressName -
• CResRef resItem - resource reference
Remarks
CGameDialogEntry::Handle
CGameDialogIdentifier* CGameDialogEntry::Handle(CGameSprite* pSprite,unsigned long playerColor,int newDialog,int bSuppressName,CResRef resItem);
Parameters
• CGameSprite* pSprite - pointer to game sprite object to display in dialog entry
• unsigned long playerColor -
• int newDialog -
• int bSuppressName -
• CResRef resItem - resource reference
Return Value
Returns CGameDialogIdentifier*
Remarks
6.33. CGameDialogEntry Class 1039
EEex Documentation, Release 1.0
CGameDialogEntry::RemoveReplies
void CGameDialogEntry::RemoveReplies(long marker,unsigned long nameColor,CString& name);
Parameters
• long marker -
• unsigned long nameColor -
• CString& name -
Remarks
6.34 CGameDialogReply Class
The structure used for this class is CGameDialogReply
Quick Refint CGameDialogReply::Hold(CGameSprite* pSprite)CGameDialogIdentifier* CGameDialogReply::Pick(CGameSprite* pSprite)void CGameDialogReply::ProcessInstants(CGameSprite* pSprite)
6.34.1 Methods
Name DescriptionCGameDialogReply::HoldCGameDialogReply::PickCGameDialogReply::ProcessInstants
CGameDialogReply::Hold
int CGameDialogReply::Hold(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Return Value
Returns int
Remarks
1040 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameDialogReply::Pick
CGameDialogIdentifier* CGameDialogReply::Pick(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Return Value
Returns CGameDialogIdentifier*
Remarks
CGameDialogReply::ProcessInstants
void CGameDialogReply::ProcessInstants(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
6.35 CGameDialogSprite Class
The structure used for this class is CGameDialogSprite
Quick Refvoid CGameDialogSprite::CGameDialogSprite()void CGameDialogSprite::~CGameDialogSprite()void CGameDialogSprite::AsynchronousUpdate()void CGameDialogSprite::ClearMarshal()void CGameDialogSprite::EndDialog()int CGameDialogSprite::EnterDialog(unsigned long index, CGameSprite* pSprite, int newDialog, int bSup-pressName, int bItemDialog)int CGameDialogSprite::FetchRumor(CResRef & file, CGameSprite* pSprite, long& nIndex, STR_RES& str-Res)virtual unsigned long __cdecl CGameDialogSprite::GetFlagsFromFile(CResRef & res) = 0void CGameDialogSprite::Load(CResRef file, long characterId, long NPCId, int bItemDialog)int CGameDialogSprite::Reload(CResRef file, CGameSprite* pSprite)void CGameDialogSprite::ResetDialogStates()void CGameDialogSprite::SetResponseMarker(long marker)void CGameDialogSprite::SetUpdateScroll()int CGameDialogSprite::StartDialog(CGameSprite* pSprite)void CGameDialogSprite::Unmarshal(unsigned char* pDialog, long dialogSize, long characterId, long NPCId,CResRef & loadedFile, int fast)
6.35. CGameDialogSprite Class 1041
EEex Documentation, Release 1.0
6.35.1 Constructors
Name DescriptionCGameDialogSprite::CGameDialogSprite Constructs a CGameDialogSprite objectCGameDialogSprite::~CGameDialogSprite Destroys a CGameDialogSprite object
CGameDialogSprite::CGameDialogSprite
Constructs a CGameDialogSprite object
void CGameDialogSprite::CGameDialogSprite();
Remarks
Constructs a CGameDialogSprite object
CGameDialogSprite::~CGameDialogSprite
Destroys the CGameDialogSprite object
void CGameDialogSprite::~CGameDialogSprite();
Remarks
Destroys the CGameDialogSprite object
6.35.2 Methods
Name DescriptionCGameDialogSprite::AsynchronousUpdateCGameDialogSprite::ClearMarshalCGameDialogSprite::EndDialogCGameDialogSprite::EnterDialogCGameDialogSprite::FetchRumorCGameDialogSprite::GetFlagsFromFileCGameDialogSprite::LoadCGameDialogSprite::ReloadCGameDialogSprite::ResetDialogStatesCGameDialogSprite::SetResponseMarkerCGameDialogSprite::SetUpdateScrollCGameDialogSprite::StartDialogCGameDialogSprite::Unmarshal
CGameDialogSprite::AsynchronousUpdate
1042 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CGameDialogSprite::AsynchronousUpdate();
Remarks
CGameDialogSprite::ClearMarshal
void CGameDialogSprite::ClearMarshal();
Remarks
CGameDialogSprite::EndDialog
void CGameDialogSprite::EndDialog();
Remarks
CGameDialogSprite::EnterDialog
int CGameDialogSprite::EnterDialog(unsigned long index,CGameSprite* pSprite,int newDialog,int bSuppressName,int bItemDialog);
Parameters
• unsigned long index -
• CGameSprite* pSprite - pointer to game sprite object
• int newDialog -
• int bSuppressName -
• int bItemDialog -*
Return Value
Returns int
Remarks
6.35. CGameDialogSprite Class 1043
EEex Documentation, Release 1.0
CGameDialogSprite::FetchRumor
int CGameDialogSprite::FetchRumor(CResRef& file,CGameSprite* pSprite,long& nIndex,STR_RES& strRes);
Parameters
• CResRef & file -
• CGameSprite* pSprite - pointer to game sprite object
• long& nIndex -
• STR_RES& strRes -
Return Value
Returns int
Remarks
CGameDialogSprite::GetFlagsFromFile
virtual unsigned long __cdecl CGameDialogSprite::GetFlagsFromFile(CResRef& res);
Parameters
• CResRef & res - resource reference
Return Value
Returns unsigned long
Remarks
CGameDialogSprite::Load
void CGameDialogSprite::Load(CResRef file,long characterId,long NPCId,int bItemDialog);
Parameters
• CResRef file - resource reference
• long characterId -
• long NPCId -
• int bItemDialog -
Remarks
1044 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameDialogSprite::Reload
int CGameDialogSprite::Reload(CResRef file,CGameSprite* pSprite);
Parameters
• CResRef file - resource reference
• CGameSprite* pSprite - pointer to game sprite object
Return Value
Returns int
Remarks
CGameDialogSprite::ResetDialogStates
void CGameDialogSprite::ResetDialogStates() ;
Remarks
CGameDialogSprite::SetResponseMarker
void CGameDialogSprite::SetResponseMarker(long marker);
Parameters
• long marker - * *
Remarks
CGameDialogSprite::SetUpdateScroll
void CGameDialogSprite::SetUpdateScroll();
Remarks
6.35. CGameDialogSprite Class 1045
EEex Documentation, Release 1.0
CGameDialogSprite::StartDialog
int CGameDialogSprite::StartDialog(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Return Value
Returns int
Remarks
CGameDialogSprite::Unmarshal
void CGameDialogSprite::Unmarshal(unsigned char* pDialog,long dialogSize,long characterId,long NPCId,CResRef& loadedFile,int fast);
Parameters
• unsigned char* pDialog -
• long dialogSize -
• long characterId -
• long NPCId -
• CResRef & loadedFile -
• int fast -
Remarks
6.36 CGameDoor Class
The structure used for this class is CGameDoor
1046 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Quick Refvoid CGameDoor::CGameDoor(CGameArea* pArea, CAreaFileDoorObject* pDoorObject, CAreaPoint*pPoints, unsigned short maxPts)virtual void CGameDoor::~CGameDoor()virtual void CGameDoor::AIUpdate()virtual void CGameDoor::AddEffect(CGameEffect* pEffect, unsigned char list, int noSave, int immediateApply)virtual unsigned char CGameDoor::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)virtual unsigned char CGameDoor::CompressTime(unsigned long deltaTime)virtual void CGameDoor::DebugDump(CString& message, unsigned char bEchoToScreen)virtual unsigned char CGameDoor::DoAIUpdate(unsigned char active, long counter)CRect CGameDoor::GetBoundingRectClosed()CRect CGameDoor::GetBoundingRectOpen()CPoint& CGameDoor::GetMoveDest(CPoint& ptSource)virtual int CGameDoor::IsOver(CPoint& pt)void CGameDoor::Marshal(SAreaFileDoorWrapper* pDoorWrapper)virtual void CGameDoor::OnActionButton(CPoint& pt)void CGameDoor::OnDoorStatusUpdate(unsigned char bDoorOpened, unsigned long dwFlags, unsigned shortnTrapActivated, unsigned short nTrapDetected)virtual void CGameDoor::RemoveFromArea()virtual void CGameDoor::Render(CGameArea* pArea, CVidMode* pVidMode)virtual void CGameDoor::SetCursor(long nToolTip)void CGameDoor::SetDrawPoly(short time)void CGameDoor::ToggleDoor(CAIObjectType& user, int ignoreLocked)void CGameDoor::ToggleTransitionTrigger(int bClosed)
6.36.1 Constructors
Name DescriptionCGameDoor::CGameDoor Constructs a CGameDoor objectCGameDoor::~CGameDoor Destroys a CGameDoor object
CGameDoor::CGameDoor
Constructs a CGameDoor object
void CGameDoor::CGameDoor(CGameArea* pArea,CAreaFileDoorObject* pDoorObject,CAreaPoint* pPoints,unsigned short maxPts);
Parameters
• CGameArea* pArea - pointer to area
• CAreaFileDoorObject* pDoorObject - pointer to door object
• CAreaPoint* pPoints - pointer to array of points used for polygon to highlight door
• unsigned short maxPts - count of points in array for polygon
6.36. CGameDoor Class 1047
EEex Documentation, Release 1.0
Remarks
Constructs a CGameDoor object
CGameDoor::~CGameDoor
Destroys the CGameDoor object
virtual void CGameDoor::~CGameDoor();
Remarks
Destroys the CGameDoor object
6.36.2 Methods
Name DescriptionCGameDoor::AIUpdateCGameDoor::AddEffect Add a game effect to a doorCGameDoor::CanSaveGameCGameDoor::CompressTimeCGameDoor::DebugDump Debug message from door classCGameDoor::DoAIUpdateCGame-Door::GetBoundingRectClosed
Get the bounding rectangle for the door when it is closed
CGame-Door::GetBoundingRectOpen
Get the bounding rectangle for the door when it is open
CGameDoor::GetMoveDestCGameDoor::IsOver Determines if mouse position is over the doorCGameDoor::MarshalCGameDoor::OnActionButton Event action for when mouse is clicked on the doorCGameDoor::OnDoorStatusUpdateCGameDoor::RemoveFromAreaCGameDoor::RenderCGameDoor::SetCursor Set the cursor and tooltip when mouse is over the doorCGameDoor::SetDrawPolyCGameDoor::ToggleDoor Toggles door, opens door if it is currently closed, and closes if currently
openCGame-Door::ToggleTransitionTrigger
CGameDoor::AIUpdate
virtual void CGameDoor::AIUpdate();
Remarks
1048 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameDoor::AddEffect
Add a game effect to a door
virtual void CGameDoor::AddEffect(CGameEffect* pEffect,unsigned char list,int noSave,int immediateApply);
Parameters
• CGameEffect* pEffect - pointer to game effect to add to door
• unsigned char list -
• int noSave - if a saving throw is allowed to avoid or reduce effect if trap is triggered
• int immediateApply - if the effect is immediate or delayed
Remarks
Used for setting trap effects on doors, eg. fireball, lightning, poison, or piercing, slashing damage etc
CGameDoor::CanSaveGame
virtual unsigned char CGameDoor::CanSaveGame(unsigned long& strError,int restCheck,int combatCheck) ;
Parameters
• unsigned long& strError -
• int restCheck -
• int combatCheck -
Return Value
Remarks
CGameDoor::CompressTime
virtual unsigned char CGameDoor::CompressTime(unsigned long deltaTime);
Parameters
• unsigned long deltaTime -
Return Value
Remarks
6.36. CGameDoor Class 1049
EEex Documentation, Release 1.0
CGameDoor::DebugDump
Debug message from door class
virtual void CGameDoor::DebugDump(CString& message,unsigned char bEchoToScreen);
Parameters
• CString& message - address of debug message string to output to console
• unsigned char bEchoToScreen - output debug message to screen as well as console
Remarks
CGameDoor::DoAIUpdate
virtual unsigned char CGameDoor::DoAIUpdate(unsigned char active,long counter);
Parameters
• unsigned char active -
• long counter -
Return Value
Remarks
CGameDoor::GetBoundingRectClosed
Get the bounding rectangle for the door when it is closed
CRect CGameDoor::GetBoundingRectClosed();
Return Value
Returns a CRect which defines the bounding dimensions of the closed door
Remarks
CGameDoor::GetBoundingRectOpen
Get the bounding rectangle for the door when it is open
CRect CGameDoor::GetBoundingRectOpen();
1050 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns a CRect which defines the bounding dimensions of the open door
Remarks
CGameDoor::GetMoveDest
CPoint& CGameDoor::GetMoveDest\(CPoint& ptSource);
Parameters
• CPoint& ptSource -
Return Value
Returns CPoint&
Remarks
CGameDoor::IsOver
Determines if mouse position is over the door
virtual int CGameDoor::IsOver(CPoint& pt);
Parameters
• CPoint& pt - x and y coordinates of the mouse position
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CGameDoor::Marshal
void CGameDoor::Marshal(SAreaFileDoorWrapper* pDoorWrapper);
Parameters
• SAreaFileDoorWrapper* pDoorWrapper -
Remarks
CGameDoor::OnActionButton
Event action for when mouse is clicked on the door
6.36. CGameDoor Class 1051
EEex Documentation, Release 1.0
virtual void CGameDoor::OnActionButton(CPoint& pt);
Parameters
• CPoint& pt - x and y coordinates of the mouse pointer
Remarks
CGameDoor::OnDoorStatusUpdate
void CGameDoor::OnDoorStatusUpdate(unsigned char bDoorOpened,unsigned long dwFlags,unsigned short nTrapActivated,unsigned short nTrapDetected);
Parameters
• unsigned char bDoorOpened -
• unsigned long dwFlags -
• unsigned short nTrapActivated -
• unsigned short nTrapDetected -
Remarks
CGameDoor::RemoveFromArea
virtual void CGameDoor::RemoveFromArea();
Remarks
CGameDoor::Render
virtual void CGameDoor::Render(CGameArea* pArea,CVidMode* pVidMode);
Parameters
• CGameArea* pArea - pointer to area
• CVidMode* pVidMode - pointer to vid mode
Remarks
1052 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameDoor::SetCursor
Set the cursor and tooltip when mouse is over the door
virtual void CGameDoor::SetCursor(long nToolTip);
Parameters
• long nToolTip - pointer to tooltip text?
Remarks
CGameDoor::SetDrawPoly
void CGameDoor::SetDrawPoly(short time);
Parameters
• short time -
Remarks
CGameDoor::ToggleDoor
Toggles door by the specified character, opens door if it is currently closed, and closes if currently open
void CGameDoor::ToggleDoor(CAIObjectType& user,int ignoreLocked);
Parameters
• CAIObjectType& user - character that opens the door
• int ignoreLocked - true of false to ignore locked door
Remarks
CGameDoor::ToggleTransitionTrigger
void CGameDoor::ToggleTransitionTrigger(int bClosed);
Parameters
• int bClosed - true or false for door open or closed
Remarks
6.36. CGameDoor Class 1053
EEex Documentation, Release 1.0
6.37 CGameEffect Class
• Overview
• Quick Reference
• Constructors
• Methods
• Operators
6.37.1 Overview
Note: The CGameEffect class handles game effects
The structure used for this class is CGameEffect
6.37.2 Quick Reference
Quick Ref
6.37.3 Constructors
Name DescriptionCGameEffect::CGameEffect Constructs a CGameEffect object
CGameEffect::CGameEffect
Constructs a CGameEffect object
void CGameEffect::CGameEffect();
Remarks
Constructs a CGameEffect object
1054 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.37.4 Methods
Name DescriptionCGameEffect::ApplyEffectCGameEffect::CheckAddCGameEffect::CheckSaveCGameEffect::ClearItemEffectCGameEffect::CopyCGameEffect::CopyFromBaseCGameEffect::DecodeEffectCGameEffect::DecodeEffectFromBaseCGameEffect::DisplayStringCGameEffect::EqualClassCGameEffect::FireSpellCGameEffect::OnAddCGameEffect::OnAddSpecificCGameEffect::OnLoadCGameEffect::OnRemoveCGameEffect::PlaySoundCGameEffect::ResolveEffectCGameEffect::SetIdentifiedCGameEffect::UsesDice
CGameEffect::ApplyEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::CheckAdd
x;
Parameters
• – *
6.37. CGameEffect Class 1055
EEex Documentation, Release 1.0
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::CheckSave
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::ClearItemEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::Copy
1056 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::CopyFromBase
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::DecodeEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.37. CGameEffect Class 1057
EEex Documentation, Release 1.0
CGameEffect::DecodeEffectFromBase
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::DisplayString
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::EqualClass
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1058 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffect::FireSpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::OnAdd
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::OnAddSpecific
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.37. CGameEffect Class 1059
EEex Documentation, Release 1.0
CGameEffect::OnLoad
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::OnRemove
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::PlaySound
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1060 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffect::ResolveEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::SetIdentified
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameEffect::UsesDice
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.37. CGameEffect Class 1061
EEex Documentation, Release 1.0
6.37.5 Operators
Name DescriptionCGameEffect::operator=CGameEffect::operator==
CGameEffect::operator=
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
CGameEffect::operator==
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Remarks
6.38 CGameEffect<Effect> Classes
• Overview
• Methods
• Notes
• Specific CGameEffect<Effect> Classes
1062 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.38.1 Overview
Note: There are lots of game effect classes that are similar in definition. Rather than document each one individu-ally, there are all referenced here collectively instead. CGameEffect<Effect> classes handle specific effects, where<Effect> is a placeholder for the game effect name.
Note: Please see the CGameEffect Structures section for a game effect structure used by a specific game effect class.
Tip: See Notes for details of the game effect classes, that the class methods documented here apply to. See SpecificCGameEffect<Effect> Classes for classes that share the same methods as the others listed, but have additional classmethods as well.
6.38.2 Methods
Name* DescriptionCGameEffect<Effect>::CGameEffect<Effect> Constructor for a specific game effectCGameEffect<Effect>::ApplyEffect Apply effectCGameEffect<Effect>::Copy Copy effect
* <Effect> is a placeholder for the game effect name
CGameEffect<Effect>::CGameEffect<Effect>
Constructs a specific game effect object
void CGameEffect<Effect>::CGameEffect<Effect>(Item_effect_st* effect,CPoint& source,long sourceID,CPoint target);
Parameters
• Item_effect_st* effect -
• CPoint& source -
• long sourceID -
• CPoint target -
Remarks
Constructor for a specific game effect. See Notes for the specific class names this applies to.
Example: CGameEffectEntangle::CGameEffectEntangle(effect,source,sourceID,target);
6.38. CGameEffect<Effect> Classes 1063
EEex Documentation, Release 1.0
CGameEffect<Effect>::ApplyEffect
virtual int CGameEffect<Effect>::ApplyEffect(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Return Value
Returns int
Remarks
See Notes for the specific class names this applies to.
Example: virtual int CGameEffectEntangle::ApplyEffect(CGameSprite* pSprite);
CGameEffect<Effect>::Copy
Copy game effect
virtual CGameEffect* CGameEffect<Effect>::Copy();
Return Value
Returns CGameEffect*
Remarks
See Notes for the specific class names this applies to.
Example: virtual CGameEffect* CGameEffectEntangle::Copy();
6.38.3 Notes
Note: CGameEffect<Effect> used in the documentation above is a placeholder for the actual class name, as listedbelow.
The following class names apply to the documented class methods above as the share the same basic methods and aconstructor for each class:
• CGameEffectAC
• CGameEffectAIChange
• CGameEffectAddInnateAbility
• CGameEffectAlignmentChange
• CGameEffectApplyEffectEquipItemType
• CGameEffectApplyEffectEquipItem
• CGameEffectApplySpellOnMove
1064 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CGameEffectApplySpell
• CGameEffectAssassination
• CGameEffectAttackNo
• CGameEffectAuraCleansing
• CGameEffectAwaken
• CGameEffectBackStabMod
• CGameEffectBackStabSpell
• CGameEffectBardSong
• CGameEffectBerserkStage1
• CGameEffectBerserkStage2
• CGameEffectBerserk
• CGameEffectBlur
• CGameEffectBounceEffect
• CGameEffectBounceLevel
• CGameEffectBounceProjectile
• CGameEffectBounceSchoolDecrement
• CGameEffectBounceSchool
• CGameEffectBounceSecondaryTypeDecrement
• CGameEffectBounceSecondaryType
• CGameEffectBounceSpell
• CGameEffectCHR
• CGameEffectCON
• CGameEffectCalm
• CGameEffectCannotSaveOrRest
• CGameEffectCastSpellPoint
• CGameEffectCastSpell
• CGameEffectCastingFailure
• CGameEffectCastingGlow
• CGameEffectCastingLevelBonus
• CGameEffectChangeStatic
• CGameEffectChangeWeather
• CGameEffectChaosShield
• CGameEffectCheckForBerserk
• CGameEffectClairvoyance
• CGameEffectClassStringOverride
• CGameEffectCleanAir
6.38. CGameEffect<Effect> Classes 1065
EEex Documentation, Release 1.0
• CGameEffectColorChange
• CGameEffectColorGlowDissipate
• CGameEffectColorGlowPulse
• CGameEffectColorLightSolid
• CGameEffectColorTintSolid
• CGameEffectConfusion
• CGameEffectContingencyInstance
• CGameEffectContingencyStart
• CGameEffectCopySelf
• CGameEffectCreateItem
• CGameEffectCreateWeapon
• CGameEffectCriticalHitBonus
• CGameEffectCriticalHitSpell
• CGameEffectCriticalMissModifier
• CGameEffectCriticalMissSpell
• CGameEffectCureBlindness
• CGameEffectCureDeafness
• CGameEffectCureDisease
• CGameEffectCureFeebleMindedness
• CGameEffectCurePoison
• CGameEffectDEX
• CGameEffectDamageLuck
• CGameEffectDamageMod
• CGameEffectDamageVisualEffect
• CGameEffectDeafness
• CGameEffectDefrost
• CGameEffectDestroyItem
• CGameEffectDestroySelf
• CGameEffectDestroyWeapon
• CGameEffectDetectAlignment
• CGameEffectDetectIllusion
• CGameEffectDetectTraps
• CGameEffectDisableButton
• CGameEffectDisableCircle
• CGameEffectDisableSpellType
• CGameEffectDisintegrate
1066 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CGameEffectDispelEffects
• CGameEffectDispelInvisible
• CGameEffectDispelSanctuary
• CGameEffectDispelSchoolOne
• CGameEffectDispelSchool
• CGameEffectDispelSecondaryTypeOne
• CGameEffectDispelSecondaryType
• CGameEffectDisplayString
• CGameEffectDither
• CGameEffectDrainChargeFromAllItems
• CGameEffectDurationCasting
• CGameEffectEnableButton
• CGameEffectEndNonDetection
• CGameEffectEntangle
• CGameEffectEquipWeapon
• CGameEffectEvadeAreaOfEffect
• CGameEffectExistanceDelayOverride
• CGameEffectExplore
• CGameEffectFamiliarBlock
• CGameEffectFatigue
• CGameEffectFeebleMindedness
• CGameEffectFindFamiliar
• CGameEffectFistDamageBonus
• CGameEffectFistTHAC0Bonus
• CGameEffectFloatText
• CGameEffectForceSurge
• CGameEffectForceVisible
• CGameEffectFreedom
• CGameEffectGold
• CGameEffectGreasePool
• CGameEffectHaste2
• CGameEffectHaste
• CGameEffectHideInShadows
• CGameEffectHighLevelAbility
• CGameEffectHitMod
• CGameEffectHitPointsOnDeath
6.38. CGameEffect<Effect> Classes 1067
EEex Documentation, Release 1.0
• CGameEffectHoldCreature
• CGameEffectINT
• CGameEffectIdentify
• CGameEffectIgnoreDialogPause
• CGameEffectIgnoreDrainDeath
• CGameEffectIgnoreReputationBreak
• CGameEffectImmuneToTracking
• CGameEffectImmuneToWeapon
• CGameEffectImmunitySchoolDecrement
• CGameEffectImmunitySchool
• CGameEffectImmunitySecondaryTypeDecrement
• CGameEffectImmunitySecondaryType
• CGameEffectImmunitySpellIWD
• CGameEffectImmunitySpell
• CGameEffectImmunityToBackstab
• CGameEffectImmunityToDisplayString
• CGameEffectImmunityToPortraitIcon
• CGameEffectImmunityToProjectile
• CGameEffectImmunityToSequester
• CGameEffectImmunityToSpellLevel
• CGameEffectImmunityToTimeStop
• CGameEffectImmunityToTurnUndead
• CGameEffectImmunityToVisualEffect
• CGameEffectImprisonment
• CGameEffectInfravisionOff
• CGameEffectInfravision
• CGameEffectIntoxication
• CGameEffectInvisible
• CGameEffectJumpToArea
• CGameEffectJumpToPocketPlane
• CGameEffectKnock
• CGameEffectLearnSpell
• CGameEffectLevelRestoration
• CGameEffectLevel
• CGameEffectLore
• CGameEffectLuck
1068 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CGameEffectMeleeDamageBonus
• CGameEffectMeleeEffect
• CGameEffectMeleeTHAC0Bonus
• CGameEffectMentalSpeed
• CGameEffectMinHitPoints
• CGameEffectMinorGlobe
• CGameEffectMirrorImageRun
• CGameEffectMirrorImage
• CGameEffectMissileDamageBonus
• CGameEffectMissileTHAC0Bonus
• CGameEffectMoraleBreak
• CGameEffectMorale
• CGameEffectMovementRateModal
• CGameEffectMovementRate
• CGameEffectNPCBump
• CGameEffectName
• CGameEffectNoPermanentDeath
• CGameEffectNonDetection
• CGameEffectNon_CumulativeAid
• CGameEffectNon_CumulativeBless
• CGameEffectNon_CumulativeChantBad
• CGameEffectNon_CumulativeChant
• CGameEffectNon_CumulativeDrawUponHolyMight
• CGameEffectNon_CumulativeLuck
• CGameEffectOverrideWeaponType
• CGameEffectPanic
• CGameEffectPauseCaster
• CGameEffectPetrification
• CGameEffectPhysicalSpeed
• CGameEffectPlayMovie
• CGameEffectPlaySound
• CGameEffectPortraitIcon
• CGameEffectPowerWordKill
• CGameEffectPreventAISlowDown
• CGameEffectPreventSpellProtectionEffects
• CGameEffectProficiency
6.38. CGameEffect<Effect> Classes 1069
EEex Documentation, Release 1.0
• CGameEffectProtectionCircle
• CGameEffectProtectionFromCreature
• CGameEffectPuppetMaster
• CGameEffectRandomDrop
• CGameEffectRandomPhase
• CGameEffectRandomSummon
• CGameEffectRandomTeleport
• CGameEffectRangeEffect
• CGameEffectRememorizeSpell
• CGameEffectRemoveAllOfType
• CGameEffectRemoveConfusion
• CGameEffectRemoveCurse
• CGameEffectRemoveEffectOfResource
• CGameEffectRemoveHold
• CGameEffectRemoveInnateAbility
• CGameEffectRemoveIntoxication
• CGameEffectRemovePanic
• CGameEffectRemovePortraitIcon
• CGameEffectRemoveRandomSpell
• CGameEffectRemoveSpellImmunity
• CGameEffectRepeatingApplyEffect
• CGameEffectReplaceItem
• CGameEffectReplaceSelf
• CGameEffectReputation
• CGameEffectResistAcid
• CGameEffectResistCold
• CGameEffectResistCrushing
• CGameEffectResistElectricity
• CGameEffectResistFire
• CGameEffectResistMagicCold
• CGameEffectResistMagicFire
• CGameEffectResistMagic
• CGameEffectResistMissile
• CGameEffectResistPiercing
• CGameEffectResistSlashing
• CGameEffectResistanceToMagic
1070 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CGameEffectResistanceToPoison
• CGameEffectRest
• CGameEffectRestoreMovementRate
• CGameEffectRestrictEquipItemType
• CGameEffectRestrictEquipItem
• CGameEffectResurrectParty
• CGameEffectResurrect
• CGameEffectRetreatFrom
• CGameEffectRevealMagic
• CGameEffectSTRExtra
• CGameEffectSTR
• CGameEffectSanctuary
• CGameEffectSaveVsBreath
• CGameEffectSaveVsDeath
• CGameEffectSaveVsPoly
• CGameEffectSaveVsSchoolMod
• CGameEffectSaveVsSpell
• CGameEffectSaveVsWands
• CGameEffectSavingThrowChange
• CGameEffectScreenShake
• CGameEffectScriptingState
• CGameEffectSecondaryCastList
• CGameEffectSeeInvisible
• CGameEffectSelectiveDamageBonus
• CGameEffectSelectiveEnchantmentBonus
• CGameEffectSelectiveToHitBonus
• CGameEffectSequencerFirePoint
• CGameEffectSequencerFire
• CGameEffectSequencerInstance
• CGameEffectSequencerStart
• CGameEffectSetAIScript
• CGameEffectSetDoNotJump
• CGameEffectSetGlobal
• CGameEffectSetLocalExternal
• CGameEffectSetLocalVariable
• CGameEffectSetSequence
6.38. CGameEffect<Effect> Classes 1071
EEex Documentation, Release 1.0
• CGameEffectSetSnare
• CGameEffectSetSpellState
• CGameEffectSetTrap
• CGameEffectSevenEyesRun
• CGameEffectShieldGlobe
• CGameEffectShowArea
• CGameEffectShowCreatures
• CGameEffectSilence
• CGameEffectSingleColorPulseAll
• CGameEffectSkillLockPicking
• CGameEffectSkillPickPocket
• CGameEffectSkillStealth
• CGameEffectSkillTracking
• CGameEffectSkillTraps
• CGameEffectSlay
• CGameEffectSleep
• CGameEffectSlowPoison
• CGameEffectSlow
• CGameEffectSparkle
• CGameEffectSpecificDamageMod
• CGameEffectSpellMemorizationCleric
• CGameEffectSpellMemorizationMage
• CGameEffectSpellTrapLevelDecrement
• CGameEffectStoneToFlesh
• CGameEffectStun
• CGameEffectSummonDisable
• CGameEffectSurgeMod
• CGameEffectSwapHitpoints
• CGameEffectTeleport
• CGameEffectThac0Left
• CGameEffectThac0Right
• CGameEffectThac0
• CGameEffectTimeStop
• CGameEffectTracking
• CGameEffectTranslucent
• CGameEffectTurnUndeadModifier
1072 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CGameEffectTurnUndead
• CGameEffectUnpauseCaster
• CGameEffectUnstun
• CGameEffectUnsummon
• CGameEffectUsability
• CGameEffectUseAnyItem
• CGameEffectVisible
• CGameEffectVisualAnimationEffect
• CGameEffectVisualEffect
• CGameEffectVisualRange
• CGameEffectVisualSpellHitIWD
• CGameEffectVisualSpellHit
• CGameEffectVocalize
• CGameEffectWIS
• CGameEffectWebHold
• CGameEffectWish
• CGameEffectXP
6.38.4 Specific CGameEffect<Effect> Classes
Note: The following class names also apply to the above documentation, but also contain additional class methods.They are listed here as well for completeness as they share the same basic class methods, but they are documentedindividually as well due to the additional class methods they contain - see the specific class for details.
CGameEffectAlignmentReversal Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectAlignmentReversal::Reverse Reverse the alignment of the character
6.38. CGameEffect<Effect> Classes 1073
EEex Documentation, Release 1.0
CGameEffectAlignmentReversal::Reverse
Reverse the alignment of the character
unsigned char CGameEffectAlignmentReversal::Reverse(unsigned char alignment);
Parameters
• unsigned char alignment -
Return Value
Returns unsigned char
Remarks
CGameEffectAnimationChange Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectAnimationChange::OnAddSpecificCGameEffectAnimationChange::OnRemove
CGameEffectAnimationChange::OnAddSpecific
virtual void CGameEffectAnimationChange::OnAddSpecific\(:ref:`CGameSprite<CGameSprite>→˓`\* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectAnimationChange::OnRemove
virtual void CGameEffectAnimationChange::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1074 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffectApplyEffect Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectApplyEf-fect::CGameEffectApplyEffect
Constructor (additional constructor) creates aCGameEffectApplyEffect object
CGameEffectApplyEffect::OnRemove
CGameEffectApplyEffect::CGameEffectApplyEffect
Constructor - creates a CGameEffectApplyEffect object
void CGameEffectApplyEffect::CGameEffectApplyEffect();
Remarks
Additional constructor for CGameEffectApplyEffect
CGameEffectApplyEffect::OnRemove
virtual void CGameEffectApplyEffect::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectBase Class
Note: This class has no other methods, just a constructor.
6.38. CGameEffect<Effect> Classes 1075
EEex Documentation, Release 1.0
Constructors
CGameEffectBase::CGameEffectBase
Constructs a CGameEffectBase object
void CGameEffectBase::CGameEffectBase();
Remarks
Constructs a CGameEffectBase object
CGameEffectBlindness Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectBlindness::OnAddSpecificCGameEffectBlindness::OnRemove
CGameEffectBlindness::OnAddSpecific
virtual void CGameEffectBlindness::OnAddSpecific(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectBlindness::OnRemove
virtual void CGameEffectBlindness::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1076 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffectBounceLevelDecrement Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectBounceLevelDecrement::OnRemove
CGameEffectBounceLevelDecrement::OnRemove
virtual void CGameEffectBounceLevelDecrement::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectCharm Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectCharm::DisplayStringCGameEffectCharm::OnAddSpecific
6.38. CGameEffect<Effect> Classes 1077
EEex Documentation, Release 1.0
CGameEffectCharm::DisplayString
virtual void CGameEffectCharm::DisplayString(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectCharm::OnAddSpecific
virtual void CGameEffectCharm::OnAddSpecific(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectColorGlowSolid Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectColorGlowSolid::OnRemove
CGameEffectColorGlowSolid::OnRemove
virtual void CGameEffectColorGlowSolid::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1078 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffectCurseApplyEffect Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectCurseApplyEffect::OnRemove
CGameEffectCurseApplyEffect::OnRemove
virtual void CGameEffectCurseApplyEffect::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectDamage Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectDam-age::CGameEffectDamage
Constructor (additional constructor) - creates aCGameEffectDamage object
CGameEffectDamage::CheckSaveCGameEffectDamage::DecodeHitSoundCGameEffectDam-age::DisplayDamageAmountCGameEffectDamage::DisplayStringCGameEffectDamage::OnAddSpecificCGameEffectDamage::UsesDice
6.38. CGameEffect<Effect> Classes 1079
EEex Documentation, Release 1.0
CGameEffectDamage::CGameEffectDamage
Constructor - creates a CGameEffectDamage object
void CGameEffectDamage::CGameEffectDamage();
Remarks
Additional constructor for CGameEffectDamage
CGameEffectDamage::CheckSave
virtual int CGameEffectDamage::CheckSave(CGameSprite* pSprite,unsigned char& saveVSDeathRoll,unsigned char& saveVSWandsRoll,unsigned char& saveVSPolyRoll,unsigned char& saveVSBreathRoll,unsigned char& saveVSSpellRoll,unsigned char& magicResistRoll);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• unsigned char& saveVSDeathRoll -
• unsigned char& saveVSWandsRoll -
• unsigned char& saveVSPolyRoll -
• unsigned char& saveVSBreathRoll -
• unsigned char& saveVSSpellRoll -
• unsigned char& magicResistRoll -
Return Value
Returns int
Remarks
CGameEffectDamage::DecodeHitSound
void CGameEffectDamage::DecodeHitSound(unsigned long type,CGameSprite* pSprite);
Parameters
• unsigned long type -
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1080 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffectDamage::DisplayDamageAmount
virtual void CGameEffectDamage::DisplayDamageAmount(CGameSprite* pSprite,long damageResisted);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• long damageResisted -
Remarks
CGameEffectDamage::DisplayString
virtual void CGameEffectDamage::DisplayString(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectDamage::OnAddSpecific
virtual void CGameEffectDamage::OnAddSpecific\(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectDamage::UsesDice
virtual int CGameEffectDamage::UsesDice();
Return Value
Returns int
Remarks
CGameEffectDeath Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
6.38. CGameEffect<Effect> Classes 1081
EEex Documentation, Release 1.0
Methods
Name DescriptionCGameEffect-Death::CGameEffectDeath
Constructor (additional constructor) creates a CGameEffectDeathobject
CGameEffectDeath::DeathNoticeCGameEffectDeath::DisplayStringCGameEffectDeath::OnAddSpecific
CGameEffectDeath::CGameEffectDeath
Constructor - creates a CGameEffectDeath object
void CGameEffectDeath::CGameEffectDeath();
Remarks
Additional constructor for CGameEffectDeath
CGameEffectDeath::DeathNotice
virtual void __cdecl CGameEffectDeath::DeathNotice(CGameSprite* pSprite,long sourceId,int reverse);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• long sourceId -
• int reverse -
Remarks
CGameEffectDeath::DisplayString
virtual void CGameEffectDeath::DisplayString(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1082 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffectDeath::OnAddSpecific
virtual void CGameEffectDeath::OnAddSpecific(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectDisease Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectDisease::OnAddSpecific
CGameEffectDisease::OnAddSpecific
virtual void CGameEffectDisease::OnAddSpecific(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectDoNotDraw Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectDoNotDraw::OnRemove
6.38. CGameEffect<Effect> Classes 1083
EEex Documentation, Release 1.0
CGameEffectDoNotDraw::OnRemove
virtual void CGameEffectDoNotDraw\:\:OnRemove\(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectFile Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectFile::CGameEffectFile Constructor (only this constructor) - creates a CGameEffectFile ob-
jectCGameEffect-File::~CGameEffectFile
Destructor - destroys CGameEffectFile object
CGameEffectFile::GetEffect Get effect
CGameEffectFile::CGameEffectFile
Constructor - creates a CGameEffectFile object
void CGameEffectFile::CGameEffectFile(CResRef cNewResRef);
Parameters
• CResRef cNewResRef - new resource reference
Remarks
Only this constructor is available for CGameEffectFile
1084 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffectFile::~CGameEffectFile
Destructor - destroys CGameEffectFile object
void CGameEffectFile::~CGameEffectFile();
Remarks
Destructor for CGameEffectFile
CGameEffectFile::GetEffect
Get effect
CGameEffect* CGameEffectFile::GetEffect();
Return Value
Returns CGameEffect*
Remarks
CGameEffectHeal Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectHeal::CGameEffectHeal Constructor (additional constructor) creates a CGameEffectHeal ob-
jectCGameEf-fectHeal::CalculateHPHealed
Calculate hit points healed
CGameEffectHeal::UsesDice
CGameEffectHeal::CGameEffectHeal
Constructor - creates a CGameEffectHeal object
void CGameEffectHeal::CGameEffectHeal();
Remarks
Additional constructor for CGameEffectHeal
6.38. CGameEffect<Effect> Classes 1085
EEex Documentation, Release 1.0
CGameEffectHeal::CalculateHPHealed
Calculate hit points healed
long CGameEffectHeal::CalculateHPHealed(long nMaxHitPoints);
Parameters
• long nMaxHitPoints -
Return Value
Returns long value indicating the calculated hit points healed
Remarks
CGameEffectHeal::UsesDice
virtual int CGameEffectHeal::UsesDice();
Return Value
Returns int
Remarks
CGameEffectHitPoints Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectHitPoints::OnAddSpecificCGameEffectHitPoints::OnRemoveCGameEffectHitPoints::UsesDice
CGameEffectHitPoints::OnAddSpecific
virtual void CGameEffectHitPoints::OnAddSpecific(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
1086 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Remarks
CGameEffectHitPoints::OnRemove
virtual void CGameEffectHitPoints::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectHitPoints::UsesDice
virtual int CGameEffectHitPoints::UsesDice();
Return Value
Returns int
Remarks
CGameEffectHoldCreatureSpell Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectHoldCreature-Spell::CGameEffectHoldCreatureSpell
Constructor (additional constructor) createCGameEffectHoldCreatureSpell object
CGameEffectHoldCreature-Spell::DisplayString
CGameEffectHoldCreatureSpell::CGameEffectHoldCreatureSpell
Constructor - create CGameEffectHoldCreatureSpell object
6.38. CGameEffect<Effect> Classes 1087
EEex Documentation, Release 1.0
void CGameEffectHoldCreatureSpell::CGameEffectHoldCreatureSpell(Item_effect_st* effect,CPoint& source,long sourceID,CPoint target);
Parameters
• Item_effect_st* effect -
• CPoint& source -
• long sourceID -
• CPoint target -
Remarks
Additional constructor for CGameEffectHoldCreatureSpell::CGameEffectHoldCreatureSpell
CGameEffectHoldCreatureSpell::DisplayString
virtual void CGameEffectHoldCreatureSpell::DisplayString(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectImmunityLevelDecrement Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectImmunityLevelDecrement::OnRemove
CGameEffectImmunityLevelDecrement::OnRemove
virtual void CGameEffectImmunityLevelDecrement::OnRemove(CGameSprite* pSprite);
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1088 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffectImmunityToEffect Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectImmunityToEffect::OnRemove
CGameEffectImmunityToEffect::OnRemove
virtual void CGameEffectImmunityToEffect\:\:OnRemove\(:ref:`CGameSprite<CGameSprite>→˓`\* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectList Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
6.38. CGameEffect<Effect> Classes 1089
EEex Documentation, Release 1.0
Methods
Name DescriptionCGameEffectList::CheckEffectsCGameEffectList::FakeExpireCheckCGameEffectList::GetTypeOnListCGameEffectList::HandleListCGameEffectList::IsTypeOnListCGameEffectList::MarshalCGameEffectList::ModifyAllOfTypeCGameEffectList::RemoveCGameEffectList::RemoveAllEffectsCGameEffectList::RemoveAllEffectsFromSourceResCGameEffectList::RemoveAllEffectsIgnoreMoreThenPermanentCGameEffectList::RemoveAllOfSchoolCGameEffectList::RemoveAllOfSecondaryTypeCGameEffectList::RemoveAllOfTypeCGameEffectList::RemoveOneOfSchoolCGameEffectList::RemoveOneOfSecondaryTypeCGameEffectList::RemoveOneOfTypeCGameEffectList::Unmarshal
CGameEffectList::CheckEffects
int CGameEffectList::CheckEffects();
Return Value
Returns int
Remarks
CGameEffectList::FakeExpireCheck
void CGameEffectList::FakeExpireCheck(CGameSprite* pSprite,long elapsedTime);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• long elapsedTime -
Remarks
1090 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffectList::GetTypeOnList
CGameEffect* CGameEffectList::GetTypeOnList(unsigned short effectId,unsigned long flags);
Parameters
• unsigned short effectId -
• unsigned long flags -
Return Value
Returns CGameEffect*
Remarks
CGameEffectList::HandleList
int CGameEffectList::HandleList(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Return Value
Returns int
Remarks
CGameEffectList::IsTypeOnList
unsigned char CGameEffectList::IsTypeOnList(unsigned short effectId,unsigned long flags);
Parameters
• unsigned short effectId -
• unsigned long flags -
Return Value
Returns unsigned char
Remarks
CGameEffectList::Marshal
6.38. CGameEffect<Effect> Classes 1091
EEex Documentation, Release 1.0
unsigned long CGameEffectList::Marshal(unsigned char** ptrPtr,unsigned char version,int moreThenPermanentOnly,int stripEquiped);
Parameters
• unsigned char** ptrPtr -
• unsigned char version -
• int moreThenPermanentOnly -
• int stripEquiped -
Return Value
Returns unsigned long
Remarks
CGameEffectList::ModifyAllOfType
int CGameEffectList::ModifyAllOfType(unsigned short effectId,long newEffectAmount,int increment,unsigned long dwFlags,int useFlags,int moreThenPermanentOnly);
Parameters
• unsigned short effectId -
• long newEffectAmount -
• int increment -
• unsigned long dwFlags -
• int useFlags -
• int moreThenPermanentOnly -
Return Value
Returns int
Remarks
CGameEffectList::ModifyAllOfType
1092 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CGameEffectList::ModifyAllOfType(CGameSprite* pSprite,unsigned short effectId,POSITION* posLeave,long effectAmount);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• unsigned short effectId -
• POSITION* posLeave -
• long effectAmount -
Return Value
Returns
Remarks
CGameEffectList::Remove
int CGameEffectList::Remove(CGameEffect* effect,CGameSprite* pSprite,int compareSourceType);
Parameters
• CGameEffect* effect - pointer to game effect object
• CGameSprite* pSprite - pointer to game sprite object
• int compareSourceType* -
Return Value
Returns int
Remarks
CGameEffectList::RemoveAllEffects
void CGameEffectList::RemoveAllEffects(CGameSprite* pSprite,POSITION* posLeave,int checkDispellable,int useLevelDiff,unsigned char prob,unsigned char dispelLevel);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
6.38. CGameEffect<Effect> Classes 1093
EEex Documentation, Release 1.0
• POSITION* posLeave -
• int checkDispellable -
• int useLevelDiff -
• unsigned char prob -
• unsigned char dispelLevel -
Remarks
CGameEffectList::RemoveAllEffectsFromSourceRes
void CGameEffectList::RemoveAllEffectsFromSourceRes(CGameSprite* pSprite,POSITION* posLeave,CResRef& res);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• POSITION* posLeave -
• CResRef & res - resource reference
Remarks
CGameEffectList::RemoveAllEffectsIgnoreMoreThenPermanent
void CGameEffectList::RemoveAllEffectsIgnoreMoreThenPermanent(CGameSprite* pSprite,POSITION* posLeave,int checkDispellable,int useLevelDiff,unsigned char prob,unsigned char dispelLevel);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• POSITION* posLeave -
• int checkDispellable -
• int useLevelDiff -
• unsigned char prob -
• unsigned char dispelLevel -
Remarks
1094 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffectList::RemoveAllOfSchool
int CGameEffectList::RemoveAllOfSchool(CGameSprite* pSprite,unsigned long school,POSITION* posLeave,long maxLevel,int& found);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• unsigned long school -
• POSITION* posLeave -
• long maxLevel -
• int& found -
Return Value
Returns int
Remarks
CGameEffectList::RemoveAllOfSecondaryType
int CGameEffectList::RemoveAllOfSecondaryType(CGameSprite* pSprite,unsigned long secType,POSITION* posLeave,long maxLevel,int& found);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• unsigned long secType -
• POSITION* posLeave -
• long maxLevel -
• int& found -
Return Value
Returns int
Remarks
CGameEffectList::RemoveAllOfType
6.38. CGameEffect<Effect> Classes 1095
EEex Documentation, Release 1.0
void CGameEffectList::RemoveAllOfType(CGameSprite* pSprite,unsigned short effectId,POSITION* posLeave,long effectAmount,CResRef res,int leaveMoreThenPermanent);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• unsigned short effectId -
• POSITION* posLeave -
• long effectAmount -
• CResRef res -
• int leaveMoreThenPermanent -
Remarks
CGameEffectList::RemoveOneOfSchool
int CGameEffectList::RemoveOneOfSchool(CGameSprite* pSprite,unsigned long school,POSITION* posLeave,long maxLevel,int& found);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• unsigned long school -
• POSITION* posLeave -
• long maxLevel -
• int& found -
Return Value
Returns int
Remarks
CGameEffectList::RemoveOneOfSecondaryType
1096 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
int CGameEffectList::RemoveOneOfSecondaryType(CGameSprite* pSprite,unsigned long secType,POSITION* posLeave,long maxLevel,int& found);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• unsigned long secType -
• POSITION* posLeave -
• long maxLevel -
• int& found -
Return Value
Returns int
Remarks
CGameEffectList::RemoveOneOfType
int CGameEffectList::RemoveOneOfType(CGameSprite* pSprite,unsigned short effectId,POSITION* posLeave,long effectAmount,CResRef res);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• unsigned short effectId -
• POSITION* posLeave -
• ‘‘long effectAmount -
• CResRef res -
Return Value
Returns int
Remarks
CGameEffectList::Unmarshal
6.38. CGameEffect<Effect> Classes 1097
EEex Documentation, Release 1.0
void CGameEffectList::Unmarshal(unsigned char* data,unsigned long nSize,CGameSprite* pSprite,unsigned char version);
Parameters
• unsigned char* data -
• unsigned long nSize -
• CGameSprite* pSprite - pointer to game sprite object
• unsigned char version -
Remarks
CGameEffectMakeUnselectable Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectMakeUnselectable::OnRemove
CGameEffectMakeUnselectable::OnRemove
virtual void CGameEffectMakeUnselectable::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectMaze Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
1098 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Methods
Name DescriptionCGameEffect-Maze::CGameEffectMaze
Constructor (additional constructor) - creates a CGameEffectMaze ob-ject
CGameEffectMaze::OnAddSpecificCGameEffectMaze::OnRemove
CGameEffectMaze::CGameEffectMaze
Constructor - creates a CGameEffectMaze object
void CGameEffectMaze::CGameEffectMaze();
Remarks
Additional constructor for CGameEffectMaze
CGameEffectMaze::OnAddSpecific
virtual void CGameEffectMaze::OnAddSpecific(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectMaze::OnRemove
virtual void CGameEffectMaze::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectOverrideAnimation Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
6.38. CGameEffect<Effect> Classes 1099
EEex Documentation, Release 1.0
Methods
Name DescriptionCGameEffectOverrideAnimation::OnRemove
CGameEffectOverrideAnimation::OnRemove
virtual void CGameEffectOverrideAnimation::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectPoison Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectPoison::OnAddSpecific
CGameEffectPoison::OnAddSpecific
virtual void CGameEffectPoison::OnAddSpecific(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectPolymorph Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
1100 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Methods
Name DescriptionCGameEffectPolymorph::OnRemove
CGameEffectPolymorph::OnRemove
virtual void CGameEffectPolymorph::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectPortrait Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectPortrait::OnRemove
CGameEffectPortrait::OnRemove
virtual void CGameEffectPortrait::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectPowerWordSleep Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
6.38. CGameEffect<Effect> Classes 1101
EEex Documentation, Release 1.0
Methods
Name DescriptionCGameEffectPowerWordSleep::OnRemove
CGameEffectPowerWordSleep::OnRemove
virtual void CGameEffectPowerWordSleep::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectPowerWordStun Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectPowerWordStun::OnRemove
CGameEffectPowerWordStun::OnRemove
virtual void CGameEffectPowerWordStun::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectPushPull Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
1102 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Methods
Name DescriptionCGameEffectPushPull::CheckSave
CGameEffectPushPull::CheckSave
virtual int CGameEffectPushPull::CheckSave(CGameSprite* pSprite,unsigned char& saveVSDeathRoll,unsigned char& saveVSWandsRoll,unsigned char& saveVSPolyRoll,unsigned char& saveVSBreathRoll,unsigned char& saveVSSpellRoll,unsigned char& magicResistRoll);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• unsigned char& saveVSDeathRoll -
• unsigned char& saveVSWandsRoll -
• unsigned char& saveVSPolyRoll -
• unsigned char& saveVSBreathRoll -
• unsigned char& saveVSSpellRoll -
• unsigned char& magicResistRoll -
Return Value
Returns int
Remarks
CGameEffectRegeneration Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectRegeneration::OnAddSpecific
6.38. CGameEffect<Effect> Classes 1103
EEex Documentation, Release 1.0
CGameEffectRegeneration::OnAddSpecific
virtual void CGameEffectRegeneration::OnAddSpecific(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectSevenEyes Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectSevenEyes::OnRemove
CGameEffectSevenEyes::OnRemove
virtual void CGameEffectSevenEyes::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectSexChange Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectSexChange::OnRemove
1104 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffectSexChange::OnRemove
virtual void CGameEffectSexChange::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectStaticCharge Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectStaticCharge::UsesDice
CGameEffectStaticCharge::UsesDice
virtual int CGameEffectStaticCharge::UsesDice();
Return Value
Returns int
Remarks
CGameEffectStoneSkins Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectStoneSkins::OnRemoveCGameEffectStoneSkins::UsesDice
6.38. CGameEffect<Effect> Classes 1105
EEex Documentation, Release 1.0
CGameEffectStoneSkins::OnRemove
virtual void CGameEffectStoneSkins::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CGameEffectStoneSkins::UsesDice
virtual int CGameEffectStoneSkins::UsesDice();
Return Value
Returns
Remarks
CGameEffectStoneSkinsGolem Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectStoneSkinsGolem::OnRemove
CGameEffectStoneSkinsGolem::OnRemove
virtual void CGameEffectStoneSkinsGolem::OnRemove(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1106 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameEffectSummon Class
Note: See CGameEffect<Effect> Methods for methods that are shared by all game effect classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCGameEffectSummon::ApplyVisualEffectCGameEffectSummon::ApplyVisualEffectArea
CGameEffectSummon::ApplyVisualEffect
virtual void __cdecl CGameEffectSummon::ApplyVisualEffect(CResRef& res,CPoint& dest,CGameSprite* pSprite,CGameArea* pArea);
Parameters
• CResRef & res -
• CPoint& dest -
• CGameSprite* pSprite - pointer to game sprite object
• CGameArea* pArea -
Remarks
CGameEffectSummon::ApplyVisualEffectArea
virtual void __cdecl CGameEffectSummon::ApplyVisualEffectArea(CResRef& res,CPoint& dest,CGameSprite* pSprite,CGameArea* pArea);
Parameters
• CResRef & res -
• CPoint& dest -
• CGameSprite* pSprite - pointer to game sprite object
• CGameArea* pArea -
Remarks
6.38. CGameEffect<Effect> Classes 1107
EEex Documentation, Release 1.0
6.39 CGameFireball3d Class
The structure used for this class is CGameFireball3d
Quick Refvoid CGameFireball3d::CGameFireball3d(unsigned char type, unsigned short projectileID, unsigned char* col-orRangeValues, short radius, unsigned char speed, unsigned char collision, unsigned long projectileFlags, shortholdDuration, int bCone, unsigned short coneSize, CPoint& posEdge)virtual void CGameFireball3d::~CGameFireball3d()virtual void CGameFireball3d::AIUpdate()int CGameFireball3d::AddToAreaFireball(CGameArea* pArea, CPoint& pos, long posZ, unsigned char list-Type)virtual unsigned char CGameFireball3d::CanSaveGame(unsigned long& strError, int restCheck, int combat-Check)void CGameFireball3d::CreateStaticTemporal(short duration, CPoint& ptTemp, CPoint& ptSpeed)void CGameFireball3d::CreateTemporal(short duration, CPoint& ptTemp, CPoint& ptSpeed)virtual void CGameFireball3d::RemoveFromArea()virtual void CGameFireball3d::Render(CGameArea* pArea, CVidMode* pVidMode)void CGameFireball3d::SetFlags(unsigned long flags)void CGameFireball3d::SetSndExplosion(CResRef resref)void CGameFireball3d::SetSpriteSplashVidCell(CResRef resref, int paletted)
6.39.1 Constructors
Name DescriptionCGameFireball3d::CGameFireball3d Constructs a CGameFireball3d objectCGameFireball3d::~CGameFireball3d Destroys a CGameFireball3d object
CGameFireball3d::CGameFireball3d
Constructs a CGameFireball3d object
void CGameFireball3d::CGameFireball3d(unsigned char type,unsigned short projectileID,unsigned char* colorRangeValues,short radius,unsigned char speed,unsigned char collision,unsigned long projectileFlags,short holdDuration,int bCone,unsigned short coneSize,CPoint& posEdge);
Parameters
• unsigned char type -
• unsigned short projectileID -
1108 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• unsigned char* colorRangeValues -
• short radius -
• unsigned char speed -
• unsigned char collision -
• unsigned long projectileFlags -
• short holdDuration -
• int bCone -
• unsigned short coneSize -
• CPoint& posEdge -
Remarks
Constructs a CGameFireball3d object
CGameFireball3d::~CGameFireball3d
Destroys the CGameFireball3d object
virtual void **CGameFireball3d\:\:~CGameFireball3d**\();
Remarks
Destroys the CGameFireball3d object
6.39.2 Methods
Name DescriptionCGameFireball3d::AIUpdateCGameFireball3d::AddToAreaFireball Add fireball object to areaCGameFireball3d::CanSaveGameCGameFireball3d::CreateStaticTemporalCGameFireball3d::CreateTemporalCGameFireball3d::RemoveFromArea Remove fireball object from areaCGameFireball3d::Render Render fireball objectCGameFireball3d::SetFlags Set fireball object flagsCGameFireball3d::SetSndExplosion Set sound explosion for the fireball objectCGameFireball3d::SetSpriteSplashVidCell Set sprite splash for the fireball object
CGameFireball3d::AIUpdate
virtual void CGameFireball3d::AIUpdate();
Remarks
6.39. CGameFireball3d Class 1109
EEex Documentation, Release 1.0
CGameFireball3d::AddToAreaFireball
Add fireball object to area
int CGameFireball3d::AddToAreaFireball(CGameArea* pArea,CPoint& pos,long posZ,unsigned char listType);
Parameters
• CGameArea* pArea - pointer to area to add fireball to
• CPoint& pos - x and y coordinates where to add fireball
• long posZ - z height position of fireball
• unsigned char listType -
Return Value
Returns int
Remarks
CGameFireball3d::CanSaveGame
virtual unsigned char CGameFireball3d::CanSaveGame(unsigned long& strError,int restCheck,int combatCheck);
Parameters
• unsigned long& strError -
• int restCheck -
• int combatCheck -
Return Value
Returns unsigned char
Remarks
CGameFireball3d::CreateStaticTemporal
void CGameFireball3d::CreateStaticTemporal(short duration,CPoint& ptTemp,CPoint& ptSpeed);
Parameters
• short duration -
1110 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CPoint& ptTemp -
• CPoint& ptSpeed -
Remarks
CGameFireball3d::CreateTemporal
void CGameFireball3d::CreateTemporal(short duration,CPoint& ptTemp,CPoint& ptSpeed);
Parameters
• short duration -
• CPoint& ptTemp -
• CPoint& ptSpeed -
Remarks
CGameFireball3d::RemoveFromArea
Remove fireball object from area
virtual void CGameFireball3d::RemoveFromArea();
Remarks
CGameFireball3d::Render
Render fireball object
virtual void CGameFireball3d::Render(CGameArea* pArea,CVidMode* pVidMode);
Parameters
• CGameArea* pArea - pointer to area
• CVidMode* pVidMode - pointer to vid mode
Remarks
CGameFireball3d::SetFlags
Set fireball object flags
6.39. CGameFireball3d Class 1111
EEex Documentation, Release 1.0
void CGameFireball3d::SetFlags(unsigned long flags);
Parameters
• unsigned long flags -
Remarks
CGameFireball3d::SetSndExplosion
Set sound explosion for the fireball object
void CGameFireball3d::SetSndExplosion(CResRef resref);
Parameters
• CResRef resref - resource reference for explosion sound to play
Remarks
CGameFireball3d::SetSpriteSplashVidCell
Set sprite splash for the fireball object
void CGameFireball3d::SetSpriteSplashVidCell(CResRef resref,int paletted);
Parameters
• CResRef resref - resource reference for sprite splash
• int paletted - true or false?
Remarks
6.40 CGameJournal Class
The structure used for this class is CGameJournal
1112 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Quick Refvoid CGameJournal::CGameJournal()void CGameJournal::~CGameJournal()int CGameJournal::AddEntry(unsigned long strText, unsigned short nType)int CGameJournal::AddEntry(unsigned long strText, int nChapter, long nTime, unsigned short nType)void CGameJournal::AlphabetizeQuests(int nChapter)void CGameJournal::ChangeEntry(unsigned long strRef, CString szNewText)void CGameJournal::ChangeEntry(unsigned long nIndex, CString szNewText, int nChapter, unsigned charnCharacter)void CGameJournal::ClearAllEntries()unsigned short CGameJournal::CountEntries()void CGameJournal::DeleteEntry(unsigned long strRef)int CGameJournal::InsertEntryAfter(CString strText, unsigned long nEntry, unsigned short nType)int CGameJournal::InsertEntryAfter(CString szText, unsigned long nIndex, int nChapter, long nTime, unsignedchar nCharacter, unsigned short nType, unsigned long strRef)void CGameJournal::Marshal(CSavedGameJournalEntry* pSavedEntry)void CGameJournal::SetQuestDone(unsigned long strRef)void CGameJournal::Unmarshal(CSavedGameJournalEntry* pSavedEntry, unsigned long nSavedEntry)void CGameJournal::UpdateJournalEntry(unsigned long strText, long time, unsigned short type, int chapter,CString timeStamp)
6.40.1 Constructors
Name DescriptionCGameJournal::CGameJournal Constructs a CGameJournal objectCGameJournal::~CGameJournal Destroys a CGameJournal object
CGameJournal::CGameJournal
Constructs a CGameJournal object
void CGameJournal::CGameJournal();
Remarks
Constructs a CGameJournal object
CGameJournal::~CGameJournal
Destroys the CGameJournal object
void CGameJournal::~CGameJournal();
Remarks
Destroys the CGameJournal object
6.40. CGameJournal Class 1113
EEex Documentation, Release 1.0
6.40.2 Methods
Name DescriptionCGameJournal::AddEntry Add a journal entryCGameJournal::AlphabetizeQuests Sorts quests in the specified chapter in alphabetical orderCGameJournal::ChangeEntry Change a journal entryCGameJournal::ClearAllEntries Clear all journal entriesCGameJournal::CountEntries Returns count of all journal entriesCGameJournal::DeleteEntry Delete a journal entryCGameJournal::InsertEntryAfter Insert a new journal entry after a specific journal entryCGameJournal::MarshalCGameJournal::SetQuestDone Mark a journal quest entry as completedCGameJournal::UnmarshalCGameJournal::UpdateJournalEntry Update a journal entry
CGameJournal::AddEntry
Add a journal entry
int CGameJournal::AddEntry(unsigned long strText,unsigned short nType);
Parameters
• unsigned long strText - pointer to string containing text to add to journal
• unsigned short nType - type of journal entry to add
Return Value
Returns an int value
Remarks
CGameJournal::AddEntry
Add a journal entry
int CGameJournal::AddEntry(unsigned long strText,int nChapter,long nTime,unsigned short nType);
Parameters
• unsigned long strText - pointer to string containing text to add to journal
• int nChapter - chapter to add journal entry to
• long nTime - date time stamp for journal entry
• unsigned short nType - type of journal entry to add
1114 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns an int value
Remarks
CGameJournal::AlphabetizeQuests
Sorts quests in the specified chapter in alphabetical order
void CGameJournal::AlphabetizeQuests(int nChapter);
Parameters
• int nChapter - chapter number to sort
Remarks
CGameJournal::ChangeEntry
Change a journal entry
void CGameJournal::ChangeEntry(unsigned long strRef,CString szNewText);
Parameters
• unsigned long strRef - string reference
• CString szNewText - string containing new text to use in journal entry
Remarks
CGameJournal::ChangeEntry
Change a journal entry
void CGameJournal::ChangeEntry(unsigned long nIndex,CString szNewText,int nChapter,unsigned char nCharacter);
Parameters
• unsigned long nIndex - journal entry index id
• CString szNewText - string containing new text to use in journal entry
• int nChapter - chapter number that entry is located in
• unsigned char nCharacter -
Remarks
6.40. CGameJournal Class 1115
EEex Documentation, Release 1.0
CGameJournal::ClearAllEntries
Clear all journal entries
void CGameJournal::ClearAllEntries();
Remarks
CGameJournal::CountEntries
Returns count of all journal entries
unsigned short CGameJournal::CountEntries();
Return Value
Returns an unsigned short value which is the count of all journal entries
Remarks
CGameJournal::DeleteEntry
Delete a journal entry
void CGameJournal::DeleteEntry(unsigned long strRef);
Parameters
• unsigned long strRef - string reference of journal entry to delete
Remarks
CGameJournal::InsertEntryAfter
Insert a new journal entry after a specific journal entry
int CGameJournal::InsertEntryAfter(:ref:`CString<CString>` strText,unsigned long nEntry,unsigned short nType);
Parameters
• CString strText - string containing new text to use in journal entry
• unsigned long nEntry - journal entry id to insert new entry after
• unsigned short nType - type of journal entry to add
Return Value
Returns an int value
Remarks
1116 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameJournal::InsertEntryAfter
Insert a new journal entry after a specific journal entry
int CGameJournal::InsertEntryAfter(CString szText,unsigned long nIndex,int nChapter,long nTime,unsigned char nCharacter,unsigned short nType,unsigned long strRef);
Parameters
• CString szText - string containing new text to use in journal entry
• unsigned long nIndex - journal entry id to insert new entry after
• int nChapter - chapter to add journal entry to
• long nTime - date time stamp for journal entry
• unsigned char nCharacter -
• unsigned short nType - type of journal entry to add
• unsigned long strRef - string reference
Return Value
Returns an int value
Remarks
CGameJournal::Marshal
void CGameJournal::Marshal(CSavedGameJournalEntry* pSavedEntry);
Parameters
• CSavedGameJournalEntry* pSavedEntry -
Remarks
CGameJournal::SetQuestDone
Mark a journal quest entry as completed
void CGameJournal::SetQuestDone(unsigned long strRef);
Parameters
• unsigned long strRef - string reference of journal entry to mark as completed
Remarks
6.40. CGameJournal Class 1117
EEex Documentation, Release 1.0
CGameJournal::Unmarshal
void CGameJournal::Unmarshal(CSavedGameJournalEntry* pSavedEntry,unsigned long nSavedEntry);
Parameters
• CSavedGameJournalEntry* pSavedEntry -
• unsigned long nSavedEntry -
Remarks
CGameJournal::UpdateJournalEntry
Update a journal entry
void CGameJournal::UpdateJournalEntry(unsigned long strText,long time,unsigned short type,int chapter,CString timeStamp);
Parameters
• unsigned long strText - string containing journal entry text
• long time - date time stamp for journal entry
• unsigned short type - type of journal entry
• int chapter - chapter number
• CString timeStamp - date time stamp text
Remarks
6.41 CGameObject Class
The structure used for this class is CGameObject
1118 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Quick Refvoid CGameObject::CGameObject()virtual void CGameObject::AddToArea(CGameArea* pNewArea, CPoint& pos, long posZ, unsigned char list-Type)virtual void CGameObject::AIUpdate()virtual unsigned char CGameObject::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)virtual unsigned char CGameObject::CompressTime(unsigned long deltaTime)virtual void CGameObject::DebugDump(CString& __formal)virtual unsigned char CGameObject::DoAIUpdate(unsigned char active, long counter)virtual int CGameObject::DoesIntersect(CRect __formal)virtual int CGameObject::EvaluateStatusTrigger(CAITrigger& __formal)virtual CAIObjectType& CGameObject::GetAIType()virtual void CGameObject::GetNextWaypoint(CPoint* pt)virtual unsigned char CGameObject::GetObjectType()virtual long CGameObject::GetTargetId()virtual __POSITION* CGameObject::GetVertListPos()virtual unsigned char CGameObject::GetVertListType()unsigned char CGameObject::InControl()virtual int CGameObject::IsOver(CPoint& __formal)int CGameObject::IsPicked()virtual void CGameObject::OnActionButton(CPoint& pt)virtual void CGameObject::OnFormationButton(CPoint& pt)virtual int CGameObject::OnSearchMap()virtual void CGameObject::RemoveFromArea()virtual void CGameObject::Render(CGameArea* __formal)virtual void CGameObject::SetTarget(CPoint __formal)virtual void CGameObject::SetAIType(CAIObjectType& typeAI, int dummy)virtual void CGameObject::SetVertListPos(__POSITION* posVertList)virtual void CGameObject::SetVertListType(unsigned char type)virtual void CGameObject::SetCursor(long nToolTip)
6.41.1 Constructors
Name DescriptionCGameObject::CGameObject Constructs a CGameObject object
CGameObject::CGameObject
Constructs a CGameObject object
void CGameObject::CGameObject();
Remarks
Constructs a CGameObject object
6.41. CGameObject Class 1119
EEex Documentation, Release 1.0
6.41.2 Methods
Name DescriptionCGameObject::AddToAreaCGameObject::AIUpdateCGameObject::CanSaveGameCGameObject::CompressTimeCGameObject::DebugDumpCGameObject::DoAIUpdateCGameObject::DoesIntersectCGameObject::EvaluateStatusTriggerCGameObject::GetAITypeCGameObject::GetNextWaypointCGameObject::GetObjectTypeCGameObject::GetTargetIdCGameObject::GetVertListPosCGameObject::GetVertListTypeCGameObject::InControlCGameObject::IsOverCGameObject::IsPickedCGameObject::OnActionButtonCGameObject::OnFormationButtonCGameObject::OnSearchMapCGameObject::RemoveFromAreaCGameObject::RenderCGameObject::SetTargetCGameObject::SetAITypeCGameObject::SetVertListPosCGameObject::SetVertListTypeCGameObject::SetCursor
CGameObject::AddToArea
virtual void CGameObject::AddToArea(CGameArea* pNewArea,CPoint& pos,long posZ,unsigned char listType);
Parameters
• CGameArea* pNewArea -
• CPoint& pos -
• long posZ -
• unsigned char listType -
Remarks
1120 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameObject::AIUpdate
virtual void CGameObject::AIUpdate();
Remarks
CGameObject::CanSaveGame
virtual unsigned char CGameObject::CanSaveGame(unsigned long& strError,int restCheck,int combatCheck);
Parameters
• unsigned long& strError -
• int restCheck -
• int combatCheck -
Return Value
Returns unsigned char
Remarks
CGameObject::CompressTime
virtual unsigned char CGameObject::CompressTime(unsigned long deltaTime);
Parameters
• unsigned long deltaTime -
Return Value
Returns unsigned char
Remarks
CGameObject::DebugDump
virtual void CGameObject::DebugDump(CString& __formal);
Parameters
• CString& __formal -
Remarks
6.41. CGameObject Class 1121
EEex Documentation, Release 1.0
CGameObject::DoAIUpdate
virtual unsigned char CGameObject::DoAIUpdate(unsigned char active,long counter);
Parameters
• unsigned char active -
• long counter -
Return Value
Returns unsigned char
Remarks
CGameObject::DoesIntersect
virtual int CGameObject::DoesIntersect(CRect __formal);
Parameters
• CRect __formal -
Return Value
Returns int
Remarks
CGameObject::EvaluateStatusTrigger
virtual int CGameObject::EvaluateStatusTrigger(CAITrigger& __formal);
Parameters
• CAITrigger& __formal -
Return Value
Returns int
Remarks
1122 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameObject::GetAIType
virtual CAIObjectType& CGameObject::GetAIType();
Return Value
Returns CAIObjectType&
Remarks
CGameObject::GetNextWaypoint
virtual void CGameObject::GetNextWaypoint(CPoint* pt);
Parameters
• CPoint* pt -
Remarks
CGameObject::GetObjectType
virtual unsigned char CGameObject::GetObjectType();
Return Value
Returns unsigned char - see remarks for object types
Remarks
Object Type Object Type Description0x00 TYPE_NONE0x01 TYPE_AIBASE0x10 TYPE_SOUND0x11 TYPE_CONTAINER0x20 TYPE_SPAWNING0x21 TYPE_DOOR0x30 TYPE_STATIC0x31 TYPE_SPRITE0x40 TYPE_OBJECT_MARKER0x41 TYPE_TRIGGER0x51 TYPE_TILED_OBJECT0x60 TYPE_TEMPORAL0x61 TYPE_AREA_AI0x70 TYPE_FIREBALL0x71 TYPE_GAME_AI
6.41. CGameObject Class 1123
EEex Documentation, Release 1.0
CGameObject::GetTargetId
virtual long CGameObject::GetTargetId();
Return Value
Returns long
Remarks
CGameObject::GetVertListPos
virtual __POSITION* CGameObject::GetVertListPos();
Return Value
Returns __POSITION*
Remarks
CGameObject::GetVertListType
virtual unsigned char CGameObject::GetVertListType();
Return Value
Returns unsigned char
Remarks
CGameObject::InControl
unsigned char CGameObject::InControl();
Return Value
Returns unsigned char
Remarks
1124 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameObject::IsOver
virtual int CGameObject::IsOver(CPoint& __formal);
Parameters
• CPoint& __formal -
Return Value
Returns int
Remarks
CGameObject::IsPicked
int CGameObject::IsPicked();
Return Value
Returns int
Remarks
CGameObject::OnActionButton
virtual void CGameObject::OnActionButton(CPoint& pt);
Parameters
• CPoint& pt -
Remarks
CGameObject::OnFormationButton
virtual void CGameObject::OnFormationButton(CPoint& pt);
Parameters
• CPoint& pt -
Remarks
6.41. CGameObject Class 1125
EEex Documentation, Release 1.0
CGameObject::OnSearchMap
virtual int CGameObject::OnSearchMap();
Return Value
Returns int
Remarks
CGameObject::RemoveFromArea
virtual void CGameObject::RemoveFromArea();
Remarks
CGameObject::Render
virtual void CGameObject::Render(CGameArea* __formal);
Parameters
• CGameArea* __formal -
Remarks
CGameObject::SetTarget
virtual void CGameObject::SetTarget(CPoint __formal);
Parameters
• CPoint __formal -
Remarks
CGameObject::SetAIType
virtual void CGameObject::SetAIType(CAIObjectType& typeAI,int dummy);
Parameters
• CAIObjectType& typeAI -
• int dummy -
Remarks
1126 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameObject::SetVertListPos
virtual void CGameObject::SetVertListPos(__POSITION* posVertList);
Parameters
• __POSITION* posVertList -
Remarks
CGameObject::SetVertListType
virtual void CGameObject::SetVertListType(unsigned char type);
Parameters
• unsigned char type -
Remarks
CGameObject::SetCursor
virtual void CGameObject::SetCursor(long nToolTip);
Parameters
• long nToolTip -
Remarks
6.42 CGameObjectArray Class
The structure used for this class is CGameObjectArray
Quick Refvoid CGameObjectArray::~CGameObjectArray()unsigned char CGameObjectArray::Add(long* index, CGameObject* ptr)unsigned char CGameObjectArray::ChangeEntry(long index, CGameObject* ptr)void CGameObjectArray::Clean()unsigned char CGameObjectArray::Delete(long index)virtual unsigned char __cdecl CGameObjectArray::GetDeny(long index, CGameObject** ptr)virtual unsigned char __cdecl CGameObjectArray::GetShare(long index, CGameObject** ptr)
6.42.1 Constructors
Name DescriptionCGameObjectArray::~CGameObjectArray Destroys a CGameObjectArray object
6.42. CGameObjectArray Class 1127
EEex Documentation, Release 1.0
CGameObjectArray::~CGameObjectArray
Destroys the CGameObjectArray object
void CGameObjectArray::~CGameObjectArray();
Remarks
Destroys the CGameObjectArray object
6.42.2 Methods
Name DescriptionCGameObjectArray::AddCGameObjectArray::ChangeEntryCGameObjectArray::CleanCGameObjectArray::DeleteCGameObjectArray::GetDenyCGameObjectArray::GetShare
CGameObjectArray::Add
unsigned char CGameObjectArray::Add(long* index,CGameObject* ptr);
Parameters
• long* index -
• CGameObject* ptr -
Return Value
Returns unsigned char
Remarks
CGameObjectArray::ChangeEntry
unsigned char CGameObjectArray::ChangeEntry(long index,CGameObject* ptr);
Parameters
• long index -
• CGameObject* ptr -
1128 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns unsigned char
Remarks
CGameObjectArray::Clean
void CGameObjectArray::Clean();
Remarks
CGameObjectArray::Delete
unsigned char CGameObjectArray::Delete(long index);
Parameters
• long index -
Return Value
Returns unsigned char
Remarks
CGameObjectArray::GetDeny
virtual unsigned char __cdecl CGameObjectArray::GetDeny(long index,CGameObject** ptr);
Parameters
• long index -
• CGameObject** ptr -
Return Value
Returns unsigned char
Remarks
6.42. CGameObjectArray Class 1129
EEex Documentation, Release 1.0
CGameObjectArray::GetShare
virtual unsigned char __cdecl CGameObjectArray::GetShare(long index,CGameObject** ptr);
Parameters
• long index -
• CGameObject** ptr -
Return Value
Returns unsigned char
Remarks
6.43 CGamePermission Class
The structure used for this class is CGamePermission
Quick Refvoid CGamePermission::CGamePermission()void CGamePermission::~CGamePermission()unsigned char CGamePermission::GetSinglePermission(int nPermission)void CGamePermission::SetSinglePermission(int nPermission, unsigned char bValue)
6.43.1 Constructors
Name DescriptionCGamePermission::CGamePermission Constructs a CGamePermission objectCGamePermission::~CGamePermission Destroys a CGamePermission object
CGamePermission::CGamePermission
Constructs a CGamePermission object
void CGamePermission::CGamePermission();
Remarks
Constructs a CGamePermission object
1130 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGamePermission::~CGamePermission
Destroys the CGamePermission object
void CGamePermission::~CGamePermission();
Remarks
Destroys the CGamePermission object
6.43.2 Methods
Name DescriptionCGamePermission::GetSinglePermissionCGamePermission::SetSinglePermission
CGamePermission::GetSinglePermission
unsigned char CGamePermission::GetSinglePermission(int nPermission);
Parameters
• int nPermission -
Return Value
Returns unsigned char
Remarks
CGamePermission::SetSinglePermission
void CGamePermission::SetSinglePermission(int nPermission,unsigned char bValue);
Parameters
• int nPermission -
• unsigned char bValue -
Remarks
6.44 CGameSave Class
Quick Refvoid CGameSave::SetInputMode(unsigned long mode)void CGameSaveCharacter::CGameSaveCharacter()
6.44. CGameSave Class 1131
EEex Documentation, Release 1.0
6.44.1 Methods
Name DescriptionCGameSave::SetInputModeCGameSaveCharacter::CGameSaveCharacter
CGameSave::SetInputMode
void CGameSave::SetInputMode(unsigned long mode);
Parameters
• unsigned long mode -
Remarks
The structure used for this class method is CGameSave
CGameSaveCharacter::CGameSaveCharacter
void CGameSaveCharacter::CGameSaveCharacter();
Remarks
The structure used for this class method is CGameSaveCharacter
6.45 CGameSound Class
The structure used for this class is CGameSound
Quick Refvoid CGameSound::CGameSound(CGameArea* pArea, CAreaFileSoundObject* pSoundObject)virtual unsigned char CGameSound::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)virtual unsigned char CGameSound::CompressTime(unsigned long deltaTime)virtual unsigned char CGameSound::DoAIUpdate(unsigned char active, long counter)void CGameSound::Marshal(CAreaFileSoundObject** pSoundObject)virtual void CGameSound::RemoveFromArea()void CGameSound::SetActive(int bActive)
6.45.1 Constructors
Name DescriptionCGameSound::CGameSound Constructs a CGameSound object
1132 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSound::CGameSound
Constructs a CGameSound object
void CGameSound::CGameSound(CGameArea* pArea,CAreaFileSoundObject* pSoundObject);
Parameters
• CGameArea* pArea -
• CAreaFileSoundObject* pSoundObject -
Remarks
Constructs a CGameSound object
6.45.2 Methods
Name DescriptionCGameSound::CanSaveGameCGameSound::CompressTimeCGameSound::DoAIUpdateCGameSound::MarshalCGameSound::RemoveFromAreaCGameSound::SetActive
CGameSound::CanSaveGame
virtual unsigned char CGameSound::CanSaveGame(unsigned long& strError,int restCheck,int combatCheck);
Parameters
• unsigned long& strError -
• int restCheck -
• int combatCheck -
Return Value
Returns unsigned char
Remarks
CGameSound::CompressTime
6.45. CGameSound Class 1133
EEex Documentation, Release 1.0
virtual unsigned char CGameSound::CompressTime(unsigned long deltaTime);
Parameters
• unsigned long deltaTime -
Return Value
Returns unsigned char
Remarks
CGameSound::DoAIUpdate
virtual unsigned char CGameSound::DoAIUpdate(unsigned char active,long counter);
Parameters
• unsigned char active -
• long counter -
Return Value
Returns unsigned char
Remarks
CGameSound::Marshal
void CGameSound::Marshal(CAreaFileSoundObject** pSoundObject);
Parameters
• CAreaFileSoundObject** pSoundObject -
Remarks
CGameSound::RemoveFromArea
virtual void CGameSound::RemoveFromArea();
Remarks
CGameSound::SetActive
1134 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CGameSound::SetActive(int bActive);
Parameters
• int bActive -
Remarks
6.46 CGameSpawning Class
The structure used for this class is CGameSpawning
Quick Refvoid CGameSpawning::CGameSpawning(CGameArea* pArea, CAreaFileRandomMonsterSpawningPoint*pSpawningObject)virtual unsigned char CGameSpawning::CanSaveGame(unsigned long& strError, int restCheck, int combat-Check)virtual unsigned char CGameSpawning::CompressTime(unsigned long deltaTime)virtual unsigned char CGameSpawning::DoAIUpdate(unsigned char active, long counter)unsigned long CGameSpawning::GetDifficulty(int nTotalCharacterLevels)unsigned long CGameSpawning::GetFrequency()unsigned long CGameSpawning::GetMaximum()unsigned long CGameSpawning::GetProbability(long probability)long CGameSpawning::GetRandomCreatureType()void CGameSpawning::Marshal(CAreaFileRandomMonsterSpawningPoint** pSpawningObject)virtual void CGameSpawning::RemoveFromArea()virtual void CGameSpawning::Render(CGameArea* pArea, CVidMode* pMode)void CGameSpawning::Spawn(CPoint& ptFacingTowards, int nTotalCharacterLevels)
6.46.1 Constructors
Name DescriptionCGameSpawning::CGameSpawning Constructs a CGameSpawning object
CGameSpawning::CGameSpawning
Constructs a CGameSpawning object
void CGameSpawning::CGameSpawning(CGameArea* pArea,CAreaFileRandomMonsterSpawningPoint* pSpawningObject);
Parameters
• CGameArea* pArea -
• CAreaFileRandomMonsterSpawningPoint* pSpawningObject -
6.46. CGameSpawning Class 1135
EEex Documentation, Release 1.0
Remarks
Constructs a CGameSpawning object
6.46.2 Methods
Name DescriptionCGameSpawning::CanSaveGameCGameSpawning::CompressTimeCGameSpawning::DoAIUpdateCGameSpawning::GetDifficultyCGameSpawning::GetFrequencyCGameSpawning::GetMaximumCGameSpawning::GetProbabilityCGameSpawning::GetRandomCreatureTypeCGameSpawning::MarshalCGameSpawning::RemoveFromAreaCGameSpawning::RenderCGameSpawning::Spawn
CGameSpawning::CanSaveGame
virtual unsigned char CGameSpawning::CanSaveGame(unsigned long& strError,int restCheck,int combatCheck);
Parameters
• unsigned long& strError -
• int restCheck -
• int combatCheck -
Return Value
Returns unsigned char
Remarks
CGameSpawning::CompressTime
virtual unsigned char CGameSpawning::CompressTime(unsigned long deltaTime);
Parameters
• unsigned long deltaTime -
1136 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns unsigned char
Remarks
CGameSpawning::DoAIUpdate
virtual unsigned char CGameSpawning::DoAIUpdate(unsigned char active,long counter);
Parameters
• unsigned char active -
• long counter -
Return Value
Returns unsigned char
Remarks
CGameSpawning::GetDifficulty
unsigned long CGameSpawning::GetDifficulty(int nTotalCharacterLevels);
Parameters
• int nTotalCharacterLevels -
Return Value
Returns unsigned long
Remarks
CGameSpawning::GetFrequency
unsigned long CGameSpawning::GetFrequency();
Return Value
Returns unsigned long
Remarks
CGameSpawning::GetMaximum
6.46. CGameSpawning Class 1137
EEex Documentation, Release 1.0
unsigned long CGameSpawning::GetMaximum();
Return Value
Returns unsigned long
Remarks
CGameSpawning::GetProbability
unsigned long CGameSpawning::GetProbability(long probability);
Parameters
• long probability -
Return Value
Returns unsigned long
Remarks
CGameSpawning::GetRandomCreatureType
long CGameSpawning::GetRandomCreatureType();
Return Value
Returns long
Remarks
CGameSpawning::Marshal
void CGameSpawning::Marshal(CAreaFileRandomMonsterSpawningPoint** pSpawningObject);
Parameters
• CAreaFileRandomMonsterSpawningPoint** pSpawningObject -
Remarks
CGameSpawning::RemoveFromArea
virtual void CGameSpawning::RemoveFromArea();
Remarks
1138 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSpawning::Render
virtual void CGameSpawning::Render(CGameArea* pArea,CVidMode* pMode);
Parameters
• CGameArea* pArea -
• CVidMode* pMode -
Remarks
CGameSpawning::Spawn
void CGameSpawning::Spawn(:ref:`CPoint<CPoint>`\& ptFacingTowards,int nTotalCharacterLevels);
Parameters
• CPoint& ptFacingTowards -
• int nTotalCharacterLevels -
Remarks
6.47 CGameSprite Class
• Overview
• Quick Reference
• Constructors
• Methods
6.47.1 Overview
Note: The CGameSprite class handles game sprites
The structure used for this class is CGameSprite
6.47.2 Quick Reference
6.47. CGameSprite Class 1139
EEex Documentation, Release 1.0
Quick Refvoid CGameSprite::CGameSprite()void CGameSprite::CGameSprite(unsigned char* pCreature, long creatureSize, unsigned short type, unsigned long expirationTime, unsigned short huntingRange, unsigned short followRange, unsigned long timeOfDayVisible, CPoint startPos, unsigned short facing, int copyScript)virtual void CGameSprite::~CGameSprite()virtual void CGameSprite::AIUpdate()void CGameSprite::AIUpdateFly()void CGameSprite::AIUpdateWalk()void CGameSprite::AddBlood(short nHeight, short nDirection, short nType)void CGameSprite::AddClassAbilities(unsigned char nClass, short numLevels, int bDisplayFeedback)virtual void CGameSprite::AddEffect(CGameEffect* pEffect, unsigned char list, int noSave, int immediateResolve)int CGameSprite::AddItemBags(CItem& cItem, short slotNum)int CGameSprite::AddKnownSpell(CResRef & cResSpell, int nSpellLevel, CTypedPtrList<CPtrList,CCreatureFileKnownSpell *>* pKnownList, unsigned char nMagicType)int CGameSprite::AddKnownSpellMage(CResRef & cResSpell, int nSpellLevel)int CGameSprite::AddKnownSpellPriest(CResRef & cResSpell, int nSpellLevel)void CGameSprite::AddNewSpecialAbilities(CDerivedStats& OldDStats, int bDisplayFeedback)void CGameSprite::AddNewSpellsPriest()void CGameSprite::AddObjectSearch(CPoint& point, unsigned char sourceSide, unsigned char personalSpaceRange, int bBumpable, int checkIfRemoved)void CGameSprite::AddPortraitIcon(int icon)void CGameSprite::AddReplacementToArea(CGameArea* pNewArea, CPoint ptPos, long posZ, unsigned char listType, __POSITION* vertListPos, unsigned char bInfravision)void CGameSprite::AddSpecialAbility(CResRef & cResInnateSpell, int feedBack)virtual void __cdecl CGameSprite::AddStatToRating(CArray<StatRating,StatRating &>& stats, float& totalRating, CString statName, float value) = 0virtual void CGameSprite::AddToArea(CGameArea* pNewArea, CPoint& pos, long posZ, unsigned char listType)void CGameSprite::AddVVC(CResRef & res)void CGameSprite::AddVVCInEffect(CResRef res)CPoint CGameSprite::AdjustTargetFollowTheLeader(long*& pPath, long& nPath, short groupPosition, unsigned char& noPathLeft)int CGameSprite::AllowSpecialStates()short CGameSprite::Ally()int CGameSprite::Animate()short CGameSprite::AnkhegEmerge()short CGameSprite::AnkhegHide()void CGameSprite::ApplyCastingEffect(CSpell* pSpell, Spell_ability_st* ability, CPoint& target)void CGameSprite::ApplyCastingEffectPost(CSpell* pSpell, Spell_ability_st* ability)void CGameSprite::ApplyCriticals(CGameSprite* target, int leftHand, int itemType, int attackType, int hitOrMiss)void CGameSprite::ApplyItem(CResRef itemName, int slot, int abNo)virtual void CGameSprite::ApplyTriggers()short CGameSprite::Attack(CGameSprite* target)short CGameSprite::AttackReevaluate(int bForceNewTarget)void CGameSprite::ArenaSetUp()virtual void CGameSprite::AutoPause(unsigned long type)short CGameSprite::BashDoor(CGameAIBase* pObject)short CGameSprite::BattleSong()short CGameSprite::Berserk()unsigned char CGameSprite::CanChangeWeapon()int CGameSprite::CanEquipRanged()virtual unsigned char CGameSprite::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)long CGameSprite::CalculateHealingPotential(long nMaxHitPoints)unsigned char CGameSprite::CanSeeInfra()int CGameSprite::CanSpeak(int ignoreDeath, unsigned long& ref)int CGameSprite::CanWriteSpellScroll(CGameEffect* pEffect)short CGameSprite::ChangeAnimation()
Continued on next page
1140 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 16 – continued from previous pagevoid CGameSprite::ChangeDirection()void CGameSprite::CheckBerserkActive()int CGameSprite::CheckBumpable()int CGameSprite::CheckCastingRange(CSpell* pSpell, CPoint& target)void CGameSprite::CheckCutSceneStateOverride()void CGameSprite::CheckCombatStats()void CGameSprite::CheckCombatStatsHaste()void CGameSprite::CheckCombatStatsWeapon(CItem* curWeapon, int offhand)int CGameSprite::CheckDialogWait()int CGameSprite::CheckEffect(CGameEffect* pEffect)void CGameSprite::CheckExpiredWeapons()void CGameSprite::CheckExtraDestruction()void CGameSprite::CheckFatigue()void CGameSprite::CheckForBerserkStage2()int CGameSprite::CheckForDead()void CGameSprite::CheckForDialogWaitCancel()void CGameSprite::CheckForForcedDialogEnd(int overrideAction)void CGameSprite::CheckHappiness()int CGameSprite::CheckIfUsedUp(short slotNum, short abilityNum)void CGameSprite::CheckIfVisible()int CGameSprite::CheckLauncherType(Item_ability_st* curAbility, CItem* pLauncher)void CGameSprite::CheckLoadState()CGameDialogSprite* CGameSprite::CheckLoadedBanter(CResRef & res)CGameDialogSprite* CGameSprite::CheckLoadedDialog(CResRef & res)void CGameSprite::CheckSleeping()void CGameSprite::ContingencyCheck()void CGameSprite::CheckModal()int CGameSprite::CheckMorale()void CGameSprite::CheckMoveForCutScenes()void CGameSprite::CheckPuppetMaster()void CGameSprite::CheckQuickLists(CAbilityId& ab, short changeAmount, int remove, int removeSpellIfZero)void CGameSprite::CheckReputation(int nForcedRep)void CGameSprite::CheckSevenEyes(CGameEffect*& pEffect)void CGameSprite::CheckSequence(unsigned char& sequence)void CGameSprite::CheckSpellLoss()void CGameSprite::CheckStatsChange()void CGameSprite::CheckToolTipItem(unsigned char buttonNum)virtual void CGameSprite::ClearAI(unsigned char setSequence)void CGameSprite::ClearDialogActions()void CGameSprite::ClearStoredPaths()void CGameSprite::CleanUpTempSprites(CGameSprite* pTempSprite, int nInventoryId, CItem* pTestingItem)int CGameSprite::ClearBumpPath(CPoint& start, CPoint& goal)void CGameSprite::ClearMarshal(int unequip)void CGameSprite::CombineActiveInactiveProficiency(int nProficiencyType)void CGameSprite::CombineAllActiveInactiveProficiencies()virtual unsigned char CGameSprite::CompressTime(unsigned long deltaTime)int CGameSprite::ConcentrationFailed()int CGameSprite::ControlledByPlayer()CGameSprite* CGameSprite::Copy(int bMarkItemsAsNonDroppable, int copyNonDroppable, int copyEffects, int copyScripts)unsigned long CGameSprite::CountItemBags(CString& nameIn)
Continued on next page
6.47. CGameSprite Class 1141
EEex Documentation, Release 1.0
Table 16 – continued from previous pageshort CGameSprite::CountItemPersonal(CString& nameIn)CGameEffectDamage* CGameSprite::Damage(CItem* curWeaponIn, CItem* pLauncher, long curAttackNum, int criticalDamage, CAIObjectType& type, short facing, short myFacing, CGameSprite* target, int lastSwing)virtual void CGameSprite::DebugDump(CString& message, unsigned char bEchoToScreen)void CGameSprite::DecodeSwingSound(CItem* pItem, CItem* pLauncher)void CGameSprite::DestroyItemInSlot(long slot, int checkPaw)short CGameSprite::Dialogue(CGameSprite* target)int CGameSprite::DisableOffhand(short itemType)void CGameSprite::DisplayTextRef(unsigned long nameRef, unsigned long text, unsigned long nameColor, unsigned long textColor)virtual unsigned char CGameSprite::DoAIUpdate(unsigned char active, long counter)void CGameSprite::DoAction(int sequenceCheck)short CGameSprite::DropInventory(unsigned char bDestroyInventory, int bPackOnly)short CGameSprite::DropItem()short CGameSprite::DropItem(short slotNum, CPoint dropPoint)short CGameSprite::DropItem(CItem* pItem, CPoint dropPoint)virtual int CGameSprite::DoesIntersect(CRect rect)void CGameSprite::DoMoraleFailure()int CGameSprite::DrainChargesFromBags(CString& nameIn, long charges, short abilityNum)void CGameSprite::DropPath()void CGameSprite::DropSearchRequest()void CGameSprite::EndMoraleFailure()short CGameSprite::Enemy()void CGameSprite::Equip(short slotNum)void CGameSprite::EquipAll(int animationOnly)short CGameSprite::EquipItem()short CGameSprite::EquipMostDamagingMelee()short CGameSprite::EquipNextAmmo(CItem* pLauncher, CString OldAmmo)short CGameSprite::EquipRanged()short CGameSprite::EscapeArea(CGameAIBase* pObject)virtual int CGameSprite::EvaluateStatusTrigger(CAITrigger& inTrigger)virtual short CGameSprite::ExecuteAction()short CGameSprite::Face()short CGameSprite::FaceObject(CGameAIBase* pObject)short CGameSprite::FakeWalkToArea(CString areaName)void CGameSprite::FeedBack(unsigned long feedBackId, long int1, long int2, long int3, const unsigned long ref1, long int4, CString& stringIn)void CGameSprite::FetchCommonStrings()short CGameSprite::FillSlot()void CGameSprite::FilterSpecialAbilities()int CGameSprite::FindDamageEffect(CItem* curEquip, unsigned long abilityNum, unsigned long effectCount, unsigned long& effectAmount, unsigned long& numDice, unsigned long& diceSize)short CGameSprite::FindIdentifyItem()short CGameSprite::FindItemBags(CString& nameIn, long number, int checkForIdentified)short CGameSprite::FindItemPersonal(CString& nameIn, int number, int restrictToEquiped, int reallyRestrictToEquiped)short CGameSprite::FindTraps()void CGameSprite::FloatingHP(int force, unsigned char durationNew, unsigned char durationExisting)void CGameSprite::FloatingText(CString text, unsigned char durationNew, unsigned char durationExisting)short CGameSprite::Fly()short CGameSprite::Follow()short CGameSprite::FollowObjectFormation(CGameSprite* target)void CGameSprite::ForceVisible()short CGameSprite::Formation(CGameSprite* target)int CGameSprite::GetActiveProficiency(int nProficiencyType)
Continued on next page
1142 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 16 – continued from previous pageint CGameSprite::GetAbilityProjectileType(CAbilityId& abilityID, int level)CDerivedStats* CGameSprite::GetActiveStats()int CGameSprite::GetActiveWeaponStyleAndLevel(int& nLevel)virtual short CGameSprite::GetAttackRange()short CGameSprite::GetBackstabDamageMultiplier()virtual int CGameSprite::GetCanSeeInvisible()unsigned long CGameSprite::GetCarriedWeight()short CGameSprite::GetCasterLevel(CSpell* pSpell, int includeWildMage)unsigned char CGameSprite::GetChannel()virtual const int* __cdecl CGameSprite::GetColorArray(int nPickRange) = 0virtual int __cdecl CGameSprite::GetColorCount(int nPickRange) = 0short CGameSprite::GetDirection(CPoint& target)virtual short __cdecl CGameSprite::GetDirection(CPoint& ptStart, CPoint& ptTarget) = 0CString CGameSprite::GetExperience()CString CGameSprite::GetExperienceEntry(int nSubClass)virtual short CGameSprite::GetHelpRange()unsigned long CGameSprite::GetKit()unsigned long CGameSprite::GetKitIDS()unsigned long CGameSprite::GetKitMask()int CGameSprite::GetInactiveProficiency(int nProficiencyType)CGameButtonList* CGameSprite::GetInternalButtonList()CItem* CGameSprite::GetItemBags(CString& nameIn)CGameButtonList* CGameSprite::GetItemUsages(short slotNum, unsigned short buttonType, short abilityNum)CString CGameSprite::GetKitDescription()int CGameSprite::GetKnownSpellIndex(CResRef & cResSpell, CTypedPtrList<CPtrList,CCreatureFileKnownSpell *>* pKnownList)int CGameSprite::GetKnownSpellIndexMage(CResRef & cResSpell, int nSpellLevel)int CGameSprite::GetKnownSpellIndexPriest(CResRef & cResSpell, int nSpellLevel)CCreatureFileKnownSpell* CGameSprite::GetKnownSpellInnate(int nSpellLevel, int nKnownSpellIndex)CCreatureFileKnownSpell* CGameSprite::GetKnownSpellMage(int nSpellLevel, int nKnownSpellIndex)CCreatureFileKnownSpell* CGameSprite::GetKnownSpellPriest(int nSpellLevel, int nKnownSpellIndex)CItem* CGameSprite::GetLauncher(Item_ability_st* curAbility, short& launcherSlot)short CGameSprite::GetLauncherSlot(short slotNum, short abilityNum)short CGameSprite::GetLayOnHandsAmount()long CGameSprite::GetLength(long verbalConstant)unsigned long CGameSprite::GetMapScreenColor()long CGameSprite::GetMaxDamage(int offhand)int CGameSprite::GetMaxEncumbrance()CCreatureFileMemorizedSpell* CGameSprite::GetMemorizedSpellInnate(int nSpellLevel, int nMemorizedSpellIndex)CCreatureFileMemorizedSpell* CGameSprite::GetMemorizedSpellMage(int nSpellLevel, int nMemorizedSpellIndex)CCreatureFileMemorizedSpell* CGameSprite::GetMemorizedSpellPriest(int nSpellLevel, int nMemorizedSpellIndex)long CGameSprite::GetMinCasterLevel(long spellLevel, long nType)long CGameSprite::GetMinDamage(int offhand)CString& CGameSprite::GetName(int ignoreSTRREFON)unsigned long CGameSprite::GetNameRef()virtual void CGameSprite::GetNextWaypoint(CPoint* pt)void CGameSprite::GetNumInventoryPersonalSlots(int& nUsedSlots, int& nTotalSlots)short CGameSprite::GetNumQuickWeaponSlots()int CGameSprite::GetNumSounds(const unsigned char type, int& offset)int CGameSprite::GetNumSounds(int nOffset, int nMaxNum)CString CGameSprite::GetPortraitToolTipText()
Continued on next page
6.47. CGameSprite Class 1143
EEex Documentation, Release 1.0
Table 16 – continued from previous pageCGameButtonList* CGameSprite::GetQuickButtons(unsigned short buttonType, unsigned char existanceCheck)void CGameSprite::GetQuickWeapon(unsigned char buttonNum, CButtonData& buttonData)float CGameSprite::GetRating(CArray<StatRating,StatRating &>& stats)bool CGameSprite::GetRatingWithItem(float& rating, CString& ratingBreakdown, int nInventoryId)short CGameSprite::GetResistance(CGameSprite* target, Item_ability_st* curAttack)unsigned long CGameSprite::GetResistanceString(short nOffset)CString CGameSprite::GetSavingThrow(const unsigned long strName, const int nBaseValue, const int nDerivedValue)long CGameSprite::GetSecretDoorDetection()void CGameSprite::GetSelectedWeaponButton(CButtonData& buttonData)virtual unsigned long __cdecl CGameSprite::GetSkillHelp(unsigned char index) = 0virtual unsigned long __cdecl CGameSprite::GetSkillName(unsigned char index) = 0int CGameSprite::GetSkillValue(unsigned char index, unsigned char otherClass, int bBaseValue)unsigned char CGameSprite::GetSound(unsigned char soundID)void CGameSprite::GetStatBreakdown(CString* ACText, CString* HPText, CString* THAC0Text, CString* damageText)CString CGameSprite::GetStyleBonus(const int nProf, const int nLev)virtual long CGameSprite::GetTargetId()CGameObject* CGameSprite::GetTargetShare()virtual const unsigned char* CGameSprite::GetTerrainTable()long CGameSprite::GetTHAC0()virtual const unsigned char* CGameSprite::GetVisibleTerrainTable()virtual short CGameSprite::GetVisualRange()short CGameSprite::GetTurnUndeadLevel()CString CGameSprite::GetWeaponProficiency(const int nModifier, const unsigned long dwDescId, const unsigned long dwDescRef)short CGameSprite::GiveItem(CGameSprite* target)short CGameSprite::GivePartyAllEquipment()short CGameSprite::GroupAttack(CGameSprite* pTarget)int CGameSprite::HandleEffects()int CGameSprite::HandlePersistantEffects(long deltaT)unsigned char CGameSprite::HasItemTypeEquiped(unsigned short itemType, unsigned char checkForEquip)unsigned char CGameSprite::HasItemWithFlag(unsigned long flag, int ignoreDestructible)bool CGameSprite::HasWeaponType(int weaponType)int CGameSprite::HaveKnownSpell(CString& spellName)int CGameSprite::HaveSpell(CString& spellName)short CGameSprite::Help()short CGameSprite::Hide()unsigned char CGameSprite::Hit(CGameSprite* target, CItem* curWeaponIn, long curAttackNum, int& criticalDamage, int leftHand)void CGameSprite::InitBlur()void CGameSprite::InitQuickItemData(short itemNum, short abilityNum, CButtonData& buttonData)void CGameSprite::InitQuickSpellData(CResRef spellId, CButtonData& buttonData)void CGameSprite::InitializeWalkingSound()char CGameSprite::InDark()int CGameSprite::InDialog()int CGameSprite::InPersonalRadius(CPoint& pt)short CGameSprite::Interact(CGameSprite* target)int CGameSprite::IsOnPortraitIconList(int icon)virtual int CGameSprite::IsOver(CPoint& pt)int CGameSprite::IsSpecialist()int CGameSprite::IsSpellSchool(unsigned char spellSchool)short CGameSprite::JoinParty(bool bReplaceGlobal)short CGameSprite::JumpThroughTransition(CGameTrigger* pTrigger, long delay)
Continued on next page
1144 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 16 – continued from previous pageshort CGameSprite::JumpToArea(CString areaName, CPoint& dest, short facingDirection, short delay, int allowNullArea, CPoint& source)short CGameSprite::JumpToPoint()short CGameSprite::JumpToPoint(CPoint dest, int spriteUpdate, int allowPathToContinue, int clearBump, int forcePoint)short CGameSprite::Leader()short CGameSprite::LeaveArea()void CGameSprite::LeaveAreaGlobal(CString& sArea, CPoint& ptStart)short CGameSprite::LeaveAreaLUA()short CGameSprite::LeaveAreaLUA(CString& areaName, CPoint ptStart, short facingDirection, CResRef parchment, long coordinate)short CGameSprite::LeaveAreaLUAEntry()short CGameSprite::LeaveAreaName()short CGameSprite::LeaveParty()void CGameSprite::LoadAreaInformation(CAreaFileCreature* pCreature)void CGameSprite::LoadProjectile(CProjectile* proj, CItem* weapon, short abilityNum, CPoint& ptTarget, long targetId)void CGameSprite::MainActionPicking()void CGameSprite::MakeGlobal(bool bReplace)void CGameSprite::MakeLocal()void CGameSprite::Marshal(SSavedGamePartyCreatureReferenceWrapper& creatureWrapper, unsigned char bNetworkMessage)void CGameSprite::Marshal(unsigned char** pCreature, long* creatureSize, unsigned short* facing, unsigned char bIncludeAllEffects)void CGameSprite::Marshal(SAreaFileCreatureWrapper* pCreatureWrapper)void CGameSprite::MarshalMessage(unsigned char** pData, unsigned long* dwSize)void CGameSprite::MemorizeAllSpellsInnate()void CGameSprite::MemorizeAllSpellsMage()void CGameSprite::MemorizeAllSpellsPriest()int CGameSprite::MemorizeSpell(int nKnownSpellIndex, int& nMemorizedSpellIndex, CTypedPtrList<CPtrList,CCreatureFileKnownSpell *>* pKnownList, CTypedPtrList<CPtrList,CCreatureFileMemorizedSpell *>* pMemorizedList, CCreatureFileMemorizedSpellLevel* pMemorizedLevel, CCreatureFileMemorizedSpellLevel* pDerivedLevel)int CGameSprite::MemorizeSpellInnate(int nSpellLevel, int nKnownSpellIndex, int& nMemorizedSpellIndex)int CGameSprite::MemorizeSpellMage(int nSpellLevel, int nKnownSpellIndex, int& nMemorizedSpellIndex)int CGameSprite::MemorizeSpellPriest(int nSpellLevel, int nKnownSpellIndex, int& nMemorizedSpellIndex)void CGameSprite::MoveOntoArea(CGameArea* pArea, CPoint& dest, short facingDirection)int CGameSprite::MoveToBack()int CGameSprite::MoveToFront()short CGameSprite::MoveToObject(CGameAIBase* target)short CGameSprite::MoveToOffset()short CGameSprite::MoveToPoint(CPoint& dest)short CGameSprite::MoveToPoint()void CGameSprite::MultiplayerUpdate()void CGameSprite::NightmareDowngrade()void CGameSprite::NightmareUpgrade()void CGameSprite::NullActionProcess()virtual void CGameSprite::OnActionButton(CPoint& pt)virtual void CGameSprite::OnActionRemoval(CAIAction& curAction)void CGameSprite::OnDeath(int imprisonment)short CGameSprite::OneSwing()virtual void CGameSprite::OnFormationButton(CPoint& pt)void CGameSprite::OnLightningStrike()int CGameSprite::OnScreen(int bExactCheck)virtual int CGameSprite::OnSearchMap()int CGameSprite::Orderable(int bIgnoreControl)int CGameSprite::OutOfControl()short CGameSprite::Panic()int CGameSprite::ParseAbilityHeader(const const char* equipName, const const char* lowerDice, CItem* curEquip, unsigned long abilityNum, Item_ability_st* pAbility, CString& damageText)
Continued on next page
6.47. CGameSprite Class 1145
EEex Documentation, Release 1.0
Table 16 – continued from previous pageint CGameSprite::PartyHeal(long iSprite, int nHP, int bFirstHeal)short CGameSprite::PickLock(CGameAIBase* pObject)short CGameSprite::PickPockets(CGameSprite* target)short CGameSprite::PickUpItem()short CGameSprite::PlayDead()void CGameSprite::PlayDialogSound(CGameSprite* pNPC)void CGameSprite::PlaySound(CResRef & res, int bUseVoiceChannel)void CGameSprite::PlaySound(unsigned char soundID, int showText, int showCircle, int overrideOption)short CGameSprite::PlayerDialog(CGameSprite* target)short CGameSprite::PolymorphCopy(CGameSprite* pSprite)void CGameSprite::PostMoveCharacterFromOverflowToParty()virtual void CGameSprite::ProcessAI()int CGameSprite::ProcessEffectList(int bCheckSpellLoss)virtual void CGameSprite::ProcessPendingTriggers(int overrideOnly)short CGameSprite::Proficiencies(CItem* curWeapon)short CGameSprite::ProtectObject(CGameAIBase* target)short CGameSprite::ProtectPoint()void CGameSprite::QuickLoad(unsigned char* pCreature, long creatureSize)short CGameSprite::RandomFly()short CGameSprite::RandomWalk()short CGameSprite::RandomWalkContinuous()int CGameSprite::ReadyCursor()void CGameSprite::ReadyItem(short buttonNum, unsigned char firstCall)void CGameSprite::ReadyItem(CButtonData button, unsigned char firstCall)void CGameSprite::ReadyOffInternalList(CButtonData button, unsigned char firstCall)void CGameSprite::ReadySpell(short buttonNum, unsigned char firstCall)void CGameSprite::ReadySpell(CButtonData button, unsigned char firstCall)short CGameSprite::Recoil()void CGameSprite::RemoveBags()void CGameSprite::RemoveClassAbilities(unsigned char nClass, short numLevels)void CGameSprite::RemoveAllSpellsInnate()void CGameSprite::RemoveAllSpellsMage()void CGameSprite::RemoveAllSpellsPriest()virtual void CGameSprite::RemoveFromArea()int CGameSprite::RemoveKnownSpell(CResRef & cResSpell, CTypedPtrList<CPtrList,CCreatureFileKnownSpell *>* pKnownList)int CGameSprite::RemoveKnownSpellInnate(CResRef & cResSpell, int nSpellLevel)int CGameSprite::RemoveKnownSpellMage(CResRef & cResSpell, int nSpellLevel)int CGameSprite::RemoveKnownSpellPriest(CResRef & cResSpell, int nSpellLevel)void CGameSprite::RemoveNewSpecialAbilities(CDerivedStats& OldDStats)void CGameSprite::RemoveObjectSearch(CPoint& point, unsigned char sourceSide, unsigned char personalSpaceRange, int bBumpable)void CGameSprite::RemovePortraitIcon(int icon)void CGameSprite::RemoveReplacementFromArea()void CGameSprite::RemoveSanctuary()void CGameSprite::RemoveSpecialAbility(CResRef & cResInnateSpell)short CGameSprite::RemoveSpell()short CGameSprite::RemoveSpell(CString& spellName)short CGameSprite::RemoveTraps(CGameAIBase* pObject)void CGameSprite::RemoveVVC(CResRef & res, unsigned char level)virtual void CGameSprite::Render(CGameArea* pArea, CVidMode* pVidMode)void CGameSprite::RenderActions()
Continued on next page
1146 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 16 – continued from previous pagevoid CGameSprite::RenderDamageArrow(CGameArea* pArea, CVidMode* pVidMode)void CGameSprite::RenderHealthBar(CVidMode* pVidMode)void CGameSprite::RenderMarkers(CVidMode* pVidMode)void CGameSprite::RenderMirrorImage(int placement, CRect& rFX, CRect& rGCBounds, CRect& rViewRect, CPoint& ptReference, CSearchBitmap* pSearch, CVisibilityMap* pVisibility, CVidMode* pVidMode, unsigned long& rgbTint, unsigned char& bDithered, unsigned char& bFadeOut, unsigned long& dwRenderFlags)void CGameSprite::RenderPortrait(CPoint& cpRenderPosition, CSize& szControl, int bPressed, int reorderHighlight, int selectFromMarker, CRect& rClip, int renderSelection)void CGameSprite::RenderSpriteCover(CVidMode* pVidMode, CVidCell* pVidCell, unsigned long dwRenderFlags, unsigned char bBrightest, unsigned char nTranslucency, int bFadeOut, int bDithered)void CGameSprite::RenderSpriteEffect(CVidMode* pVidMode, int bFadeOut, int bDithered)void CGameSprite::RenderToMapScreen(CRect& rClipBase, CPoint& ptCharPos)void CGameSprite::RenderTrackingArrow(CGameArea* pArea, CVidMode* pVidMode)int CGameSprite::ReplaceItemBags(CString& oldItem, CString& newItem, short slotNum)short CGameSprite::ResetAIScript()void CGameSprite::ResolveInstants(int dropNonInstants)void CGameSprite::ResolvePausedAction(CAIAction* curAction, __POSITION* pos)void CGameSprite::ResolveTargetPoint(CAIAction* curAction, __POSITION* pos)short CGameSprite::Rest(int bMemorizeSpells, int bSaveIfAppropriate)virtual void CGameSprite::ResetAIType()virtual void CGameSprite::ResetAITypeLive()void CGameSprite::RestoreActiveAI()short CGameSprite::RunAwayFrom(CGameAIBase* target)void CGameSprite::Select()short CGameSprite::SelectWeaponAbility()int CGameSprite::SelectWeaponAbility(unsigned char nWeapon, unsigned char nAbility, unsigned char checkCursed, unsigned char attemptReequip)virtual void CGameSprite::SetAIType(CAIObjectType& typeAI, int updateLive, int updateStart)void CGameSprite::SetActiveAI(int active)void CGameSprite::SetActiveImprisonment(int active)void CGameSprite::SetActiveProficiency(int nProficiencyType, int nValue, int forceRefresh)void CGameSprite::SetAllSpellsMemorized()short CGameSprite::SetAtOffset(unsigned long stat, unsigned long value, unsigned long modifyType)void CGameSprite::SetBumped(CPoint& pt)void CGameSprite::SetCharacterToolTip()void CGameSprite::SetColor(int nPickRange, int nIndex)virtual void CGameSprite::SetCurrAction(CAIAction& action)virtual void CGameSprite::SetCursor(long nToolTip)short CGameSprite::SetDialog()void CGameSprite::SetDialog(CResRef & cResDialog)void CGameSprite::SetDialogState(int state, long type)void CGameSprite::SetDirection(short direction)void CGameSprite::SetFacing(short direction)void CGameSprite::SetFootstepChannel()short CGameSprite::SetItemFlags()void CGameSprite::SetInactiveProficiency(int nProficiencyType, int nValue, int forceRefresh)void CGameSprite::SetLuaAttr(CString attr, unsigned long strRef, int current, int base, int extra, int extraBase)void CGameSprite::SetLuaOrderedPro(int index, unsigned long strRef, CString current, unsigned long helpString)void CGameSprite::SetLuaPro(CString attr, unsigned long strRef, CString current, unsigned long helpString)void CGameSprite::SetMaxMemorizedSpellsInnate(int nSpellLevel, int nMaxSpells)void CGameSprite::SetMaxMemorizedSpellsMage(int nSpellLevel, int nMaxSpells)void CGameSprite::SetMaxMemorizedSpellsPriest(int nSpellLevel, int nMaxSpells)void CGameSprite::SetMemorizedFlag(CSpell* pSpell, int flag)void CGameSprite::SetModalState(unsigned char modalState, int bUpdateToolbar)void CGameSprite::SetMonkAbilities()
Continued on next page
6.47. CGameSprite Class 1147
EEex Documentation, Release 1.0
Table 16 – continued from previous pagevoid CGameSprite::SetPath(long* pPath, short nPath)void CGameSprite::SetResRef(CResRef & resref)void CGameSprite::SetEntangle(unsigned char bEntangle)void CGameSprite::SetGreasePool(unsigned char bGreasePool)void CGameSprite::SetInvisible(unsigned char bInvisible)void CGameSprite::SetInvisibleImproved(unsigned char bInvisible)void CGameSprite::SetMinorGlobe(unsigned char bMinorGlobe)void CGameSprite::SetQuickItem(unsigned char buttonNum, CButtonData buttonData)void CGameSprite::SetQuickWeapon(unsigned char buttonNum, CButtonData buttonData)void CGameSprite::SetSanctuary(unsigned char bSanctuary)void CGameSprite::SetShieldGlobe(unsigned char bShieldGlobe)void CGameSprite::SetWebHold(unsigned char bWebHold)virtual void CGameSprite::SetScript(short level, CAIScript* script)void CGameSprite::SetSelectedWeaponButton(short buttonNum)void CGameSprite::SetSequence(short sequence)void CGameSprite::SetSkillValue(unsigned char index, unsigned char value)void CGameSprite::SetStoreState(int state)void CGameSprite::SetTarget(CSearchRequest* oldSearchRequest, int collisionPath, unsigned char frontList)virtual void CGameSprite::SetTarget(CPoint& target, int collisionPath)void CGameSprite::SetTargetFly(unsigned char circleType, unsigned char facing, long radius)void CGameSprite::SetUpBaalAbilities(int enhanced)short CGameSprite::SetVisualRange(short newVisualRange)unsigned char CGameSprite::ShamanSpellCount(long nLevel, CResRef res)void CGameSprite::ShamanSpellDecrement(long nLevel, CResRef & res, int ignoreProvidedRes)void CGameSprite::ShamanSpellRememorize(long nLevel, CResRef & res, int ignoreProvidedRes)void CGameSprite::Shatter(unsigned char shatterType)int CGameSprite::ShouldAvertCriticalHit()unsigned char CGameSprite::SorcererSpellCount(long nLevel, CResRef res)void CGameSprite::SorcererSpellDecrement(long nLevel, CResRef & res, int ignoreProvidedRes)void CGameSprite::SorcererSpellRememorize(long nLevel, CResRef & res, int ignoreProvidedRes)virtual void __cdecl CGameSprite::SortColors() = 0void CGameSprite::SortMemorizedSpells()int CGameSprite::SpecialStateProcessing()short CGameSprite::Spell(CGameAIBase* target)short CGameSprite::SpellPoint()short CGameSprite::StartDialog(CGameSprite* target)short CGameSprite::StartStore(CGameSprite* pSprite)void CGameSprite::SwapAllActiveInactiveProficiencies()short CGameSprite::Swing(CGameSprite* target)void CGameSprite::StartSpriteEffect(unsigned char spriteEffect, unsigned char intensityLevel, unsigned char effectDuration)int CGameSprite::SuppressHitPointsDisplay()void CGameSprite::TakeCreatureItems(CGameSprite* pSprite, int Type)short CGameSprite::TakeItemBags(CString& nameIn, long number, short slotNum)int CGameSprite::TryToTurn(CGameSprite* pSprite)short CGameSprite::Turn()void CGameSprite::UnapplySpell(CResRef & ref)void CGameSprite::Unequip(short slotNum)void CGameSprite::UnequipAll(int animationOnly)void CGameSprite::Unmarshal(unsigned char* pCreature, long creatureSize, unsigned short facing)void CGameSprite::Unmarshal(CSavedGamePartyCreature* pCreature, unsigned char bPartyMember, unsigned char bProgressBarInPlace)
Continued on next page
1148 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 16 – continued from previous pagevoid CGameSprite::UnmarshalScripts()void CGameSprite::UnmemorizeAllSpellsMage()void CGameSprite::UnmemorizeAllSpellsPriest()void CGameSprite::UnmemorizeAllOfResSpellInnate(int nSpellLevel, CResRef resSpell)void CGameSprite::UnmemorizeAllOfResSpellMage(int nSpellLevel, CResRef resSpell)void CGameSprite::UnmemorizeAllOfResSpellPriest(int nSpellLevel, CResRef resSpell)int CGameSprite::UnmemorizeSpellInnate(int nSpellLevel, int nMemorizedSpellIndex)int CGameSprite::UnmemorizeSpellMage(int nSpellLevel, int nMemorizedSpellIndex)int CGameSprite::UnmemorizeSpellPriest(int nSpellLevel, int nMemorizedSpellIndex)void CGameSprite::Unselect()void CGameSprite::UpdateAOE(CAbilityId& abilityID)void CGameSprite::UpdateActive()void CGameSprite::UpdateLuaEquipment()void CGameSprite::UpdateLuaSpells()void CGameSprite::UpdateLuaStats()void CGameSprite::UpdateQuickItemData(int nSlot)void CGameSprite::UpdateSpriteEffect()virtual void CGameSprite::UpdateTarget(CGameObject* target)void CGameSprite::UpdateToolbar(unsigned char requiredState)void CGameSprite::UpdateVisibleGroundItems()short CGameSprite::UseContainer()short CGameSprite::UseDoor()short CGameSprite::UseItem(CGameAIBase* target)short CGameSprite::UseItemPoint()void CGameSprite::VerbalConstant(long verbalConstant, int overHead)short CGameSprite::WaitInLine()short CGameSprite::WalkToArea(CString areaName)int CGameSprite::WeaponCanDamage(CGameSprite* target, int leftorright)int CGameSprite::WeaponEffectiveVs(CGameSprite* target, int leftorright)short CGameSprite::WildSpell(CSpell* pSpell, CGameAIBase* pTarget, CPoint& target, int addLevel)
6.47.3 Constructors
Name DescriptionCGameSprite::CGameSprite Constructs a CGameSprite objectCGameSprite::CGameSprite Destroys a CGameSprite object
CGameSprite::CGameSprite
Constructs a CGameSprite object
void CGameSprite::CGameSprite();
Remarks
Constructs a CGameSprite object
6.47. CGameSprite Class 1149
EEex Documentation, Release 1.0
CGameSprite::CGameSprite
Constructs a CGameSprite object
void CGameSprite::CGameSprite(unsigned char* pCreature,
long creatureSize,unsigned short type,unsigned long expirationTime,unsigned short huntingRange,unsigned short followRange,unsigned long timeOfDayVisible,CPoint startPos,unsigned short facing,int copyScript);
Parameters
• unsigned char* pCreature -
• long creatureSize -
• unsigned short type -
• unsigned long expirationTime -
• unsigned short huntingRange -
• unsigned short followRange -
• unsigned long timeOfDayVisible -
• CPoint startPos -
• unsigned short facing -
• int copyScript -
Remarks
Constructs a CGameSprite object
CGameSprite::~CGameSprite
Destroys the CGameSprite object
virtual void CGameSprite::~CGameSprite();
Remarks
Destroys the CGameSprite object
6.47.4 Methods
1150 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Name DescriptionCGameSprite::AIUpdateCGameSprite::AIUpdateFlyCGameSprite::AIUpdateWalkCGameSprite::AddBloodCGameSprite::AddClassAbilitiesCGameSprite::AddEffectCGameSprite::AddItemBagsCGameSprite::AddKnownSpellCGameSprite::AddKnownSpellMageCGameSprite::AddKnownSpellPriestCGameSprite::AddNewSpecialAbilitiesCGameSprite::AddNewSpellsPriestCGameSprite::AddObjectSearchCGameSprite::AddPortraitIconCGameSprite::AddReplacementToAreaCGameSprite::AddSpecialAbilityCGameSprite::AddStatToRatingCGameSprite::AddToAreaCGameSprite::AddVVCCGameSprite::AddVVCInEffectCGameSprite::AdjustTargetFollowTheLeaderCGameSprite::AllowSpecialStatesCGameSprite::AllyCGameSprite::AnimateCGameSprite::AnkhegEmergeCGameSprite::AnkhegHideCGameSprite::ApplyCastingEffectCGameSprite::ApplyCastingEffectPostCGameSprite::ApplyCriticalsCGameSprite::ApplyItemCGameSprite::ApplyTriggersCGameSprite::AttackCGameSprite::AttackReevaluateCGameSprite::ArenaSetUpCGameSprite::AutoPauseCGameSprite::BashDoorCGameSprite::BattleSongCGameSprite::BerserkCGameSprite::CanChangeWeaponCGameSprite::CanEquipRangedCGameSprite::CanSaveGameCGameSprite::CalculateHealingPotentialCGameSprite::CanSeeInfraCGameSprite::CanSpeakCGameSprite::CanWriteSpellScrollCGameSprite::ChangeAnimationCGameSprite::ChangeDirectionCGameSprite::CheckBerserkActiveCGameSprite::CheckBumpable
Continued on next page
6.47. CGameSprite Class 1151
EEex Documentation, Release 1.0
Table 17 – continued from previous pageCGameSprite::CheckCastingRangeCGameSprite::CheckCutSceneStateOverrideCGameSprite::CheckCombatStatsCGameSprite::CheckCombatStatsHasteCGameSprite::CheckCombatStatsWeaponCGameSprite::CheckDialogWaitCGameSprite::CheckEffectCGameSprite::CheckExpiredWeaponsCGameSprite::CheckExtraDestructionCGameSprite::CheckFatigueCGameSprite::CheckForBerserkStage2CGameSprite::CheckForDeadCGameSprite::CheckForDialogWaitCancelCGameSprite::CheckForForcedDialogEndCGameSprite::CheckHappinessCGameSprite::CheckIfUsedUpCGameSprite::CheckIfVisibleCGameSprite::CheckLauncherTypeCGameSprite::CheckLoadStateCGameSprite::CheckLoadedBanterCGameSprite::CheckLoadedDialogCGameSprite::CheckSleepingCGameSprite::ContingencyCheckCGameSprite::CheckModalCGameSprite::CheckMoraleCGameSprite::CheckMoveForCutScenesCGameSprite::CheckPuppetMasterCGameSprite::CheckQuickListsCGameSprite::CheckReputationCGameSprite::CheckSevenEyesCGameSprite::CheckSequenceCGameSprite::CheckSpellLossCGameSprite::CheckStatsChangeCGameSprite::CheckToolTipItemCGameSprite::ClearAICGameSprite::ClearDialogActionsCGameSprite::ClearStoredPathsCGameSprite::CleanUpTempSpritesCGameSprite::ClearBumpPathCGameSprite::ClearMarshalCGameSprite::CombineActiveInactiveProficiencyCGameSprite::CombineAllActiveInactiveProficienciesCGameSprite::CompressTimeCGameSprite::ConcentrationFailedCGameSprite::ControlledByPlayerCGameSprite::CopyCGameSprite::CountItemBagsCGameSprite::CountItemPersonalCGameSprite::DamageCGameSprite::DebugDump
Continued on next page
1152 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 17 – continued from previous pageCGameSprite::DecodeSwingSoundCGameSprite::DestroyItemInSlotCGameSprite::DialogueCGameSprite::DisableOffhandCGameSprite::DisplayTextRefCGameSprite::DoAIUpdateCGameSprite::DoActionCGameSprite::DropInventoryCGameSprite::DropItemCGameSprite::DoesIntersectCGameSprite::DoMoraleFailureCGameSprite::DrainChargesFromBagsCGameSprite::DropPathCGameSprite::DropSearchRequestCGameSprite::EndMoraleFailureCGameSprite::EnemyCGameSprite::EquipCGameSprite::EquipAllCGameSprite::EquipItemCGameSprite::EquipMostDamagingMeleeCGameSprite::EquipNextAmmoCGameSprite::EquipRangedCGameSprite::EscapeAreaCGameSprite::EvaluateStatusTriggerCGameSprite::ExecuteActionCGameSprite::FaceCGameSprite::FaceObjectCGameSprite::FakeWalkToAreaCGameSprite::FeedBackCGameSprite::FetchCommonStringsCGameSprite::FillSlotCGameSprite::FilterSpecialAbilitiesCGameSprite::FindDamageEffectCGameSprite::FindIdentifyItemCGameSprite::FindItemBagsCGameSprite::FindItemPersonalCGameSprite::FindTrapsCGameSprite::FloatingHPCGameSprite::FloatingTextCGameSprite::FlyCGameSprite::FollowCGameSprite::FollowObjectFormationCGameSprite::ForceVisibleCGameSprite::FormationCGameSprite::GetActiveProficiencyCGameSprite::GetAbilityProjectileTypeCGameSprite::GetActiveStatsCGameSprite::GetActiveWeaponStyleAndLevelCGameSprite::GetAttackRangeCGameSprite::GetBackstabDamageMultiplier
Continued on next page
6.47. CGameSprite Class 1153
EEex Documentation, Release 1.0
Table 17 – continued from previous pageCGameSprite::GetCanSeeInvisibleCGameSprite::GetCarriedWeightCGameSprite::GetCasterLevelCGameSprite::GetChannelCGameSprite::GetColorArrayCGameSprite::GetColorCountCGameSprite::GetDirectionCGameSprite::GetExperienceCGameSprite::GetExperienceEntryCGameSprite::GetHelpRangeCGameSprite::GetKitCGameSprite::GetKitIDSCGameSprite::GetKitMaskCGameSprite::GetInactiveProficiencyCGameSprite::GetInternalButtonListCGameSprite::GetItemBagsCGameSprite::GetItemUsagesCGameSprite::GetKitDescriptionCGameSprite::GetKnownSpellIndexCGameSprite::GetKnownSpellIndexMageCGameSprite::GetKnownSpellIndexPriestCGameSprite::GetKnownSpellInnateCGameSprite::GetKnownSpellMageCGameSprite::GetKnownSpellPriestCGameSprite::GetLauncherCGameSprite::GetLauncherSlotCGameSprite::GetLayOnHandsAmountCGameSprite::GetLengthCGameSprite::GetMapScreenColorCGameSprite::GetMaxDamageCGameSprite::GetMaxEncumbranceCGameSprite::GetMemorizedSpellInnateCGameSprite::GetMemorizedSpellMageCGameSprite::GetMemorizedSpellPriestCGameSprite::GetMinCasterLevelCGameSprite::GetMinDamageCGameSprite::GetNameCGameSprite::GetNameRefCGameSprite::GetNextWaypointCGameSprite::GetNumInventoryPersonalSlotsCGameSprite::GetNumQuickWeaponSlotsCGameSprite::GetNumSoundsCGameSprite::GetPortraitToolTipTextCGameSprite::GetQuickButtonsCGameSprite::GetQuickWeaponCGameSprite::GetRatingCGameSprite::GetRatingWithItemCGameSprite::GetResistanceCGameSprite::GetResistanceStringCGameSprite::GetSavingThrow
Continued on next page
1154 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 17 – continued from previous pageCGameSprite::GetSecretDoorDetectionCGameSprite::GetSelectedWeaponButtonCGameSprite::GetSkillHelpCGameSprite::GetSkillNameCGameSprite::GetSkillValueCGameSprite::GetSoundCGameSprite::GetStatBreakdownCGameSprite::GetStyleBonusCGameSprite::GetTargetIdCGameSprite::GetTargetShareCGameSprite::GetTerrainTableCGameSprite::GetTHAC0CGameSprite::GetVisibleTerrainTableCGameSprite::GetVisualRangeCGameSprite::GetTurnUndeadLevelCGameSprite::GetWeaponProficiencyCGameSprite::GiveItemCGameSprite::GivePartyAllEquipmentCGameSprite::GroupAttackCGameSprite::HandleEffectsCGameSprite::HandlePersistantEffectsCGameSprite::HasItemTypeEquipedCGameSprite::HasItemWithFlagCGameSprite::HasWeaponTypeCGameSprite::HaveKnownSpellCGameSprite::HaveSpellCGameSprite::HelpCGameSprite::HideCGameSprite::HitCGameSprite::InitBlurCGameSprite::InitQuickItemDataCGameSprite::InitQuickSpellDataCGameSprite::InitializeWalkingSoundCGameSprite::InDarkCGameSprite::InDialogCGameSprite::InPersonalRadiusCGameSprite::InteractCGameSprite::IsOnPortraitIconListCGameSprite::IsOverCGameSprite::IsSpecialistCGameSprite::IsSpellSchoolCGameSprite::JoinPartyCGameSprite::JumpThroughTransitionCGameSprite::JumpToAreaCGameSprite::JumpToPointCGameSprite::LeaderCGameSprite::LeaveAreaCGameSprite::LeaveAreaGlobalCGameSprite::LeaveAreaLUACGameSprite::LeaveAreaLUAEntry
Continued on next page
6.47. CGameSprite Class 1155
EEex Documentation, Release 1.0
Table 17 – continued from previous pageCGameSprite::LeaveAreaNameCGameSprite::LeavePartyCGameSprite::LoadAreaInformationCGameSprite::LoadProjectileCGameSprite::MainActionPickingCGameSprite::MakeGlobalCGameSprite::MakeLocalCGameSprite::MarshalCGameSprite::MarshalMessageCGameSprite::MemorizeAllSpellsInnateCGameSprite::MemorizeAllSpellsMageCGameSprite::MemorizeAllSpellsPriestCGameSprite::MemorizeSpellCGameSprite::MemorizeSpellInnateCGameSprite::MemorizeSpellMageCGameSprite::MemorizeSpellPriestCGameSprite::MoveOntoAreaCGameSprite::MoveToBackCGameSprite::MoveToFrontCGameSprite::MoveToObjectCGameSprite::MoveToOffsetCGameSprite::MoveToPointCGameSprite::MultiplayerUpdateCGameSprite::NightmareDowngradeCGameSprite::NightmareUpgradeCGameSprite::NullActionProcessCGameSprite::OnActionButtonCGameSprite::OnActionRemovalCGameSprite::OnDeathCGameSprite::OneSwingCGameSprite::OnFormationButtonCGameSprite::OnLightningStrikeCGameSprite::OnScreenCGameSprite::OnSearchMapCGameSprite::OrderableCGameSprite::OutOfControlCGameSprite::PanicCGameSprite::ParseAbilityHeaderCGameSprite::PartyHealCGameSprite::PickLockCGameSprite::PickPocketsCGameSprite::PickUpItemCGameSprite::PlayDeadCGameSprite::PlayDialogSoundCGameSprite::PlaySoundCGameSprite::PlayerDialogCGameSprite::PolymorphCopyCGameSprite::PostMoveCharacterFromOverflowToPartyCGameSprite::ProcessAICGameSprite::ProcessEffectList
Continued on next page
1156 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 17 – continued from previous pageCGameSprite::ProcessPendingTriggersCGameSprite::ProficienciesCGameSprite::ProtectObjectCGameSprite::ProtectPointCGameSprite::QuickLoadCGameSprite::RandomFlyCGameSprite::RandomWalkCGameSprite::RandomWalkContinuousCGameSprite::ReadyCursorCGameSprite::ReadyItemCGameSprite::ReadyOffInternalListCGameSprite::ReadySpellCGameSprite::RecoilCGameSprite::RemoveBagsCGameSprite::RemoveClassAbilitiesCGameSprite::RemoveAllSpellsInnateCGameSprite::RemoveAllSpellsMageCGameSprite::RemoveAllSpellsPriestCGameSprite::RemoveFromAreaCGameSprite::RemoveKnownSpellCGameSprite::RemoveKnownSpellInnateCGameSprite::RemoveKnownSpellMageCGameSprite::RemoveKnownSpellPriestCGameSprite::RemoveNewSpecialAbilitiesCGameSprite::RemoveObjectSearchCGameSprite::RemovePortraitIconCGameSprite::RemoveReplacementFromAreaCGameSprite::RemoveSanctuaryCGameSprite::RemoveSpecialAbilityCGameSprite::RemoveSpellCGameSprite::RemoveTrapsCGameSprite::RemoveVVCCGameSprite::RenderCGameSprite::RenderActionsCGameSprite::RenderDamageArrowCGameSprite::RenderHealthBarCGameSprite::RenderMarkersCGameSprite::RenderMirrorImageCGameSprite::RenderPortraitCGameSprite::RenderSpriteCoverCGameSprite::RenderSpriteEffectCGameSprite::RenderToMapScreenCGameSprite::RenderTrackingArrowCGameSprite::ReplaceItemBagsCGameSprite::ResetAIScriptCGameSprite::ResolveInstantsCGameSprite::ResolvePausedActionCGameSprite::ResolveTargetPointCGameSprite::RestCGameSprite::ResetAIType
Continued on next page
6.47. CGameSprite Class 1157
EEex Documentation, Release 1.0
Table 17 – continued from previous pageCGameSprite::ResetAITypeLiveCGameSprite::RestoreActiveAICGameSprite::RunAwayFromCGameSprite::SelectCGameSprite::SelectWeaponAbilityCGameSprite::SetAITypeCGameSprite::SetActiveAICGameSprite::SetActiveImprisonmentCGameSprite::SetActiveProficiencyCGameSprite::SetAllSpellsMemorizedCGameSprite::SetAtOffsetCGameSprite::SetBumpedCGameSprite::SetCharacterToolTipCGameSprite::SetColorCGameSprite::SetCurrActionCGameSprite::SetCursorCGameSprite::SetDialogCGameSprite::SetDialogStateCGameSprite::SetDirectionCGameSprite::SetFacingCGameSprite::SetFootstepChannelCGameSprite::SetItemFlagsCGameSprite::SetInactiveProficiencyCGameSprite::SetLuaAttrCGameSprite::SetLuaOrderedProCGameSprite::SetLuaProCGameSprite::SetMaxMemorizedSpellsInnateCGameSprite::SetMaxMemorizedSpellsMageCGameSprite::SetMaxMemorizedSpellsPriestCGameSprite::SetMemorizedFlagCGameSprite::SetModalStateCGameSprite::SetMonkAbilitiesCGameSprite::SetPathCGameSprite::SetResRefCGameSprite::SetEntangleCGameSprite::SetGreasePoolCGameSprite::SetInvisibleCGameSprite::SetInvisibleImprovedCGameSprite::SetMinorGlobeCGameSprite::SetQuickItemCGameSprite::SetQuickWeaponCGameSprite::SetSanctuaryCGameSprite::SetShieldGlobeCGameSprite::SetWebHoldCGameSprite::SetScriptCGameSprite::SetSelectedWeaponButtonCGameSprite::SetSequenceCGameSprite::SetSkillValueCGameSprite::SetStoreStateCGameSprite::SetTarget
Continued on next page
1158 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 17 – continued from previous pageCGameSprite::SetTargetFlyCGameSprite::SetUpBaalAbilitiesCGameSprite::SetVisualRangeCGameSprite::ShamanSpellCountCGameSprite::ShamanSpellDecrementCGameSprite::ShamanSpellRememorizeCGameSprite::ShatterCGameSprite::ShouldAvertCriticalHitCGameSprite::SorcererSpellCountCGameSprite::SorcererSpellDecrementCGameSprite::SorcererSpellRememorizeCGameSprite::SortColorsCGameSprite::SortMemorizedSpellsCGameSprite::SpecialStateProcessingCGameSprite::SpellCGameSprite::SpellPointCGameSprite::StartDialogCGameSprite::StartStoreCGameSprite::SwapAllActiveInactiveProficienciesCGameSprite::SwingCGameSprite::StartSpriteEffectCGameSprite::SuppressHitPointsDisplayCGameSprite::TakeCreatureItemsCGameSprite::TakeItemBagsCGameSprite::TryToTurnCGameSprite::TurnCGameSprite::UnapplySpellCGameSprite::UnequipCGameSprite::UnequipAllCGameSprite::UnmarshalCGameSprite::UnmarshalScriptsCGameSprite::UnmemorizeAllSpellsMageCGameSprite::UnmemorizeAllSpellsPriestCGameSprite::UnmemorizeAllOfResSpellInnateCGameSprite::UnmemorizeAllOfResSpellMageCGameSprite::UnmemorizeAllOfResSpellPriestCGameSprite::UnmemorizeSpellInnateCGameSprite::UnmemorizeSpellMageCGameSprite::UnmemorizeSpellPriestCGameSprite::UnselectCGameSprite::UpdateAOECGameSprite::UpdateActiveCGameSprite::UpdateLuaEquipmentCGameSprite::UpdateLuaSpellsCGameSprite::UpdateLuaStatsCGameSprite::UpdateQuickItemDataCGameSprite::UpdateSpriteEffectCGameSprite::UpdateTargetCGameSprite::UpdateToolbarCGameSprite::UpdateVisibleGroundItems
Continued on next page
6.47. CGameSprite Class 1159
EEex Documentation, Release 1.0
Table 17 – continued from previous pageCGameSprite::UseContainerCGameSprite::UseDoorCGameSprite::UseItemCGameSprite::UseItemPointCGameSprite::VerbalConstantCGameSprite::WaitInLineCGameSprite::WalkToAreaCGameSprite::WeaponCanDamageCGameSprite::WeaponEffectiveVsCGameSprite::WildSpell
CGameSprite::AIUpdate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AIUpdateFly
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1160 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::AIUpdateWalk
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddBlood
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddClassAbilities
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1161
EEex Documentation, Release 1.0
CGameSprite::AddEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddItemBags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddKnownSpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1162 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::AddKnownSpellMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddKnownSpellPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddNewSpecialAbilities
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1163
EEex Documentation, Release 1.0
CGameSprite::AddNewSpellsPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddObjectSearch
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddPortraitIcon
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1164 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::AddReplacementToArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddSpecialAbility
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddStatToRating
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1165
EEex Documentation, Release 1.0
CGameSprite::AddToArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddVVC
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AddVVCInEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1166 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::AdjustTargetFollowTheLeader
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AllowSpecialStates
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Ally
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1167
EEex Documentation, Release 1.0
CGameSprite::Animate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AnkhegEmerge
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AnkhegHide
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1168 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::ApplyCastingEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ApplyCastingEffectPost
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ApplyCriticals
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1169
EEex Documentation, Release 1.0
CGameSprite::ApplyItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ApplyTriggers
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Attack
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1170 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::AttackReevaluate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ArenaSetUp
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::AutoPause
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1171
EEex Documentation, Release 1.0
CGameSprite::BashDoor
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::BattleSong
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Berserk
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1172 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::CanChangeWeapon
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CanEquipRanged
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CanSaveGame
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1173
EEex Documentation, Release 1.0
CGameSprite::CalculateHealingPotential
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CanSeeInfra
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CanSpeak
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1174 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::CanWriteSpellScroll
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ChangeAnimation
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ChangeDirection
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1175
EEex Documentation, Release 1.0
CGameSprite::CheckBerserkActive
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckBumpable
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckCastingRange
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1176 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::CheckCutSceneStateOverride
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckCombatStats
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckCombatStatsHaste
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1177
EEex Documentation, Release 1.0
CGameSprite::CheckCombatStatsWeapon
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckDialogWait
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1178 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::CheckExpiredWeapons
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckExtraDestruction
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckFatigue
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1179
EEex Documentation, Release 1.0
CGameSprite::CheckForBerserkStage2
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckForDead
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckForDialogWaitCancel
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1180 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::CheckForForcedDialogEnd
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckHappiness
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckIfUsedUp
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1181
EEex Documentation, Release 1.0
CGameSprite::CheckIfVisible
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckLauncherType
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckLoadState
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1182 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::CheckLoadedBanter
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckLoadedDialog
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckSleeping
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1183
EEex Documentation, Release 1.0
CGameSprite::ContingencyCheck
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckModal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckMorale
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1184 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::CheckMoveForCutScenes
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckPuppetMaster
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckQuickLists
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1185
EEex Documentation, Release 1.0
CGameSprite::CheckReputation
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckSevenEyes
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckSequence
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1186 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::CheckSpellLoss
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckStatsChange
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CheckToolTipItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1187
EEex Documentation, Release 1.0
CGameSprite::ClearAI
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ClearDialogActions
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ClearStoredPaths
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1188 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::CleanUpTempSprites
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ClearBumpPath
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ClearMarshal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1189
EEex Documentation, Release 1.0
CGameSprite::CombineActiveInactiveProficiency
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CombineAllActiveInactiveProficiencies
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CompressTime
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1190 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::ConcentrationFailed
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ControlledByPlayer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Copy
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1191
EEex Documentation, Release 1.0
CGameSprite::CountItemBags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::CountItemPersonal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Damage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1192 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::DebugDump
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::DecodeSwingSound
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::DestroyItemInSlot
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1193
EEex Documentation, Release 1.0
CGameSprite::Dialogue
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::DisableOffhand
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::DisplayTextRef
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1194 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::DoAIUpdate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::DoAction
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::DropInventory
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1195
EEex Documentation, Release 1.0
CGameSprite::DropItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::DropItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::DropItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1196 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::DoesIntersect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::DoMoraleFailure
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::DrainChargesFromBags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1197
EEex Documentation, Release 1.0
CGameSprite::DropPath
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::DropSearchRequest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::EndMoraleFailure
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1198 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::Enemy
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Equip
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::EquipAll
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1199
EEex Documentation, Release 1.0
CGameSprite::EquipItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::EquipMostDamagingMelee
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::EquipNextAmmo
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1200 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::EquipRanged
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::EscapeArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::EvaluateStatusTrigger
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1201
EEex Documentation, Release 1.0
CGameSprite::ExecuteAction
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Face
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::FaceObject
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1202 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::FakeWalkToArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::FeedBack
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::FetchCommonStrings
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1203
EEex Documentation, Release 1.0
CGameSprite::FillSlot
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::FilterSpecialAbilities
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::FindDamageEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1204 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::FindIdentifyItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::FindItemBags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::FindItemPersonal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1205
EEex Documentation, Release 1.0
CGameSprite::FindTraps
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::FloatingHP
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::FloatingText
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1206 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::Fly
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Follow
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::FollowObjectFormation
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1207
EEex Documentation, Release 1.0
CGameSprite::ForceVisible
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Formation
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetActiveProficiency
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1208 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetAbilityProjectileType
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetActiveStats
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetActiveWeaponStyleAndLevel
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1209
EEex Documentation, Release 1.0
CGameSprite::GetAttackRange
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetBackstabDamageMultiplier
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetCanSeeInvisible
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1210 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetCarriedWeight
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetCasterLevel
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetChannel
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1211
EEex Documentation, Release 1.0
CGameSprite::GetColorArray
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetColorCount
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetDirection
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1212 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetDirection
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetExperience
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetExperienceEntry
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1213
EEex Documentation, Release 1.0
CGameSprite::GetHelpRange
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetKit
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetKitIDS
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1214 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetKitMask
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetInactiveProficiency
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetInternalButtonList
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1215
EEex Documentation, Release 1.0
CGameSprite::GetItemBags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetItemUsages
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetKitDescription
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1216 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetKnownSpellIndex
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetKnownSpellIndexMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetKnownSpellIndexPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1217
EEex Documentation, Release 1.0
CGameSprite::GetKnownSpellInnate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetKnownSpellMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetKnownSpellPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1218 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetLauncher
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetLauncherSlot
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetLayOnHandsAmount
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1219
EEex Documentation, Release 1.0
CGameSprite::GetLength
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetMapScreenColor
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetMaxDamage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1220 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetMaxEncumbrance
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetMemorizedSpellInnate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetMemorizedSpellMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1221
EEex Documentation, Release 1.0
CGameSprite::GetMemorizedSpellPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetMinCasterLevel
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetMinDamage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1222 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetName
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetNameRef
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetNextWaypoint
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1223
EEex Documentation, Release 1.0
CGameSprite::GetNumInventoryPersonalSlots
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetNumQuickWeaponSlots
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetNumSounds
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1224 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetNumSounds
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetPortraitToolTipText
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetQuickButtons
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1225
EEex Documentation, Release 1.0
CGameSprite::GetQuickWeapon
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetRating
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetRatingWithItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1226 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetResistance
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetResistanceString
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetSavingThrow
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1227
EEex Documentation, Release 1.0
CGameSprite::GetSecretDoorDetection
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetSelectedWeaponButton
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetSkillHelp
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1228 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetSkillName
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetSkillValue
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetSound
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1229
EEex Documentation, Release 1.0
CGameSprite::GetStatBreakdown
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetStyleBonus
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetTargetId
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1230 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetTargetShare
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetTerrainTable
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetTHAC0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1231
EEex Documentation, Release 1.0
CGameSprite::GetVisibleTerrainTable
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetVisualRange
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GetTurnUndeadLevel
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1232 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::GetWeaponProficiency
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GiveItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::GivePartyAllEquipment
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1233
EEex Documentation, Release 1.0
CGameSprite::GroupAttack
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::HandleEffects
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::HandlePersistantEffects
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1234 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::HasItemTypeEquiped
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::HasItemWithFlag
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::HasWeaponType
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1235
EEex Documentation, Release 1.0
CGameSprite::HaveKnownSpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::HaveSpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Help
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1236 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::Hide
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Hit
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::InitBlur
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1237
EEex Documentation, Release 1.0
CGameSprite::InitQuickItemData
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::InitQuickSpellData
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::InitializeWalkingSound
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1238 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::InDark
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::InDialog
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::InPersonalRadius
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1239
EEex Documentation, Release 1.0
CGameSprite::Interact
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::IsOnPortraitIconList
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::IsOver
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1240 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::IsSpecialist
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::IsSpellSchool
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::JoinParty
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1241
EEex Documentation, Release 1.0
CGameSprite::JumpThroughTransition
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::JumpToArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::JumpToPoint
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1242 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::JumpToPoint
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Leader
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::LeaveArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1243
EEex Documentation, Release 1.0
CGameSprite::LeaveAreaGlobal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::LeaveAreaLUA
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::LeaveAreaLUA
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1244 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::LeaveAreaLUAEntry
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::LeaveAreaName
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::LeaveParty
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1245
EEex Documentation, Release 1.0
CGameSprite::LoadAreaInformation
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::LoadProjectile
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MainActionPicking
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1246 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::MakeGlobal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MakeLocal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Marshal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1247
EEex Documentation, Release 1.0
CGameSprite::Marshal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Marshal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MarshalMessage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1248 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::MemorizeAllSpellsInnate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MemorizeAllSpellsMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MemorizeAllSpellsPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1249
EEex Documentation, Release 1.0
CGameSprite::MemorizeSpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MemorizeSpellInnate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MemorizeSpellMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1250 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::MemorizeSpellPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MoveOntoArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MoveToBack
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1251
EEex Documentation, Release 1.0
CGameSprite::MoveToFront
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MoveToObject
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MoveToOffset
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1252 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::MoveToPoint
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MoveToPoint
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::MultiplayerUpdate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1253
EEex Documentation, Release 1.0
CGameSprite::NightmareDowngrade
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::NightmareUpgrade
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::NullActionProcess
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1254 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::OnActionButton
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::OnActionRemoval
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::OnDeath
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1255
EEex Documentation, Release 1.0
CGameSprite::OneSwing
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::OnFormationButton
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::OnLightningStrike
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1256 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::OnScreen
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::OnSearchMap
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Orderable
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1257
EEex Documentation, Release 1.0
CGameSprite::OutOfControl
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Panic
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ParseAbilityHeader
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1258 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::PartyHeal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::PickLock
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::PickPockets
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1259
EEex Documentation, Release 1.0
CGameSprite::PickUpItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::PlayDead
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::PlayDialogSound
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1260 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::PlaySound
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::PlaySound
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::PlayerDialog
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1261
EEex Documentation, Release 1.0
CGameSprite::PolymorphCopy
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::PostMoveCharacterFromOverflowToParty
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ProcessAI
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1262 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::ProcessEffectList
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ProcessPendingTriggers
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Proficiencies
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1263
EEex Documentation, Release 1.0
CGameSprite::ProtectObject
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ProtectPoint
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::QuickLoad
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1264 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::RandomFly
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RandomWalk
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RandomWalkContinuous
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1265
EEex Documentation, Release 1.0
CGameSprite::ReadyCursor
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ReadyItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ReadyItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1266 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::ReadyOffInternalList
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ReadySpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ReadySpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1267
EEex Documentation, Release 1.0
CGameSprite::Recoil
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveBags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveClassAbilities
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1268 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::RemoveAllSpellsInnate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveAllSpellsMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveAllSpellsPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1269
EEex Documentation, Release 1.0
CGameSprite::RemoveFromArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveKnownSpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveKnownSpellInnate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1270 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::RemoveKnownSpellMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveKnownSpellPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveNewSpecialAbilities
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1271
EEex Documentation, Release 1.0
CGameSprite::RemoveObjectSearch
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemovePortraitIcon
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveReplacementFromArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1272 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::RemoveSanctuary
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveSpecialAbility
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveSpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1273
EEex Documentation, Release 1.0
CGameSprite::RemoveSpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveTraps
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RemoveVVC
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1274 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::Render
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RenderActions
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RenderDamageArrow
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1275
EEex Documentation, Release 1.0
CGameSprite::RenderHealthBar
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RenderMarkers
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RenderMirrorImage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1276 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::RenderPortrait
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RenderSpriteCover
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RenderSpriteEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1277
EEex Documentation, Release 1.0
CGameSprite::RenderToMapScreen
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RenderTrackingArrow
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ReplaceItemBags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1278 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::ResetAIScript
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ResolveInstants
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ResolvePausedAction
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1279
EEex Documentation, Release 1.0
CGameSprite::ResolveTargetPoint
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Rest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ResetAIType
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1280 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::ResetAITypeLive
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RestoreActiveAI
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::RunAwayFrom
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1281
EEex Documentation, Release 1.0
CGameSprite::Select
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SelectWeaponAbility
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SelectWeaponAbility
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1282 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::SetAIType
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetActiveAI
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetActiveImprisonment
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1283
EEex Documentation, Release 1.0
CGameSprite::SetActiveProficiency
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetAllSpellsMemorized
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetAtOffset
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1284 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::SetBumped
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetCharacterToolTip
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetColor
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1285
EEex Documentation, Release 1.0
CGameSprite::SetCurrAction
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetCursor
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetDialog
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1286 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::SetDialog
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetDialogState
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetDirection
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1287
EEex Documentation, Release 1.0
CGameSprite::SetFacing
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetFootstepChannel
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetItemFlags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1288 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::SetInactiveProficiency
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetLuaAttr
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetLuaOrderedPro
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1289
EEex Documentation, Release 1.0
CGameSprite::SetLuaPro
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetMaxMemorizedSpellsInnate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetMaxMemorizedSpellsMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1290 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::SetMaxMemorizedSpellsPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetMemorizedFlag
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetModalState
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1291
EEex Documentation, Release 1.0
CGameSprite::SetMonkAbilities
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetPath
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetResRef
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1292 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::SetEntangle
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetGreasePool
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetInvisible
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1293
EEex Documentation, Release 1.0
CGameSprite::SetInvisibleImproved
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetMinorGlobe
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetQuickItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1294 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::SetQuickWeapon
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetSanctuary
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetShieldGlobe
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1295
EEex Documentation, Release 1.0
CGameSprite::SetWebHold
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetScript
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetSelectedWeaponButton
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1296 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::SetSequence
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetSkillValue
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetStoreState
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1297
EEex Documentation, Release 1.0
CGameSprite::SetTarget
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetTarget
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetTargetFly
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1298 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::SetUpBaalAbilities
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SetVisualRange
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ShamanSpellCount
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1299
EEex Documentation, Release 1.0
CGameSprite::ShamanSpellDecrement
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::ShamanSpellRememorize
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Shatter
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1300 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::ShouldAvertCriticalHit
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SorcererSpellCount
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SorcererSpellDecrement
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1301
EEex Documentation, Release 1.0
CGameSprite::SorcererSpellRememorize
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SortColors
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SortMemorizedSpells
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1302 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::SpecialStateProcessing
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Spell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SpellPoint
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1303
EEex Documentation, Release 1.0
CGameSprite::StartDialog
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::StartStore
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SwapAllActiveInactiveProficiencies
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1304 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::Swing
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::StartSpriteEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::SuppressHitPointsDisplay
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1305
EEex Documentation, Release 1.0
CGameSprite::TakeCreatureItems
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::TakeItemBags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::TryToTurn
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1306 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::Turn
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UnapplySpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Unequip
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1307
EEex Documentation, Release 1.0
CGameSprite::UnequipAll
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Unmarshal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::Unmarshal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1308 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::UnmarshalScripts
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UnmemorizeAllSpellsMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UnmemorizeAllSpellsPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1309
EEex Documentation, Release 1.0
CGameSprite::UnmemorizeAllOfResSpellInnate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UnmemorizeAllOfResSpellMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UnmemorizeAllOfResSpellPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1310 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::UnmemorizeSpellInnate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UnmemorizeSpellMage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UnmemorizeSpellPriest
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1311
EEex Documentation, Release 1.0
CGameSprite::Unselect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UpdateAOE
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UpdateActive
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1312 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::UpdateLuaEquipment
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UpdateLuaSpells
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UpdateLuaStats
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1313
EEex Documentation, Release 1.0
CGameSprite::UpdateQuickItemData
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UpdateSpriteEffect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UpdateTarget
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1314 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::UpdateToolbar
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UpdateVisibleGroundItems
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UseContainer
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1315
EEex Documentation, Release 1.0
CGameSprite::UseDoor
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UseItem
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::UseItemPoint
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1316 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSprite::VerbalConstant
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::WaitInLine
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::WalkToArea
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.47. CGameSprite Class 1317
EEex Documentation, Release 1.0
CGameSprite::WeaponCanDamage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::WeaponEffectiveVs
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CGameSprite::WildSpell
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1318 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.48 CGameSpriteEquipment Class
• Overview
• Quick Reference
• Constructors
• Methods
6.48.1 Overview
Note: The CGameSpriteEquipment class handles equipment for game sprites
The structure used for this class is CGameSpriteEquipment
6.48.2 Quick Reference
Quick Refvoid CGameSpriteEquipment::CGameSpriteEquipment()void CGameSpriteEquipment::~CGameSpriteEquipment()void CGameSpriteEquipment::ClearMarshal(int bUnequip)void CGameSpriteEquipment::Marshal(CCreatureFileEquipment* pHeader, CCreatureFileItem** pItems, un-signed long* nItems, int bSaveBags, int bSaveTempItem)void CGameSpriteEquipment::Unmarshal(CCreatureFileEquipment* pHeader, CCreatureFileItem* pItems,unsigned long nItems, CGameSprite* pSprite, int bSaveTempItem)
6.48.3 Constructors
Name DescriptionCGameSpriteEquipment::CGameSpriteEquipment Constructs a CGameSpriteEquipment objectCGameSpriteEquipment::CGameSpriteEquipment Destroys a CGameSpriteEquipment object
CGameSpriteEquipment::CGameSpriteEquipment
Constructs a CGameSpriteEquipment object
void CGameSpriteEquipment::CGameSpriteEquipment();
Remarks
Constructs a CGameSpriteEquipment object
6.48. CGameSpriteEquipment Class 1319
EEex Documentation, Release 1.0
CGameSpriteEquipment::~CGameSpriteEquipment
Destroys the CGameSpriteEquipment object
void CGameSpriteEquipment::~CGameSpriteEquipment();
Remarks
Destroys the CGameSpriteEquipment object
6.48.4 Methods
Name DescriptionCGameSpriteEquipment::ClearMarshalCGameSpriteEquipment::MarshalCGameSpriteEquipment::Unmarshal
CGameSpriteEquipment::ClearMarshal
void CGameSpriteEquipment::ClearMarshal(int bUnequip);
Parameters
• int bUnequip -
Remarks
CGameSpriteEquipment::Marshal
void CGameSpriteEquipment::Marshal(CCreatureFileEquipment* pHeader,CCreatureFileItem** pItems,unsigned long* nItems,int bSaveBags,int bSaveTempItem);
Parameters
• CCreatureFileEquipment* pHeader -
• CCreatureFileItem** pItems -
• unsigned long* nItems -
• int bSaveBags -
• int bSaveTempItem -
Remarks
1320 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameSpriteEquipment::Unmarshal
void CGameSpriteEquipment::Unmarshal(CCreatureFileEquipment* pHeader,CCreatureFileItem* pItems,unsigned long nItems,CGameSprite* pSprite,int bSaveTempItem);
Parameters
• CCreatureFileEquipment* pHeader -
• CCreatureFileItem* pItems -
• unsigned long nItems -
• CGameSprite* pSprite -
• int bSaveTempItem -
Remarks
6.49 CGameSpriteLastUpdate Class
• Overview
• Quick Reference
• Constructors
• Methods
6.49.1 Overview
Note: The CGameSpriteLastUpdate class handles game sprite last update
The structure used for this class is CGameSpriteLastUpdate
6.49.2 Quick Reference
Quick Refvoid CGameSpriteLastUpdate::CGameSpriteLastUpdate()void CGameSpriteLastUpdate::Initialize(int bFullUpdateRequired)
6.49. CGameSpriteLastUpdate Class 1321
EEex Documentation, Release 1.0
6.49.3 Constructors
Name DescriptionCGameSpriteLastUpdate::CGameSpriteLastUpdate Constructs a CGameSpriteLastUpdate object
CGameSpriteLastUpdate::CGameSpriteLastUpdate
Constructs a CGameSpriteLastUpdate object
void CGameSpriteLastUpdate::CGameSpriteLastUpdate();
Remarks
Constructs a CGameSpriteLastUpdate object
6.49.4 Methods
Name DescriptionCGameSpriteLastUpdate::Initialize
CGameSpriteLastUpdate::Initialize
void CGameSpriteLastUpdate::Initialize(int bFullUpdateRequired);
Parameters
• int bFullUpdateRequired -
Remarks
6.50 CGameStatic Class
The structure used for this class is CGameStatic
1322 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Quick Refvoid CGameStatic::CGameStatic(CGameArea* pArea, CAreaFileStaticObject* pStaticObject)virtual void CGameStatic::~CGameStatic()virtual void CGameStatic::AIUpdate()virtual unsigned char CGameStatic::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)virtual unsigned char CGameStatic::CompressTime(unsigned long deltaTime)virtual unsigned char CGameStatic::DoAIUpdate(unsigned char active, long counter)void CGameStatic::Marshal(CAreaFileStaticObject** pStaticObject)virtual void CGameStatic::RemoveFromArea()virtual void CGameStatic::Render(CGameArea* pArea, CVidMode* pVidMode)void CGameStatic::RenderBam(CGameArea* pArea, CVidMode* pVidMode)void CGameStatic::RenderPVR(CGameArea* pArea, CVidMode* pVidMode)void CGameStatic::RenderWebm(CGameArea* pArea, CVidMode* pVidMode)void CGameStatic::SetActivated(unsigned short active)void CGameStatic::SetPalette(CResRef res)
6.50.1 Constructors
Name DescriptionCGameStatic::CGameStatic Constructs a CGameStatic objectCGameStatic::~CGameStatic Destroys a CGameStatic object
CGameStatic::CGameStatic
Constructs a CGameStatic object
void CGameStatic::CGameStatic(CGameArea* pArea,CAreaFileStaticObject* pStaticObject);
Parameters
• CGameArea* pArea -
• CAreaFileStaticObject* pStaticObject -
Remarks
Constructs a CGameStatic object
CGameStatic::~CGameStatic
Destroys the CGameStatic object
virtual void CGameStatic::~CGameStatic();
6.50. CGameStatic Class 1323
EEex Documentation, Release 1.0
Remarks
Destroys the CGameStatic object
6.50.2 Methods
Name DescriptionCGameStatic::AIUpdateCGameStatic::CanSaveGameCGameStatic::CompressTimeCGameStatic::DoAIUpdateCGameStatic::MarshalCGameStatic::RemoveFromAreaCGameStatic::RenderCGameStatic::RenderBam Render BAM imageCGameStatic::RenderPVR Render PowerVR based imageCGameStatic::RenderWebm Render WBM movie frameCGameStatic::SetActivatedCGameStatic::SetPalette
CGameStatic::AIUpdate
virtual void CGameStatic::AIUpdate();
Remarks
CGameStatic::CanSaveGame
virtual unsigned char CGameStatic::CanSaveGame(unsigned long& strError,int restCheck,int combatCheck);
Parameters
• unsigned long& strError -
• int restCheck -
• int combatCheck -
Return Value
Returns unsigned char
Remarks
1324 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameStatic::CompressTime
virtual unsigned char CGameStatic::CompressTime(unsigned long deltaTime);
Parameters
• unsigned long deltaTime -
Return Value
Returns unsigned char
Remarks
CGameStatic::DoAIUpdate
virtual unsigned char CGameStatic::DoAIUpdate(unsigned char active,long counter);
Parameters
• unsigned char active -
• long counter -
Return Value
Returns unsigned char
Remarks
CGameStatic::Marshal
void CGameStatic::Marshal(CAreaFileStaticObject** pStaticObject);
Parameters
• CAreaFileStaticObject** pStaticObject -
Remarks
CGameStatic::RemoveFromArea
virtual void CGameStatic::RemoveFromArea();
Remarks
CGameStatic::Render
6.50. CGameStatic Class 1325
EEex Documentation, Release 1.0
virtual void CGameStatic::Render(CGameArea* pArea,CVidMode* pVidMode);
Parameters
• CGameArea* pArea - pointer to area
• CVidMode* pVidMode - pointer to vid mode
Remarks
CGameStatic::RenderBam
Render BAM image
void CGameStatic::RenderBam(CGameArea* pArea,CVidMode* pVidMode);
Parameters
• CGameArea* pArea - pointer to area
• CVidMode* pVidMode - pointer to vid mode
Remarks
CGameStatic::RenderPVR
Render PowerVR based image
void CGameStatic::RenderPVR(CGameArea* pArea,CVidMode* pVidMode);
Parameters
• CGameArea* pArea - pointer to area
• CVidMode* pVidMode - pointer to vid mode
Remarks
Enhanced Edition games use PVR/PVRZ based MOS, TIS and BAM file formats
1326 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameStatic::RenderWebm
Render WBM movie frame
void CGameStatic::RenderWebm(CGameArea* pArea,CVidMode* pVidMode);
Parameters
• CGameArea* pArea - pointer to area
• CVidMode* pVidMode - pointer to vid mode
Remarks
WebM is an audiovisual media file format. Movie files in the Enhanced Edition games use the .WBM extension
CGameStatic::SetActivated
void CGameStatic::SetActivated(unsigned short active);
Parameters
• unsigned short active -
Remarks
CGameStatic::SetPalette
void CGameStatic::SetPalette(:ref:`CResRef<CResRef>` res);
Parameters
• CResRef res -
Remarks
6.51 CGameStatsSprite Class
The structure used for this class is CGameStatsSprite
6.51. CGameStatsSprite Class 1327
EEex Documentation, Release 1.0
Quick Refvoid CGameStatsSprite::CGameStatsSprite()void CGameStatsSprite::GetFavouriteSpell(CResRef & cResSpell)void CGameStatsSprite::GetFavouriteWeapon(CResRef & cResWeapon)void CGameStatsSprite::GetStrongestKill(unsigned long& strName)void CGameStatsSprite::GetTimeWithParty(unsigned long& nCurrentTimeWithParty)void CGameStatsSprite::RecordJoinParty()void CGameStatsSprite::RecordKill(CGameSprite* pSprite)void CGameStatsSprite::RecordLeaveParty()void CGameStatsSprite::RecordSpellUse(CResRef & cResSpell)void CGameStatsSprite::RecordWeaponUse(CResRef & cResWeapon)void CGameStatsSprite::ResetChapterStats()
6.51.1 Constructors
CGameStatsSprite::CGameStatsSprite
Constructs a CGameStatsSprite object
void CGameStatsSprite::CGameStatsSprite();
Remarks
Constructs a CGameStatsSprite object
6.51.2 Methods
Name DescriptionCGameStatsSprite::GetFavouriteSpell Returns a characters favourite spell they have used the mostCGameStatsSprite::GetFavouriteWeapon Returns a characters favourite weapon they have used the mostCGameStatsSprite::GetStrongestKill Returns a characters strongest creature they have killedCGameStatsSprite::GetTimeWithParty Returns a characters time with the partyCGameStatsSprite::RecordJoinParty Records the time stamp when a character joins the partyCGameStatsSprite::RecordKill Records the strongest creature killedCGameStatsSprite::RecordLeaveParty Records the time stamp when a character leaves the partyCGameStatsSprite::RecordSpellUse Records favourite spell used by a characterCGameStatsSprite::RecordWeaponUse Records favourite weapon used by a characterCGameStatsSprite::ResetChapterStats Reset chapter statistics
CGameStatsSprite::GetFavouriteSpell
Returns a characters favourite spell they have used the most
void CGameStatsSprite::GetFavouriteSpell(CResRef& cResSpell);
Parameters
1328 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CResRef & cResSpell - address of variable to store spell resource reference
Remarks
See also CGameStatsSprite::RecordSpellUse
CGameStatsSprite::GetFavouriteWeapon
Returns a characters favourite weapon they have used the most
void CGameStatsSprite::GetFavouriteWeapon(CResRef& cResWeapon);
Parameters
• CResRef & cResWeapon - address of variable to store weapon resource reference
Remarks
See also CGameStatsSprite::RecordWeaponUse
CGameStatsSprite::GetStrongestKill
Returns a characters strongest creature they have killed
void CGameStatsSprite::GetStrongestKill(unsigned long& strName);
Parameters
• unsigned long& strName - address of string variable to store name of creature killed
Remarks
See also CGameStatsSprite::RecordKill
CGameStatsSprite::GetTimeWithParty
Returns a characters time with the party
void CGameStatsSprite::GetTimeWithParty(unsigned long& nCurrentTimeWithParty);
Parameters
• unsigned long& nCurrentTimeWithParty - address of long variable used to store character’s time with party
Remarks
See also CGameStatsSprite::RecordJoinParty and CGameStatsSprite::RecordLeaveParty
6.51. CGameStatsSprite Class 1329
EEex Documentation, Release 1.0
CGameStatsSprite::RecordJoinParty
Records the time stamp when a character joins the party
void CGameStatsSprite::RecordJoinParty();
Remarks
See also CGameStatsSprite::GetTimeWithParty and CGameStatsSprite::RecordLeaveParty
CGameStatsSprite::RecordKill
Records the strongest creature killed
void CGameStatsSprite::RecordKill(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite creature to be recorded as strongest kill by character
Remarks
See also CGameStatsSprite::GetStrongestKill
CGameStatsSprite::RecordLeaveParty
Records the time stamp when a character leaves the party
void CGameStatsSprite::RecordLeaveParty();
Remarks
See also CGameStatsSprite::GetTimeWithParty and CGameStatsSprite::RecordJoinParty
CGameStatsSprite::RecordSpellUse
Records favourite spell used by a character
void CGameStatsSprite::RecordSpellUse(CResRef& cResSpell);
Parameters
• CResRef & cResSpell - address of variable for spell resource reference to store as favourite
Remarks
See also CGameStatsSprite::GetFavouriteSpell
1330 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameStatsSprite::RecordWeaponUse
Records favourite weapon used by a character
void CGameStatsSprite::RecordWeaponUse(CResRef& cResWeapon);
Parameters
• CResRef & cResWeapon - address of variable for weapon resource reference to store as favourite
Remarks
CGameStatsSprite::ResetChapterStats
Reset chapter statistics
void CGameStatsSprite::ResetChapterStats();
Remarks
6.52 CGameText Class
The structure used for this class is CGameText
Quick Refvoid CGameText::CGameText(CGameArea* pArea, CPoint& pt, long posZ, int nDuration, unsigned char nBe-ginFade, CString& sText, int hasSound, CGameObject* pTarget)virtual void CGameText::AIUpdate()virtual unsigned char CGameText::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)virtual unsigned char CGameText::DoAIUpdate(unsigned char active, long counter)virtual void CGameText::RemoveFromArea()virtual void CGameText::Render(CGameArea* pArea, CVidMode* pVidMode)void CGameText::SetText(CPoint& pt, long posZ, int nDuration, unsigned char nBeginFade, CString& sText, inthasSound)
6.52.1 Constructors
Name DescriptionCGameText::CGameText Constructs a CGameText object
CGameText::CGameText
Constructs a CGameText object
6.52. CGameText Class 1331
EEex Documentation, Release 1.0
void CGameText::CGameText(CGameArea* pArea,CPoint& pt,long posZ,int nDuration,unsigned char nBeginFade,CString& sText,int hasSound,CGameObject* pTarget);
Parameters
• CGameArea* pArea - pointer to area
• CPoint& pt - x and y coordinates of text position
• long posZ - z height of text position
• int nDuration - how long text is displayed on screen
• unsigned char nBeginFade -
• CString& sText - address of string containing text to display
• int hasSound -
• CGameObject* pTarget - pointer to target object to display text at
Remarks
Constructs a CGameText object
6.52.2 Methods
Name DescriptionCGameText::AIUpdateCGameText::CanSaveGameCGameText::DoAIUpdateCGameText::RemoveFromAreaCGameText::RenderCGameText::SetText
CGameText::AIUpdate
virtual void CGameText::AIUpdate();
Remarks
CGameText::CanSaveGame
1332 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual unsigned char CGameText::CanSaveGame(unsigned long& strError,int restCheck,int combatCheck);
Parameters
• unsigned long& strError -
• int restCheck -
• int combatCheck -
Return Value
Returns unsigned char
Remarks
CGameText::DoAIUpdate
virtual unsigned char CGameText::DoAIUpdate(unsigned char active,long counter);
Parameters
• unsigned char active -
• long counter -
Return Value
Returns unsigned char
Remarks
CGameText::RemoveFromArea
virtual void CGameText::RemoveFromArea();
Remarks
CGameText::Render
Render text
virtual void CGameText::Render(CGameArea* pArea,CVidMode* pVidMode);
Parameters
6.52. CGameText Class 1333
EEex Documentation, Release 1.0
• CGameArea* pArea - pointer to area
• CVidMode* pVidMode - pointer to vid mode
Remarks
CGameText::SetText
void CGameText::SetText(CPoint& pt,long posZ,int nDuration,unsigned char nBeginFade,CString& sText,int hasSound);
Parameters
• CPoint& pt - x and y coordinates of text position
• long posZ - z height of text position
• int nDuration - how long text is displayed on screen
• unsigned char nBeginFade -
• CString& sText - address of string containing text to display
• int hasSound -
Remarks
6.53 CGameTiledObject Class
Quick Refvoid CGameTiledObject::CGameTiledObject(CGameArea* pArea, CAreaFileTiledObject* pTiledObject,CAreaPoint* pPoints, unsigned short maxPts)virtual void CGameTiledObject::RemoveFromArea()void CGameTiledObject::ToggleState()
6.53.1 Constructors
Name DescriptionCGameTiledObject::CGameTiledObject Constructs a CGameTiledObject object
CGameTiledObject::CGameTiledObject
Constructs a CGameTiledObject object
1334 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CGameTiledObject::CGameTiledObject(CGameArea* pArea,CAreaFileTiledObject* pTiledObject,CAreaPoint* pPoints,unsigned short maxPts);
Parameters
• CGameArea* pArea - pointer to area
• CAreaFileTiledObject* pTiledObject - pointer to tiled object
• CAreaPoint* pPoints - pointer to array of points
• unsigned short maxPts - count of points in array
Remarks
Constructs a CGameTiledObject object
6.53.2 Methods
Name DescriptionCGameTiledObject::RemoveFromAreaCGameTiledObject::ToggleState
CGameTiledObject::RemoveFromArea
virtual void CGameTiledObject::RemoveFromArea();
Remarks
CGameTiledObject::ToggleState
void CGameTiledObject::ToggleState();
Remarks
6.54 CGameTrigger Class
The structure used for this class is CGameTrigger
6.54. CGameTrigger Class 1335
EEex Documentation, Release 1.0
Quick Refvoid CGameTrigger::CGameTrigger(CGameArea* pArea, CAreaFileTriggerObject* pTriggerObject, CArea-Point* pPoints, unsigned short maxPts)virtual void CGameTrigger::AIUpdate()virtual void CGameTrigger::AddEffect(CGameEffect* pEffect, unsigned char list, int noSave, int immediateAp-ply)virtual unsigned char CGameTrigger::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)virtual unsigned char CGameTrigger::CompressTime(unsigned long deltaTime)virtual void CGameTrigger::DebugDump(CString& message, unsigned char bEchoToScreen)virtual unsigned char CGameTrigger::DoAIUpdate(unsigned char active, long counter)virtual CRect CGameTrigger::GetBounding()unsigned short CGameTrigger::GetTrapActivated()virtual int CGameTrigger::IsOver(CPoint& pt)virtual int CGameTrigger::IsOverActivate(CPoint& pt)void CGameTrigger::Marshal(STriggerObjectWrapper* pTriggerWrapper)virtual void CGameTrigger::OnActionButton(CPoint& pt)virtual void CGameTrigger::RemoveFromArea()virtual void CGameTrigger::Render(CGameArea* pArea, CVidMode* pVidMode)virtual void CGameTrigger::SetCursor(long nToolTip)void CGameTrigger::SetDrawPoly(short time)
6.54.1 Constructors
Name DescriptionCGameTrigger::CGameTrigger Constructs a CGameTrigger object
CGameTrigger::CGameTrigger
Constructs a CGameTrigger object
void CGameTrigger::CGameTrigger(CGameArea* pArea,CAreaFileTriggerObject* pTriggerObject,CAreaPoint* pPoints,unsigned short maxPts);
Parameters
• CGameArea* pArea - pointer to area
• CAreaFileTriggerObject* pTriggerObject - pointer to trigger object
• CAreaPoint* pPoints - pointer to array of points
• unsigned short maxPts - count of points in array
Remarks
Constructs a CGameTrigger object
1336 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.54.2 Methods
Name DescriptionCGameTrigger::AIUpdateCGameTrigger::AddEffectCGameTrigger::CanSaveGameCGameTrigger::CompressTimeCGameTrigger::DebugDumpCGameTrigger::DoAIUpdateCGameTrigger::GetBoundingCGameTrigger::GetTrapActivatedCGameTrigger::IsOverCGameTrigger::IsOverActivateCGameTrigger::MarshalCGameTrigger::OnActionButtonCGameTrigger::RemoveFromAreaCGameTrigger::RenderCGameTrigger::SetCursorCGameTrigger::SetDrawPoly
CGameTrigger::AIUpdate
virtual void CGameTrigger::AIUpdate();
Remarks
CGameTrigger::AddEffect
Add a game effect to a trigger object
virtual void CGameTrigger::AddEffect(CGameEffect* pEffect,unsigned char list,int noSave,int immediateApply);
Parameters
• CGameEffect* pEffect - pointer to game effect to add to trigger
• unsigned char list -
• int noSave - if a saving throw is allowed to avoid or reduce damage caused by effect
• int immediateApply - if the effect is immediate or delayed
Remarks
6.54. CGameTrigger Class 1337
EEex Documentation, Release 1.0
CGameTrigger::CanSaveGame
virtual unsigned char CGameTrigger::CanSaveGame(unsigned long& strError,int restCheck,int combatCheck);
Parameters
• unsigned long& strError* -
• int restCheck* -
• int combatCheck* -
Return Value
Returns unsigned char
Remarks
CGameTrigger::CompressTime
virtual unsigned char CGameTrigger::CompressTime(unsigned long deltaTime);
Parameters
• unsigned long deltaTime -
Return Value
Returns unsigned char
Remarks
CGameTrigger::DebugDump
Debug message from CGameTrigger class
virtual void CGameTrigger::DebugDump(CString& message,unsigned char bEchoToScreen);
Parameters
• CString& message - debug message to output to console
• unsigned char bEchoToScreen - output debug message to screen as well as console
Remarks
CGameTrigger::DoAIUpdate
1338 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual unsigned char CGameTrigger::DoAIUpdate(unsigned char active,long counter);
Parameters
• unsigned char active -
• long counter -
Return Value
Returns unsigned char
Remarks
CGameTrigger::GetBounding
Get the bounding rectangle for the trigger object
virtual CRect CGameTrigger::GetBounding();
Return Value
Returns a CRect which defines the bounding dimensions of the trigger object
Remarks
CGameTrigger::GetTrapActivated
unsigned short CGameTrigger::GetTrapActivated();
Return Value
Returns short
Remarks
CGameTrigger::IsOver
Determines if mouse position is over the trigger object
virtual int CGameTrigger::IsOver(CPoint& pt);
Parameters
• CPoint& pt - x and y coordinate of mouse position
Return Value
Returns int
Remarks
6.54. CGameTrigger Class 1339
EEex Documentation, Release 1.0
CGameTrigger::IsOverActivate
Determines if mouse position is over the trigger object and the trigger is activated
virtual int CGameTrigger::IsOverActivate(CPoint& pt);
Parameters
• CPoint& pt - x and y coordinate of mouse position
Return Value
Returns int
Remarks
CGameTrigger::Marshal
void CGameTrigger::Marshal(STriggerObjectWrapper* pTriggerWrapper);
Parameters
• STriggerObjectWrapper* pTriggerWrapper -
Remarks
CGameTrigger::OnActionButton
virtual void CGameTrigger::OnActionButton(CPoint& pt);
Parameters
• CPoint& pt - x and y coordinate of mouse position
Remarks
CGameTrigger::RemoveFromArea
virtual void CGameTrigger::RemoveFromArea();
Remarks
1340 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CGameTrigger::Render
virtual void CGameTrigger::Render(CGameArea* pArea,CVidMode* pVidMode);
Parameters
• CGameArea* pArea - pointer to area
• CVidMode* pVidMode - pointer to vid mode
Remarks
CGameTrigger::SetCursor
virtual void CGameTrigger::SetCursor(long nToolTip);
Parameters
• long nToolTip -
Remarks
CGameTrigger::SetDrawPoly
void CGameTrigger::SetDrawPoly(short time);
Parameters
• short time -
Remarks
6.55 CIcon Class
Quick Refvoid CIcon::RenderIcon(CPoint& pos, CSize& size, CRect& rBoundingBox, CResRef & cResIcon, unsignedlong dwFlags, unsigned short wCount, int bForceCount, unsigned short wSecondCount, int bForceSecondCount,CRect& rClipIn, int transVal)
6.55.1 Methods
Name DescriptionCIcon::RenderIcon Render an icon
6.55. CIcon Class 1341
EEex Documentation, Release 1.0
CIcon::RenderIcon
Render an icon
void CIcon::RenderIcon(CPoint& pos,CSize\& size,CRect& rBoundingBox,CResRef& cResIcon,unsigned long dwFlags,unsigned short wCount,int bForceCount,unsigned short wSecondCount,int bForceSecondCount,CRect& rClipIn,int transVal);
Parameters
• CPoint& pos - x and y coordinates of icon position
• CSize& size - width and height of icon
• CRect& rBoundingBox - bounding rectangle of icon
• CResRef & cResIcon - resource reference of icon to render
• unsigned long dwFlags -
• unsigned short wCount -
• int bForceCount -
• unsigned short wSecondCount -
• int bForceSecondCount -
• CRect& rClipIn - clipping rectangle
• int transVal -
Remarks
6.56 CImmunitiesAIType Class
The structure used for this class is CImmunitiesAIType
Quick Refvoid CImmunitiesAIType::ClearAll()int CImmunitiesAIType::OnList(CAIObjectType& type)CImmunitiesAIType& CImmunitiesAIType::operator=(CImmunitiesAIType& y)int CImmunitiesAIType::operator==(CImmunitiesAIType& y)
1342 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.56.1 Methods
Name DescriptionCImmunitiesAIType::ClearAllCImmunitiesAIType::OnList
CImmunitiesAIType::ClearAll
void CImmunitiesAIType::ClearAll();
Remarks
CImmunitiesAIType::OnList
int CImmunitiesAIType::OnList(CAIObjectType& type);
Parameters
• CAIObjectType& type -
Return Value
Returns int
Remarks
6.56.2 Operators
Name DescriptionCImmunitiesAIType::operator=CImmunitiesAIType::operator==
CImmunitiesAIType::operator=
CImmunitiesAIType& CImmunitiesAIType::operator=(CImmunitiesAIType& y);
Parameters
• CImmunitiesAIType& y -
Return Value
Returns CImmunitiesAIType&
Remarks
6.56. CImmunitiesAIType Class 1343
EEex Documentation, Release 1.0
:ref:‘CImmunitiesAIType::operator==
int CImmunitiesAIType::operator==(CImmunitiesAIType& y);
Parameters
• CImmunitiesAIType& y -
Return Value
Returns int
Remarks
6.57 CImmunitiesEffect Class
The structure used for this class is CImmunitiesEffect
Quick Refvoid CImmunitiesEffect::ClearAll()int CImmunitiesEffect::OnList(CGameEffect* effect)CImmunitiesEffect& CImmunitiesEffect::operator=(CImmunitiesEffect& y)
6.57.1 Methods
Name DescriptionCImmunitiesEffect::ClearAllCImmunitiesEffect::OnList
CImmunitiesEffect::ClearAll
void CImmunitiesEffect::ClearAll();
Remarks
CImmunitiesEffect::OnList
int CImmunitiesEffect::OnList(CGameEffect* effect);
Parameters
• CGameEffect* effect - pointer to game effect
Return Value
Returns int
Remarks
1344 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.57.2 Operators
Name DescriptionCImmunitiesEffect::operator=
CImmunitiesEffect::operator=
CImmunitiesEffect& CImmunitiesEffect::operator=(CImmunitiesEffect& y);
Parameters
• CImmunitiesEffect& y -
Return Value
Returns CImmunitiesEffect&
Remarks
6.58 CImmunitiesItemEquipList Class
The structure used for this class is CImmunitiesItemEquipList
Quick Refvoid CImmunitiesItemEquipList::ClearAll()int CImmunitiesItemEquipList::OnList(CResRef & type, unsigned long& ref, CGameEffect*& effect)CImmunitiesItemEquipList& CImmunitiesItemEquipList::operator=(CImmunitiesItemEquipList& y)
6.58.1 Methods
Name DescriptionCImmunitiesItemEquipList::ClearAllCImmunitiesItemEquipList::OnList
CImmunitiesItemEquipList::ClearAll
void CImmunitiesItemEquipList::ClearAll();
Remarks
CImmunitiesItemEquipList::OnList
6.58. CImmunitiesItemEquipList Class 1345
EEex Documentation, Release 1.0
int CImmunitiesItemEquipList::OnList(CResRef& type,unsigned long& ref,CGameEffect*& effect);
Parameters
• CResRef & type - resource reference for item type
• unsigned long& ref -
• CGameEffect*& effect - pointer to game effect
Return Value
Returns int
Remarks
6.58.2 Operators
Name DescriptionCImmunitiesItemEquipList::operator=
CImmunitiesItemEquipList::operator
CImmunitiesItemEquipList&→˓CImmunitiesItemEquipList::operator=(CImmunitiesItemEquipList& y);
Parameters
• CImmunitiesItemEquipList& y -
Return Value
Returns CImmunitiesItemEquipList&
Remarks
6.59 CImmunitiesItemTypeEquipList Class
The structure used for this class is CImmunitiesItemTypeEquipList
Quick Refvoid CImmunitiesItemTypeEquipList::ClearAll()int CImmunitiesItemTypeEquipList::OnList(unsigned long type, unsigned long& ref, CGameEffect*& effect)CImmunitiesItemTypeEquipList& CImmunitiesItemTypeEquipList::operator=(CImmunitiesItemTypeEquipList&y)
1346 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.59.1 Methods
Name DescriptionCImmunitiesItemTypeEquipList::ClearAllCImmunitiesItemTypeEquipList::OnList
CImmunitiesItemTypeEquipList::ClearAll
void CImmunitiesItemTypeEquipList::ClearAll();
Remarks
CImmunitiesItemTypeEquipList::OnList
int CImmunitiesItemTypeEquipList::OnList(unsigned long type,unsigned long& ref,CGameEffect*& effect);
Parameters
• unsigned long type -
• unsigned long& ref -
• CGameEffect*& effect -
Return Value
Returns int
Remarks
6.59.2 Operators
Name DescriptionCImmunitiesItemTypeEquipList::operator=
CImmunitiesItemTypeEquipList::operator=
CImmunitiesItemTypeEquipList&→˓CImmunitiesItemTypeEquipList::operator=(CImmunitiesItemTypeEquipList& y);
Parameters
• CImmunitiesItemTypeEquipList& y -
Return Value
Returns CImmunitiesItemTypeEquipList&
Remarks
6.59. CImmunitiesItemTypeEquipList Class 1347
EEex Documentation, Release 1.0
6.60 CImmunitiesProjectile Class
The structure used for this class is CImmunitiesProjectile
Quick RefCImmunitiesProjectile& CImmunitiesProjectile::operator=(CImmunitiesProjectile& y)
6.60.1 Operators
Name DescriptionCImmunitiesProjectile::operator=
CImmunitiesProjectile::operator=
CImmunitiesProjectile& CImmunitiesProjectile::operator=(CImmunitiesProjectile& y);
Parameters
• CImmunitiesProjectile& y -
Return Value
Returns CImmunitiesProjectile&
Remarks
6.61 CImmunitiesSchoolAndSecondary Class
The structure used for this class is CImmunitiesSchoolAndSecondary
Quick RefCImmunitiesSchoolAndSecondary& CImmunitiesSchoolAndSecondary::operator=(CImmunitiesSchoolAndSecondary&y)
6.61.1 Operators
Name DescriptionCImmunitiesSchoolAndSecondary::operator=
CImmunitiesSchoolAndSecondary::operator=
1348 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CImmunitiesSchoolAndSecondary&→˓CImmunitiesSchoolAndSecondary::operator=(CImmunitiesSchoolAndSecondary& y);
Parameters
• CImmunitiesSchoolAndSecondary& y -
Return Value
Returns CImmunitiesSchoolAndSecondary&
Remarks
6.62 CImmunitiesSchoolAndSecondaryDecrementing Class
The structure used for this class is CImmunitiesSchoolAndSecondaryDecrementing
Quick Refvoid CImmunitiesSchoolAndSecondaryDecrementing::ClearAll()int CImmunitiesSchoolAndSecondaryDecrementing::OnList(unsigned long type)CImmunitiesSchoolAndSecondaryDecrementing& CImmunitiesSchoolAndSecondaryDecrement-ing::operator=(CImmunitiesSchoolAndSecondaryDecrementing& y)
6.62.1 Methods
Name DescriptionCImmunitiesSchoolAndSecondaryDecrementing::ClearAllCImmunitiesSchoolAndSecondaryDecrementing::OnList
CImmunitiesSchoolAndSecondaryDecrementing::ClearAll
void CImmunitiesSchoolAndSecondaryDecrementing::ClearAll();
Remarks
CImmunitiesSchoolAndSecondaryDecrementing::OnList
int CImmunitiesSchoolAndSecondaryDecrementing::OnList(unsigned long type);
Parameters
• unsigned long type -
Return Value
Returns int
Remarks
6.62. CImmunitiesSchoolAndSecondaryDecrementing Class 1349
EEex Documentation, Release 1.0
6.62.2 Operators
Name DescriptionCImmunitiesSchoolAndSecondaryDecrementing::operator=
CImmunitiesSchoolAndSecondaryDecrementing::operator=
CImmunitiesSchoolAndSecondaryDecrementing&→˓CImmunitiesSchoolAndSecondaryDecrementing::operator=(CImmunitiesSchoolAndSecondaryDecrementing&→˓ y);
Parameters
• CImmunitiesSchoolAndSecondaryDecrementing& y -
Return Value
Returns CImmunitiesSchoolAndSecondaryDecrementing&
Remarks
6.63 CImmunitiesSpellLevel Class
The structure used for this class is CImmunitiesSpellLevel
Quick Refvoid CImmunitiesSpellLevel::ClearAll()int CImmunitiesSpellLevel::IsEmpty()int CImmunitiesSpellLevel::OnList(unsigned char level)CImmunitiesSpellLevel& CImmunitiesSpellLevel::operator=(CImmunitiesSpellLevel& y)
6.63.1 Methods
Name DescriptionCImmunitiesSpellLevel::ClearAllCImmunitiesSpellLevel::IsEmptyCImmunitiesSpellLevel::OnList
CImmunitiesSpellLevel::ClearAll
void CImmunitiesSpellLevel::ClearAll();
Remarks
1350 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CImmunitiesSpellLevel::IsEmpty
int CImmunitiesSpellLevel::IsEmpty();
Return Value
Returns int
Remarks
CImmunitiesSpellLevel::OnList
int CImmunitiesSpellLevel::OnList(unsigned char level);
Parameters
• unsigned char level -
Return Value
Returns int
Remarks
6.63.2 Operators
Name DescriptionCImmunitiesSpellLevel::operator=
CImmunitiesSpellLevel::operator
CImmunitiesSpellLevel& CImmunitiesSpellLevel::operator=(CImmunitiesSpellLevel& y);
Parameters
• ref:CImmunitiesSpellLevel<CImmunitiesSpellLevel>& y -
Return Value
Returns CImmunitiesSpellLevel&
Remarks
6.64 CImmunitiesSpellLevelDecrementing Class
The structure used for this class is CImmunitiesSpellLevelDecrementing
6.64. CImmunitiesSpellLevelDecrementing Class 1351
EEex Documentation, Release 1.0
Quick Refvoid CImmunitiesSpellLevelDecrementing::CImmunitiesSpellLevelDecrementing()void CImmunitiesSpellLevelDecrementing::ClearAll()int CImmunitiesSpellLevelDecrementing::IsEmpty()int CImmunitiesSpellLevelDecrementing::OnList(unsigned char level)CImmunitiesSpellLevelDecrementing& CImmunitiesSpellLevelDecrementing::operator=(CImmunitiesSpellLevelDecrementing&y)
6.64.1 Constructors
Name DescriptionCImmunitiesSpellLevelDecrement-ing::CImmunitiesSpellLevelDecrementing
Constructs a CImmunitiesSpellLevelDecrementingobject
CImmunitiesSpellLevelDecrementing::CImmunitiesSpellLevelDecrementing
Constructs a CImmunitiesSpellLevelDecrementing object
void CImmunitiesSpellLevelDecrementing::CImmunitiesSpellLevelDecrementing();
Remarks
Constructs a CImmunitiesSpellLevelDecrementing object
6.64.2 Methods
Name DescriptionCImmunitiesSpellLevelDecrementing::ClearAllCImmunitiesSpellLevelDecrementing::IsEmptyCImmunitiesSpellLevelDecrementing::OnList
CImmunitiesSpellLevelDecrementing::ClearAll
void CImmunitiesSpellLevelDecrementing::ClearAll();
Remarks
1352 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CImmunitiesSpellLevelDecrementing::IsEmpty
int CImmunitiesSpellLevelDecrementing::IsEmpty();
Return Value
Returns int
Remarks
CImmunitiesSpellLevelDecrementing::OnList
int CImmunitiesSpellLevelDecrementing::OnList(unsigned char level);
Parameters
• unsigned char level -
Return Value
Returns int
Remarks
6.64.3 Operators
Name DescriptionCImmunitiesSpellLevelDecrementing::operator=
CImmunitiesSpellLevelDecrementing::operator=
CImmunitiesSpellLevelDecrementing&→˓CImmunitiesSpellLevelDecrementing::operator=(CImmunitiesSpellLevelDecrementing& y);
Parameters
• CImmunitiesSpellLevelDecrementing& y -
Return Value
Returns CImmunitiesSpellLevelDecrementing&
Remarks
6.65 CImmunitiesSpellList Class
The structure used for this class is CImmunitiesSpellList
6.65. CImmunitiesSpellList Class 1353
EEex Documentation, Release 1.0
Quick Refvoid CImmunitiesSpellList::ClearAll()CImmunitySpell* CImmunitiesSpellList::FindRes(CResRef & type, int bOnlySpell)int CImmunitiesSpellList::OnList(CResRef & res, int bOnlySpell)CImmunitiesSpellList& CImmunitiesSpellList::operator=(CImmunitiesSpellList& y)
6.65.1 Methods
Name DescriptionCImmunitiesSpellList::ClearAllCImmunitiesSpellList::FindResCImmunitiesSpellList::OnList
CImmunitiesSpellList::ClearAll
void CImmunitiesSpellList::ClearAll();
Remarks
CImmunitiesSpellList::FindRes
CImmunitySpell* CImmunitiesSpellList::FindRes(CResRef& type,int bOnlySpell);
Parameters
• CResRef & type -
• int bOnlySpell -
Return Value
Returns CImmunitySpell*
Remarks
CImmunitiesSpellList::OnList
int CImmunitiesSpellList::OnList(CResRef& res,int bOnlySpell);
Parameters
• CResRef & res -
1354 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• int bOnlySpell -
Return Value
Returns int
Remarks
6.65.2 Operators
Name DescriptionCImmunitiesSpellList::operator=
CImmunitiesSpellList::operator=
CImmunitiesSpellList& CImmunitiesSpellList::operator=(CImmunitiesSpellList& y);
Parameters
• CImmunitiesSpellList& y -
Return Value
Returns CImmunitiesSpellList&
Remarks
6.66 CImmunitiesWeapon Class
The structure used for this class is CImmunitiesWeapon
Quick Refvoid CImmunitiesWeapon::ClearAll()unsigned long CImmunitiesWeapon::Marshal(unsigned char** ptrPtr)int CImmunitiesWeapon::OnList(CWeaponIdentification& type)void CImmunitiesWeapon::Unmarshal(unsigned char* data, unsigned long nSize)CImmunitiesWeapon& CImmunitiesWeapon::operator=(CImmunitiesWeapon& y)
6.66.1 Methods
Name DescriptionCImmunitiesWeapon::ClearAllCImmunitiesWeapon::MarshalCImmunitiesWeapon::OnListCImmunitiesWeapon::Unmarshal
6.66. CImmunitiesWeapon Class 1355
EEex Documentation, Release 1.0
CImmunitiesWeapon::ClearAll
void CImmunitiesWeapon::ClearAll();
Remarks
CImmunitiesWeapon::Marshal
unsigned long CImmunitiesWeapon::Marshal(unsigned char** ptrPtr);
Parameters
• unsigned char** ptrPtr - pointer to a pointer
Return Value
Returns unsigned long
Remarks
CImmunitiesWeapon::OnList
int CImmunitiesWeapon::OnList(CWeaponIdentification& type);
Parameters
• CWeaponIdentification& type -
Return Value
Returns int
Remarks
CImmunitiesWeapon::Unmarshal
void CImmunitiesWeapon::Unmarshal(unsigned char* data,unsigned long nSize);
Parameters
• unsigned char* data - data
• unsigned long nSize - size of data
Remarks
1356 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.66.2 Operators
Name DescriptionCImmunitiesWeapon::operator=
CImmunitiesWeapon::operator=
CImmunitiesWeapon& CImmunitiesWeapon::operator=(CImmunitiesWeapon& y);
Parameters
• CImmunitiesWeapon& y -
Return Value
Returns CImmunitiesWeapon&
Remarks
6.67 CImportGame Class
The structure used for this class is CImportGame
Quick Refvoid CImportGame::CImportGame()void CImportGame::~CImportGame()void CImportGame::CopyGlobals(CInfGame* pGame, bool importNpcs)long CImportGame::GetCharacter(CString characterName)long CImportGame::GetCharacterAtIndex(int index)CStringList* CImportGame::GetImportableCharacters(int importAll)long CImportGame::GetNPCAtIndex(int index)unsigned char CImportGame::LoadGame(CString& sInFile)unsigned char CImportGame::Unmarshal(CFile* pFile)
6.67.1 Constructors
Name DescriptionCImportGame::CImportGame Constructs a CImportGame objectCImportGame::~CImportGame Destroys a CImportGame object
CImportGame::CImportGame
Constructs a CImportGame object
void CImportGame::CImportGame();
6.67. CImportGame Class 1357
EEex Documentation, Release 1.0
Remarks
Constructs a CImportGame object
CImportGame::~CImportGame
Destroys the CImportGame object
void CImportGame::~CImportGame();
Remarks
Destroys the CImportGame object
6.67.2 Methods
Name DescriptionCImportGame::CopyGlobalsCImportGame::GetCharacterCImportGame::GetCharacterAtIndexCImportGame::GetImportableCharactersCImportGame::GetNPCAtIndexCImportGame::LoadGameCImportGame::Unmarshal
CImportGame::CopyGlobals
void CImportGame::CopyGlobals(CInfGame* pGame,bool importNpcs);
Parameters
• CInfGame* pGame -
• bool importNpcs -
Remarks
CImportGame::GetCharacter
long CImportGame::GetCharacter(CString characterName);
Parameters
• CString characterName -
1358 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns long
Remarks
CImportGame::GetCharacterAtIndex
long CImportGame::GetCharacterAtIndex(int index);
Parameters
• in index -
Return Value
Returns long
Remarks
CImportGame::GetImportableCharacters
CStringList* CImportGame::GetImportableCharacters(int importAll);
Parameters
• int importAll -
Return Value
Returns CStringList*
Remarks
CImportGame::GetNPCAtIndex
long CImportGame::GetNPCAtIndex(int index);
Parameters
• int index -
Return Value
Returns long
Remarks
CImportGame::LoadGame
6.67. CImportGame Class 1359
EEex Documentation, Release 1.0
unsigned char CImportGame::LoadGame(CString& sInFile);
Parameters
• CString& sInFile -
Return Value
Returns unsigned char
Remarks
CImportGame::Unmarshal
unsigned char CImportGame::Unmarshal(CFile* pFile);
Parameters
• CFile* pFile -
Return Value
Returns unsigned char
Remarks
6.68 CInfButtonArray Class
The structure used for this class is CInfButtonArray
1360 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Quick Refvoid CInfButtonArray::CInfButtonArray()void CInfButtonArray::~CInfButtonArray()int CInfButtonArray::CannotCast(CResRef spl, CGameSprite* sprite)int CInfButtonArray::CheckActivation(long buttonId)virtual void __cdecl CInfButtonArray::ClearList()CString CInfButtonArray::GetButtonBam(int buttonID)unsigned char CInfButtonArray::GetButtonId(int buttonType)int CInfButtonArray::GetButtonSequence(int buttonID)virtual void __cdecl CInfButtonArray::GetQuickSlotData(int nSlot, CButtonData& cButtonData, int nType)virtual unsigned char __cdecl CInfButtonArray::GetSelectedModalMode()virtual void __cdecl CInfButtonArray::GetSelectedQuickWeaponData(CButtonData& cButtonData)int CInfButtonArray::OnLButtonPressed(int buttonID)int CInfButtonArray::OnRButtonPressed(int buttonID)virtual unsigned char __cdecl CInfButtonArray::PickAbility(CButtonData* pButtonData)virtual unsigned char __cdecl CInfButtonArray::PickItem(CButtonData* pButtonData, int instantUse)virtual unsigned char __cdecl CInfButtonArray::PickOffInternalList(CButtonData* pButtonData, int instan-tUse)virtual void __cdecl CInfButtonArray::PickQuickSlot(int nButton, int nType)virtual unsigned char __cdecl CInfButtonArray::PickSpell(CButtonData* pButtonData, int instantUse)int CInfButtonArray::PostRenderButton(CPoint& cRenderLocation, CRect& rClipControl, int bPressed, intbuttonID)int CInfButtonArray::PreRenderButton(CPoint& cRenderLocation, CRect& rClipControl, int bPressed, int but-tonID)int CInfButtonArray::ResetState()virtual void __cdecl CInfButtonArray::SetQuickSlot(CButtonData* pButtonData, int nButton, int nType)int CInfButtonArray::SetState(int nState)void CInfButtonArray::SetTooltip(CString sFunctionKey, unsigned long strRef, int hotKey1, int hotKey2, intnButton)int CInfButtonArray::UpdateButtons()void CInfButtonArray::UpdateState()
6.68.1 Constructors
Name DescriptionCInfButtonArray::CInfButtonArray Constructs a CInfButtonArray objectCInfButtonArray::~CInfButtonArray Destroys a CInfButtonArray object
CInfButtonArray::CInfButtonArray
Constructs a CInfButtonArray object
void CInfButtonArray::CInfButtonArray();
Remarks
Constructs a CInfButtonArray object
6.68. CInfButtonArray Class 1361
EEex Documentation, Release 1.0
CInfButtonArray::~CInfButtonArray
Destroys the CInfButtonArray object
void CInfButtonArray::~CInfButtonArray();
Remarks
Destroys the CInfButtonArray object
6.68.2 Methods
Name DescriptionCInfButtonArray::CannotCastCInfButtonArray::CheckActivation Checks if the specified button id is active (enabled)CInfButtonArray::ClearList Clears all buttonsCInfButtonArray::GetButtonBamCInfButtonArray::GetButtonId Return the button id for the specified button typeCInfButtonArray::GetButtonSequence Returns button frame image if specified button id is selected or notCInfButtonArray::GetQuickSlotData Get quick slot data for a specified slotCInfButtonAr-ray::GetSelectedModalMode
Returns modal state for the currently selected group of characters
CInfButtonAr-ray::GetSelectedQuickWeaponData
Get quick slot data for the selected weapon quick button
CInfButtonArray::OnLButtonPressed Event action for when the left mouse button is clicked and the buttonis pressed
CInfButtonArray::OnRButtonPressed Event action for when the right mouse button is clicked and the buttonis pressed
CInfButtonArray::PickAbility Select a quick slot button that has been assigned to using an abilityCInfButtonArray::PickItem Select a quick slot button that has been assigned to using an itemCInfButtonArray::PickOffInternalList Select a quick slot button that has been assigned to using an internal
listCInfButtonArray::PickQuickSlot Select a quick slot button that has been assigned to using a weapon, a
spell or an itemCInfButtonArray::PickSpell Select a quick slot button that has been assigned to casting a spellCInfButtonArray::PostRenderButton Draw the specified actionbar button’s icon on top of the prerendered
slotCInfButtonArray::PreRenderButton Draw the specified actionbar button’s slotCInfButtonArray::ResetState Resets actionbar buttons stateCInfButtonArray::SetQuickSlot Customize quick slot button for casting a favourite spell, using an item
or abilityCInfButtonArray::SetState Sets actionbar buttons stateCInfButtonArray::SetTooltip Set a tooltip for a button on the actionbar when the mouse hovers over
buttonCInfButtonArray::UpdateButtons Refreshes and updates actionbar buttons: button data and quick slot
button dataCInfButtonArray::UpdateState Updates actionbar buttons state
1362 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfButtonArray::CannotCast
int CInfButtonArray::CannotCast(CResRef spl,CGameSprite* sprite);
Parameters
• CResRef spl - resource reference of spell
• CGameSprite* sprite - pointer to game sprite object
Return Value
Returns int
Remarks
Called from CInfButtonArray::UpdateButtons
CInfButtonArray::CheckActivation
Checks if the specified button id is active (enabled)
int CInfButtonArray::CheckActivation(long buttonId);
Parameters
• long buttonId - id of button to check activation (enabled) status for
Return Value
Returns an int value reprenting true 1 or false 0 if the button is active (not disabled)
Remarks
buttonId > 30 always returns true
Checks index of button id in CDerivedStats.m_disabledButtons.
If CDerivedStats.m_disabledButtons is 0 (enabled) then CInfButtonArray::CheckActivation returns true 1, otherwise
If CDerivedStats.m_disabledButtons is 1 (disabled), then CInfButtonArray::CheckActivation returns false 0
CInfButtonArray::ClearList
Clears all buttons
virtual void __cdecl CInfButtonArray::ClearList();
Remarks
Frees the list and sets CGameButtonList.m_cButtonDataList to 0
6.68. CInfButtonArray Class 1363
EEex Documentation, Release 1.0
CInfButtonArray::GetButtonBam
CString CInfButtonArray::GetButtonBam(int buttonID);
Parameters
• int buttonID - id of button
Return Value
Returns CString
Remarks
CInfButtonArray::GetButtonId
Return the button id for the specified button type
unsigned char CInfButtonArray::GetButtonId(int buttonType);
Parameters
• int buttonType - type of button - see remarks for details
Return Value
Returns unsigned char representing the index (0-``11] of the buttonType on the actionbar or -1 if error
Remarks
Skips buttons that are disabled. Checks CInfButtonSettings.m_bGreyOut = 0 (enabled) in CInfButtonArray and returnsindex for that button type, otherwise returns 0xFF (-1)
buttonType values can be one of the following:
Button Type ID Button Type Notes0 Left Arrow1 Right Arrow2 Bard Song3 Cast Spell4 Find Traps5 Talk6 Unknown / Blank7 Guard8 Attack9 Shape Change10 Special Abilities11 Stealth12 Thieving13 Turn Unded14 Use Item15 Stop16 Quick Formation - Rectangle17 Quick Formation - Defensive Wedge18 Quick Formation - T-Shape
Continued on next page
1364 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 18 – continued from previous page19 Quick Formation - Offsensive Wedge20 Quick Formation - Circle21 Quick Item 122 Quick Item 223 Quick Item 324 Quick Spell 125 Quick Spell 226 Quick Spell 327 Quick Weapon 128 Quick Weapon 229 Quick Weapon 330 Quick Weapon 443 Left Arrow44 Right Arrow67 Crashes game - dont use100 None
Note: other button types not listed may be available, but typically are used internally for spell buttons and otherdynamic buttons for the game engine.
CInfButtonArray::GetButtonSequence
Returns button frame image if specified button id is selected or not
int CInfButtonArray::GetButtonSequence(int buttonID);
Parameters
• int buttonID - id of button
Return Value
Returns an int value representing a pointer to a button frame image
Remarks
Checks CInfButtonSettings.m_bSelected = 0 (enabled) in CInfButtonArray and returns CInfButtonSet-tings.m_nButtonSelectedFrame if it is otherwise returns CInfButtonSettings.m_nButtonFrame
CInfButtonArray::GetQuickSlotData
Get quick slot data for a specified slot
virtual void __cdecl CInfButtonArray::GetQuickSlotData(int nSlot,CButtonData& cButtonData,int nType);
Parameters
• int nSlot -
6.68. CInfButtonArray Class 1365
EEex Documentation, Release 1.0
• CButtonData& cButtonData - address
• int nType -
Remarks
Fills in quick slot data to a CButtonData structure which is stored at the address of the cButtonData parameter
CInfButtonArray::GetSelectedModalMode
Returns modal state for the currently selected group of characters
virtual unsigned char __cdecl CInfButtonArray::GetSelectedModalMode();
Return Value
Returns unsigned char
Remarks
Returns CGameSprite.m_nModalState field value if successful or 0 otherwise
The values that can be returned can be found in MODAL.IDS:
0 NONE1 BATTLESONG2 DETECTTRAPS3 STEALTH4 TURNUNDEAD5 SHAMANDANCE
CInfButtonArray::GetSelectedQuickWeaponData
Get quick slot data for the selected weapon quick button
virtual void __cdecl CInfButtonArray::GetSelectedQuickWeaponData(CButtonData&→˓cButtonData);
Parameters
• CButtonData& cButtonData -
Remarks
CInfButtonArray::OnLButtonPressed
Event action for when the left mouse button is clicked and the button is pressed
int CInfButtonArray::OnLButtonPressed(int buttonID);
Parameters
• int buttonID - id of button pressed
1366 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
Selects the button pressed
CInfButtonArray::OnRButtonPressed
Event action for when the right mouse button is clicked and the button is pressed
int CInfButtonArray::OnRButtonPressed(int buttonID);
Parameters
• int buttonID - id of button pressed
Return Value
Returns int
Remarks
Allows the assignment of quick slot buttons for casting a spell, using an item or ability. See CInfButtonAr-ray::SetQuickSlot
CInfButtonArray::PickAbility
Select a quick slot button that has been assigned to using an ability
virtual unsigned char __cdecl CInfButtonArray::PickAbility(CButtonData* pButtonData);
Parameters
• CButtonData* pButtonData - pointer to button data
Return Value
Returns unsigned char - true 1 if succesful or false 0 if ability cannot be used
Remarks
CInfButtonArray::PickItem
Select a quick slot button that has been assigned to using an item
virtual unsigned char __cdecl CInfButtonArray::PickItem(CButtonData* pButtonData,int instantUse);
Parameters
• CButtonData* pButtonData - pointer to button data
6.68. CInfButtonArray Class 1367
EEex Documentation, Release 1.0
• int instantUse - boolean instant use
Return Value
Returns unsigned char - true 1 if succesful or false 0 if item cannot be used (no charges etc)
Remarks
CInfButtonArray::PickOffInternalList
Select a quick slot button that has been assigned to using an internal list
virtual unsigned char __cdecl CInfButtonArray::PickOffInternalList(CButtonData* pButtonData,int instantUse);
Parameters
• CButtonData* pButtonData - pointer to button data
• int instantUse - boolean instant use
Return Value
Returns unsigned char
Remarks
CInfButtonArray::PickQuickSlot
Select a quick slot button that has been assigned to using a weapon, a spell or an item
virtual void __cdecl CInfButtonArray::PickQuickSlot(int nButton,int nType);
Parameters
• int nButton - button id
• int nType - type of button to set as quick slot button
Remarks
CInfButtonArray::PickSpell
Select a quick slot button that has been assigned to casting a spell
virtual unsigned char __cdecl CInfButtonArray::PickSpell(CButtonData* pButtonData,int instantUse);
Parameters
1368 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CButtonData* pButtonData - pointer to button data
• int instantUse - boolean instant use
Return Value
Returns unsigned char - true 1 if succesful or false 0 if spell cannot be used (not memorized or already used)
Remarks
See also CInfButtonArray::PostRenderButton
CInfButtonArray::PostRenderButton
Draw the specified actionbar button’s icon on top of the prerendered slot
int CInfButtonArray::PostRenderButton(CPoint& cRenderLocation,CRect& rClipControl,int bPressed,int buttonID);
Parameters
• CPoint& cRenderLocation - x and y coordinates of button rendering location
• CRect& rClipControl - clipping rectangle for button rendering
• int bPressed - boolean if button is pressed or not
• int buttonID - button id for post render
Return Value
Returns int
Remarks
See also CInfButtonArray::PreRenderButton
CInfButtonArray::PreRenderButton
Draw the specified actionbar button’s slot
int CInfButtonArray::PreRenderButton(CPoint& cRenderLocation,CRect& rClipControl,int bPressed,int buttonID);
Parameters
• CPoint& cRenderLocation - x and y coordinates of button rendering location
• CRect& rClipControl - clipping rectangle for button rendering
• int bPressed - boolean if button is pressed or not
• int buttonID - button id for pre render
6.68. CInfButtonArray Class 1369
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CInfButtonArray::ResetState
Resets actionbar buttons state
int CInfButtonArray::ResetState();
Return Value
Returns int - always returns true 1
Remarks
Sets CInfButtonArray.m_nState to 0 and sets CInfButtonArray.m_bToggleButtonCleric to 1
CInfButtonArray::SetQuickSlot
Customize quick slot button to another type for casting a favourite spell, using an item or special ability
virtual void __cdecl CInfButtonArray::SetQuickSlot(CButtonData* pButtonData,int nButton,int nType);
Parameters
• CButtonData* pButtonData - pointer to button data
• int nButton - id of button
• int nType - type of button to set quick slot button to
Remarks
CInfButtonArray::SetState
Sets actionbar buttons state
int CInfButtonArray::SetState(int nState);
Parameters
• int nState - state id to set the actionbar to, see remarks
1370 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
nState can be one of the following values:
Unique Config State(s) Notes[0] 1 Mage / Sorcerer[1] 2 Fighter[2] 3 Cleric[3] 4 Thief[4] 5 Bard[5] 6 Paladin[6] 7 Fighter Mage[7] 8 Fighter Cleric[8] 9 Fighter Thief[9] 10 Fighter Mage Thief[10] 11 Druid[11] 12 Ranger[12] 13 Mage Thief[13] 14 Cleric Mage[14] 15 Cleric Thief[15] 16 Fighter Druid[16] 17 Fighter Mage Cleric[17] 18 Cleric Ranger[18] 20 Monk[19] 21 Shaman[20] 101 Select Weapon Ability[21] 102 Spells (Select Quick Spell)[21] 103 Spells (Cast)[22] 104 Select Quick Item Ability[22] 105 Use Item[23] 106 Special Abilities[24] 107 Select Quick Formation[25] 108 Defunct Select Quick Formation (Not used)[26] 109 Group Selected[27] 110 Unknown (No buttons defined; not used?)[28] 111 Internal List (Opcode #214)[29] 112 Controlled (Class doesn’t have a dedicated state)[30] 113 Cleric / Mage Spells (Cast)[30] 114 Cleric / Mage Spells (Select Quick Spell)
Note: “Unique Config” refers to the button types that eventually get set from the state(s) on the right. In a fewinstances the engine reuses the same button configuration for multiple purposes. You can see this in the Spells config;one state is for setting a quick button, while another is actually for casting.
Each class will have their own default class actionbar. Summoned creatures will use state 112 for their actionbar.
6.68. CInfButtonArray Class 1371
EEex Documentation, Release 1.0
CInfButtonArray::SetTooltip
Set a tooltip for a button on the actionbar when the mouse hovers over button
void CInfButtonArray::SetTooltip(CString sFunctionKey,unsigned long strRef,int hotKey1,int hotKey2,int nButton);
Parameters
• CString sFunctionKey -
• unsigned long strRef - string reference containing tooltip text to display
• int hotKey1 - string reference to hotkey that can activate the button
• int hotKey2 - string reference to 2nd key in the hotkey combination (if ussed) that can activate the button
• int nButton - id of button to set tooltip for
Remarks
CInfButtonArray::UpdateButtons
Refreshes and updates actionbar buttons: button data and quick slot button data
int CInfButtonArray::UpdateButtons();
Return Value
Returns int
Remarks
CInfButtonArray::UpdateState
Updates actionbar buttons state
void CInfButtonArray::UpdateState();
Remarks
6.68.3 EEex Notes
Some of the CInfButtonArray methods are directly or indirectly used and/or callable via the EEex ActionBar Functions
• EEex_AddActionbarListener - Add a listener function to the actionbar
• EEex_GetActionbarButton - Retrieves the type of an actionbar button
• EEex_GetActionbarButtonFrame - Returns the current frame of the actionbar button
• EEex_GetActionbarState - Returns the state of the actionbar
1372 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• EEex_GetLastActionbarState - Returns the last state of the actionbar
• EEex_IsActionbarButtonDown - Determines if an actionbar button is being clicked
• EEex_SetActionbarButton - Sets the type of an actionbar button
• EEex_SetActionbarState - Sets the state of the actionbar
• EEex_UpdateActionbar - Forces the actionbar to refresh its state
The EEex pattern database (EEex.db) defines the following labels for use with the EEex_Label function:
• CInfButtonArray::OnLButtonPressed()_InvalidSpecialAbility
• CInfButtonArray::OnLButtonPressed()_MainSwitchTable
• CInfButtonArray::SetState
• CInfButtonArray::SetState()_AfterUpdate
• CInfButtonArray::SetState()_BeforeUpdate
• CInfButtonArray::SetState()_IndirectJumpTable
• CInfButtonArray::SetState()_NormalPath
• CInfButtonArray::SetTooltip
• CInfButtonArray::UpdateButtons
• CInfButtonArray::UpdateState
6.69 CInfCursor Class
The structure used for this class is CInfCursor
Quick Refvoid CInfCursor::CInfCursor()void CInfCursor::~CInfCursor()void CInfCursor::CursorUpdate()void CInfCursor::Initialize()void CInfCursor::SetCursor(int nNewCursor, unsigned char bForce, int nPointerNumber)int CInfCursor::SetCustomCursor(CResRef customResRef, unsigned char bAnimating, int nPointerNumber)void CInfCursor::SetGreyScale(unsigned char bGreyScale)void CInfCursor::SetScrollArrowDirection()void CInfCursor::SetToolTip(const unsigned long& toolTipRef, CString& sExtraText)
6.69.1 Constructors
Name DescriptionCInfCursor::CInfCursor Constructs a CInfCursor objectCInfCursor::~CInfCursor Destroys a CInfCursor object
6.69. CInfCursor Class 1373
EEex Documentation, Release 1.0
CInfCursor::CInfCursor
Constructs a CInfCursor object
void CInfCursor::CInfCursor();
Remarks
Constructs a CInfCursor object
CInfCursor::~CInfCursor
Destroys the CInfCursor object
void CInfCursor::~CInfCursor();
Remarks
Destroys the CInfCursor object
6.69.2 Methods
Name DescriptionCInfCursor::CursorUpdateCInfCursor::InitializeCInfCursor::SetCursorCInfCursor::SetCustomCursorCInfCursor::SetGreyScaleCInfCursor::SetScrollArrowDirectionCInfCursor::SetToolTip
CInfCursor::CursorUpdate
void CInfCursor::CursorUpdate();
Remarks
CInfCursor::Initialize
void CInfCursor::Initialize();
Remarks
1374 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfCursor::SetCursor
void CInfCursor::SetCursor(int nNewCursor,unsigned char bForce,int nPointerNumber);
Parameters
• int nNewCursor -
• unsigned char bForce -
• int nPointerNumber -
Remarks
CInfCursor::SetCustomCursor
int CInfCursor::SetCustomCursor(CResRef customResRef,unsigned char bAnimating,int nPointerNumber);
Parameters
• CResRef customResRef -
• unsigned char bAnimating -
• int nPointerNumber -
Return Value
Returns int
Remarks
CInfCursor::SetGreyScale
void CInfCursor::SetGreyScale(unsigned char bGreyScale);
Parameters
• unsigned char bGreyScale -
Remarks
CInfCursor::SetScrollArrowDirection
void CInfCursor::SetScrollArrowDirection();
Remarks
6.69. CInfCursor Class 1375
EEex Documentation, Release 1.0
CInfCursor::SetToolTip
void CInfCursor::SetToolTip(const unsigned long& toolTipRef,CString& sExtraText);
Parameters
• const unsigned long& toolTipRef -
• CString& sExtraText -
Remarks
6.70 CInfGame Class
• Overview
• Quick Reference
• Constructors
• Methods
6.70.1 Overview
Note: The CInfGame class handles general game features
The structure used for this class is CInfGame
6.70.2 Quick Reference
Quick Refvoid CInfGame::CInfGame()void CInfGame::~CInfGame()int CInfGame::AddCharacterToAllies(long id)int CInfGame::AddCharacterToFamiliars(long id)int CInfGame::AddCharacterToOverflow(long id)int CInfGame::AddCharacterToParty(long id, short nPortraitNumber)void CInfGame::AddDisposableItem(CItem* pItem)int CInfGame::AddItemToStore(CResRef & cResStore, CItem* pItem, unsigned long& errorStrRef)void CInfGame::AddPartyGold(long dwAddPartyGold)void CInfGame::AddPartyXP(unsigned long nXPBonus)void CInfGame::ApplyVolumeSliders()CSaveGameSlot* CInfGame::BuildGameSlot(CString sFileName, CString sGamePath, bool bStoreFullPath)int CInfGame::CanEnterStore(unsigned long& strError)
Continued on next page
1376 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 20 – continued from previous pageint CInfGame::CanRestParty(unsigned long& strError, unsigned char bRenting)unsigned char CInfGame::CanSaveGame(unsigned long& strError, unsigned char bInRestGame, unsigned char bInStore, unsigned char bCheckCombat)void CInfGame::CenterOnGroupLeader()void CInfGame::ChangeBiography(unsigned char nFixedPartyId, CString szBiography)int CInfGame::ChangeMarkupStore(CResRef & cResStore, int buymarkup, int sellmarkup)void CInfGame::ChangeReputation(short eventCode)void CInfGame::CharacterExport(long nCharacterId, CString fileName, int osOpenExportedCharacter)long CInfGame::CharacterImport(CString fileName, unsigned char& nVersion, unsigned char nSlot)int CInfGame::CheckForInteractiveDream()int CInfGame::CheckItemExclusive(CGameSprite* pSprite, int nSlot, CItem* pItem, unsigned long& strError)int CInfGame::CheckItemNotUsableByClass(unsigned char nClass, unsigned long dwNotUsableBy, unsigned long baseFlags)int CInfGame::CheckItemSlot(short nPortraitNum, short nSlotNum, CItem*& item, unsigned long& errorCode)int CInfGame::CheckItemSlot(CGameSprite* pSprite, short nSlotNum, CItem*& item, unsigned long& errorCode)int CInfGame::CheckItemUsable(short nPortraitNum, CItem* item, unsigned long& errorCode, int bAsync)int CInfGame::CheckItemUsable(CGameSprite* pSprite, CItem* item, unsigned long& errorCode, int bAsync)int CInfGame::CheckItemUsableByClass(CItem* pItem, unsigned char nClass, unsigned char nActiveClass, unsigned char nInactiveClass, int bInactiveUsable, unsigned long& errorCode, unsigned long baseFlags)int CInfGame::CheckStoredAreas(CString areaName)int CInfGame::ClearCharacterSlot(int nCharacterSlot)void CInfGame::ClearTransitionPiles()void CInfGame::CompressContainer(long nContainerId)void CInfGame::DeleteCharacters(int nStartingFrom)int CInfGame::DeleteSaveGame(CString& sSaveGame)void CInfGame::DemandServerStore(CResRef & store, int bSaveToDisk)void CInfGame::DestroyGame(unsigned char bProgressBarRequired, unsigned char bProgressBarInPlace)int CInfGame::DrainItemInStore(CResRef & cResStore, CResRef & ref, int number, int abilityNum)void CInfGame::EnablePortrait(unsigned char nControlId, int bEnable)unsigned char CInfGame::ExtendedDayNightAreaActive()void CInfGame::FeedBack(unsigned short feedBackId, long int1)virtual int __cdecl CInfGame::FilterSounds(CRes* pRes)unsigned char CInfGame::FindAreaID(unsigned long nAreaID)short CInfGame::FindEmptyItemPersonalInventory(short nPortraitNum)unsigned long CInfGame::FindItemInStore(CResRef & cResStore, CResRef & ref, int checkForIdentified)int CInfGame::FindNewestSlot(int nSlot)int CInfGame::FindOldestSlot(int nSlot)int CInfGame::GetAnimationVidCell(CVidCell& cVidCell, CString& sPaperDoll, unsigned char nRange)CGameArea* CInfGame::GetArea(CString areaName)long CInfGame::GetAveragePartyLevel()int CInfGame::GetCampaignIcon()int CInfGame::GetCanImportSavedGames()long CInfGame::GetCharacterCriteria(short criteria)long CInfGame::GetCharacterId(short nPortrait)short CInfGame::GetCharacterPortraitNum(long characterId)long CInfGame::GetCharacterSlot(int nCharacterSlot)int CInfGame::GetCharacterSlotFromId(long nCharacterId)unsigned char CInfGame::GetCharactersControlled()CString CInfGame::GetCloudSavePrefix()unsigned short CInfGame::GetContainerType(long nContainerId)int CInfGame::GetCurrentChapter()CString CInfGame::GetDirSave()CString CInfGame::GetDirSaveRoot(unsigned char nSaveRoot)
Continued on next page
6.70. CInfGame Class 1377
EEex Documentation, Release 1.0
Table 20 – continued from previous pagevoid CInfGame::GetFamiliar(unsigned char nLevel, unsigned char alignment, CString& resref)long CInfGame::GetFixedOrderCharacterId(short nSlot)short CInfGame::GetFixedOrderCharacterPortraitNum(long characterId)long CInfGame::GetGroundPile(long iSprite)CStringList* CInfGame::GetImportCharacters()CStringList* CInfGame::GetImportableSaveGames()CItem* CInfGame::GetItemFromStore(CResRef & cResStore, CResRef & ref)CResRef CInfGame::GetItemTint(CItem* pItem)int CInfGame::GetJournalOpenable()short CInfGame::GetNumGroundSlots(long nContainerId)short CInfGame::GetNumQuickWeaponSlots(short nPortraitNum)long CInfGame::GetNumSummoned()long CInfGame::GetNumSummonedDiva()int CInfGame::GetPaletteSize(int nPickRange)unsigned long CInfGame::GetParchmentCaption(CString sParchment)CStringList* CInfGame::GetPortraits()long CInfGame::GetProtagonist()short CInfGame::GetReputation()CString CInfGame::GetSaveGameName(int nSlot, int resolve)int CInfGame::GetSaveGameTime(CString sFileName)CStringList* CInfGame::GetSaveGames(unsigned char bReturnFullPath, unsigned char bBothMPandSP, int bAllowReadOnly, int bHideTOB, int bHideSOA, int bMigrate)CStringList* CInfGame::GetScripts()unsigned long CInfGame::GetScrollSpeed()CStore* CInfGame::GetServerStore(CResRef & store)CStringList* CInfGame::GetSounds()unsigned long CInfGame::GetTotalPartyKillsNumber()CString CInfGame::GetWorldmapName()int CInfGame::HealParty(int nHP, int bFirstHeal)void CInfGame::InitDifficulty()void CInfGame::InitGame(unsigned char bProgressBarRequired, unsigned char bProgressBarInPlace)void CInfGame::IntegrateAddInAreas(unsigned long nMap, CString sAreaData)void CInfGame::InventoryInfoGround(long nContainerId, short nSlotNum, CItem*& pItem, unsigned long& description, CResRef & cResIcon, CResRef & cResItem, unsigned short& wCount)void CInfGame::InventoryInfoPersonal(short nPortraitNum, short nSlotNum, CItem*& pItem, unsigned long& description, CResRef & cResIcon, CResRef & cResItem, unsigned short& wCount)int CInfGame::Is3DSound(int nChannel)int CInfGame::IsAlly(long id)int CInfGame::IsFamiliar(long id)void CInfGame::LeaveAreaLuaMultiplayer(long iSprite, CPoint ptStart, short nDirection, CString sAreaName, CString sParchment)void CInfGame::LeaveAreaNameMultiplayer(long iLSprite, long iTrigger, CString sAreaName)CGameArea* CInfGame::LoadArea(CString areaName, unsigned char nTravelScreenImageToUse, unsigned char bProgressBarRequired, unsigned char bProgressBarInPlace)int CInfGame::LoadGame(unsigned char bProgressBarRequired, unsigned char bProgressBarInPlace)void CInfGame::LoadKey(int code, short cnt)void CInfGame::LoadKeymap()void CInfGame::LoadMultiPlayerPermissions()void CInfGame::LoadOptions()void CInfGame::MakeCharacterProtagonist(long nID)void CInfGame::Marshal(unsigned char** pGame, long* nGame, unsigned char bProgressBarInPlace)void CInfGame::MoveGlobals(CString& sFromArea, CString& sToArea, CPoint& ptDest, long runningAIId)void CInfGame::MoveToCampaign(CString campaign)void CInfGame::MoveToExpansionMap(CString sMapRes, CString sArea, CPoint ptStartLoc)void CInfGame::MultiplayerSetCharacterCreationLocation()
Continued on next page
1378 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 20 – continued from previous pagevoid CInfGame::NewGame(unsigned char bProgressBarRequired, unsigned char bProgressBarInPlace)void CInfGame::OnPortraitLClick(unsigned long id)void CInfGame::OnPortraitLDblClick(unsigned long id)void CInfGame::PanicRescueItem(CItem* pItem, long nCharacterId)unsigned char CInfGame::PrivilegedSlot(CString& sSaveGame)void CInfGame::ProgressBarCallback(unsigned long dwSize, unsigned char bInitialize)void CInfGame::PushGameSlot(CSaveGameSlot* pSlot, int nSlot)void CInfGame::ReadyCharacterTerminationSequence()void CInfGame::ReleaseServerStore(CResRef & store)void CInfGame::RememorizeSpells()int CInfGame::RemoveCharacterFromAllies(long id)int CInfGame::RemoveCharacterFromFamiliars(long id)int CInfGame::RemoveCharacterFromParty(long id, int& overflow, int addToNonPartyList)void CInfGame::RemoveDisposableItem(CItem* pItem)void CInfGame::RemoveFamiliarResRef(CResRef & resref, unsigned char nAlignment, unsigned char nLevel)void CInfGame::RenderAppearance(CPoint position, int bRenderEquipment)void CInfGame::RenderColorDisplay(CRect r, int nPickRange, int frame)void CInfGame::RenderPalette(CRect r, int nPickRange)void CInfGame::RenderPortrait(unsigned long portraitId, CPoint& cpRenderPosition, CSize& szControl, int bPressed, int reorderHighlight, int selectFromMarker, CRect& rClip)int CInfGame::ReplaceItemInStore(CResRef & cResStore, CResRef & oldRef, CResRef & newRef)void CInfGame::ReputationAdjustment(short reputationAdjustment, int set)unsigned char CInfGame::RestParty(unsigned char nSuggestedDreamToDisplay, int nHP, unsigned char bRenting, unsigned char bMovie, int nGP)unsigned char CInfGame::RestPartyPrivate(unsigned char nSuggestedDreamToDisplay, int nHP, unsigned char bRenting, unsigned char bMovie, int nGP)short CInfGame::RestorePartyToLocations(CGameSprite* pCaller, int pocketPlane)int CInfGame::SaveGame(unsigned char bProgressBarRequired, unsigned char bProgressBarInPlace, unsigned char bSaveScreen, unsigned char exportSave)int CInfGame::SaveGameExists(CString& sSaveGame, unsigned char nSaveRoot)void CInfGame::SaveMultiPlayerPermissions()void CInfGame::SaveOptions()int CInfGame::SelectAll(unsigned char bPlaySound)int CInfGame::SelectCharacter(long characterId, unsigned char bPlaySelectSound)void CInfGame::SelectToolbar()void CInfGame::SetAppearanceColorsBody(unsigned char* appearanceColorsBody)void CInfGame::SetAppearanceColorsHelmet(unsigned char* appearanceColorsHelmet)void CInfGame::SetAppearanceColorsShield(unsigned char* appearanceColorsShield)void CInfGame::SetAppearanceColorsWeapon(unsigned char* appearanceColorsWeapon)int CInfGame::SetCampaign(CString campaign)int CInfGame::SetCharacterSlot(int nCharacterSlot, long nCharacterId)void CInfGame::SetIconIndex(unsigned char iconIndex)int CInfGame::SetItemToStore(CResRef & cResStore, CResRef & cResItem, int nItems, int itemFlags)void CInfGame::SetLastTarget(long id)void CInfGame::SetProtagonist(long nId)void CInfGame::SetReputation(short rep, int checkBounds)void CInfGame::SetStartArea2DA(CString start2da)void CInfGame::SetStartParty2DA(CString startParty2da)void CInfGame::SetState(short state, int allowDead)void CInfGame::SetTravelScreenImageResRef(CResRef & resrefTravelScreenImage)void CInfGame::SetVisibleArea(unsigned char nAreaId)void CInfGame::SetupCharacters(unsigned char bProgressBarInPlace)void CInfGame::ShowCreatureTooltips(unsigned char time)void CInfGame::StartCharacterTerminationSequence()
Continued on next page
6.70. CInfGame Class 1379
EEex Documentation, Release 1.0
Table 20 – continued from previous pagevoid CInfGame::StepAnimation(unsigned char direction)void CInfGame::StorePartyLocations(int pocketPlane)void CInfGame::SwapCharacters(unsigned long pos1, unsigned long pos2)int CInfGame::SwapItemGround(long nContainerId, short nSlotNum, CItem*& pNewItem, unsigned long& errorCode, unsigned short wCount, unsigned char bFromServer)int CInfGame::SwapItemPersonal(short nPortraitNum, short nSlotNum, CItem*& pNewItem, unsigned long& errorCode, unsigned short wCount, unsigned char bFromServer, CGameSprite* pSprite)int CInfGame::SwapItemPersonalInventory(short nPortraitNum, CItem*& pNewItem, short nSlotNum, unsigned long& errorCode, unsigned short wCount, unsigned char bFromServer, int bAutoStacking, int bFlexibleSlot)void CInfGame::SynchronousUpdate()short CInfGame::TakeItemFromStore(CResRef & cResStore, CResRef & ref, int number)unsigned char CInfGame::ToggleAI()int CInfGame::Unmarshal(unsigned char* pGame, long nGame, unsigned char bProgressBarInPlace)void CInfGame::UnselectAll()unsigned char CInfGame::UpdateCharacterPartyOrder(long* pCharacterIds, short nOverflowCharacters, long* pOverflowCharacterIds)void CInfGame::UpdateCharacterSlots()void CInfGame::UpdatePartyToExpansionPack(int bStart, int bForceDefault, long nXPGiven)void CInfGame::UpdatePortrait(short nPortrait, unsigned long panelId)void CInfGame::UpdateTokens(CGameSprite* pSprite)int CInfGame::UseMagicOnGround(CPoint ptTarget)int CInfGame::UseMagicOnObject(long target)void CInfGame::WorldEngineActivated(CVidMode* pVidMode)void CInfGame::WorldEngineDeactivated()
6.70.3 Constructors
Name DescriptionCInfGame::CInfGame Constructs a CInfGame objectCInfGame::~CInfGame Destroys a CInfGame object
CInfGame::CInfGame
Constructs a CInfGame object
void CInfGame::CInfGame();
Remarks
Constructs a CInfGame object
CInfGame::~CInfGame
Destroys the CInfGame object
void CInfGame::~CInfGame();
Remarks
Destroys the CInfGame object
1380 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.70.4 Methods
Name DescriptionCInfGame::AddCharacterToAlliesCInfGame::AddCharacterToFamiliarsCInfGame::AddCharacterToOverflowCInfGame::AddCharacterToPartyCInfGame::AddDisposableItemCInfGame::AddItemToStoreCInfGame::AddPartyGoldCInfGame::AddPartyXPCInfGame::ApplyVolumeSlidersCInfGame::BuildGameSlotCInfGame::CanEnterStoreCInfGame::CanRestPartyCInfGame::CanSaveGameCInfGame::CenterOnGroupLeaderCInfGame::ChangeBiographyCInfGame::ChangeMarkupStoreCInfGame::ChangeReputationCInfGame::CharacterExportCInfGame::CharacterImportCInfGame::CheckForInteractiveDreamCInfGame::CheckItemExclusiveCInfGame::CheckItemNotUsableByClassCInfGame::CheckItemSlotCInfGame::CheckItemUsableCInfGame::CheckItemUsableByClassCInfGame::CheckStoredAreasCInfGame::ClearCharacterSlotCInfGame::ClearTransitionPilesCInfGame::CompressContainerCInfGame::DeleteCharactersCInfGame::DeleteSaveGameCInfGame::DemandServerStoreCInfGame::DestroyGameCInfGame::DrainItemInStoreCInfGame::EnablePortraitCInfGame::ExtendedDayNightAreaActiveCInfGame::FeedBackCInfGame::FilterSoundsCInfGame::FindAreaIDCInfGame::FindEmptyItemPersonalInventoryCInfGame::FindItemInStoreCInfGame::FindNewestSlotCInfGame::FindOldestSlotCInfGame::GetAnimationVidCellCInfGame::GetAreaCInfGame::GetAveragePartyLevelCInfGame::GetCampaignIcon
Continued on next page
6.70. CInfGame Class 1381
EEex Documentation, Release 1.0
Table 21 – continued from previous pageCInfGame::GetCanImportSavedGamesCInfGame::GetCharacterCriteriaCInfGame::GetCharacterIdCInfGame::GetCharacterPortraitNumCInfGame::GetCharacterSlotCInfGame::GetCharacterSlotFromIdCInfGame::GetCharactersControlledCInfGame::GetCloudSavePrefixCInfGame::GetContainerTypeCInfGame::GetCurrentChapterCInfGame::GetDirSaveCInfGame::GetDirSaveRootCInfGame::GetFamiliarCInfGame::GetFixedOrderCharacterIdCInfGame::GetFixedOrderCharacterPortraitNumCInfGame::GetGroundPileCInfGame::GetImportCharactersCInfGame::GetImportableSaveGameCInfGame::GetItemFromStoreCInfGame::GetItemTintCInfGame::GetJournalOpenableCInfGame::GetNumGroundSlotsCInfGame::GetNumQuickWeaponSlotsCInfGame::GetNumSummonedCInfGame::GetNumSummonedDivaCInfGame::GetPaletteSizeCInfGame::GetParchmentCaptionCInfGame::GetPortraitsCInfGame::GetProtagonistCInfGame::GetReputationCInfGame::GetSaveGameNameCInfGame::GetSaveGameTimeCInfGame::GetSaveGamesCInfGame::GetScriptsCInfGame::GetScrollSpeedCInfGame::GetServerStoreCInfGame::GetSoundsCInfGame::GetTotalPartyKillsNumberCInfGame::GetWorldmapNameCInfGame::HealPartyCInfGame::InitDifficultyCInfGame::InitGameCInfGame::IntegrateAddInAreasCInfGame::InventoryInfoGroundCInfGame::InventoryInfoPersonalCInfGame::Is3DSoundCInfGame::IsAllyCInfGame::IsFamiliarCInfGame::LeaveAreaLuaMultiplayerCInfGame::LeaveAreaNameMultiplayer
Continued on next page
1382 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 21 – continued from previous pageCInfGame::LoadAreaCInfGame::LoadGameCInfGame::LoadKeyCInfGame::LoadKeymapCInfGame::LoadMultiPlayerPermissionsCInfGame::LoadOptionsCInfGame::MakeCharacterProtagonistCInfGame::MarshalCInfGame::MoveGlobalsCInfGame::MoveToCampaignCInfGame::MoveToExpansionMapCInfGame::MultiplayerSetCharacterCreationLocationCInfGame::NewGameCInfGame::OnPortraitLClickCInfGame::OnPortraitLDblClickCInfGame::PanicRescueItemCInfGame::PrivilegedSlotCInfGame::ProgressBarCallbackCInfGame::PushGameSlotCInfGame::ReadyCharacterTerminationSequenceCInfGame::ReleaseServerStoreCInfGame::RememorizeSpellsCInfGame::RemoveCharacterFromAlliesCInfGame::RemoveCharacterFromFamiliarsCInfGame::RemoveCharacterFromPartyCInfGame::RemoveDisposableItemCInfGame::RemoveFamiliarResRefCInfGame::RenderAppearanceCInfGame::RenderColorDisplayCInfGame::RenderPaletteCInfGame::RenderPortraitCInfGame::ReplaceItemInStoreCInfGame::ReputationAdjustmentCInfGame::RestPartyCInfGame::RestPartyPrivateCInfGame::RestorePartyToLocationsCInfGame::SaveGameCInfGame::SaveGameExistsCInfGame::SaveMultiPlayerPermissionsCInfGame::SaveOptionsCInfGame::SelectAllCInfGame::SelectCharacterCInfGame::SelectToolbarCInfGame::SetAppearanceColorsBodyCInfGame::SetAppearanceColorsHelmetCInfGame::SetAppearanceColorsShieldCInfGame::SetAppearanceColorsWeaponCInfGame::SetCampaignCInfGame::SetCharacterSlotCInfGame::SetIconIndex
Continued on next page
6.70. CInfGame Class 1383
EEex Documentation, Release 1.0
Table 21 – continued from previous pageCInfGame::SetItemToStoreCInfGame::SetLastTargetCInfGame::SetProtagonistCInfGame::SetReputationCInfGame::SetStartArea2DACInfGame::SetStartParty2DACInfGame::SetStateCInfGame::SetTravelScreenImageResRefCInfGame::SetVisibleAreaCInfGame::SetupCharactersCInfGame::ShowCreatureTooltipsCInfGame::StartCharacterTerminationSequenceCInfGame::StepAnimationCInfGame::StorePartyLocationsCInfGame::SwapCharactersCInfGame::SwapItemGroundCInfGame::SwapItemPersonalCInfGame::SwapItemPersonalInventoryCInfGame::SynchronousUpdateCInfGame::TakeItemFromStoreCInfGame::ToggleAICInfGame::UnmarshalCInfGame::UnselectAllCInfGame::UpdateCharacterPartyOrderCInfGame::UpdateCharacterSlotsCInfGame::UpdatePartyToExpansionPackCInfGame::UpdatePortraitCInfGame::UpdateTokensCInfGame::UseMagicOnGroundCInfGame::UseMagicOnObjectCInfGame::WorldEngineActivatedCInfGame::WorldEngineDeactivated
CInfGame::AddCharacterToAllies
int CInfGame::AddCharacterToAllies(long id);
Parameters
• long id -
Return Value
Returns int
Remarks
1384 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::AddCharacterToFamiliars
int CInfGame::AddCharacterToFamiliars(long id);
Parameters
• long id -
Return Value
Returns int
Remarks
CInfGame::AddCharacterToOverflow
int CInfGame::AddCharacterToOverflow(long id);
Parameters
• long id -
Return Value
Returns int
Remarks
CInfGame::AddCharacterToParty
int CInfGame::AddCharacterToParty(long id, short nPortraitNumber);
Parameters
• long id -
• short nPortraitNumber -
Return Value
Returns int
Remarks
CInfGame::AddDisposableItem
void CInfGame::AddDisposableItem(CItem* pItem);
Parameters
• CItem* pItem -
Remarks
6.70. CInfGame Class 1385
EEex Documentation, Release 1.0
CInfGame::AddItemToStore
int CInfGame::AddItemToStore(CResRef& cResStore,CItem* pItem,unsigned long& errorStrRef);
Parameters
• CResRef & cResStore -
• CItem* pItem -
• unsigned long& errorStrRef -
Return Value
Returns int
Remarks
CInfGame::AddPartyGold
void CInfGame::AddPartyGold(long dwAddPartyGold);
Parameters
• long dwAddPartyGold -
Remarks
CInfGame::AddPartyXP
void CInfGame::AddPartyXP(unsigned long nXPBonus);
Parameters
• unsigned long nXPBonus -
Remarks
CInfGame::ApplyVolumeSliders
void CInfGame::ApplyVolumeSliders();
Remarks
‘CInfGame::BuildGameSlot
1386 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CSaveGameSlot* CInfGame::BuildGameSlot(CString sFileName,CString sGamePath,bool bStoreFullPath);
Parameters
• CString sFileName -
• CString sGamePath -
• bool bStoreFullPath -
Return Value
CSaveGameSlot*
Remarks
CInfGame::CanEnterStore
int CInfGame::CanEnterStore(unsigned long& strError);
Parameters
• unsigned long& strError -
Return Value
Returns int
Remarks
CInfGame::CanRestParty
int CInfGame::CanRestParty(unsigned long& strError,unsigned char bRenting);
Parameters
• unsigned long& strError -
• unsigned char bRenting -
Return Value
Returns int
Remarks
CInfGame::CanSaveGame
6.70. CInfGame Class 1387
EEex Documentation, Release 1.0
unsigned char CInfGame::CanSaveGame(unsigned long& strError,unsigned char bInRestGame,unsigned char bInStore,unsigned char bCheckCombat);
Parameters
• unsigned long& strError -
• unsigned char bInRestGame -
• unsigned char bInStore -
• unsigned char bCheckCombat -
Return Value
Remarks
CInfGame::CenterOnGroupLeader
void CInfGame::CenterOnGroupLeader();
Remarks
CInfGame::ChangeBiography
void CInfGame::ChangeBiography(unsigned char nFixedPartyId,CString szBiography);
Parameters
• unsigned char nFixedPartyId -
• CString szBiography -
Remarks
CInfGame::ChangeMarkupStore
int CInfGame::ChangeMarkupStore(CResRef& cResStore,int buymarkup,int sellmarkup);
Parameters
• CResRef & cResStore -
• int buymarkup -
1388 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• int sellmarkup -
Return Value
Returns int
Remarks
CInfGame::ChangeReputation
void CInfGame::ChangeReputation(short eventCode);
Parameters
• short eventCode -
Remarks
CInfGame::CharacterExport
void CInfGame::CharacterExport(long nCharacterId,CString fileName,int osOpenExportedCharacter);
Parameters
• long nCharacterId -
• CString fileName -
• int osOpenExportedCharacter -
Remarks
CInfGame::CharacterImport
long CInfGame::CharacterImport(CString fileName,unsigned char& nVersion,unsigned char nSlot);
Parameters
• CString fileName -
• unsigned char& nVersion -
• unsigned char nSlot -
Return Value
Returns long
Remarks
6.70. CInfGame Class 1389
EEex Documentation, Release 1.0
CInfGame::CheckForInteractiveDream
int CInfGame::CheckForInteractiveDream();
Return Value
Returns int
Remarks
CInfGame::CheckItemExclusive
int CInfGame::CheckItemExclusive(CGameSprite* pSprite,int nSlot,CItem* pItem,unsigned long& strError);
Parameters
• CGameSprite* pSprite -
• int nSlot -
• CItem* pItem -
• unsigned long& strError -
Return Value
Returns int
Remarks
CInfGame::CheckItemNotUsableByClass
int CInfGame::CheckItemNotUsableByClass(unsigned char nClass,unsigned long dwNotUsableBy,unsigned long baseFlags);
Parameters
• unsigned char nClass -
• unsigned long dwNotUsableBy -
• unsigned long baseFlags -
Return Value
Returns int
Remarks
1390 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::CheckItemSlot
int CInfGame::CheckItemSlot(short nPortraitNum,short nSlotNum,CItem*& item,unsigned long& errorCode);
Parameters
• short nPortraitNum -
• short nSlotNum -
• CItem*& item -
• unsigned long& errorCode -
Return Value
Returns int
Remarks
CInfGameCheckItemSlot
int CInfGame::CheckItemSlot(CGameSprite* pSprite,short nSlotNum,CItem*& item,unsigned long& errorCode);
Parameters
• CGameSprite* pSprite -
• short nSlotNum -
• CItem*& item -
• unsigned long& errorCode -
Return Value
Returns int
Remarks
CInfGame::CheckItemUsable
int CInfGame::CheckItemUsable(short nPortraitNum,CItem* item,unsigned long& errorCode,int bAsync);
Parameters
6.70. CInfGame Class 1391
EEex Documentation, Release 1.0
• short nPortraitNum -
• CItem* item -
• unsigned long& errorCode -
• int bAsync -
Return Value
Returns int
Remarks
CInfGame::CheckItemUsable
int CInfGame::CheckItemUsable(CGameSprite* pSprite,CItem* item,unsigned long& errorCode,int bAsync);
Parameters
• CGameSprite* pSprite -
• CItem* item -
• unsigned long& errorCode -
• int bAsync -
Return Value
Returns int
Remarks
CInfGame::CheckItemUsableByClass
int CInfGame::CheckItemUsableByClass(CItem* pItem,unsigned char nClass,unsigned char nActiveClass,unsigned char nInactiveClass,int bInactiveUsable,unsigned long& errorCode,unsigned long baseFlags);
Parameters
• CItem* pItem -
• unsigned char nClass -
• unsigned char nActiveClass -
• unsigned char nInactiveClass -
1392 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• int bInactiveUsable -
• unsigned long& errorCode -
• unsigned long baseFlags -
Return Value
Returns int
Remarks
CInfGame::CheckStoredAreas
int CInfGame::CheckStoredAreas(CString areaName);
Parameters
• CString areaName -
Return Value
Returns int
Remarks
CInfGame::ClearCharacterSlot
int CInfGame::ClearCharacterSlot(int nCharacterSlot);
Parameters
• int nCharacterSlot -
Return Value
Returns int
Remarks
CInfGame::ClearTransitionPiles
void CInfGame::ClearTransitionPiles();
Remarks
6.70. CInfGame Class 1393
EEex Documentation, Release 1.0
CInfGame::CompressContainer
void CInfGame::CompressContainer(long nContainerId);
Parameters
• long nContainerId -
Remarks
CInfGame::DeleteCharacters
void CInfGame::DeleteCharacters(int nStartingFrom);
Parameters
• int nStartingFrom -
Remarks
CInfGame::DeleteSaveGame
int CInfGame::DeleteSaveGame(CString& sSaveGame);
Parameters
• CString& sSaveGame -
Return Value
Returns int
Remarks
CInfGame::DemandServerStore
void CInfGame::DemandServerStore(CResRef& store,int bSaveToDisk);
Parameters
• CResRef & store -
• int bSaveToDisk -
Remarks
CInfGame::DestroyGame
1394 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CInfGame::DestroyGame(unsigned char bProgressBarRequired,unsigned char bProgressBarInPlace);
Parameters
• unsigned char bProgressBarRequired -
• unsigned char bProgressBarInPlace -
Remarks
CInfGame::DrainItemInStore
int CInfGame::DrainItemInStore(CResRef& cResStore,CResRef& ref,int number,int abilityNum);
Parameters
• CResRef & cResStore -
• CResRef & ref -
• int number -
• int abilityNum -
Return Value
Returns int
Remarks
CInfGame::EnablePortrait
void CInfGame::EnablePortrait(unsigned char nControlId,int bEnable);
Parameters
• unsigned char nControlId -
• int bEnable -
Remarks
CInfGame::ExtendedDayNightAreaActive
6.70. CInfGame Class 1395
EEex Documentation, Release 1.0
unsigned char CInfGame::ExtendedDayNightAreaActive();
Return Value
Returns unsigned char
Remarks
CInfGame::FeedBack
void CInfGame::FeedBack(unsigned short feedBackId,long int1);
Parameters
• unsigned short feedBackId -
• long int1 -
Remarks
CInfGame::FilterSounds
virtual int __cdecl CInfGame::FilterSounds(CRes* pRes);
Parameters
• CRes* pRes -
Return Value
Returns int
Remarks
CInfGame::FindAreaID
unsigned char CInfGame::FindAreaID(unsigned long nAreaID);
Parameters
• unsigned long nAreaID -
Return Value
Returns unsigned char
Remarks
1396 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::FindEmptyItemPersonalInventory
short CInfGame::FindEmptyItemPersonalInventory(short nPortraitNum);
Parameters
• short nPortraitNum -
Return Value
Returns short
Remarks
CInfGame::FindItemInStore
unsigned long CInfGame::FindItemInStore(CResRef& cResStore,CResRef& ref,int checkForIdentified);
Parameters
• CResRef & cResStore -
• CResRef & ref -
• int checkForIdentified -
Return Value
Returns unsigned long
Remarks
CInfGame::FindNewestSlot
int CInfGame::FindNewestSlot(int nSlot);
Parameters
• int nSlot -
Return Value
Returns int
Remarks
6.70. CInfGame Class 1397
EEex Documentation, Release 1.0
CInfGame::FindOldestSlot
int CInfGame::FindOldestSlot(int nSlot);
Parameters
• int nSlot -
Return Value
Returns int
Remarks
CInfGame::GetAnimationVidCell
int CInfGame::GetAnimationVidCell(CVidCell& cVidCell,CString& sPaperDoll,unsigned char nRange);
Parameters
• CVidCell& cVidCell -
• CString& sPaperDoll -
• unsigned char nRange -
Return Value
Returns int
Remarks
CInfGame::GetArea
CGameArea* CInfGame::GetArea(CString areaName);
Parameters
• CString areaName -
Return Value
CGameArea*
Remarks
1398 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::GetAveragePartyLevel
long CInfGame::GetAveragePartyLevel();
Return Value
Returns long
Remarks
CInfGame::GetCampaignIcon
int CInfGame::GetCampaignIcon();
Return Value
Returns int
Remarks
CInfGame::GetCanImportSavedGames
int CInfGame::GetCanImportSavedGames();
Return Value
Returns int
Remarks
CInfGame::GetCharacterCriteria
long CInfGame::GetCharacterCriteria(short criteria);
Parameters
• short criteria -
Return Value
Returns long
Remarks
6.70. CInfGame Class 1399
EEex Documentation, Release 1.0
CInfGame::GetCharacterId
long CInfGame::GetCharacterId(short nPortrait);
Parameters
• short nPortrait -
Return Value
Returns long
Remarks
CInfGame::GetCharacterPortraitNum
short CInfGame::GetCharacterPortraitNum(long characterId);
Parameters
• long characterId -
Return Value
Returns short
Remarks
CInfGame::GetCharacterSlot
long CInfGame::GetCharacterSlot(int nCharacterSlot);
Parameters
• int nCharacterSlot -
Return Value
Returns long
Remarks
CInfGame::GetCharacterSlotFromId
int CInfGame::GetCharacterSlotFromId(long nCharacterId);
Parameters
• long characterId -
Return Value
Returns int
Remarks
1400 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::GetCharactersControlled
unsigned char CInfGame::GetCharactersControlled();
Return Value
Returns unsigned char
Remarks
CInfGame::GetCloudSavePrefix
CString CInfGame::GetCloudSavePrefix();
Return Value
CString
Remarks
CInfGame::GetContainerType
unsigned short CInfGame::GetContainerType(long nContainerId);
Parameters
• long nContainerId -
Return Value
Returns unsigned short
Remarks
CInfGame::GetCurrentChapter
int CInfGame::GetCurrentChapter();
Return Value
Returns int
Remarks
6.70. CInfGame Class 1401
EEex Documentation, Release 1.0
CInfGame::GetDirSave
CString CInfGame::GetDirSave();
Return Value
CString
Remarks
CInfGame::GetDirSaveRoot
CString CInfGame::GetDirSaveRoot(unsigned char nSaveRoot);
Parameters
• unsigned char nSaveRoot -
Return Value
CString
Remarks
CInfGame::GetFamiliar
void CInfGame::GetFamiliar(unsigned char nLevel,unsigned char alignment,CString& resref);
Parameters
• unsigned char nLevel -
• unsigned char alignment -
• CString& resref -
Remarks
CInfGame::GetFixedOrderCharacterId
long CInfGame::GetFixedOrderCharacterId(short nSlot);
Parameters
• short nSlot -
Return Value
Returns long
Remarks
1402 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::GetFixedOrderCharacterPortraitNum
short CInfGame::GetFixedOrderCharacterPortraitNum(long characterId);
Parameters
• long characterId -
Return Value
Returns short
Remarks
CInfGame::GetGroundPile
long CInfGame::GetGroundPile(long iSprite);
Parameters
• long iSprite -
Return Value
Returns long
Remarks
CInfGame::GetImportCharacters
CStringList* CInfGame::GetImportCharacters();
Return Value
CStringList*
Remarks
CInfGame::GetImportableSaveGame
CStringList* CInfGame::GetImportableSaveGames();
Return Value
CStringList*
Remarks
CInfGame::GetItemFromStore
6.70. CInfGame Class 1403
EEex Documentation, Release 1.0
CItem* CInfGame::GetItemFromStore(CResRef& cResStore,CResRef& ref);
Parameters
• CResRef & cResStore -
• CResRef & ref -
Return Value
CItem*
Remarks
CInfGame::GetItemTint
CResRef CInfGame::GetItemTint(CItem* pItem);
Parameters
• CItem* pItem -
Return Value
CResRef
Remarks
CInfGame::GetJournalOpenable
int CInfGame::GetJournalOpenable();
Return Value
Returns int
Remarks
CInfGame::GetNumGroundSlots
short CInfGame::GetNumGroundSlots(long nContainerId);
Parameters
• long nContainerId -
Return Value
Returns short
Remarks
1404 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::GetNumQuickWeaponSlots
short CInfGame::GetNumQuickWeaponSlots(short nPortraitNum);
Parameters
• short nPortraitNum -
Return Value
Returns short
Remarks
CInfGame::GetNumSummoned
long CInfGame::GetNumSummoned();
Return Value
Returns long
Remarks
CInfGame::GetNumSummonedDiva
long CInfGame::GetNumSummonedDiva();
Return Value
Returns long
Remarks
CInfGame::GetPaletteSize
int CInfGame::GetPaletteSize(int nPickRange);
Parameters
• int nPickRange -
Return Value
Returns int
Remarks
CInfGame::GetParchmentCaption
6.70. CInfGame Class 1405
EEex Documentation, Release 1.0
unsigned long CInfGame::GetParchmentCaption(CString sParchment);
Parameters
• CString sParchment -
Return Value
Returns unsigned long
Remarks
CInfGame::GetPortraits
CStringList* CInfGame::GetPortraits();
Return Value
CStringList*
Remarks
CInfGame::GetProtagonist
long CInfGame::GetProtagonist();
Return Value
Returns long
Remarks
CInfGame::GetReputation
short CInfGame::GetReputation();
Return Value
Returns short
Remarks
1406 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::GetSaveGameName
CString CInfGame::GetSaveGameName(int nSlot,int resolve);
Parameters
• int nSlot -
• int resolve -
Return Value
CString
Remarks
CInfGame::GetSaveGameTime
int CInfGame::GetSaveGameTime(CString sFileName);
Parameters
• CString sFileName -
Return Value
Returns int
Remarks
CInfGame::GetSaveGames
CStringList* CInfGame::GetSaveGames(unsigned char bReturnFullPath,unsigned char bBothMPandSP,int bAllowReadOnly,int bHideTOB,int bHideSOA,int bMigrate);
Parameters
• unsigned char bReturnFullPath -
• unsigned char bBothMPandSP -
• int bAllowReadOnly -
• int bHideTOB -
• int bHideSOA -
• int bMigrate -
6.70. CInfGame Class 1407
EEex Documentation, Release 1.0
Return Value
CStringList*
Remarks
CInfGame::GetScripts
CStringList* CInfGame::GetScripts();
Return Value
CStringList*
Remarks
CInfGame::GetScrollSpeed
unsigned long CInfGame::GetScrollSpeed();
Return Value
Returns unsigned long
Remarks
CInfGame::GetServerStore
CStore* CInfGame::GetServerStore(CResRef& store);
Parameters
• CResRef & store -
Return Value
CStore*
Remarks
CInfGame::GetSounds
CStringList* CInfGame::GetSounds();
Return Value
CStringList*
Remarks
1408 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::GetTotalPartyKillsNumber
unsigned long CInfGame::GetTotalPartyKillsNumber();
Return Value
Returns unsigned long
Remarks
CInfGame::GetWorldmapName
CString CInfGame::GetWorldmapName();
Return Value
CString
Remarks
CInfGame::HealParty
int CInfGame::HealParty(int nHP,int bFirstHeal);
Parameters
• int nHP -
• int bFirstHeal -
Return Value
Returns int
Remarks
CInfGame::InitDifficulty
void CInfGame::InitDifficulty();
Remarks
6.70. CInfGame Class 1409
EEex Documentation, Release 1.0
CInfGame::InitGame
void CInfGame::InitGame(unsigned char bProgressBarRequired,unsigned char bProgressBarInPlace);
Parameters
• unsigned char bProgressBarRequired -
• unsigned char bProgressBarInPlace -
Remarks
CInfGame::IntegrateAddInAreas
void CInfGame::IntegrateAddInAreas(unsigned long nMap,CString sAreaData);
Parameters
• unsigned long nMap -
• CString sAreaData -
Remarks
CInfGame::InventoryInfoGround
void CInfGame::InventoryInfoGround(long nContainerId,short nSlotNum,CItem*& pItem,unsigned long& description,CResRef& cResIcon,CResRef& cResItem,unsigned short& wCount);
Parameters
• long nContainerId -
• short nSlotNum -
• CItem*& pItem -
• unsigned long& description -
• CResRef & cResIcon -
• CResRef & cResItem -
• unsigned short& wCount -
Remarks
1410 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::InventoryInfoPersonal
void CInfGame::InventoryInfoPersonal(short nPortraitNum,short nSlotNum,CItem*& pItem,unsigned long& description,CResRef& cResIcon,CResRef& cResItem,unsigned short& wCount);
Parameters
• short nPortraitNum -
• short nSlotNum -
• CItem*& pItem -
• unsigned long& description -
• CResRef & cResIcon -
• CResRef & cResItem -
• unsigned short& wCount -
Remarks
CInfGame::Is3DSound
int CInfGame::Is3DSound(int nChannel);
Parameters
• int nChannel -
Return Value
Returns int
Remarks
CInfGame::IsAlly
int CInfGame::IsAlly(long id);
Parameters
• long id -
Return Value
Returns int
Remarks
6.70. CInfGame Class 1411
EEex Documentation, Release 1.0
CInfGame::IsFamiliar
int CInfGame::IsFamiliar(long id);
Parameters
• long id -
Return Value
Returns int
Remarks
CInfGame::LeaveAreaLuaMultiplayer
void CInfGame::LeaveAreaLuaMultiplayer(long iSprite,CPoint ptStart,short nDirection,CString sAreaName,CString sParchment);
Parameters
• long iSprite -
• CPoint ptStart -
• short nDirection -
• CString sAreaName -
• CString sParchment -
Return Value
Remarks
CInfGame::LeaveAreaNameMultiplayer
void CInfGame::LeaveAreaNameMultiplayer(long iLSprite,long iTrigger,CString sAreaName);
Parameters
• long iLSprite -
• long iTrigger -
• CString sAreaName -
Remarks
1412 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::LoadArea
CGameArea* CInfGame::LoadArea(CString areaName,unsigned char nTravelScreenImageToUse,unsigned char bProgressBarRequired,unsigned char bProgressBarInPlace);
Parameters
• CString areaName -
• unsigned char nTravelScreenImageToUse -
• unsigned char bProgressBarRequired -
• unsigned char bProgressBarInPlace -
Return Value
CGameArea*
Remarks
CInfGame::LoadGame
int CInfGame::LoadGame(unsigned char bProgressBarRequired,unsigned char bProgressBarInPlace);
Parameters
• unsigned char bProgressBarRequired -
• unsigned char bProgressBarInPlace -
Return Value
Returns int
Remarks
CInfGame::LoadKey
void CInfGame::LoadKey(int code,short cnt);
Parameters
• int code -
• short cnt -
Return Value
Remarks
6.70. CInfGame Class 1413
EEex Documentation, Release 1.0
CInfGame::LoadKeymap
void CInfGame::LoadKeymap();
Remarks
CInfGame::LoadMultiPlayerPermissions
void CInfGame::LoadMultiPlayerPermissions();
Remarks
CInfGame::LoadOptions
void CInfGame::LoadOptions();
Remarks
CInfGame::MakeCharacterProtagonist
void CInfGame::MakeCharacterProtagonist(long nID);
Parameters
• long nID -
Remarks
CInfGame::Marshal
void CInfGame::Marshal(unsigned char** pGame,long* nGame,unsigned char bProgressBarInPlace);
Parameters
• unsigned char** pGame -
• long* nGame -
• unsigned char bProgressBarInPlace -
Remarks
1414 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::MoveGlobals
void CInfGame::MoveGlobals(CString& sFromArea,CString& sToArea,CPoint& ptDest,long runningAIId);
Parameters
• CString& sFromArea -
• CString& sToArea -
• CPoint& ptDest -
• long runningAIId -
Remarks
CInfGame::MoveToCampaign
void CInfGame::MoveToCampaign(CString campaign);
Parameters
• CString campaign -
Remarks
CInfGame::MoveToExpansionMap
void CInfGame::MoveToExpansionMap(CString sMapRes,CString sArea,CPoint ptStartLoc);
Parameters
• CString sMapRes -
• CString sArea -
• CPoint ptStartLoc -
Remarks
CInfGame::MultiplayerSetCharacterCreationLocation
void CInfGame::MultiplayerSetCharacterCreationLocation();
Remarks
6.70. CInfGame Class 1415
EEex Documentation, Release 1.0
CInfGame::NewGame
void CInfGame::NewGame(unsigned char bProgressBarRequired,unsigned char bProgressBarInPlace);
Parameters
• unsigned char bProgressBarRequired -
• unsigned char bProgressBarInPlace -
Remarks
CInfGame::OnPortraitLClick
void CInfGame::OnPortraitLClick(unsigned long id);
Parameters
• unsigned long id -
Remarks
CInfGame::OnPortraitLDblClick
void CInfGame::OnPortraitLDblClick(unsigned long id);
Parameters
• unsigned long id -
Remarks
CInfGame::PanicRescueItem
void CInfGame::PanicRescueItem(CItem* pItem,long nCharacterId);
Parameters
• CItem* pItem -
• long nCharacterId -
Remarks
1416 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::PrivilegedSlot
unsigned char CInfGame::PrivilegedSlot(CString& sSaveGame);
Parameters
• CString& sSaveGame -
Return Value
Returns unsigned char
Remarks
CInfGame::ProgressBarCallback
void CInfGame::ProgressBarCallback(unsigned long dwSize,unsigned char bInitialize);
Parameters
• unsigned long dwSize -
• unsigned char bInitialize -
Remarks
CInfGame::PushGameSlot
void CInfGame::PushGameSlot(CSaveGameSlot* pSlot,int nSlot);
Parameters
• CSaveGameSlot* pSlot -
• int nSlot -
Remarks
CInfGame::ReadyCharacterTerminationSequence
void CInfGame::ReadyCharacterTerminationSequence();
Remarks
6.70. CInfGame Class 1417
EEex Documentation, Release 1.0
CInfGame::ReleaseServerStore
void CInfGame::ReleaseServerStore(CResRef& store);
Parameters
• CResRef & store -
Remarks
CInfGame::RememorizeSpells
void CInfGame::RememorizeSpells();
Remarks
CInfGame::RemoveCharacterFromAllies
int CInfGame::RemoveCharacterFromAllies(long id);
Parameters
• long id -
Return Value
Returns int
Remarks
CInfGame::RemoveCharacterFromFamiliars
int CInfGame::RemoveCharacterFromFamiliars(long id);
Parameters
• long id -
Return Value
Returns int
Remarks
1418 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::RemoveCharacterFromParty
int CInfGame::RemoveCharacterFromParty(long id,int& overflow,int addToNonPartyList);
Parameters
• long id -
• int& overflow -
• int addToNonPartyList -
Return Value
Returns int
Remarks
CInfGame::RemoveDisposableItem
void CInfGame::RemoveDisposableItem(CItem* pItem);
Parameters
• CItem* *pItem -
Remarks
CInfGame::RemoveFamiliarResRef
void CInfGame::RemoveFamiliarResRef(CResRef& resref,unsigned char nAlignment,unsigned char nLevel);
Parameters
• CResRef & resref -
• unsigned char nAlignment -
• unsigned char nLevel -
Remarks
6.70. CInfGame Class 1419
EEex Documentation, Release 1.0
CInfGame::RenderAppearance
void CInfGame::RenderAppearance(CPoint position,int bRenderEquipment);
Parameters
• CPoint position -
• int bRenderEquipment -
Remarks
CInfGame::RenderColorDisplay
void CInfGame::RenderColorDisplay(CRect r,int nPickRange,int frame);
Parameters
• CRect r -
• int nPickRange -
• int frame -
Remarks
CInfGame::RenderPalette
void CInfGame::RenderPalette(CRect r,int nPickRange);
Parameters
• CRect r -
• int nPickRange -
Remarks
CInfGame::RenderPortrait
1420 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CInfGame::RenderPortrait(unsigned long portraitId,CPoint& cpRenderPosition,CSize& szControl,int bPressed,int reorderHighlight,int selectFromMarker,CRect& rClip);
Parameters
• unsigned long portraitId -
• CPoint& cpRenderPosition -
• CSize& szControl -
• int bPressed -
• int reorderHighlight -
• int selectFromMarker -
• CRect& rClip -
Remarks
CInfGame::ReplaceItemInStore
int CInfGame::ReplaceItemInStore(CResRef& cResStore,CResRef& oldRef,CResRef& newRef);
Parameters
• CResRef & cResStore -
• CResRef & oldRef -
• CResRef & newRef -
Return Value
Returns int
Remarks
CInfGame::ReputationAdjustment
void CInfGame::ReputationAdjustment(short reputationAdjustment,int set);
Parameters
• short reputationAdjustment -
6.70. CInfGame Class 1421
EEex Documentation, Release 1.0
• int set -
Remarks
CInfGame::RestParty
unsigned char CInfGame::RestParty(unsigned char nSuggestedDreamToDisplay,int nHP,unsigned char bRenting,unsigned char bMovie,int nGP);
Parameters
• unsigned char nSuggestedDreamToDisplay -
• int nHP -
• unsigned char bRenting -
• unsigned char bMovie -
• int nGP -
Return Value
Returns unsigned char
Remarks
CInfGame::RestPartyPrivate
unsigned char CInfGame::RestPartyPrivate(unsigned char nSuggestedDreamToDisplay,int nHP,unsigned char bRenting,unsigned char bMovie,int nGP);
Parameters
• unsigned char nSuggestedDreamToDisplay -
• int nHP -
• unsigned char bRenting -
• unsigned char bMovie -
• int nGP -
Return Value
Returns unsigned char
Remarks
1422 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::RestorePartyToLocations
short CInfGame::RestorePartyToLocations(CGameSprite* pCaller,int pocketPlane);
Parameters
• CGameSprite* pCaller -
• int pocketPlane -
Return Value
Returns short
Remarks
CInfGame::SaveGame
int CInfGame::SaveGame(unsigned char bProgressBarRequired,unsigned char bProgressBarInPlace,unsigned char bSaveScreen,unsigned char exportSave);
Parameters
• unsigned char bProgressBarRequired -
• unsigned char bProgressBarInPlace -
• unsigned char bSaveScreen -
• unsigned char exportSave -
Return Value
Returns int
Remarks
CInfGame::SaveGameExists
int CInfGame::SaveGameExists(CString& sSaveGame,unsigned char nSaveRoot);
Parameters
• CString& sSaveGame -
• unsigned char nSaveRoot -
6.70. CInfGame Class 1423
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CInfGame::SaveMultiPlayerPermissions
void CInfGame::SaveMultiPlayerPermissions();
Remarks
CInfGame::SaveOptions
void CInfGame::SaveOptions();
Remarks
CInfGame::SelectAll
int CInfGame::SelectAll(unsigned char bPlaySound);
Parameters
• unsigned char bPlaySound -
Return Value
Returns int
Remarks
CInfGame::SelectCharacter
int CInfGame::SelectCharacter(long characterId,unsigned char bPlaySelectSound);
Parameters
• long characterId -
• unsigned char bPlaySelectSound -
Return Value
Returns int
Remarks
1424 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::SelectToolbar
void CInfGame::SelectToolbar();
Remarks
CInfGame::SetAppearanceColorsBody
void CInfGame::SetAppearanceColorsBody(unsigned char* appearanceColorsBody);
Parameters
• unsigned char* appearanceColorsBody -
Remarks
CInfGame::SetAppearanceColorsHelmet
void CInfGame::SetAppearanceColorsHelmet(unsigned char* appearanceColorsHelmet);
Parameters
• unsigned char* appearanceColorsHelmet -
Remarks
CInfGame::SetAppearanceColorsShield
void CInfGame::SetAppearanceColorsShield(unsigned char* appearanceColorsShield);
Parameters
• unsigned char* appearanceColorsShield -
Remarks
CInfGame::SetAppearanceColorsWeapon
void CInfGame::SetAppearanceColorsWeapon(unsigned char* appearanceColorsWeapon);
Parameters
• unsigned char* appearanceColorsWeapon -
Remarks
6.70. CInfGame Class 1425
EEex Documentation, Release 1.0
CInfGame::SetCampaign
int CInfGame::SetCampaign(CString campaign);
Parameters
• CString campaign -
Return Value
Returns int
Remarks
CInfGame::SetCharacterSlot
int CInfGame::SetCharacterSlot(int nCharacterSlot,long nCharacterId);
Parameters
• int nCharacterSlot -
• long nCharacterId -
Return Value
Returns int
Remarks
CInfGame::SetIconIndex
void CInfGame::SetIconIndex(unsigned char iconIndex);
Parameters
• unsigned char iconIndex -
Remarks
CInfGame::SetItemToStore
int CInfGame::SetItemToStore(CResRef& cResStore,CResRef& cResItem,int nItems,int itemFlags);
Parameters
1426 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CResRef & cResStore -
• CResRef & cResItem -
• int nItems -
• int itemFlags -
Return Value
Returns int
Remarks
CInfGame::SetLastTarget
void CInfGame::SetLastTarget(long id);
Parameters
• long id -
Remarks
CInfGame::SetProtagonist
void CInfGame::SetProtagonist(long nId);
Parameters
• long id -
Remarks
CInfGame::SetReputation
void CInfGame::SetReputation(short rep,int checkBounds);
Parameters
• short rep -
• int checkBounds -
Remarks
CInfGame::SetStartArea2DA
6.70. CInfGame Class 1427
EEex Documentation, Release 1.0
void CInfGame::SetStartArea2DA(CString start2da);
Parameters
• CString start2da -
Remarks
CInfGame::SetStartParty2DA
void CInfGame::SetStartParty2DA(CString startParty2da);
Parameters
• CString startParty2da -
Remarks
CInfGame::SetState
void CInfGame::SetState(short state,int allowDead);
Parameters
• short state -
• int allowDead -
Remarks
CInfGame::SetTravelScreenImageResRef
void CInfGame::SetTravelScreenImageResRef(CResRef& resrefTravelScreenImage);
Parameters
• CResRef & resrefTravelScreenImage -
Remarks
1428 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::SetVisibleArea
void CInfGame::SetVisibleArea(unsigned char nAreaId);
Parameters
• unsigned char nAreaId -
Remarks
CInfGame::SetupCharacters
void CInfGame::SetupCharacters(unsigned char bProgressBarInPlace);
Parameters
• unsigned char bProgressBarInPlace -
Remarks
CInfGame::ShowCreatureTooltips
void CInfGame::ShowCreatureTooltips(unsigned char time);
Parameters
• unsigned char time -
Remarks
CInfGame::StartCharacterTerminationSequence
void CInfGame::StartCharacterTerminationSequence();
Remarks
CInfGame::StepAnimation
void CInfGame::StepAnimation(unsigned char direction);
Parameters
• unsigned char direction -
Remarks
6.70. CInfGame Class 1429
EEex Documentation, Release 1.0
CInfGame::StorePartyLocations
void CInfGame::StorePartyLocations(int pocketPlane);
Parameters
• int pocketPlane -
Remarks
CInfGame::SwapCharacters
void CInfGame::SwapCharacters(unsigned long pos1,unsigned long pos2);
Parameters
• unsigned long pos1 -
• unsigned long pos2 -
Remarks
CInfGame::SwapItemGround
int CInfGame::SwapItemGround(long nContainerId,short nSlotNum,CItem*& pNewItem,unsigned long& errorCode,unsigned short wCount,unsigned char bFromServer);
Parameters
• long nContainerId -
• short nSlotNum -
• CItem*& pNewItem -
• unsigned long& errorCode -
• unsigned short wCount -
• unsigned char bFromServer -
Return Value
Returns int
Remarks
1430 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::SwapItemPersonal
int CInfGame::SwapItemPersonal(short nPortraitNum,short nSlotNum,CItem*& pNewItem,unsigned long& errorCode,unsigned short wCount,unsigned char bFromServer,CGameSprite* pSprite);
Parameters
• short nPortraitNum -
• short nSlotNum -
• CItem*& pNewItem -
• unsigned long& errorCode -
• unsigned short wCount -
• unsigned char bFromServer -
• CGameSprite* pSprite -
Return Value
Returns int
Remarks
CInfGame::SwapItemPersonalInventory
int CInfGame::SwapItemPersonalInventory(short nPortraitNum,CItem*& pNewItem,short nSlotNum,unsigned long& errorCode,unsigned short wCount,unsigned char bFromServer,int bAutoStacking,int bFlexibleSlot);
Parameters
• short nPortraitNum -
• CItem*& pNewItem -
• short nSlotNum -
• unsigned long& errorCode -
• unsigned short wCount -
• unsigned char bFromServer -
• int bAutoStacking -
6.70. CInfGame Class 1431
EEex Documentation, Release 1.0
• int bFlexibleSlot -
Return Value
Returns int
Remarks
CInfGame::SynchronousUpdate
void CInfGame::SynchronousUpdate();
Remarks
CInfGame::TakeItemFromStore
short CInfGame::TakeItemFromStore(CResRef& cResStore,CResRef& ref,int number);
Parameters
• CResRef & cResStore -
• CResRef & ref -
• int number -
Return Value
Returns short
Remarks
CInfGame::ToggleAI
unsigned char CInfGame::ToggleAI();
Return Value
Returns unsigned char
Remarks
1432 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfGame::Unmarshal
int CInfGame::Unmarshal(unsigned char* pGame,long nGame,unsigned char bProgressBarInPlace);
Parameters
• unsigned char* pGame -
• long nGame -
• unsigned char bProgressBarInPlace -
Return Value
Returns int
Remarks
CInfGame::UnselectAll
void CInfGame::UnselectAll();
Remarks
CInfGame::UpdateCharacterPartyOrder
unsigned char CInfGame::UpdateCharacterPartyOrder(long* pCharacterIds,short nOverflowCharacters,long* pOverflowCharacterIds);
Parameters
• long* pCharacterIds -
• short nOverflowCharacters -
• long* pOverflowCharacterIds -
Return Value
Returns unsigned char
Remarks
CInfGame::UpdateCharacterSlots
void CInfGame::UpdateCharacterSlots();
Remarks
6.70. CInfGame Class 1433
EEex Documentation, Release 1.0
CInfGame::UpdatePartyToExpansionPack
void CInfGame::UpdatePartyToExpansionPack(int bStart,int bForceDefault,long nXPGiven);
Parameters
• int bStart -
• int bForceDefault -
• long nXPGiven -
Remarks
CInfGame::UpdatePortrait
void CInfGame::UpdatePortrait(short nPortrait,unsigned long panelId);
Parameters
• short nPortrait -
• unsigned long panelId -
Return Value
Remarks
CInfGame::UpdateTokens
void CInfGame::UpdateTokens(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Remarks
CInfGame::UseMagicOnGround
int CInfGame::UseMagicOnGround(CPoint ptTarget);
Parameters
• CPoint ptTarget -
1434 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CInfGame::UseMagicOnObject
int CInfGame::UseMagicOnObject(long target);
Parameters
• long target -
Return Value
Returns int
Remarks
CInfGame::WorldEngineActivated
void CInfGame::WorldEngineActivated(CVidMode* pVidMode);
Parameters
• CVidMode* pVidMode -
Remarks
CInfGame::WorldEngineDeactivated
void CInfGame::WorldEngineDeactivated();
Remarks
6.71 CInfinity Class
• Overview
• Quick Reference
• Constructors
• Methods
6.71. CInfinity Class 1435
EEex Documentation, Release 1.0
6.71.1 Overview
Note: The CInfinity class handles drawing geometric and primitive shapes and rendering effects (zoom, weather,etc) on the world screen
The structure used for this class is CInfinity
6.71.2 Quick Reference
Quick Refvoid CInfinity::CInfinity()void CInfinity::~CInfinity()void CInfinity::AddAOECircle(CPoint center, int radius, unsigned long color)void CInfinity::AddAOECone(CPoint center, int radius, int cone, unsigned long color)void CInfinity::AddAOELine(CPoint center, CPoint target, unsigned long color)void CInfinity::AddAOERectangle(CPoint center, int width, int height, unsigned long color)void CInfinity::AdjustViewPosition(unsigned char nScrollState)void CInfinity::AdjustViewportForZoom()void CInfinity::AdjustZoom(float amount)void CInfinity::AIUpdate()unsigned char CInfinity::ApplyNightGlobalTint()int CInfinity::AttachVRamPool(CVRamPool* pNewVRPool)int CInfinity::AttachVRamRect(int x1, int y1, int x2, int y2)int CInfinity::AttachWED(CResWED* resNewWED, unsigned short areaType, unsigned char dayNightCode)void CInfinity::CallLightning(int xWorldPos, int yWorldPos)void CInfinity::ClearAOE()int CInfinity::DetachVRamRect()void CInfinity::DrawCone(CVidMode* pVidMode, int degrees, CPoint ptCenter, CPoint ptDest, int radiusX, int radiusY, unsigned long rgbColor)unsigned char CInfinity::DrawEllipse(CPoint& ptCenter, CSize& axes, unsigned long rgbColor)int CInfinity::DrawHighlightRect(CRect& rSquare, unsigned long rgbColor, unsigned char width)void CInfinity::DrawLine(CVidMode* pVidMode, CPoint ptCenter, CPoint ptDest, unsigned long rgbColor)void CInfinity::DrawRectangle(CVidMode* pVidMode, CPoint ptCenter, CPoint ptDest, int radiusX, int radiusY, unsigned long rgbColor)unsigned char CInfinity::FillPoly(CPoint* pPoly, const short nVertices, CRect& rClip, unsigned long rgbColor)void CInfinity::FitViewPosition(int& x, int& y, CRect r)int CInfinity::FreeWED()int CInfinity::FXBltFrom(CRect& rFXRect, int x, int y, int nRefPointX, int nRefPointY, unsigned long dwFlags)int CInfinity::FXBltFromClipped(CRect& rFXRect, int x, int y, int nRefPointX, int nRefPointY, unsigned long dwFlags, CRect rClip)int CInfinity::FXLock(CRect& rFXRect, unsigned long dwFlags)int CInfinity::FXLockPrepForLighting(CRect& rFx, CPoint& ptOnBkGrnd, CPoint& ptReference, CSize& dimensions, unsigned long rgbIntensities, unsigned long rgbLocalTint, unsigned long dwFlags)int CInfinity::FXPrep(CRect& rFXRect, unsigned long dwFlags, CPoint& ptPos, CPoint& ptReference)int CInfinity::FXRender(CVidCell* pVidCell, int nRefPointX, int nRefPointY, unsigned long dwFlags, int nTransValue)int CInfinity::FXRenderAlpha(CVidCell* pVidCell, int nRefPointX, int nRefPointY, unsigned long dwFlags, int nTransValue)int CInfinity::FXRenderClippingPolys(int nPosX, int nPosY, int nPosZ, CPoint& ptRef, CRect& rGCBounds, const unsigned char bDithered, unsigned long dwBlitFlags)int CInfinity::FXUnlock(unsigned long dwFlags, CRect* pFxRect, CPoint& ptRef)unsigned long CInfinity::GetFadedColor(unsigned long rgbBrighter, unsigned long rgbDarker, unsigned char nIntensity)unsigned long CInfinity::GetGlobalLighting(int bIgnoreTimeOfDay)void CInfinity::GetPointsOctant0(tagPOINT* pPoints, int nStartX, int nStartY, int nDx, int nDy, int nXDirection)
Continued on next page
1436 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 22 – continued from previous pagevoid CInfinity::GetPointsOctant1(tagPOINT* pPoints, int nStartX, int nStartY, int nDx, int nDy, int nXDirection)int CInfinity::GetSegmentPoints(tagPOINT** ppPoints, int nStartX, int nStartY, int nEndX, int nEndY)CPoint CInfinity::GetScreenCoordinates(CPoint pntWorld)void CInfinity::GetViewPosition(int& x, int& y)CPoint CInfinity::GetWorldCoordinates(CPoint& pntScreen)int CInfinity::InitViewPort(CRect& rRect)void CInfinity::InvalidateRainTiles()unsigned char CInfinity::OutlinePoly(CPoint* pPoly, const short nVertices, CRect& rClip, unsigned long rgbColor)int CInfinity::PostRender(CVidMode* pNewVidMode, CSearchBitmap* pVisibilityMap)void CInfinity::ReleaseZoom()unsigned long CInfinity::Render(CVidMode* pNewVidMode, int nScrollState)void CInfinity::RenderAOE(CVidMode* pVidMode)void CInfinity::RenderEdgeFade(CVidMode* pVidMode,:ref:CVisibilityMap<CVisibilityMap>* pVisibilityMap)void CInfinity::RenderFlash(CVidMode* pVidMode, unsigned long screenFlashRGB, unsigned char nTranslucency)void CInfinity::RenderFog(CVidMode* pVidMode, CVisibilityMap* pVisibilityMap)int CInfinity::RenderLightning(CRect& rSurface, int nStartX, int nStartY, int nEndX, int nEndY, unsigned long rgbCenter, unsigned long rgbMiddle, unsigned long rgbOuter)int CInfinity::RenderMessageScreen(CVidMode* pVidMode)void CInfinity::RenderTransitions(CVidMode* pVidMode, CSearchBitmap* pSearchMap)void CInfinity::RestoreZoom()CPoint CInfinity::ScreenToViewport(CPoint& p)CPoint CInfinity::ScreenToWorld(CPoint& p)void CInfinity::Scroll(CPoint ptDest, short speed)void CInfinity::SetCurrentWeather(unsigned long rgbOvercast, short nWeather, int nWeatherLevel, int nLightningFrequency)void CInfinity::SetApproachingDawn()void CInfinity::SetApproachingDusk()void CInfinity::SetDawn(unsigned char nIntensity, unsigned char bPlayDayNightMovie)void CInfinity::SetDawnMultiHost(unsigned char nIntensity)void CInfinity::SetDay()void CInfinity::SetDusk(unsigned char nIntensity, unsigned char bPlayDayNightMovie)void CInfinity::SetDuskMultiHost(unsigned char nIntensity)void CInfinity::SetMessageScreen(CResRef rrBitmap, unsigned long strId, unsigned long nDuration)void CInfinity::SetNight()void CInfinity::SetScreenShake(int bScreenShake, unsigned short duration, CPoint& screenShakeDelta)void CInfinity::SetScrollDest(CPoint& ptDest)int CInfinity::SetViewPort(CRect& rRect)int CInfinity::SetViewPosition(int x, int y, unsigned char bSetExactScale)void CInfinity::SetZoom(float fZoom)void CInfinity::SetZoomEnabled(int zoomEnabled)void CInfinity::SetZoomViewport(int width, int height)void CInfinity::StoreZoom()void CInfinity::SwapVRamTiles(unsigned short wFromTile, unsigned short wToTile)void CInfinity::UpdateLighting()
6.71.3 Constructors
Name DescriptionCInfinity::CInfinity Constructs a CInfinity objectCInfinity::~CInfinity Destroys a CInfinity object
6.71. CInfinity Class 1437
EEex Documentation, Release 1.0
CInfinity::CInfinity
Constructs a CInfinity object
void CInfinity::CInfinity();
Remarks
Constructs a CInfinity object
CInfinity::~CInfinity
Destroys the CInfinity object
void CInfinity::~CInfinity();
Remarks
Destroys the CInfinity object
6.71.4 Methods
Name DescriptionCInfinity::AddAOECircleCInfinity::AddAOEConeCInfinity::AddAOELineCInfinity::AddAOERectangleCInfinity::AdjustViewPositionCInfinity::AdjustViewportForZoomCInfinity::AdjustZoomCInfinity::AIUpdateCInfinity::ApplyNightGlobalTintCInfinity::AttachVRamPoolCInfinity::AttachVRamRectCInfinity::AttachWEDCInfinity::CallLightningCInfinity::ClearAOECInfinity::DetachVRamRectCInfinity::DrawConeCInfinity::DrawEllipseCInfinity::DrawHighlightRectCInfinity::DrawLineCInfinity::DrawRectangleCInfinity::FillPolyCInfinity::FitViewPositionCInfinity::FreeWEDCInfinity::FXBltFromCInfinity::FXBltFromClipped
Continued on next page
1438 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 23 – continued from previous pageCInfinity::FXLockCInfinity::FXLockPrepForLightingCInfinity::FXPrepCInfinity::FXRenderCInfinity::FXRenderAlphaCInfinity::FXRenderClippingPolysCInfinity::FXUnlockCInfinity::GetFadedColorCInfinity::GetGlobalLightingCInfinity::GetPointsOctant0CInfinity::GetPointsOctant1CInfinity::GetSegmentPointsCInfinity::GetScreenCoordinatesCInfinity::GetViewPositionCInfinity::GetWorldCoordinatesCInfinity::InitViewPortCInfinity::InvalidateRainTilesCInfinity::OutlinePolyCInfinity::PostRenderCInfinity::ReleaseZoomCInfinity::RenderCInfinity::RenderAOECInfinity::RenderEdgeFadeCInfinity::RenderFlashCInfinity::RenderFogCInfinity::RenderLightningCInfinity::RenderMessageScreenCInfinity::RenderTransitionsCInfinity::RestoreZoomCInfinity::ScreenToViewportCInfinity::ScreenToWorldCInfinity::ScrollCInfinity::SetCurrentWeatherCInfinity::SetApproachingDawnCInfinity::SetApproachingDuskCInfinity::SetDawnCInfinity::SetDawnMultiHostCInfinity::SetDayCInfinity::SetDuskCInfinity::SetDuskMultiHostCInfinity::SetMessageScreenCInfinity::SetNightCInfinity::SetScreenShakeCInfinity::SetScrollDestCInfinity::SetViewPortCInfinity::SetViewPositionCInfinity::SetZoomCInfinity::SetZoomEnabledCInfinity::SetZoomViewportCInfinity::StoreZoom
Continued on next page
6.71. CInfinity Class 1439
EEex Documentation, Release 1.0
Table 23 – continued from previous pageCInfinity::SwapVRamTilesCInfinity::UpdateLighting
CInfinity::AddAOECircle
void CInfinity::AddAOECircle(CPoint center,int radius,unsigned long color);
Parameters
• CPoint center -
• int radius -
• unsigned long color -
Remarks
CInfinity::AddAOECone
void CInfinity::AddAOECone(CPoint center,int radius,int cone,unsigned long color);
Parameters
• CPoint center -
• int radius -
• int cone -
• unsigned long color -
Remarks
CInfinity::AddAOELine
void CInfinity::AddAOELine(CPoint center,CPoint target,unsigned long color);
Parameters
• CPoint center -
• CPoint target -
1440 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• unsigned long color -
Remarks
CInfinity::AddAOERectangle
void CInfinity::AddAOERectangle(CPoint center,int width,int height,unsigned long color);
Parameters
• CPoint center -
• int width -
• int height -
• unsigned long color -
Remarks
CInfinity::AdjustViewPosition
void CInfinity::AdjustViewPosition(unsigned char nScrollState);
Parameters
• unsigned char nScrollState -
Remarks
CInfinity::AdjustViewportForZoom
void CInfinity::AdjustViewportForZoom();
Remarks
CInfinity::AdjustZoom
void CInfinity::AdjustZoom(float amount);
Parameters
• float amount -
Remarks
6.71. CInfinity Class 1441
EEex Documentation, Release 1.0
CInfinity::AIUpdate
void CInfinity::AIUpdate();
Remarks
CInfinity::ApplyNightGlobalTint
unsigned char CInfinity::ApplyNightGlobalTint();
Return Value
Returns unsigned char
Remarks
CInfinity::AttachVRamPool
int CInfinity::AttachVRamPool(CVRamPool* pNewVRPool);
Parameters
• CVRamPool* pNewVRPool -
Return Value
Returns int
Remarks
CInfinity::AttachVRamRect
int CInfinity::AttachVRamRect(int x1,int y1,int x2,int y2);
Parameters
• int x1 -
• int y1 -
• int x2 -
• int y2 -
Return Value
Returns int
Remarks
1442 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfinity::AttachWED
int CInfinity::AttachWED(CResWED* resNewWED,unsigned short areaType,unsigned char dayNightCode);
Parameters
• CResWED* resNewWED -
• unsigned short areaType -
• unsigned char dayNightCode -
Return Value
Returns int
Remarks
CInfinity::CallLightning
void CInfinity::CallLightning(int xWorldPos,int yWorldPos);
Parameters
• int xWorldPos -
• int yWorldPos -
Remarks
CInfinity::ClearAOE
void CInfinity::ClearAOE();
Remarks
CInfinity::DetachVRamRect
int CInfinity::DetachVRamRect();
Return Value
Returns int
Remarks
6.71. CInfinity Class 1443
EEex Documentation, Release 1.0
CInfinity::DrawCone
void CInfinity::DrawCone(CVidMode* pVidMode,int degrees,CPoint ptCenter,CPoint ptDest,int radiusX,int radiusY,unsigned long rgbColor);
Parameters
• CVidMode* pVidMode -
• int degrees -
• CPoint ptCenter -
• CPoint ptDest -
• int radiusX -
• int radiusY -
• unsigned long rgbColor -
Remarks
CInfinity::DrawEllipse
unsigned char CInfinity::DrawEllipse(CPoint& ptCenter,CSize& axes,unsigned long rgbColor);
Parameters
• CPoint& ptCenter -
• CSize& axes -
• unsigned long rgbColor -
Return Value
Returns unsigned char
Remarks
CInfinity::DrawHighlightRect
int CInfinity::DrawHighlightRect(CRect& rSquare,unsigned long rgbColor,unsigned char width);
1444 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Parameters
• CRect& rSquare -
• unsigned long rgbColor -
• unsigned char width -
Return Value
Returns int
Remarks
CInfinity::DrawLine
void CInfinity::DrawLine(CVidMode* pVidMode,CPoint ptCenter,CPoint ptDest,unsigned long rgbColor);
Parameters
• CVidMode* pVidMode -
• CPoint ptCenter -
• CPoint ptDest -
• unsigned long rgbColor -
Remarks
CInfinity::DrawRectangle
void CInfinity::DrawRectangle(CVidMode* pVidMode,CPoint ptCenter,CPoint ptDest,int radiusX,int radiusY,unsigned long rgbColor);
Parameters
• CVidMode* pVidMode -
• CPoint ptCenter -
• CPoint ptDest -
• int radiusX -
• int radiusY -
• unsigned long rgbColor -
Remarks
6.71. CInfinity Class 1445
EEex Documentation, Release 1.0
CInfinity::FillPoly
unsigned char CInfinity::FillPoly(CPoint* pPoly,const short nVertices,CRect& rClip,unsigned long rgbColor);
Parameters
• CPoint* pPoly -
• const short nVertices -
• CRect& rClip -
• unsigned long rgbColor -
Return Value
Returns unsigned char
Remarks
CInfinity::FitViewPosition
void CInfinity::FitViewPosition(int& x,int& y,CRect r);
Parameters
• int‘‘& x -
• int‘‘& y -
• CRect r -
Remarks
CInfinity::FreeWED
int CInfinity::FreeWED();
Return Value
Returns int
Remarks
CInfinity::FXBltFrom<CInfinityFXBltFrom
1446 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
int CInfinity::FXBltFrom(CRect& rFXRect,int x,int y,int nRefPointX,int nRefPointY,unsigned long dwFlags);
Parameters
• CRect& rFXRect -
• int x -
• int y -
• int nRefPointX -
• int nRefPointY -
• unsigned long dwFlags -
Return Value
Returns int
Remarks
CInfinity::FXBltFromClipped
int CInfinity::FXBltFromClipped(CRect& rFXRect,int x,int y,int nRefPointX,int nRefPointY,unsigned long dwFlags,CRect rClip);
Parameters
• CRect& rFXRect -
• int x -
• int y -
• int nRefPointX -
• int nRefPointY -
• unsigned long dwFlags -
• CRect rClip -
Return Value
Returns int
Remarks
6.71. CInfinity Class 1447
EEex Documentation, Release 1.0
CInfinity::FXLock
int CInfinity::FXLock(CRect& rFXRect,unsigned long dwFlags);
Parameters
• CRect& rFXRect -
• unsigned long dwFlags -
Return Value
Returns int
Remarks
CInfinity::FXLockPrepForLighting
int CInfinity::FXLockPrepForLighting(CRect& rFx,CPoint& ptOnBkGrnd,CPoint& ptReference,CSize& dimensions,unsigned long rgbIntensities,unsigned long rgbLocalTint,unsigned long dwFlags);
Parameters
• CRect& rFx -
• CPoint& ptOnBkGrnd -
• CPoint& ptReference -
• CSize& dimensions -
• unsigned long rgbIntensities -
• unsigned long rgbLocalTint -
• unsigned long dwFlags -
Return Value
Returns int
Remarks
CInfinity::FXPrep
int CInfinity::FXPrep(CRect& rFXRect,unsigned long dwFlags,CPoint& ptPos,CPoint& ptReference);
1448 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Parameters
• CRect& rFXRect -
• unsigned long dwFlags -
• CPoint& ptPos -
• CPoint& ptReference -
Return Value
Returns int
Remarks
CInfinity::FXRender
int CInfinity::FXRender(CVidCell* pVidCell,int nRefPointX,int nRefPointY,unsigned long dwFlags,int nTransValue);
Parameters
• CVidCell* pVidCell -
• int nRefPointX -
• int nRefPointY -
• unsigned long dwFlags -
• int nTransValue -
Return Value
Returns int
Remarks
CInfinity::FXRenderAlpha
int CInfinity::FXRenderAlpha(CVidCell* pVidCell,int nRefPointX,int nRefPointY,unsigned long dwFlags,int nTransValue);
Parameters
• CVidCell* pVidCell -
• int nRefPointX -
• int nRefPointY -
6.71. CInfinity Class 1449
EEex Documentation, Release 1.0
• unsigned long dwFlags -
• int nTransValue -
Return Value
Returns int
Remarks
CInfinity::FXRenderClippingPolys
int CInfinity::FXRenderClippingPolys(int nPosX,int nPosY,int nPosZ,CPoint& ptRef,CRect& rGCBounds,const unsigned char bDithered,unsigned long dwBlitFlags);
Parameters
• int nPosX -
• int nPosY -
• int nPosZ -
• CPoint& ptRef -
• CRect& rGCBounds -
• const unsigned char bDithered -
• unsigned long dwBlitFlags -
Return Value
Returns int
Remarks
CInfinity::FXUnlock
int CInfinity::FXUnlock(unsigned long dwFlags,CRect* pFxRect,CPoint& ptRef);
Parameters
• unsigned long dwFlags -
• CRect* pFxRect -
• CPoint& ptRef -
1450 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CInfinity::GetFadedColor
unsigned long CInfinity::GetFadedColor(unsigned long rgbBrighter,unsigned long rgbDarker,unsigned char nIntensity);
Parameters
• unsigned long rgbBrighter -
• unsigned long rgbDarker -
• unsigned char nIntensity -
Return Value
Returns unsigned long
Remarks
CInfinity::GetGlobalLighting
unsigned long CInfinity::GetGlobalLighting(int bIgnoreTimeOfDay);
Parameters
• int bIgnoreTimeOfDay -
Return Value
Returns unsigned long
Remarks
CInfinity::GetPointsOctant0
void CInfinity::GetPointsOctant0(POINT* pPoints,int nStartX,int nStartY,int nDx,int nDy,int nXDirection);
Parameters
• POINT* pPoints -
6.71. CInfinity Class 1451
EEex Documentation, Release 1.0
• int nStartX -
• int nStartY -
• int nDx -
• int nDy -
• int nXDirection -
Remarks
CInfinity::GetPointsOctant1
void CInfinity::GetPointsOctant1(POINT* pPoints,int nStartX,int nStartY,int nDx,int nDy,int nXDirection);
Parameters
• POINT* pPoints -
• int nStartX -
• int nStartY -
• int nDx -
• int nDy -
• int nXDirection -
Remarks
CInfinity::GetSegmentPoints
int CInfinity::GetSegmentPoints(POINT** ppPoints,int nStartX,int nStartY,int nEndX,int nEndY);
Parameters
• POINT** ppPoints -
• int nStartX -
• int nStartY -
• int nEndX -
• int nEndY -
1452 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CInfinity::GetScreenCoordinates
CPoint CInfinity::GetScreenCoordinates(CPoint pntWorld);
Parameters
• CPoint pntWorld -
Return Value
Returns CPoint
Remarks
CInfinity::GetViewPosition
void CInfinity::GetViewPosition(int& x,int& y);
Parameters
• int& x -
• int& y -
Remarks
CInfinity::GetWorldCoordinates
CPoint CInfinity::GetWorldCoordinates(CPoint& pntScreen);
Parameters
• CPoint& pntScreen -
Return Value
Returns CPoint
Remarks
CInfinity::InitViewPort
6.71. CInfinity Class 1453
EEex Documentation, Release 1.0
int CInfinity::InitViewPort(CRect& rRect);
Parameters
• CRect& rRect -
Return Value
Returns int
Remarks
CInfinity::InvalidateRainTiles
void CInfinity::InvalidateRainTiles();
Remarks
CInfinity::OutlinePoly
unsigned char CInfinity::OutlinePoly(CPoint* pPoly,const short nVertices,CRect& rClip,unsigned long rgbColor);
Parameters
• CPoint* pPoly -
• const short nVertices -
• CRect& rClip -
• unsigned long rgbColor -
Return Value
Returns unsigned char
Remarks
CInfinity::PostRender
int CInfinity::PostRender(CVidMode* pNewVidMode,CSearchBitmap* pVisibilityMap);
Parameters
• CVidMode* pNewVidMode -
• CSearchBitmap* pVisibilityMap -
1454 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CInfinity::ReleaseZoom
void CInfinity::ReleaseZoom();
Remarks
CInfinity::Render
unsigned long CInfinity::Render(CVidMode* pNewVidMode,int nScrollState);
Parameters
• CVidMode* pNewVidMode -
• int nScrollState -
Return Value
Returns unsigned long
Remarks
CInfinity::RenderAOE
void CInfinity::RenderAOE(CVidMode* pVidMode);
Parameters
• CVidMode* pVidMode -
Remarks
CInfinity::RenderEdgeFade
void CInfinity::RenderEdgeFade(CVidMode* pVidMode,CVisibilityMap* pVisibilityMap);
Parameters
• CVidMode* pVidMode -
6.71. CInfinity Class 1455
EEex Documentation, Release 1.0
• CVisibilityMap* pVisibilityMap -
Remarks
CInfinity::RenderFlash
void CInfinity::RenderFlash(CVidMode* pVidMode,unsigned long screenFlashRGB,unsigned char nTranslucency);
Parameters
• CVidMode* pVidMode -
• unsigned long screenFlashRGB -
• unsigned char nTranslucency -
Remarks
CInfinity::RenderFog
void CInfinity::RenderFog(CVidMode* pVidMode,CVisibilityMap* pVisibilityMap);
Parameters
• CVidMode* pVidMode -
• CVisibilityMap* pVisibilityMap -
Remarks
CInfinity::RenderLightning
int CInfinity::RenderLightning(CRect& rSurface,int nStartX,int nStartY,int nEndX,int nEndY,unsigned long rgbCenter,unsigned long rgbMiddle,unsigned long rgbOuter);
Parameters
• CRect& rSurface* -
• int nStartX* -
1456 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• int nStartY* -
• int nEndX* -
• int nEndY* -
• unsigned long rgbCenter -
• unsigned long rgbMiddle -
• unsigned long rgbOuter -
Return Value
Returns int
Remarks
CInfinity::RenderMessageScreen
int CInfinity::RenderMessageScreen(CVidMode* pVidMode);
Parameters
• CVidMode* pVidMode -
Return Value
Returns int
Remarks
CInfinity::RenderTransitions
void CInfinity::RenderTransitions(CVidMode* pVidMode,CSearchBitmap* pSearchMap);
Parameters
• CVidMode* pVidMode -
• CSearchBitmap* pSearchMap -
Remarks
CInfinity::RestoreZoom
void CInfinity::RestoreZoom();
Remarks
6.71. CInfinity Class 1457
EEex Documentation, Release 1.0
CInfinity::ScreenToViewport
CPoint CInfinity::ScreenToViewport(CPoint& p);
Parameters
• CPoint& p -
Return Value
Returns CPoint
Remarks
CInfinity::ScreenToWorld
CPoint CInfinity::ScreenToWorld(CPoint& p);
Parameters
• CPoint& p -
Return Value
Returns CPoint
Remarks
CInfinity::Scroll
void CInfinity::Scroll(CPoint ptDest,short speed);
Parameters
• CPoint ptDest -
• short speed -
Remarks
CInfinity::SetCurrentWeather
void CInfinity::SetCurrentWeather(unsigned long rgbOvercast,short nWeather,int nWeatherLevel,int nLightningFrequency);
Parameters
1458 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• unsigned long rgbOvercast -
• short nWeather -
• int nWeatherLevel -
• int nLightningFrequency -
Remarks
CInfinity::SetApproachingDawn
void CInfinity::SetApproachingDawn();
Remarks
CInfinity::SetApproachingDusk
void CInfinity::SetApproachingDusk();
Remarks
CInfinity::SetDawn
void CInfinity::SetDawn(unsigned char nIntensity,unsigned char bPlayDayNightMovie);
Parameters
• unsigned char nIntensity -
• unsigned char bPlayDayNightMovie -
Remarks
CInfinity::SetDawnMultiHost
void CInfinity::SetDawnMultiHost(unsigned char nIntensity);
Parameters
• unsigned char nIntensity -
Remarks
6.71. CInfinity Class 1459
EEex Documentation, Release 1.0
CInfinity::SetDay
void CInfinity::SetDay();
Remarks
CInfinity::SetDusk<CInfinitySetDusk
void CInfinity::SetDusk(unsigned char nIntensity,unsigned char bPlayDayNightMovie);
Parameters
• unsigned char nIntensity -
• unsigned char bPlayDayNightMovie -
Remarks
CInfinity::SetDuskMultiHost
void CInfinity::SetDuskMultiHost(unsigned char nIntensity);
Parameters
• unsigned char nIntensity -
Remarks
CInfinity::SetMessageScreen
void CInfinity::SetMessageScreen(CResRef rrBitmap,unsigned long strId,unsigned long nDuration);
Parameters
• CResRef rrBitmap -
• unsigned long strId -
• unsigned long nDuration -
Remarks
CInfinity::SetNight
1460 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CInfinity::SetNight();
Remarks
CInfinity::SetScreenShake
void CInfinity::SetScreenShake(int bScreenShake,unsigned short duration,CPoint& screenShakeDelta);
Parameters
• int bScreenShake -
• unsigned short duration -
• CPoint& screenShakeDelta -
Remarks
CInfinity::SetScrollDest
void CInfinity::SetScrollDest(CPoint& ptDest);
Parameters
• CPoint& ptDest -
Remarks
CInfinity::SetViewPort
int CInfinity::SetViewPort(CRect& rRect);
Parameters
• CRect& rRect -
Return Value
Returns int
Remarks
CInfinity::SetViewPosition
6.71. CInfinity Class 1461
EEex Documentation, Release 1.0
int CInfinity::SetViewPosition(int x,int y,unsigned char bSetExactScale);
Parameters
• int x -
• int y -
• unsigned char bSetExactScale -
Return Value
Returns int
Remarks
CInfinity::SetZoom
void CInfinity::SetZoom(float fZoom);
Parameters
• float fZoom -
Remarks
CInfinity::SetZoomEnabled
void CInfinity::SetZoomEnabled(int zoomEnabled);
Parameters
• int zoomEnabled -
Remarks
CInfinity::SetZoomViewport
void CInfinity::SetZoomViewport(int width,int height);
Parameters
• int width -
• int height -
Remarks
1462 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CInfinity::StoreZoom
void CInfinity::StoreZoom();
Remarks
CInfinity::SwapVRamTiles
void CInfinity::SwapVRamTiles(unsigned short wFromTile,unsigned short wToTile);
Parameters
• unsigned short wFromTile -
• unsigned short wToTile -
Remarks
CInfinity::UpdateLighting
void CInfinity::UpdateLighting();
Remarks
6.72 CInfTileSet Class
The structure used for this class is CInfTileSet
Functionsvoid CInfTileSet::CInfTileSet(CVRamPool* pNewVRPool)void CInfTileSet::~CInfTileSet()int CInfTileSet::AttachToVRam(int nTile)int CInfTileSet::DettachFromVRam(int nTile)void CInfTileSet::ReadyTexture(unsigned int nTexId, int nTile, int nStencilTile, TILE_CODE& tileCode, un-signed char nDualTileCode, unsigned long dwFlags)int CInfTileSet::Render(int nTile, int nStencilTile, CRect& rDest, int x, int y, TILE_CODE& tileCode, unsignedlong dwFlags, unsigned char nDualTileCode, unsigned char nDayIntensity)void CInfTileSet::RenderTexture(unsigned int nTexId, CRect& rDest, int x, int y, TILE_CODE& tileCode, un-signed long dwFlags)int CInfTileSet::SetResID(unsigned int nNewID, CResRef cResRef, unsigned int nNewDualID, CResRef cDual-ResRef)
6.72. CInfTileSet Class 1463
EEex Documentation, Release 1.0
6.72.1 Constructors
Name DescriptionCInfTileSet::CInfTileSet Constructs a CInfTileSet objectCInfTileSet::~CInfTileSet Destroys a CInfTileSet object
CInfTileSet::CInfTileSet
Constructs a CInfTileSet object
void CInfTileSet::CInfTileSet(CVRamPool* pNewVRPool);
Parameters
• CVRamPool* pNewVRPool -
Remarks
Constructs a CInfTileSet object
CInfTileSet::~CInfTileSet
Destroys the CInfTileSet object
void CInfTileSet::~CInfTileSet();
Remarks
Destroys the CInfTileSet object
6.72.2 Methods
Name DescriptionCInfTileSet::AttachToVRamCInfTileSet::DettachFromVRamCInfTileSet::ReadyTextureCInfTileSet::RenderCInfTileSet::RenderTextureCInfTileSet::SetResID
CInfTileSet::AttachToVRam
int CInfTileSet\:\:AttachToVRam(int nTile);
Parameters
• int nTile -
1464 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CInfTileSet::DettachFromVRam
int CInfTileSet\:\:DettachFromVRam(int nTile);
Parameters
• int nTile -
Return Value
Returns int
Remarks
CInfTileSet::ReadyTexture
void CInfTileSet\:\:ReadyTexture(unsigned int nTexId,int nTile,int nStencilTile,TILE_CODE& tileCode,unsigned char nDualTileCode,unsigned long dwFlags);
Parameters
• unsigned int nTexId -
• int nTile -
• int nStencilTile -
• TILE_CODE& tileCode -
• unsigned char nDualTileCode -
• unsigned long dwFlags -
Remarks
CInfTileSet::Render
6.72. CInfTileSet Class 1465
EEex Documentation, Release 1.0
int CInfTileSet\:\:Render(int nTile,int nStencilTile,:ref:`CRect<CRect>`\& rDest,int x,int y,TILE_CODE& tileCode,unsigned long dwFlags,unsigned char nDualTileCode,unsigned char nDayIntensity);
Parameters
• int nTile -
• int nStencilTile -
• CRect& rDest -
• int x -
• int y -
• TILE_CODE& tileCode -
• unsigned long dwFlags -
• unsigned char nDualTileCode -
• unsigned char nDayIntensity -
Return Value
Returns int
Remarks
CInfTileSet::RenderTexture
void CInfTileSet\:\:RenderTexture(unsigned int nTexId,:ref:`CRect<CRect>`\& rDest,int x,int y,TILE_CODE& tileCode,unsigned long dwFlags);
Parameters
• unsigned int nTexId -
• CRect& rDest -
• int x -
• int y -
• TILE_CODE& tileCode -
• unsigned long dwFlags -
1466 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Remarks
CInfTileSet::SetResID
int CInfTileSet\:\:SetResID(unsigned int nNewID,:ref:`CResRef<CResRef>` cResRef,unsigned int nNewDualID,:ref:`CResRef<CResRef>` cDualResRef);
Parameters
• unsigned int nNewID -
• CResRef cResRef -
• unsigned int nNewDualID -
• CResRef cDualResRef -
Return Value
Returns int
Remarks
6.73 CItem Class
• Overview
• Quick Reference
• Constructors
• Methods
• Operators
6.73.1 Overview
Note: The CItem class handles game items and equiptment
The structures used for this class are CItem, CResItem, Item_Header_st, Item_ability_st, Item_effect_st
6.73.2 Quick Reference
6.73. CItem Class 1467
EEex Documentation, Release 1.0
Quick Refvoid CItem::CItem()void CItem::CItem(CItem& item)void CItem::CItem(CCreatureFileItem& item)void CItem::CItem(CResRef id, unsigned short useCount1, unsigned short useCount2, unsigned short useCount3, unsigned short wear, unsigned long flags)virtual void CItem::~CItem()int CItem::Demand()void CItem::Equip(CGameSprite* pSprite, long slotNum, int animationOnly)Item_ability_st* CItem::GetAbility(long abilityNum)int CItem::GetAbilityCount()CGameEffect* CItem::GetAbilityEffect(long abilityNum, long effectNum, CGameObject* pObject)unsigned short CItem::GetAnimationType()unsigned long CItem::GetBaseValue()unsigned long CItem::GetDescription()unsigned long CItem::GetFlagsFile()unsigned long CItem::GetGenericName()CResRef CItem::GetGroundIcon()int CItem::GetInventorySlotType()CCreatureFileItem CItem::GetItemFile()CResRef CItem::GetItemIcon()const unsigned short CItem::GetItemType()unsigned short CItem::GetLoreValue()unsigned short CItem::GetMaxStackable()unsigned short CItem::GetMaxUsageCount(int nAbility)unsigned char CItem::GetMinCHRRequired()unsigned char CItem::GetMinCONRequired()unsigned char CItem::GetMinDEXRequired()unsigned char CItem::GetMinINTRequired()unsigned char CItem::GetMinLevelRequired()unsigned char CItem::GetMinSTRBonusRequired()unsigned char CItem::GetMinSTRRequired()unsigned char CItem::GetMinWISRequired()unsigned long CItem::GetNotUsableBy()unsigned long CItem::GetNotUsableBy2()unsigned char CItem::GetProficiencyType()CString CItem::GetUsabilityText()unsigned short CItem::GetUsageCount(int nAbility)CResRef CItem::GetUsedUpItemId()unsigned long CItem::GetWeight()void CItem::LoadUsability()void CItem::LoadWeaponIdentification(CWeaponIdentification& weaponId)void CItem::PushToLua(int skipDescriptionText)void CItem::ResolveRandomItem(CResRef & id)void CItem::SetResRef(CResRef & cNewResRef, int bSetAutoRequest)void CItem::SetUsageCount(int nAbility, unsigned short wUseCount)void CItem::SetWear(unsigned short newWear)unsigned char CItem::TranslateAnimationType(CString& equipCode, CGameSprite* pSprite)void CItem::Unequip(CGameSprite* pSprite, long slotNum, int recalculateEffects, int animationOnly)CItem& CItem::operator=(CItem& item)bool CItem::operator!=(CItem& item)
1468 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.73.3 Constructors
Name DescriptionCItem::CItem Constructs a CItem objectCItem::~CItem Destroys a CItem object
CItem::CItem
Constructs a CItem object
void CItem::CItem();
Remarks
Constructs a CItem object
CItem::CItem
Constructs a CItem object
void CItem::CItem(CItem& item);
Parameters
• CItem& item -
Remarks
Constructs a CItem object
CItem::CItem
Constructs a CItem object
void CItem::CItem(CCreatureFileItem& item);
Parameters
• CCreatureFileItem& item -
Remarks
Constructs a CItem object
CItem::CItem
Constructs a CItem object
6.73. CItem Class 1469
EEex Documentation, Release 1.0
void CItem::CItem(CResRef id,unsigned short useCount1,unsigned short useCount2,unsigned short useCount3,unsigned short wear,unsigned long flags);
Parameters
• CResRef id -
• unsigned short useCount1 -
• unsigned short useCount2 -
• unsigned short useCount3 -
• unsigned short wear -
• unsigned long flags -
Remarks
Constructs a CItem object
CItem::~CItem
Destroys the CItem object
virtual void CItem::~CItem();
Remarks
Destroys the CItem object
6.73.4 Methods
Name DescriptionCItem::DemandCItem::EquipCItem::GetAbilityCItem::GetAbilityCountCItem::GetAbilityEffectCItem::GetAnimationType Returns animation type for the itemCItem::GetBaseValue Returns base value of the itemCItem::GetDescription Returns a String Reference (StrRef) for the description of the itemCItem::GetFlagsFile Returns item flagsCItem::GetGenericName Returns a String Reference (StrRef) for the name of the itemCItem::GetGroundIcon Returns a resource reference for the icon used for when the item is on the groundCItem::GetInventorySlotType Returns the item inventory slot type
Continued on next page
1470 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 25 – continued from previous pageCItem::GetItemFile Returns the creature item fileCItem::GetItemIcon Returns a resource reference for the icon used for the itemCItem::GetItemType Returns the item typeCItem::GetLoreValue Returns the lore value for the itemCItem::GetMaxStackable Returns the maximum stackable value of items when grouped (stacked) togetherCItem::GetMaxUsageCount Returns the maximum usage count or charges of an itemCItem::GetMinCHRRequired Returns the minimum charisma score required to be able to use the itemCItem::GetMinCONRequired Returns the minimum constitution score required to be able to use the itemCItem::GetMinDEXRequired Returns the minimum dexterity score required to be able to use the itemCItem::GetMinINTRequired Returns the minimum intelligence score required to be able to use the itemCItem::GetMinLevelRequired Returns the minimum character class level required to be able to use the itemCItem::GetMinSTRBonusRequired Returns the minimum exceptional strength score required to be able to use the itemCItem::GetMinSTRRequired Returns the minimum strength score required to be able to use the itemCItem::GetMinWISRequired Returns the minimum wisdom score required to be able to use the itemCItem::GetNotUsableBy Returns a not usable by a class bit maskCItem::GetNotUsableBy2 Returns a 2nd not usable by a class bit maskCItem::GetProficiencyType Returns a weapon proficiency typeCItem::GetUsabilityText Returns a string describing the restrictions of the item’s useCItem::GetUsageCountCItem::GetUsedUpItemIdCItem::GetWeightCItem::LoadUsabilityCItem::LoadWeaponIdentificationCItem::PushToLuaCItem::ResolveRandomItemCItem::SetResRefCItem::SetUsageCountCItem::SetWearCItem::TranslateAnimationTypeCItem::Unequip
CItem::Demand
int CItem::Demand();
Return Value
Returns int
Remarks
CItem::Equip
void CItem::Equip(:ref:`CGameSprite<CGameSprite>`\* pSprite,long slotNum,int animationOnly);
Parameters
6.73. CItem Class 1471
EEex Documentation, Release 1.0
• CGameSprite* pSprite -
• long slotNum -
• int animationOnly -
Remarks
CItem::GetAbility
Item_ability_st\* CItem::GetAbility(long abilityNum);
Parameters
• long abilityNum -
Return Value
Returns Item_ability_st*
Remarks
CItem::GetAbilityCount
int CItem::GetAbilityCount();
Return Value
Returns int
Remarks
CItem::GetAbilityEffect
CGameEffect* CItem::GetAbilityEffect(long abilityNum,long effectNum,CGameObject* pObject);
Parameters
• long abilityNum -
• long effectNum -
• CGameObject* pObject -
Return Value
Returns CGameEffect*
Remarks
1472 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CItem::GetAnimationType
Returns animation type for the item
unsigned short CItem::GetAnimationType();
Return Value
Returns an unsigned short, the animation type for the item
Remarks
Returns (256 * Item_Header_st.animationType[1]) + Item_Header_st.animationType[2] or 0 if error
CItem::GetBaseValue
Returns base value of the item
unsigned long CItem::GetBaseValue();
Return Value
Returns unsigned long, the base value of the item
Remarks
Returns the Item_Header_st.baseValue field value
CItem::GetDescription
Returns a String Reference (StrRef) for the description of the item
unsigned long CItem::GetDescription();
Return Value
Returns unsigned long, a StrRef value for the item’s description
Remarks
The String Reference (StrRef) return value is from Item_Header_st.genericDescription orItem_Header_st.identifiedDescription depending on wether the item has been identified or not.
The CItem.m_flags** field is checked for a value of 1 and returns the value in Item_Header_st.identifiedDescriptionif it is, or Item_Header_st.genericDescription if CItem.m_flags is any other value
CItem.m_flags field can contain bit values from INVITEM.IDS:
1 IDENTIFIED2 NONSTEALABLE4 STOLEN8 NONDROPABLE
See also CItem::GetGenericName
6.73. CItem Class 1473
EEex Documentation, Release 1.0
CItem::GetFlagsFile
Returns item flags
unsigned long CItem::GetFlagsFile();
Return Value
Returns unsigned long
Remarks
Returns the value of the Item_Header_st.itemFlags field
CItem::GetGenericName
Returns a String Reference (StrRef) for the name of the item
unsigned long CItem::GetGenericName();
Return Value
Returns unsigned long, a StrRef value for the item’s name
Remarks
The String Reference (StrRef) return value is from Item_Header_st.genericName or Item_Header_st.identifiedNamedepending on wether the item has been identified or not.
The CItem.m_flags field is checked for a value of 1 and returns the value in Item_Header_st.identifiedName if it is, orItem_Header_st.genericName if CItem.m_flags is any other value
CItem.m_flags field can contain bit values from INVITEM.IDS:
1 IDENTIFIED2 NONSTEALABLE4 STOLEN8 NONDROPABLE
See also CItem::GetDescription
CItem::GetGroundIcon
Returns a resource reference for the icon used for when the item is on the ground
CResRef CItem::GetGroundIcon();
Return Value
Returns a CResRef resource reference
Remarks
Returns the resource reference stored in the Item_Header_st.groundIcon[8] field.
If there is no ground icon for the item, it returns a default/generic sack icon resource reference: “gsack01” - which isfor gsack01.bam
1474 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
See also CItem::GetItemIcon
CItem::GetInventorySlotType
Returns the item inventory slot type
int CItem::GetInventorySlotType();
Return Value
Returns an int value representing the item inventory slot type
Remarks
Fetches the value stored in the Item_Header_st.itemType field
If the value in Item_Header_st.itemType is less than or equal to 26 then it calls CScreenInven-tory::MapButtonIdToInventoryId. The values 0 to 26 can be found in ITEMCAT.IDS:
0 MISC1 AMULET2 ARMOR3 BELT4 BOOT5 ARROW6 BRACER7 HELMET8 KEY9 POTION10 RING11 SCROLL12 SHIELD13 FOOD14 BULLET15 BOW16 DAGGER17 MACE18 SLING19 SMSWORD20 BGSWORD21 HAMMER22 MSTAR23 FLAIL24 DART25 AXE26 STAFF
If the value in Item_Header_st.itemType is greater than 26 then it calls CRuleTables::GetItemTypeSlot and returns avalue from SLOTS.IDS:
0 SLOT_AMULET1 SLOT_ARMOR2 SLOT_BELT3 SLOT_BOOTS4 SLOT_CLOAK5 SLOT_GAUNTLETS
(continues on next page)
6.73. CItem Class 1475
EEex Documentation, Release 1.0
(continued from previous page)
6 SLOT_HELMET7 SLOT_RING_LEFT8 SLOT_RING_RIGHT9 SLOT_SHIELD10 SLOT_FIST11 SLOT_AMMO15 SLOT_MISC35 SLOT_WEAPON11 SLOT_AMMO012 SLOT_AMMO113 SLOT_AMMO214 SLOT_AMMO315 SLOT_MISC016 SLOT_MISC117 SLOT_MISC218 SLOT_MISC319 SLOT_MISC420 SLOT_MISC521 SLOT_MISC622 SLOT_MISC723 SLOT_MISC824 SLOT_MISC925 SLOT_MISC1026 SLOT_MISC1127 SLOT_MISC1228 SLOT_MISC1329 SLOT_MISC1430 SLOT_MISC1531 SLOT_MISC1632 SLOT_MISC1733 SLOT_MISC1834 SLOT_MISC1935 SLOT_WEAPON036 SLOT_WEAPON137 SLOT_WEAPON238 SLOT_WEAPON3
See also CItem::GetItemType
CItem::GetItemFile
Returns the creature item file
CCreatureFileItem CItem::GetItemFile();
Return Value
Returns CCreatureFileItem
Remarks
1476 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CItem::GetItemIcon
Returns a resource reference for the icon used for the item
CResRef CItem::GetItemIcon();
Return Value
Returns a CResRef resource reference
Remarks
Returns the resource reference stored in the Item_Header_st.itemIcon[8] field.
See also CItem::GetGroundIcon
CItem::GetItemType
Returns the item type
const unsigned short CItem::GetItemType();
Return Value
Returns const unsigned short as the item type
Remarks
Returns the value stored in the Item_Header_st.itemType field. The values for this field are from IITEMCAT.IDS:
0 MISC1 AMULET2 ARMOR3 BELT4 BOOT5 ARROW6 BRACER7 HELMET8 KEY9 POTION10 RING11 SCROLL12 SHIELD13 FOOD14 BULLET15 BOW16 DAGGER17 MACE18 SLING19 SMSWORD20 BGSWORD21 HAMMER22 MSTAR23 FLAIL24 DART25 AXE26 STAFF
(continues on next page)
6.73. CItem Class 1477
EEex Documentation, Release 1.0
(continued from previous page)
27 XBOW28 FIST29 SPEAR30 POLEARM31 BOLT32 CLOAK33 COIN34 GEM35 WAND36 BROKEN137 BROKEN2
See also CItem::GetInventorySlotType
CItem::GetLoreValue
Returns the lore value for the item
unsigned short CItem::GetLoreValue();
Return Value
Returns unsigned short
Remarks
The lore value of the item is used to determine if a character with a high enough lore skill can identify the item withouthaving to use an identity spell, identify scroll or other means to identify an item
Returns the value stored in the Item_Header_st.loreValue field
CItem::GetMaxStackable
Returns the maximum stackable value of items when grouped (stacked) together
unsigned short CItem::GetMaxStackable();
Return Value
Returns an unsigned short value of the max stackable of similar items
Remarks
For items of the same type: gems, arrows etc. Returns how many can be stacked together.
Returns the value stored in the Item_Header_st.maxStackable field
CItem::GetMaxUsageCount
Returns the maximum usage count or charges of an item
1478 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
unsigned short CItem::GetMaxUsageCount(int nAbility);
Parameters
• int nAbility - ability number
Return Value
Returns an unsigned short value of the max usage count of item
Remarks
Fetches the value stored in the Item_Header_st.abilityCount field and calls CItem::GetAbility
Returns the value in the Item_ability_st.maxUsageCount field or 0 otherwise
CItem::GetMinCHRRequired
Returns the minimum charisma score required to be able to use the item
unsigned char CItem::GetMinCHRRequired();
Return Value
Returns unsigned char of the minimum ability scrore
Remarks
Returns the value stored in the Item_Header_st.minCHRRequired field
CItem::GetMinCONRequired
Returns the minimum constitution score required to be able to use the item
unsigned char CItem::GetMinCONRequired();
Return Value
Returns unsigned char of the minimum ability scrore
Remarks
Returns the value stored in the Item_Header_st.minCONRequired field
CItem::GetMinDEXRequired
Returns the minimum dexterity score required to be able to use the item
unsigned char CItem::GetMinDEXRequired();
6.73. CItem Class 1479
EEex Documentation, Release 1.0
Return Value
Returns unsigned char of the minimum ability scrore
Remarks
Returns the value stored in the Item_Header_st.minDEXRequired field
CItem::GetMinINTRequired
Returns the minimum intelligence score required to be able to use the item
unsigned char CItem::GetMinINTRequired();
Return Value
Returns unsigned char of the minimum ability scrore
Remarks
Returns the value stored in the Item_Header_st.minINTRequired field
CItem::GetMinLevelRequired
Returns the minimum character class level required to be able to use the item
unsigned char CItem::GetMinLevelRequired();
Return Value
Returns unsigned char of the minimum level
Remarks
Returns the value stored in the Item_Header_st.minLevelRequired field
CItem::GetMinSTRBonusRequired
Returns the minimum exceptional strength score (extra percentile strength score) required to be able to use the item
unsigned char CItem::GetMinSTRBonusRequired();
Return Value
Returns unsigned char of the minimum ability scrore
Remarks
Returns the value stored in the Item_Header_st.minSTRBonusRequired field
1480 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CItem::GetMinSTRRequired
Returns the minimum strength score required to be able to use the item
unsigned char CItem::GetMinSTRRequired();
Return Value
Returns unsigned char of the minimum ability scrore
Remarks
Returns the value stored in the Item_Header_st.minSTRRequired field
CItem::GetMinWISRequired
Returns the minimum wisdom score required to be able to use the item
unsigned char CItem::GetMinWISRequired();
Return Value
Returns unsigned char of the minimum ability scrore
Remarks
Returns the value stored in the Item_Header_st.minWISRequired field
CItem::GetNotUsableBy
Returns a not usable by a class bit mask
unsigned long CItem::GetNotUsableBy();
Return Value
Returns an unsigned long bit mask
Remarks
Returns the value stored in the Item_Header_st.notUsableBy field. The following bit values indicate not usable by:
Not Usable By Bit mask valueChaotic 0x1Evil 0x2Good 0x4Neutral 0x8Lawful 0x10Neutral 0x20Bard 0x40Cleric 0x80Cleric/Mage 0x100Cleric/Thief 0x200
Continued on next page
6.73. CItem Class 1481
EEex Documentation, Release 1.0
Table 26 – continued from previous pageCleric/Ranger 0x400Fighter 0x800Fighter/Druid 0x1000Fighter/Mage 0x2000Fighter/Cleric 0x4000Fighter/Mage/Cleric 0x8000Fighter/Mage/Thief 0x10000Fighter/Thief 0x20000Mage 0x40000Mage/Thief 0x80000Paladin 0x100000Ranger 0x200000Thief 0x400000Elf 0x800000Dwarf 0x1000000Half-Elf 0x2000000Halfling 0x4000000Human 0x8000000Gnome 0x10000000Monk 0x20000000Druid 0x40000000Half-Orc 0x80000000
CItem::GetNotUsableBy2
Returns a 2nd not usable by a class bit mask
unsigned long CItem::GetNotUsableBy2();
Return Value
Returns an unsigned long bit mask
Remarks
Fetches the byte values stored in the following fields: Item_Header_st.notUsableBy2a,Item_Header_st.notUsableBy2b, Item_Header_st.notUsableBy2c, Item_Header_st.notUsableBy2d and combinesthem together to form the 2nd not usable bit mask. The following bit values indicate not usable by:
Not Usable By Bit mask valueCleric of Talos 0x1Cleric of Helm 0x2Cleric of Lathlander 0x4Totemic Druid 0x8Shapeshifter Druid 0x10Avenger Druid 0x20Barbarian 0x40Wildmage 0x80Stalker Ranger 0x100
Continued on next page
1482 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 27 – continued from previous pageBeastmaster Ranger 0x200Assassin Thief 0x400Bounty Hunter Thief 0x800Swashbuckler Thief 0x1000Blade Bard 0x2000Jester Bard 0x4000Skald Bard 0x8000Diviner 0x10000Enchanter 0x20000Illusionist 0x40000Invoker 0x80000Necromancer 0x100000Transmuter 0x200000All (no kit) 0x400000Ferlain 0x800000Beserker Fighter 0x1000000Wizardslayer Fighter 0x2000000Kensai Fighter 0x4000000Cavalier Paladin 0x8000000Inquisiter Paladin 0x10000000Undead Hunter Paladin 0x20000000Abjurer 0x40000000Conjurer 0x80000000
CItem::GetProficiencyType
Returns a weapon proficiency type
unsigned char CItem::GetProficiencyType();
Return Value
Returns unsigned char as a weapon proficiency type
Remarks
Returns the value stored in the Item_Header_st.proficiencyType field. The values from this field can be found inWPROF.IDS:
89 PROFICIENCYBASTARDSWORD90 PROFICIENCYLONGSWORD91 PROFICIENCYSHORTSWORD92 PROFICIENCYAXE93 PROFICIENCYTWOHANDEDSWORD94 PROFICIENCYKATANA95 PROFICIENCYSCIMITARWAKISASHININJATO96 PROFICIENCYDAGGER97 PROFICIENCYWARHAMMER98 PROFICIENCYSPEAR99 PROFICIENCYHALBERD100 PROFICIENCYFLAILMORNINGSTAR
(continues on next page)
6.73. CItem Class 1483
EEex Documentation, Release 1.0
(continued from previous page)
101 PROFICIENCYMACE102 PROFICIENCYQUARTERSTAFF103 PROFICIENCYCROSSBOW104 PROFICIENCYLONGBOW105 PROFICIENCYSHORTBOW106 PROFICIENCYDART107 PROFICIENCYSLING108 PROFICIENCYBLACKJACK111 PROFICIENCY2HANDED112 PROFICIENCYSWORDANDSHIELD113 PROFICIENCYSINGLEWEAPON114 PROFICIENCY2WEAPON115 PROFICIENCYCLUB
CItem::GetUsabilityText
Returns a string describing the restrictions of the item’s use by character class, race, ability scores, level or otherfactors.
CString CItem::GetUsabilityText();
Return Value
Returns CString
Remarks
Performs the equivalent of CItem::GetNotUsableBy and CItem::GetNotUsableBy2 all the CItem::GetMin* functions,and other functions and builds the string for the item restrictions
CItem::GetUsageCount
unsigned short CItem::GetUsageCount(int nAbility);
Parameters
• int nAbility -
Return Value
Returns unsigned short
Remarks
CItem::GetUsedUpItemId
CResRef CItem::GetUsedUpItemId();
1484 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns CResRef
Remarks
CItem::GetWeight
unsigned long CItem::GetWeight();
Return Value
Returns unsigned long
Remarks
CItem::LoadUsability
void CItem::LoadUsability();
Remarks
CItem::LoadWeaponIdentification
void CItem::LoadWeaponIdentification(CWeaponIdentification& weaponId);
Parameters
• CWeaponIdentification& weaponId -
Return Value
Remarks
CItem::PushToLua
void CItem::PushToLua(int skipDescriptionText);
Parameters
• int skipDescriptionText -
Remarks
CItem::ResolveRandomItem
6.73. CItem Class 1485
EEex Documentation, Release 1.0
void CItem::ResolveRandomItem(CResRef& id);
Parameters
• CResRef & id -
Remarks
CItem::SetResRef
void CItem::SetResRef(:ref:`CResRef<CResRef>`\& cNewResRef,int bSetAutoRequest);
Parameters
• CResRef & cNewResRef -
• int bSetAutoRequest -
Remarks
CItem::SetUsageCount
void CItem::SetUsageCount(int nAbility,unsigned short wUseCount);
Parameters
• int nAbility -
• unsigned short wUseCount -
Remarks
CItem::SetWear
void CItem::SetWear(unsigned short newWear);
Parameters
• unsigned short newWear -
Remarks
CItem::TranslateAnimationType
1486 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
unsigned char CItem::TranslateAnimationType(:ref:`CString<CString>`\& equipCode,:ref:`CGameSprite<CGameSprite>`\* pSprite);
Parameters
• CString& equipCode -
• CGameSprite* pSprite -
Return Value
Returns unsigned char
Remarks
CItem::Unequip
void CItem::Unequip(CGameSprite* pSprite,long slotNum,int recalculateEffects,int animationOnly);
Parameters
• CGameSprite* pSprite -
• long slotNum -
• int recalculateEffects -
• int animationOnly -
Remarks
6.73.5 Operators
Name DescriptionCItem::operator=CItem::operator!=
CItem::operator=
CItem& CItem::operator=(CItem& item);
Parameters
• CItem& item -
6.73. CItem Class 1487
EEex Documentation, Release 1.0
Return Value
Returns CItem&
Remarks
CItem::operator!=
bool CItem::operator!=(CItem& item);
Parameters
• CItem& item -
Return Value
Returns bool
Remarks
6.74 CLUAConsole Class
• Overview
• Quick Reference
• Methods
6.74.1 Overview
Note: The CLUAConsole class handles the ingame Lua console for entering supported commands and functions
There is no structure associated with this class
6.74.2 Quick Reference
Quick Refvoid CLUAConsole::AddGold(unsigned long dwGold)void CLUAConsole::AddSpell(CString resRef, int characterId)void CLUAConsole::AdvanceRealTime(unsigned long gameTime)void CLUAConsole::CreateCreature(CString res)void CLUAConsole::CreateEngine(int nEngine)void CLUAConsole::CreateItem(CString res, short usage1, short usage2, short usage3, int characterId)void CLUAConsole::CreateVEFVidCell(CString resRef)void CLUAConsole::DisplayAllBAMFiles()
Continued on next page
1488 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 28 – continued from previous pagevoid CLUAConsole::DisplayText(CString text)void CLUAConsole::EnableCheatKeys(int bEnable)void CLUAConsole::Eval(CString script, int characterId)void CLUAConsole::Exec(char* file)void CLUAConsole::ExploreArea()void CLUAConsole::GetGlobal(CString globalName, CString areaName)void CLUAConsole::LogMessages(int bEnable)void CLUAConsole::LogSet(CString resRef)virtual void __cdecl CLUAConsole::LuaInit()virtual void __cdecl CLUAConsole::LuaUninit()void CLUAConsole::MoveToArea(CString text)void CLUAConsole::PickDialog(int table)void CLUAConsole::PlayMovie(CString resRef)void CLUAConsole::PlaySound(char* res, short volume, unsigned long frequency)void CLUAConsole::ResetAchievements()void CLUAConsole::SetCurrentXP(unsigned long dwCurrentXP)void CLUAConsole::SetGlobal(CString globalName, CString areaName, long value)void CLUAConsole::SetWaterAlpha(unsigned long dwAlpha)void CLUAConsole::SetWeather(unsigned char nWeather)void CLUAConsole::StartStore(char* resref)void CLUAConsole::StrrefOff()void CLUAConsole::StrrefOn()void CLUAConsole::TestAllDialog()void CLUAConsole::WorkshopUpload(char* name, char* path)void CLUAConsole::WriteScript(CString ref, int characterId)
6.74.3 Methods
Name DescriptionCLUAConsole::AddGold Adds gold to the partyCLUAConsole::AddSpell Adds a spell to the specified characterCLUAConsole::AdvanceRealTime Advance timeCLUAConsole::CreateCreature Creates the creature specifiedCLUAConsole::CreateEngine UnknownCLUAConsole::CreateItem Create an itemCLUAConsole::CreateVEFVidCell Create VEFVidCellCLUAConsole::DisplayAllBAMFiles Display all BAM filesCLUAConsole::DisplayText Displays the specified text on screenCLUAConsole::EnableCheatKeys Enable or disable cheat keysCLUAConsole::Eval Evaluate a string containing script actions for a characterCLUAConsole::Exec Execute console commands contained in the specified fileCLUAConsole::ExploreArea Reveals the entire map for the current areaCLUAConsole::GetGlobal Gets a global variable value for an areaCLUAConsole::LogMessages Enables or disables logging output to consoleCLUAConsole::LogSet Sets logging to a file instead of to console if logging is enabledCLUAConsole::LuaInit Initialize lua for the CLUAConsoleCLUAConsole::LuaUninit Uninitialize lua for the CLUAConsoleCLUAConsole::MoveToArea Move the selected characters to the area specified
Continued on next page
6.74. CLUAConsole Class 1489
EEex Documentation, Release 1.0
Table 29 – continued from previous pageCLUAConsole::PickDialog UnknownCLUAConsole::PlayMovie Plays the specified movieCLUAConsole::PlaySound Plays the specified soundCLUAConsole::ResetAchievements Reset achievements - applies to Steam installation onlyCLUAConsole::SetCurrentXP Sets the experience points (XP) of the selected characterCLUAConsole::SetGlobal Set a global variable to the specified valueCLUAConsole::SetWaterAlpha Sets the alpha blend level for water transparencyCLUAConsole::SetWeather Sets the current weatherCLUAConsole::StartStore Starts the specified storeCLUAConsole::StrrefOff Strings are not displayed with their associated string reference (StrRef)CLUAConsole::StrrefOn Strings are displayed with their associated string reference (StrRef)CLUAConsole::TestAllDialog Lists all dialog file in the game, and checks for errorsCLUAConsole::WorkshopUpload Upload a module to the Steam Workshop - applies to Steam installation onlyCLUAConsole::WriteScript Output scripts to directory
CLUAConsole::AddGold
Adds gold to the party
void CLUAConsole::AddGold(unsigned long dwGold);
Parameters
• unsigned long dwGold - amount of gold to add to party
CLUAConsole::AddSpell
Adds a spell to the specified character
void CLUAConsole::AddSpell(CString resRef,int characterId);
Parameters
• CString resRef - string containing the resource reference (ResRef) of the spell to add to character
• int characterId - id of character to receive the spell
Remarks
Spell resource reference (ResRef) used in Spellname must be 8 characters or less and must be valid.
A character must be selected for this to work
To obtain the spell codes (ResRef) required for this command, please use Near Infinity to browse .spl files, or visitthe specific spell page from the BGII Wiki and look for the spell code in the right hand info bar - exclude the .splextension when using the spell code.
1490 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CLUAConsole::AdvanceRealTime
Advance time
void CLUAConsole::AdvanceRealTime(unsigned long gameTime);
Parameters
• unsigned long gameTime - amount of time in milliseconds to advance
Remarks
Can be used to trigger banters and love talks etc
CLUAConsole::CreateCreature
Creates the creature specified
void CLUAConsole::CreateCreature(CString res);
Parameters
• CString res - string containing resource reference (ResRef) of creature to spawn (create)
Remarks
Creature resource reference (ResRef) used in Creature must be 8 characters or less and must be valid.
This spawns a creature to the center of the screen (or nearest valid point). If you?re spawning a creature you know willbe hostile, you may want to pause the game before entering this command for the safety of your party.
CLUAConsole::CreateEngine
Unknown - seems to start a new single 0 or multi 1 player game
void CLUAConsole::CreateEngine(int nEngine);
Parameters
• int nEngine - engine id number to create
Remarks
CLUAConsole::CreateItem
Create an item
void CLUAConsole::CreateItem(CString res,short usage1,short usage2,short usage3,int characterId);
6.74. CLUAConsole Class 1491
EEex Documentation, Release 1.0
Parameters
• CString res - string containing resource reference (ResRef) of the item to create
• short usage1 - amount / charges
• short usage2 - amount / charges
• short usage3 - amount / charges
• int characterId - id of character to receive the item
Remarks
Item resource reference (ResRef) used in Item must be 8 characters or less and must be valid.
This spawns an item, based on its item file name, or a stack of the same item, in the inventory of the current partyleader.
CLUAConsole::CreateVEFVidCell
Create VEFVidCell
void CLUAConsole::CreateVEFVidCell(CString resRef);
Parameters
• CString resRef - string containing resource reference of VEFVidCell to create
Remarks
CLUAConsole::DisplayAllBAMFiles
Display all BAM files
void CLUAConsole::DisplayAllBAMFiles();
Remarks
CLUAConsole::DisplayText
Displays the specified text on screen
void CLUAConsole::DisplayText(CString text);
Parameters
• CString text - string containing text to display
1492 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CLUAConsole::EnableCheatKeys
Enable or disable cheat keys
void CLUAConsole::EnableCheatKeys(int bEnable);
Parameters
• int bEnable - boolean true or false to enable/disable cheat keys
Remarks
The following cheat key combination are available once cheat keys has been enabled:
Key NotesCTRL+1 Change armor level animationCTRL+2 Fade screen to blackCTRL+3 Fade screen to normalCTRL+4 Highlight background-interactive objectsCTRL+5 Displays animation informationCTRL+6 Change avatar animation previousCTRL+7 Change avatar animation nextCTRL+8 Highlights the text boxesCTRL+9 Highlight the spritesCTRL+0 UnknownCTRL+A Change Selected Animation SequenceCTRL+C Jump to next chapterCTRL+D Display some numbers (framerate related?)CTRL+E Alters visual rangeCTRL+F Turn the characterCTRL+G Display loaded area refCTRL+I Play Selected Animation effectCTRL+J Teleport to cursor positionCTRL+K Creature under cursor kick out partyCTRL+L Play Selected Animation effectCTRL+M (Followed by ENTER) Debug DumpCTRL+N Freeze screen for 5 secondsCTRL+O (Followed by ENTER) Write Debug To LogCTRL+P Center screen on selected characterCTRL+Q Creature under cursor joins partyCTRL+R Heals character under cursorCTRL+S Change Selected Animation SequenceCTRL+T Advances game time by 1 hourCTRL+U Highlight doors and ground objectsCTRL+X Extended position informationCTRL+Y Kills creature under cursor
In addition CTRL+8 during character creation will set all attributes to 18 (STR 18/00)
CTRL+SHIFT+Z while hovering over a character will grant every spell file in the game - may crash due to invalidspells
6.74. CLUAConsole Class 1493
EEex Documentation, Release 1.0
CLUAConsole::Eval
Evaluate a string containing script actions for a character
void CLUAConsole::Eval(CString script,int characterId);
Parameters
• CString script - string containing script actions to evaluate
• int characterId - id of character that script applies to
Remarks
The whole string can be enclosed into single quotes (‘) so that double quotes can still be used within the script action.
See BG(2)EE Script Actions for a list of script actions.
CLUAConsole::Exec
Execute console commands contained in the specified file
void CLUAConsole::Exec(char* file);
Parameters
• char* file - pointer to string containing filename to execute
Remarks
CLUAConsole::ExploreArea
Reveals the entire map for the current area
void CLUAConsole::ExploreArea();
Remarks
This doesn?t remove the fog of war; if a creature is out of your field of vision it will still remain hidden
CLUAConsole::GetGlobal
Gets a global variable value for an area
void CLUAConsole::GetGlobal(CString globalName,CString areaName);
Parameters
1494 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CString globalName - name of global variable value to return
• CString areaName - area in which global is
Remarks
CLUAConsole::LogMessages
Enables or disables logging output to console
void CLUAConsole::LogMessages(int bEnable);
Parameters
• int bEnable - boolean true or false to enable or disable logging output
Remarks
See CLUAConsole::LogSet to output logging to a file instead
CLUAConsole::LogSet
Sets logging to a file instead of to console if logging is enabled
void CLUAConsole::LogSet(CString resRef);
Parameters
• CString resRef - string containing log filename
Remarks
See CLUAConsole::LogMessages to enable logging
CLUAConsole::LuaInit
Initialize lua for the CLUAConsole
virtual void __cdecl CLUAConsole::LuaInit();
Remarks
CLUAConsole::LuaUninit
Uninitialize lua for the CLUAConsole
virtual void __cdecl CLUAConsole::LuaUninit();
Remarks
6.74. CLUAConsole Class 1495
EEex Documentation, Release 1.0
CLUAConsole::MoveToArea
Move the selected characters to the area specified
void CLUAConsole::MoveToArea(CString text);
Parameters
• CString text - string containing area resource reference to move selected players to
Remarks
CLUAConsole::PickDialog
void CLUAConsole::PickDialog(int table);
Parameters
• int table -
Remarks
CLUAConsole::PlayMovie
Plays the specified movie
void CLUAConsole::PlayMovie(CString resRef);
Parameters
• CString resRef - resource reference of the WebM movie to play
Remarks
CLUAConsole::PlaySound
Plays the specified sound
void CLUAConsole::PlaySound(char* res,short volume,unsigned long frequency);
Parameters
• char* res - pointer to string containing resource reference of the wav sound to play
• short volume - volume of played sound
• unsigned long frequency - frequency to play the wav file at
Remarks
1496 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CLUAConsole::ResetAchievements
Reset achievements
void CLUAConsole::ResetAchievements();
Remarks
Applies to Steam installation only
CLUAConsole::SetCurrentXP
Sets the experience points (XP) of the selected character
void CLUAConsole::SetCurrentXP(unsigned long dwCurrentXP);
Parameters
• unsigned long dwCurrentXP - experience points value to set
Remarks
This sets the total, rather than adding a value to your current experience points. A level up will be triggered forcharacters that qualify, based on the experince points table for the character’s class level.
CLUAConsole::SetGlobal
Set a global variable to the specified value
void CLUAConsole::SetGlobal(CString globalName,CString areaName,long value);
Parameters
• CString globalName - string containing global variable to set value for
• CString areaName - area that global variable is in
• long value - the new value to set the global variable to
Remarks
CLUAConsole::SetWaterAlpha
Sets the alpha blend level for water transparency
void CLUAConsole::SetWaterAlpha(unsigned long dwAlpha);
Parameters
6.74. CLUAConsole Class 1497
EEex Documentation, Release 1.0
• unsigned long dwAlpha - value to set for alpha blending of water transparency
Remarks
CLUAConsole::SetWeather
Sets the current weather
void CLUAConsole::SetWeather(unsigned char nWeather);
Parameters
• unsigned char nWeather - value to set weather to
Remarks
Valid values to set can be found in WEATHER.IDS:
0 NOWEATHER1 RAIN2 SNOW3 FOG
CLUAConsole::StartStore
Starts the specified store
void CLUAConsole::StartStore(char* resref);
Parameters
• char* resref - pointer to string containing resource reference of store to start
Remarks
Crashes
CLUAConsole::StrrefOff
Strings are not displayed with their associated string reference (StrRef) id
void CLUAConsole::StrrefOff();
Remarks
String reference (StrRef) values are located in the TLK table
1498 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CLUAConsole::StrrefOn
Strings are displayed with their associated string reference (StrRef) id
void CLUAConsole::StrrefOn();
Remarks
String reference (StrRef) values are located in the TLK table
CLUAConsole::TestAllDialog
Lists all dialog file in the game, and checks for errors
void CLUAConsole::TestAllDialog();
Remarks
CLUAConsole::WorkshopUpload
Upload a module to the Steam Workshop - Not tested or verified
void CLUAConsole::WorkshopUpload(char* name,char* path);
Parameters
• char* name - pointer to string containing name of the workshop module
• char* path - pointer to string containing the full filepath to the module to upload
Remarks
Applies to Steam installation only.
CLUAConsole::WriteScript
Output scripts to directory
void CLUAConsole::WriteScript(CString ref,int characterId);
Parameters
• CString ref - string containing folder to output scripts to
• int characterId - actor id of character that script is evaluated for, or 0 for none.
Remarks
If the mouse is over a creature, the command will evaluate the scripts attached to that creature. Otherwise it willevaluate the area scripts.
6.74. CLUAConsole Class 1499
EEex Documentation, Release 1.0
Lua Notes
Most of the CLUAConsole methods are available via the EE Game Lua Functions: C (CLUAConsole) Functions
6.75 CMachineStates Class
The structure used for this class is CMachineStates
Quick Refvoid CMachineStates::CMachineStates()int CMachineStates::CheckValidForDialog(long spriteId)void CMachineStates::ClearAll()
6.75.1 Constructors
Name DescriptionCMachineStates::CMachineStates Constructs a CMachineStates object
CMachineStates::CMachineStates
Constructs a CMachineStates object
void CMachineStates::CMachineStates();
Remarks
Constructs a CMachineStates object
6.75.2 Methods
Name DescriptionCMachineStates::CheckValidForDialogCMachineStates::ClearAll
CMachineStates::CheckValidForDialog
int CMachineStates::CheckValidForDialog(long spriteId);
Parameters
• long spriteId -
1500 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CMachineStates::ClearAll
void CMachineStates::ClearAll();
Remarks
6.76 CMapStringToString Class
The structure used for this class is CMapStringToString
Quick Refvoid CMapStringToString::CMapStringToString(int nBlockSize)virtual void CMapStringToString::~CMapStringToString()CMapStringToString::CAssoc* CMapStringToString::GetAssocAt(const char* key, unsigned int& nHash)void CMapStringToString::GetNextAssoc(__POSITION*& rNextPosition, CString& rKey, CString& rValue)int CMapStringToString::Lookup(const char* key, CString& rValue)CMapStringToString::CAssoc* CMapStringToString::NewAssoc()void CMapStringToString::RemoveAll()int CMapStringToString::RemoveKey(const char* key)CString& CMapStringToString::operator[](const char* key)
6.76.1 Constructors
Name DescriptionCMapStringToString::CMapStringToString Constructs a CMapStringToString objectCMapStringToString::~CMapStringToString Destroys a CMapStringToString object
CMapStringToString::CMapStringToString
Constructs a CMapStringToString object
void CMapStringToString::CMapStringToString(int nBlockSize);
Parameters
• int nBlockSize -
Remarks
Constructs a CMapStringToString object
6.76. CMapStringToString Class 1501
EEex Documentation, Release 1.0
CMapStringToString::~CMapStringToString
Destroys the CMapStringToString object
virtual void CMapStringToString::~CMapStringToString();
Remarks
Destroys the CMapStringToString object
6.76.2 Methods
Name DescriptionCMapStringToString::GetAssocAtCMapStringToString::GetNextAssocCMapStringToString::LookupCMapStringToString::NewAssocCMapStringToString::RemoveAllCMapStringToString::RemoveKey
CMapStringToString::GetAssocAt
CMapStringToString::CAssoc* CMapStringToString::GetAssocAt(const char* key,unsigned int& nHash);
Parameters
• const char* key -
• unsigned int& nHash -
Return Value
Returns CMapStringToString::CAssoc*
Remarks
CMapStringToString::GetNextAssoc
void CMapStringToString::GetNextAssoc(__POSITION*& rNextPosition,CString& rKey,CString& rValue);
Parameters
• __POSITION*& rNextPosition -
• CString& rKey -
• CString& rValue -
1502 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Remarks
CMapStringToString::Lookup
int CMapStringToString::Lookup(const char* key,CString& rValue);
Parameters
• const char* key -
• CString& rValue -
Return Value
int
Remarks
CMapStringToString::NewAssoc
CMapStringToString::CAssoc* CMapStringToString::NewAssoc();
Return Value
Returns CMapStringToString::CAssoc*
Remarks
CMapStringToString::RemoveAll
void CMapStringToString::RemoveAll();
Remarks
CMapStringToString::RemoveKey
int CMapStringToString::RemoveKey(const char* key);
Parameters
• const char* key -
Return Value
int
Remarks
6.76. CMapStringToString Class 1503
EEex Documentation, Release 1.0
6.76.3 Operators
Name DescriptionCMapStringToString::operator[]
CMapStringToString::operator[]
CString& CMapStringToString::operator[](const char* key);
Parameters
• const char* key -
Return Value
Returns CString&
Remarks
6.77 CMarker Class
• Overview
• Quick Reference
• Constructors
• Methods
6.77.1 Overview
Note: The CMarker class handles
The structure used for this class is CMarker
6.77.2 Quick Reference
Quick Refvoid CMarker::CMarker()void CMarker::~CMarker()void CMarker::AsynchronousUpdate(CGameSprite* pSprite)void CMarker::Render(CVidMode* pVidMode, CGameSprite* pSprite)void CMarker::Render(CVidMode* pVidMode, CInfinity* pInfinity, CPoint& dest, long nXSize, long nYSize)unsigned char CMarker::SetType(unsigned char nType)
1504 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.77.3 Constructors
Name DescriptionCMarker::CMarker Constructs a CMarker objectCMarker::CMarker Destroys a CMarker object
CMarker::CMarker
Constructs a CMarker object
void CMarker::CMarker();
Remarks
Constructs a CMarker object
CMarker::~CMarker
Destroys the CMarker object
void CMarker::~CMarker();
Remarks
Destroys the CMarker object
6.77.4 Methods
Name DescriptionCMarker::AsynchronousUpdateCMarker::RenderCMarker::SetType
CMarker::AsynchronousUpdate
void CMarker::AsynchronousUpdate(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
6.77. CMarker Class 1505
EEex Documentation, Release 1.0
CMarker::Render
void CMarker::Render(CVidMode* pVidMode,CGameSprite* pSprite);
Parameters
• CVidMode* pVidMode - pointer to vid mode
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CMarker::Render
void CMarker::Render(CVidMode* pVidMode,CInfinity* pInfinity,CPoint& dest,long nXSize,long nYSize);
Parameters
• CVidMode* pVidMode -
• CInfinity* pInfinity -
• CPoint& dest -
• long nXSize -
• long nYSize -
Remarks
CMarker::SetType
unsigned char CMarker::SetType(unsigned char nType);
Parameters
• unsigned char nType -
Return Value
Returns unsigned char
Remarks
1506 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.78 CMemINI Class
Quick Refvoid CMemINI::ClearINI()int CMemINI::Load(CString& Source)CMemINISection* CMemINI::GetSection(CString& SectionName)CMemINIValue* CMemINISection::Get(CString& Name)void CMemINISection::Set(CString& Name, CString& Value)CString CMemINIRes::GetLine()
6.78.1 Methods
Name DescriptionCMemINI::ClearINICMemINI::LoadCMemINI::GetSectionCMemINISection::GetCMemINISection::SetCMemINIRes::GetLine
CMemINI::ClearINI
void CMemINI::ClearINI();
Remarks
CMemINI::Load
int CMemINI::Load(CString& Source);
Parameters
• CString& Source -
Return Value
int
Remarks
CMemINI::GetSection
6.78. CMemINI Class 1507
EEex Documentation, Release 1.0
CMemINISection* CMemINI::GetSection(CString& SectionName);
Parameters
• CString& SectionName -
Return Value
Returns CMemINISection*
Remarks
CMemINISection::Get
CMemINIValue* CMemINISection::Get(CString& Name);
Parameters
• CString& Name -
Return Value
Returns CMemINIValue*
Remarks
CMemINISection::Set
void CMemINISection::Set(CString& Name,CString& Value);
Parameters
• CString& Name -
• CString& Value -
Remarks
CMemINIRes::GetLine
CString CMemINIRes::GetLine();
Return Value
Returns CString
Remarks
1508 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.79 CMessage Class
• Overview
• Quick Reference
• Methods
6.79.1 Overview
Note: The CMessage class handles messages used in a messaging queue
The structure used for this class is CMessage
6.79.2 Quick Reference
Quick Refvirtual short CMessage::GetCommType()virtual unsigned char CMessage::GetMsgSubType()virtual unsigned char CMessage::GetMsgType()virtual void CMessage::MarshalMessage(unsigned char** pData, unsigned long* dwSize)virtual void CMessage::Run()virtual int CMessage::UnmarshalMessage(unsigned char* pData, unsigned long dwSize)
6.79.3 Methods
Name DescriptionCMessage::GetCommType Returns the message communication typeCMessage::GetMsgSubType Returns the message sub-typeCMessage::GetMsgType Returns the message typeCMessage::MarshalMessage Marshal the CMessage objectCMessage::Run Execution of the messageCMessage::UnmarshalMessage Unmarshal the CMessage object
CMessage::GetCommType
Returns the message communication type
6.79. CMessage Class 1509
EEex Documentation, Release 1.0
virtual short CMessage::GetCommType();
Return Value
Returns short
Remarks
CMessage::GetMsgSubType
Returns the message sub-type
virtual unsigned char CMessage::GetMsgSubType();
Return Value
Returns unsigned char
Remarks
CMessage::GetMsgType
Returns the message type
virtual unsigned char CMessage::GetMsgType();
Return Value
Returns unsigned char
Remarks
CMessage::MarshalMessage
Transforming the memory representation of the CMessage object to a data format suitable for storage or transmission
virtual void CMessage::MarshalMessage(unsigned char** pData,unsigned long* dwSize);
Parameters
• unsigned char** pData - pointer to a pointer to data
• unsigned long* dwSize - pointer to a dword variable that contains the size of data pointed to by pData
Remarks
1510 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessage::Run
Execution of the message
virtual void CMessage::Run();
Remarks
CMessage::UnmarshalMessage
Transforming a representation of the CMessage object that was used for storage or transmission to a representationof the object that is executable
virtual int CMessage::UnmarshalMessage(unsigned char\* pData,unsigned long dwSize);
Parameters
• unsigned char* pData - pointer to data
• unsigned long dwSize - size of data
Return Value
Returns int
Remarks
6.80 CMessageHandler Class
• Overview
• Quick Reference
• Constructors
• Methods
6.80.1 Overview
Note: The CMessageHandler class handles the management of messages in the message queue
The structure used for this class is CMessageHandler
6.80. CMessageHandler Class 1511
EEex Documentation, Release 1.0
6.80.2 Quick Reference
Quick Refvoid CMessageHandler::CMessageHandler()void CMessageHandler::~CMessageHandler()short CMessageHandler::AddMessage(CMessage* message, int bForcePassThrough)void CMessageHandler::AsynchronousUpdate()short CMessageHandler::Broadcast(CMessage* message, unsigned char bSendMessageToSelf, unsigned charbIgnoreObjectControl)void CMessageHandler::ClearMessages()int CMessageHandler::ImportantMessage(unsigned char* pData, unsigned long dwSize)void CMessageHandler::PostAsynchronousUpdate()short CMessageHandler::Send(CMessage* message)
6.80.3 Constructors
Name DescriptionCMessageHandler::CMessageHandler Constructs a CMessageHandler objectCMessageHandler::CMessageHandler Destroys a CMessageHandler object
CMessageHandler::CMessageHandler
Constructs a CMessageHandler object
void CMessageHandler::CMessageHandler();
Remarks
Constructs a CMessageHandler object
CMessageHandler::~CMessageHandler
Destroys the CMessageHandler object
virtual void CMessageHandler::~CMessageHandler();
Remarks
Destroys the CMessageHandler object
1512 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.80.4 Methods
Name DescriptionCMessageHandler::AddMessageCMessageHandler::AsynchronousUpdateCMessageHandler::BroadcastCMessageHandler::ClearMessagesCMessageHandler::ImportantMessageCMessageHandler::PostAsynchronousUpdateCMessageHandler::Send
CMessageHandler::AddMessage
short CMessageHandler::AddMessage(CMessage* message,int bForcePassThrough);
Parameters
• CMessage* message -
• int bForcePassThrough -
Return Value
Returns short
Remarks
CMessageHandler::AsynchronousUpdate
void CMessageHandler::AsynchronousUpdate();
Remarks
CMessageHandler::Broadcast
short CMessageHandler::Broadcast(CMessage* message,unsigned char bSendMessageToSelf,unsigned char bIgnoreObjectControl);
Parameters
• CMessage* message -
• unsigned char bSendMessageToSelf -
• unsigned char bIgnoreObjectControl -
6.80. CMessageHandler Class 1513
EEex Documentation, Release 1.0
Return Value
Returns short
Remarks
CMessageHandler::ClearMessages
void CMessageHandler::ClearMessages();
Remarks
CMessageHandler::ImportantMessage
int CMessageHandler::ImportantMessage(unsigned char* pData,unsigned long dwSize);
Parameters
• unsigned char* pData - pointer to message data
• unsigned long dwSize - size of message data pointed to by pData
Return Value
Returns int
Remarks
CMessageHandler::PostAsynchronousUpdate
void CMessageHandler::PostAsynchronousUpdate();
Remarks
CMessageHandler::Send
short CMessageHandler::Send(CMessage* message);
Parameters
• CMessage* message -
Return Value
Returns short
Remarks
1514 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.81 CMessage<Message> Classes
• Overview
• Methods
• Notes
• Specific CMessage<Message> Classes
6.81.1 Overview
Note: There are lots of Message classes that are similar in definition. Rather than document each one individually,there are all referenced here collectively instead. CMessage<Message> classes handle specific Messages, where<Message> is a placeholder for the Message name.
Note: Please see the CMessage Structures section for a Message structure used by a specific Message class.
Tip: See Notes for details of the Message classes, that the class methods documented here apply to. See SpecificCMessage<Message> Classes for classes that share the same methods as the others listed, but have additional classmethods as well.
6.81.2 Methods
Name* DescriptionCMessage<Message>::GetCommType Returns the message communication typeCMessage<Message>::GetMsgSubType Returns the message sub-typeCMessage<Message>::GetMsgType Returns the message typeCMessage<Message>::MarshalMessage Marshal the CMessage objectCMessage<Message>::Run Execution of the messageCMessage<Message>::UnmarshalMessage Unmarshal the CMessage object
* <Message> is a placeholder for the game Message name
CMessage<Message>::GetCommType
Returns the message communication type
virtual short CMessage<Message>::GetCommType();
6.81. CMessage<Message> Classes 1515
EEex Documentation, Release 1.0
Return Value
Returns short
Remarks
CMessage<Message>::GetMsgSubType
Returns the message sub-type
virtual unsigned char CMessage<Message>::GetMsgSubType();
Return Value
Returns unsigned char
Remarks
CMessage<Message>::GetMsgType
Returns the message type
virtual unsigned char CMessage<Message>::GetMsgType();
Return Value
Returns unsigned char
Remarks
CMessage<Message>::MarshalMessage
Transforming the memory representation of the CMessage<Message> object to a data format suitable for storageor transmission
virtual void CMessage<Message>::MarshalMessage(unsigned char** pData,unsigned long* dwSize);
Parameters
• unsigned char** pData - pointer to a pointer to data
• unsigned long* dwSize - pointer to a dword variable that contains the size of data pointed to by pData
Remarks
CMessage<Message>::Run
Execution of the message
1516 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual void CMessage<Message>::Run();
Remarks
CMessage<Message>::UnmarshalMessage
Transforming a representation of the CMessage<Message> object that was used for storage or transmission to arepresentation of the object that is executable
virtual int CMessage<Message>::UnmarshalMessage(unsigned char\* pData,unsigned long dwSize);
Parameters
• unsigned char* pData - pointer to data
• unsigned long dwSize - size of data
Return Value
Returns int
Remarks
6.81.3 Notes
Note: CMessage<Message> used in the documentation above is a placeholder for the actual class name, as listedbelow.
The following class names apply to the documented class methods above as the share the same basic methods for eachclass:
• CMessageAddClairvoyance
• CMessageAddEffect
• CMessageAllowDialogInterrupt
• CMessageAnimationChange
• CMessageChangeDirection
• CMessageCheckForForcedDialogEnd
• CMessageClearActions
• CMessageClearDialogActions
• CMessageClearDialogOnMachine
• CMessageClearGroupSlot
• CMessageClearTriggers
• CMessageColorReset
6.81. CMessage<Message> Classes 1517
EEex Documentation, Release 1.0
• CMessageCutSceneLite
• CMessageCutSceneModeStatus
• CMessageDisableAI
• CMessageDisplayTextRefPoint
• CMessageDoorOpen
• CMessageDropPath
• CMessageEnterDialogMode
• CMessageEscapeArea
• CMessageExitDialogMode
• CMessageExitStoreMode
• CMessageFadeColor
• CMessageFakeExpireCheck
• CMessageFamiliarAdd
• CMessageForcePosition
• CMessageLeaveParty
• CMessageMakeGlobal
• CMessageNonControlledDialogReturn
• CMessagePartyGold
• CMessagePlaySound
• CMessageRemoveItem
• CMessageReputationChange
• CMessageResetMorale
• CMessageSaveGame
• CMessageSetAISpeed
• CMessageSetActiveImprisonment
• CMessageSetActive
• CMessageSetAreaFlag
• CMessageSetBanterBlockFlag
• CMessageSetBanterBlockTime
• CMessageSetCommandPause
• CMessageSetCurrentActionId
• CMessageSetDialogPausing
• CMessageSetDialogWait
• CMessageSetDirection
• CMessageSetDrawPoly
• CMessageSetFamiliarSummoner
1518 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CMessageSetForceActionPick
• CMessageSetHappiness
• CMessageSetInCutScene
• CMessageSetInDialog
• CMessageSetInStore
• CMessageSetNumTimesTalkedTo
• CMessageSetSequence
• CMessageSetSound
• CMessageSetStateOverrideFlag
• CMessageSetStateOverrideTime
• CMessageSetTarget
• CMessageSetTimeStop
• CMessageSpawnPtActivate
• CMessageSpawnPtSpawn
• CMessageSpriteDeath
• CMessageSpritePetrify
• CMessageStartCombatMusic
• CMessageStartFollow
• CMessageStartSong
• CMessageStaticSequence
• CMessageStaticStart
• CMessageStopEscapeArea
• CMessageStopFollow
• CMessageTakeCreatureItems
• CMessageUnlock
• CMessageUpdateMachineState
• CMessageUpdateReaction
• CMessageVisibilityMapMove
• CMessageVisualEffect
6.81.4 Specific CMessage<Message> Classes
Note: The following class names also apply to the above documentation, but also contain additional class methods.They are listed here as well for completeness as they share the same basic class methods, but they are documentedindividually as well due to the additional class methods they contain - see the specific class for details.
6.81. CMessage<Message> Classes 1519
EEex Documentation, Release 1.0
CMessageAddAction Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageAddAction::CMessageAddAction Event message for this class
CMessageAddAction::CMessageAddAction
void CMessageAddAction::CMessageAddAction(CAIAction& action,long caller,long target);
Parameters
• CAIAction& action -
• long caller -
• long target -
Remarks
CMessageAddItem Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageAddItem::CMessageAddItem Event message for this class
1520 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageAddItem::CMessageAddItem
void CMessageAddItem::CMessageAddItem(CItem& item,long caller,long target);
Parameters
• CItem& item -
• long caller -
• long target -
Remarks
CMessageAddVVCInternal Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageAddVVCInternal::CMessageAddVVCInternal Event message for this class
CMessageAddVVCInternal::CMessageAddVVCInternal
void CMessageAddVVCInternal::CMessageAddVVCInternal(CResRef& ref,long caller,long target);
Parameters
• CResRef & ref -
• long caller -
• long target -
Remarks
6.81. CMessage<Message> Classes 1521
EEex Documentation, Release 1.0
CMessageChangeStoreMarkup Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageChangeStoreMarkup::CMessageChangeStoreMarkup Event message for this class
CMessageChangeStoreMarkup::CMessageChangeStoreMarkup
void CMessageChangeStoreMarkup::CMessageChangeStoreMarkup(CResRef& ref,long caller,long target);
Parameters
• CResRef & ref -
• long caller -
• long target -
Remarks
CMessageCleanAir Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageCleanAir::CMessageCleanAir Event message for this class
1522 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageCleanAir::CMessageCleanAir
CMessageCleanAir::CMessageCleanAir(CResRef& resref,CResRef& table,long caller,long target);
Parameters
• CResRef & ref -
• CResRef & table -
• long caller -
• long target -
Remarks
CMessageColorChange Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageColorChange::CMessageColorChange Event message for this class
CMessageColorChange::CMessageColorChange
void CMessageColorChange::CMessageColorChange(unsigned char* colors,unsigned char bApply,long caller,long target);
Parameters
• unsigned char* colors -
• unsigned char bApply -
• long caller -
• long target -
6.81. CMessage<Message> Classes 1523
EEex Documentation, Release 1.0
Return Value
Returns
Remarks
CMessageColorUpdate Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageColorUpdate::CMessageColorUpdate Event message for this class
CMessageColorUpdate::CMessageColorUpdate
void CMessageColorUpdate::CMessageColorUpdate(CGameSprite* pSprite,long caller,long target);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• long caller -
• long target -
Remarks
CMessageContainerAddItem Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
1524 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Methods
Name DescriptionCMessageContainerAddItem::CMessageContainerAddItem Event message for this class
CMessageContainerAddItem::CMessageContainerAddItem
void CMessageContainerAddItem::CMessageContainerAddItem(CItem& item,short slotNum,unsigned char bCompressContainer,long caller,long target);
Parameters
• CItem& item -
• short slotNum -
• unsigned char bCompressContainer -
• long caller -
• long target -
Remarks
CMessageContainerItems Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageContainerItems::CMessageContainerItems Event message for this class
6.81. CMessage<Message> Classes 1525
EEex Documentation, Release 1.0
CMessageContainerItems::CMessageContainerItems
void CMessageContainerItems::CMessageContainerItems(CAreaFileContainer* pContainer,CCreatureFileItem* pItems,long caller,long target);
Parameters
• CAreaFileContainer* pContainer - pointer to container object
• CCreatureFileItem* pItems -
• long caller -
• long target -
Remarks
CMessageContainerItems::CMessageContainerItems
void CMessageContainerItems::CMessageContainerItems(CGameContainer* pContainer,long caller,long target);
Parameters
• CGameContainer* pContainer - pointer to container object
• long caller -
• long target -
Remarks
CMessageContainerStatus Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageContainerStatus::CMessageContainerStatus Event message for this class
1526 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageContainerStatus::CMessageContainerStatus
void CMessageContainerStatus::CMessageContainerStatus(unsigned long flags,unsigned short trapActivated,unsigned short trapDetected,long caller,long target);
Parameters
• unsigned long flags -
• unsigned short trapActivated -
• unsigned short trapDetected -
• long caller -
• long target -
Remarks
CMessageDisplayTextRefSend Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageDisplayTextRefSend::CMessageDisplayTextRefSend Event message for this class
CMessageDisplayTextRefSend::CMessageDisplayTextRefSend
void CMessageDisplayTextRefSend::CMessageDisplayTextRefSend(unsigned long name,unsigned long text,unsigned long nameColor,unsigned long textColor,long marker,long caller,long target);
Parameters
• unsigned long name -
• unsigned long text -
6.81. CMessage<Message> Classes 1527
EEex Documentation, Release 1.0
• unsigned long nameColor -
• unsigned long textColor -
• long marker -
• long caller -
• long target -
Remarks
CMessageDisplayTextRef Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageDisplayTextRef::CMessageDisplayTextRef Event message for this class
CMessageDisplayTextRef::CMessageDisplayTextRef
void CMessageDisplayTextRef::CMessageDisplayTextRef(unsigned long name,unsigned long text,unsigned long nameColor,unsigned long textColor,long marker,long caller,long target);
Parameters
• unsigned long name -
• unsigned long text -
• unsigned long nameColor -
• unsigned long textColor -
• long marker -
• long caller -
• long target -
Remarks
1528 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageDisplayText Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageDisplayText::CMessageDisplayText Event message for this class
CMessageDisplayText::CMessageDisplayText
void CMessageDisplayText::CMessageDisplayText(CString& name,CString& text,unsigned long nameColor,unsigned long textColor,long marker,long caller,long target);
Parameters
• CString& name -
• CString& text -
• unsigned long nameColor -
• unsigned long textColor -
• long marker -
• long caller -
• long target -
Remarks
CMessageDoorStatus Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
6.81. CMessage<Message> Classes 1529
EEex Documentation, Release 1.0
Methods
Name DescriptionCMessageDoorStatus::CMessageDoorStatus Event message for this class
CMessageDoorStatus::CMessageDoorStatus
CMessageDoorStatus::CMessageDoorStatus(:ref:`CGameDoor<CGameDoor>`\* pDoor,long caller,long target);
Parameters
• CGameDoor* pDoor - pointer to door object
• long caller -
• long target -
Remarks
CMessageDreamScriptResRef Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageDreamScriptResRef::CMessageDreamScriptResRef Event message for this class
CMessageDreamScriptResRef::CMessageDreamScriptResRef
void CMessageDreamScriptResRef::CMessageDreamScriptResRef(:ref:`CResRef<CResRef>` dialog,long caller,long target);
Parameters
• CResRef dialog -
1530 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• long caller -
• long target -
Remarks
CMessageEnterDialog Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageEnterDialog::CMessageEnterDialog Event message for this class
CMessageEnterDialog::CMessageEnterDialog
void CMessageEnterDialog::CMessageEnterDialog(unsigned long entryNum,unsigned char newDialog,long caller,long target,int bSuppressName,int bItemDialog);
Parameters
• unsigned long entryNum -
• unsigned char newDialog -
• long caller -
• long target -
• int bSuppressName -
• int bItemDialog -
Remarks
CMessageEnterStoreMode Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
6.81. CMessage<Message> Classes 1531
EEex Documentation, Release 1.0
Methods
Name DescriptionCMessageEnterStoreMode::CMessageEnterStoreMode Event message for this class
CMessageEnterStoreMode::CMessageEnterStoreMode
void CMessageEnterStoreMode::CMessageEnterStoreMode(CAIObjectType& cAIProprietor,CAIObjectType& cAICustomer,CResRef cResStore,long caller,long target);
Parameters
• CAIObjectType& cAIProprietor -
• CAIObjectType& cAICustomer -
• CResRef cResStore - resource reference of store
• long caller -
• long target -
Remarks
CMessageExploreArea Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageExploreArea::CMessageExploreArea Event message for this class
1532 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageExploreArea::CMessageExploreArea
void CMessageExploreArea::CMessageExploreArea(CGameArea* pArea,long caller,long target);
Parameters
• CGameArea* pArea - pointer to area object
• long caller -
• long target -
Remarks
CMessageFamiliarRemoveResRef Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageFamiliarRemoveResRef::CMessageFamiliarRemoveResRef Event message for this class
CMessageFamiliarRemoveResRef::CMessageFamiliarRemoveResRef
void CMessageFamiliarRemoveResRef::CMessageFamiliarRemoveResRef(CResRef& resref,unsigned char nAlignment,unsigned char nLevel,long caller,long target);
Parameters
• CResRef & resref - resource reference of familiar
• unsigned char nAlignment -
• unsigned char nLevel -
• long caller -
• long target -
Remarks
6.81. CMessage<Message> Classes 1533
EEex Documentation, Release 1.0
CMessageFireProjectile Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageFireProjectile::CMessageFireProjectile Event message for this class
CMessageFireProjectile::CMessageFireProjectile
void CMessageFireProjectile::CMessageFireProjectile(unsigned short projectileType,long projectileTargetId,CPoint& projectileTarget,long height,long caller,long target);
Parameters
• unsigned short projectileType -
• long projectileTargetId -
• CPoint& projectileTarget - x and y coordinates of projectile target
• long height -
• long caller -
• long target -
Remarks
CMessageFireSpell Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
1534 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Methods
Name DescriptionCMessageFireSpell::CMessageFireSpell Event message for this class
CMessageFireSpell::CMessageFireSpell
void CMessageFireSpell::CMessageFireSpell(:ref:`CString<CString>`\& dialogRes,long NPCId,long caller,long target);
Parameters
• CString& dialogRes -
• long NPCId -
• long caller -
• long target -
Remarks
CMessageForceRandomEncounter Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageForceRandomEncounter::CMessageForceRandomEncounter Event message for this class
CMessageForceRandomEncounter::CMessageForceRandomEncounter
void CMessageForceRandomEncounter::CMessageForceRandomEncounter(CString& ref,CString& entry,long caller,long target);
6.81. CMessage<Message> Classes 1535
EEex Documentation, Release 1.0
Parameters
• CString& ref -
• CString& entry -
• long caller -
• long target -
Remarks
CMessageInsertAction Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageInsertAction::CMessageInsertAction Event message for this class
CMessageInsertAction::CMessageInsertAction
CMessageInsertAction::CMessageInsertAction(CAIAction& action,long caller,long target);
Parameters
• CAIAction& action -
• long caller -
• long target -
Remarks
CMessageInsertResponse Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
1536 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Methods
Name DescriptionCMessageInsertResponse::CMessageInsertResponse Event message for this class
CMessageInsertResponse::CMessageInsertResponse
CMessageInsertResponse::CMessageInsertResponse(:ref:`CAIResponse<CAIResponse>`\& response,int checkCurrent,int clearActions,long caller,long target);
Parameters
• CAIResponse& response -
• int checkCurrent -
• int clearActions -
• long caller -
• long target -
Remarks
CMessageLoadDialog Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageLoadDialog::CMessageLoadDialog Event message for this class
CMessageLoadDialog::CMessageLoadDialog
6.81. CMessage<Message> Classes 1537
EEex Documentation, Release 1.0
void CMessageLoadDialog::CMessageLoadDialog(CString& dialogRes,long NPCId,long caller,long target,int bItemDialog);
Parameters
• CString& dialogRes -
• long NPCId -
• long caller -
• long target -
• int bItemDialog -
Remarks
CMessageMoveGlobal Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageMoveGlobal::CMessageMoveGlobal Event message for this class
CMessageMoveGlobal::CMessageMoveGlobal
void CMessageMoveGlobal::CMessageMoveGlobal(CString& sArea,CPoint& ptStart,long caller,long target);
Parameters
• CString& sArea -
• CPoint& ptStart - x and y coordinates
• long caller -
• long target -
Remarks
1538 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageNonControlledDialogStart Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageNonControlledDialogStart::CMessageNonControlledDialogStart Event message for this class
CMessageNonControlledDialogStart::CMessageNonControlledDialogStart
void CMessageNonControlledDialogStart::CMessageNonControlledDialogStart(CString& dialogRes,long NPCId,long caller,long target);
Parameters
• CString& dialogRes -
• long NPCId -
• long caller -
• long target -
Remarks
CMessagePlaySoundRef Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessagePlaySoundRef::CMessagePlaySoundRef Event message for this class
6.81. CMessage<Message> Classes 1539
EEex Documentation, Release 1.0
CMessagePlaySoundRef::CMessagePlaySoundRef
void CMessagePlaySoundRef::CMessagePlaySoundRef(CResRef cResSound,int sendToMe,long caller,long target);
Parameters
• CResRef cResSound - resource reference of sound to play
• int sendToMe -
• long caller -
• long target -
Remarks
CMessageRemoveReplies Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageRemoveReplies::CMessageRemoveReplies Event message for this class
CMessageRemoveReplies::CMessageRemoveReplies
void CMessageRemoveReplies::CMessageRemoveReplies(long entryIndex,long marker,unsigned long nameColor,CString& name,long caller,long target);
Parameters
• long entryIndex -
• long marker -
• unsigned long nameColor -
• CString& name -
1540 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• long caller -
• long target -
Remarks
CMessageRemoveVVCInternal Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageRemoveVVCInternal::CMessageRemoveVVCInternal Event message for this class
CMessageRemoveVVCInternal::CMessageRemoveVVCInternal
void CMessageRemoveVVCInternal::CMessageRemoveVVCInternal(CResRef& ref,unsigned char level,long caller,long target);
Parameters
• CResRef & ref -
• unsigned char level -
• long caller -
• long target -
Remarks
CMessageReplaceItem Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
6.81. CMessage<Message> Classes 1541
EEex Documentation, Release 1.0
Methods
Name DescriptionCMessageReplaceItem::CMessageReplaceItem Event message for this class
CMessageReplaceItem::CMessageReplaceItem
void CMessageReplaceItem::CMessageReplaceItem(CItem& item,CResRef& ref,long caller,long target);
Parameters
• CItem& item -
• CResRef & ref -
• long caller -
• long target -
Remarks
CMessageScreenShake Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageScreenShake::CMessageScreenShake Event message for this class
CMessageScreenShake::CMessageScreenShake
void CMessageScreenShake::CMessageScreenShake(unsigned short duration,char magnitudeX,char magnitudeY,unsigned char bOverride,long caller,long target);
1542 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Parameters
• unsigned short duration -
• char magnitudeX -
• char magnitudeY -
• unsigned char bOverride -
• long caller -
• long target -
Remarks
CMessageSetAreaScript Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetAreaScript::CMessageSetAreaScript Event message for this class
CMessageSetAreaScript::CMessageSetAreaScript
CMessageSetAreaScript::CMessageSetAreaScript(CResRef script,short slot,long caller,long target);
Parameters
• CResRef script -
• short slot -
• long caller -
• long target -
Remarks
6.81. CMessage<Message> Classes 1543
EEex Documentation, Release 1.0
CMessageSetCampaign Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetCampaign::CMessageSetCampaign Event message for this class
CMessageSetCampaign::CMessageSetCampaign
CMessageSetCampaign::CMessageSetCampaign(CResRef& campaign,long caller,long target);
Parameters
• CResRef & campaign -
• long caller -
• long target -
Remarks
CMessageSetCurrentArea Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetCurrentArea::CMessageSetCurrentArea Event message for this class
1544 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageSetCurrentArea::CMessageSetCurrentArea
void CMessageSetCurrentArea::CMessageSetCurrentArea(CResRef dialog,long caller,long target);
Parameters
• CResRef dialog -
• long caller -
• long target -
Remarks
CMessageSetDialogResRef Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetDialogResRef::CMessageSetDialogResRef Event message for this class
CMessageSetDialogResRef::CMessageSetDialogResRef
void CMessageSetDialogResRef::CMessageSetDialogResRef(CResRef dialog,long caller,long target);
Parameters
• CResRef dialog -
• long caller -
• long target -
Remarks
6.81. CMessage<Message> Classes 1545
EEex Documentation, Release 1.0
CMessageSetLastAttacker Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetLastAttacker::CMessageSetLastAttacker Event message for this class
CMessageSetLastAttacker::CMessageSetLastAttacker
void CMessageSetLastAttacker::CMessageSetLastAttacker(CAIObjectType& lAttacker,
long caller,long target);
Parameters
• CAIObjectType& lAttacker -
• long caller -
• long target -
Remarks
CMessageSetLastObject Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetLastObject::CMessageSetLastObject Event message for this class
1546 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageSetLastObject::CMessageSetLastObject
void CMessageSetLastObject::CMessageSetLastObject(CAIObjectType& lAttacker,unsigned short type,long caller,long target);
Parameters
• CAIObjectType& lAttacker -
• unsigned short type -
• long caller -
• long target -
Remarks
CMessageSetMusic Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetMusic::CMessageSetMusic Event message for this class
CMessageSetMusic::CMessageSetMusic
void CMessageSetMusic::CMessageSetMusic(CResRef& sArea,unsigned char slot,int music,long caller,long target);
Parameters
• CResRef & sArea -
• unsigned char slot -
• int music -
• long caller -
• long target -
6.81. CMessage<Message> Classes 1547
EEex Documentation, Release 1.0
Remarks
CMessageSetPath Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetPath::CMessageSetPath Event message for this class
CMessageSetPath::CMessageSetPath
CMessageSetPath::CMessageSetPath(long position,long* pPath,short nPath,short currPath,CPoint currDest,long caller,long target);
Parameters
• long position -
• long* pPath -
• short nPath -
• short currPath -
• CPoint currDest -
• long caller -
• long target -
Remarks
CMessageSetPortraitLarge Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
1548 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Methods
Name DescriptionCMessageSetPortraitLarge::CMessageSetPortraitLarge Event message for this class
CMessageSetPortraitLarge::CMessageSetPortraitLarge
void CMessageSetPortraitLarge::CMessageSetPortraitLarge(CResRef dialog,long caller,long target);
Parameters
• CResRef dialog -
• long caller -
• long target -
Remarks
CMessageSetPortraitSmall Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetPortraitSmall::CMessageSetPortraitSmall Event message for this class
CMessageSetPortraitSmall::CMessageSetPortraitSmall
void CMessageSetPortraitSmall::CMessageSetPortraitSmall(CResRef dialog,long caller,long target);
Parameters
• CResRef dialog -
6.81. CMessage<Message> Classes 1549
EEex Documentation, Release 1.0
• long caller -
• long target -
Remarks
CMessageSetRestEncounterProbability Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetRestEncounterProbability::CMessageSetRestEncounterProbability Event message for this class
CMessageSetRestEncounterProbability::CMessageSetRestEncounterProbability
void CMessageSetRestEncounterProbability::CMessageSetRestEncounterProbability(CResRef& sArea,unsigned char bDayProb,unsigned char prob,long caller,long target);
Parameters
• CResRef & sArea -
• unsigned char bDayProb -
• unsigned char prob -
• long caller -
• long target -
Remarks
CMessageSetTrigger Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
1550 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Methods
Name DescriptionCMessageSetTrigger::CMessageSetTrigger Event message for this class
CMessageSetTrigger::CMessageSetTrigger
void CMessageSetTrigger::CMessageSetTrigger(CAITrigger& trigger,long caller,long target);
Parameters
• CAITrigger& trigger -
• long caller -
• long target -
Remarks
CMessageSetVariableAll Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetVariableAll::CMessageSetVariableAll Event message for this class
CMessageSetVariableAll::CMessageSetVariableAll
void CMessageSetVariableAll::CMessageSetVariableAll(CString& sAreaName,CVariable& variable,long caller,long target);
Parameters
• CString& sAreaName -
6.81. CMessage<Message> Classes 1551
EEex Documentation, Release 1.0
• CVariable& variable -
• long caller -
• long target -
Remarks
CMessageSetVariable Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetVariable::CMessageSetVariable Event message for this class
CMessageSetVariable::CMessageSetVariable
void CMessageSetVariable::CMessageSetVariable(CString& sGlobalName,CString& sAreaName,const long nValue,const unsigned char bIncrement,long caller,long target);
Parameters
• CString& sGlobalName -
• CString& sAreaName -
• const long nValue -
• const unsigned char bIncrement -
• long caller -
• long target -
Remarks
1552 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageSetWorldmapAreaFlag Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetWorldmapAreaFlag::CMessageSetWorldmapAreaFlag Event message for this class
CMessageSetWorldmapAreaFlag::CMessageSetWorldmapAreaFlag
void CMessageSetWorldmapAreaFlag::CMessageSetWorldmapAreaFlag(:ref:`CResRef<CResRef>`\& area,int value,int setreset,long caller,long target);
Parameters
• CResRef & area -
• int value -
• int setreset -
• long caller -
• long target -
Remarks
CMessageSetWorldmap Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSetWorldmap::CMessageSetWorldmap Event message for this class
6.81. CMessage<Message> Classes 1553
EEex Documentation, Release 1.0
CMessageSetWorldmap::CMessageSetWorldmap
void CMessageSetWorldmap::CMessageSetWorldmap(CResRef& worldmap,long caller,long target);
Parameters
• CResRef & worldmap -
• long caller -
• long target -
Remarks
CMessageSpriteEquipment Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSpriteEquipment::CMessageSpriteEquipment Event message for this class
CMessageSpriteEquipment::CMessageSpriteEquipment
CMessageSpriteEquipment::CMessageSpriteEquipment(CGameSprite* pSprite,long caller,long target);
Parameters
• CGameSprite* pSprite -
• long caller -
• long target -
Remarks
1554 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageSpriteUpdate Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageSpriteUpdate::CMessageSpriteUpdate Event message for this classCMessageSpriteUpdate::CorrectAreaTransition Event message for this class
CMessageSpriteUpdate::CMessageSpriteUpdate
void CMessageSpriteUpdate::CMessageSpriteUpdate(CGameSprite* pSprite,long caller,long target);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• long caller -
• long target -
Remarks
CMessageSpriteUpdate::CorrectAreaTransition
int CMessageSpriteUpdate::CorrectAreaTransition(CString sAreaName);
Parameters
• CString sAreaName - string containing area name
Return Value
Returns int
Remarks
6.81. CMessage<Message> Classes 1555
EEex Documentation, Release 1.0
CMessageStartScroll Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageStartScroll::CMessageStartScroll Event message for this class
CMessageStartScroll::CMessageStartScroll
void CMessageStartScroll::CMessageStartScroll(CGameArea* pArea,CPoint src,CPoint dest,unsigned char speed,long caller,long target);
Parameters
• CGameArea* pArea -
• CPoint src -
• CPoint dest -
• unsigned char speed -
• long caller -
• long target -
Remarks
CMessageStartTextScreen Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
1556 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Methods
Name DescriptionCMessageStartTextScreen::CMessageStartTextScreen Event message for this class
CMessageStartTextScreen::CMessageStartTextScreen
void CMessageStartTextScreen::CMessageStartTextScreen(CResRef& ref,long caller,long target);
Parameters
• CResRef & ref -
• long caller -
• long target -
Remarks
CMessageStartVEF Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageStartVEF::CMessageStartVEF Event message for this class
CMessageStartVEF::CMessageStartVEF
void CMessageStartVEF::CMessageStartVEF(CResRef& ref,CString& area,CPoint& start,CPoint targetPt,short height,long caller,long target);
6.81. CMessage<Message> Classes 1557
EEex Documentation, Release 1.0
Parameters
• CResRef & ref -
• CString& area -
• CPoint& start -
• CPoint targetPt -
• short height -
• long caller -
• long target -
Remarks
CMessageStaticPalette Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageStaticPalette::CMessageStaticPalette Event message for this class
CMessageStaticPalette::CMessageStaticPalette
void CMessageStaticPalette::CMessageStaticPalette(CResRef res,long caller,long target);
Parameters
• CResRef res -
• long caller -
• long target -
Remarks
1558 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageStoreAddItem Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageStoreAddItem::CMessageStoreAddItem Event message for this class
CMessageStoreAddItem::CMessageStoreAddItem
CMessageStoreAddItem::CMessageStoreAddItem(CResRef& store,CCreatureFileItem& item,long caller,long target);
Parameters
• CResRef & store -
• CCreatureFileItem& item -
• long caller -
• long target -
Remarks
CMessageStoreDemand Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageStoreDemand::CMessageStoreDemand Event message for this class
6.81. CMessage<Message> Classes 1559
EEex Documentation, Release 1.0
CMessageStoreDemand::CMessageStoreDemand
void CMessageStoreDemand::CMessageStoreDemand(CResRef& store,long caller,long target);
Parameters
• CResRef & store -
• long caller -
• long target -
Remarks
CMessageStoreRelease Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageStoreRelease::CMessageStoreRelease Event message for this class
CMessageStoreRelease::CMessageStoreRelease
void CMessageStoreRelease::CMessageStoreRelease(CResRef& store,long caller,long target);
Parameters
• CResRef & store -
• long caller -
• long target -
Remarks
1560 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageStoreRemoveItem Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageStoreRemoveItem::CMessageStoreRemoveItem Event message for this class
CMessageStoreRemoveItem::CMessageStoreRemoveItem
void CMessageStoreRemoveItem::CMessageStoreRemoveItem(CResRef& store,CResRef& itemId,unsigned long flags,long caller,long target);
Parameters
• CResRef & store -
• CResRef & itemId -
• unsigned long flags -
• long caller -
• long target -
Remarks
CMessageStoreReplaceItem Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageStoreReplaceItem::CMessageStoreReplaceItem Event message for this class
6.81. CMessage<Message> Classes 1561
EEex Documentation, Release 1.0
CMessageStoreReplaceItem::CMessageStoreReplaceItem
void CMessageStoreReplaceItem::CMessageStoreReplaceItem(CResRef& store,CResRef& oldItem,CResRef& newItem,long caller,long target);
Parameters
• CResRef & store -
• CResRef & oldItem -
• CResRef & newItem -
• long caller -
• long target -
Remarks
CMessageTransformItem Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageTransformItem::CMessageTransformItem Event message for this class
CMessageTransformItem::CMessageTransformItem
void CMessageTransformItem::CMessageTransformItem(CItem& item,CString& ref,long caller,long target);
Parameters
• CItem& item -
• CString& ref -
• long caller -
• long target -
1562 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Remarks
CMessageTriggerStatus Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageTriggerStatus::CMessageTriggerStatus Event message for this class
CMessageTriggerStatus::CMessageTriggerStatus
void CMessageTriggerStatus::CMessageTriggerStatus(unsigned long flags,unsigned short trapActivated,unsigned short trapDetected,long caller,long target);
Parameters
• unsigned long flags -
• unsigned short trapActivated -
• unsigned short trapDetected -
• long caller -
• long target -
Remarks
CMessageUpdateImmunities Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
6.81. CMessage<Message> Classes 1563
EEex Documentation, Release 1.0
Methods
Name DescriptionCMessageUpdateImmunities::CMessageUpdateImmunities Event message for this class
CMessageUpdateImmunities::CMessageUpdateImmunities
void CMessageUpdateImmunities::CMessageUpdateImmunities(CImmunitiesAIType& list,long caller,long target);
Parameters
• CImmunitiesAIType& list -
• long caller -
• long target -
Remarks
CMessageUpdateScript Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageUpdateScript::CMessageUpdateScript Event message for this class
CMessageUpdateScript::CMessageUpdateScript
void CMessageUpdateScript::CMessageUpdateScript(CResRef& resref,short level,long caller,long target);
Parameters
• CResRef & resref -
1564 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• short level -
• long caller -
• long target -
Remarks
CMessageUpdateStoredPartyLocations Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageUpdateStoredPartyLocations::CMessageUpdateStoredPartyLocations Event message for this class
CMessageUpdateStoredPartyLocations::CMessageUpdateStoredPartyLocations
void CMessageUpdateStoredPartyLocations::CMessageUpdateStoredPartyLocations(int bPocketPlane,CTypedPtrList* pList,long caller,long target);
Parameters
• int bPocketPlane -
• CTypedPtrList* pList -
• long caller -
• long target -
Remarks
CMessageUseItemCharges Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
6.81. CMessage<Message> Classes 1565
EEex Documentation, Release 1.0
Methods
Name DescriptionCMessageUseItemCharges::CMessageUseItemCharges Event message for this class
CMessageUseItemCharges::CMessageUseItemCharges
void CMessageUseItemCharges::CMessageUseItemCharges(short slotNum,short charges,short abilityNum,long caller,long target);
Parameters
• short slotNum -
• short charges -
• short abilityNum -
• long caller -
• long target -
Remarks
CMessageWeaponImmumityUpdate Class
Note: See CMessage<Message> Methods for methods that are shared by all Message classes. Only the additionalmethods specific to each class are documented here.
Methods
Name DescriptionCMessageWeaponImmumityUpdate::CMessageWeaponImmumityUpdate Event message for this class
1566 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMessageWeaponImmumityUpdate::CMessageWeaponImmumityUpdate
void CMessageWeaponImmumityUpdate::CMessageWeaponImmumityUpdate(CGameSprite* pSprite,long caller,long target);
Parameters
• CGameSprite* pSprite -
• long caller -
• long target -
Remarks
6.82 CMoveList Class
The structure used for this class is CMoveList
Quick Refvoid CMoveList::ClearAll()void CMoveList::AIUpdate()void CMoveList::AddTail(CMoveListEntry* newNode)void CMoveList::CheckLoad(CGameArea* pArea)void CMoveList::Marshal(CGameArea* pMasterArea)void CMoveList::PostMarshal()void CMoveListEntry::CMoveListEntry()
6.82.1 Methods
Name DescriptionCMoveList::ClearAllCMoveList::AIUpdateCMoveList::AddTailCMoveList::CheckLoadCMoveList::MarshalCMoveList::PostMarshalCMoveListEntry::CMoveListEntry
CMoveList::ClearAll
void CMoveList::ClearAll();
Remarks
6.82. CMoveList Class 1567
EEex Documentation, Release 1.0
CMoveList::AIUpdate
void CMoveList::AIUpdate();
Remarks
CMoveList::AddTail
void CMoveList::AddTail(CMoveListEntry* newNode);
Parameters
• CMoveListEntry* newNode -
Remarks
CMoveList::CheckLoad
void CMoveList::CheckLoad(CGameArea* pArea);
Parameters
• CGameArea* pArea -
Remarks
CMoveList::Marshal
void CMoveList::Marshal(CGameArea* pMasterArea);
Parameters
• CGameArea* pMasterArea -
Remarks
CMoveList::PostMarshal
void CMoveList::PostMarshal();
Remarks
CMoveListEntry::CMoveListEntry
1568 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CMoveListEntry::CMoveListEntry();
Remarks
6.83 CMultiplayerSettings Class
• Overview
• Quick Reference
• Constructors
• Methods
6.83.1 Overview
Note: The CMultiplayerSettings class handles settings for multiplayer game sessions
The structure used for this class is CMultiplayerSettings
6.83. CMultiplayerSettings Class 1569
EEex Documentation, Release 1.0
6.83.2 Quick Reference
Quick Refvoid CMultiplayerSettings::CMultiplayerSettings()void CMultiplayerSettings::~CMultiplayerSettings()int CMultiplayerSettings::GetCharacterControlledByPlayer(int nCharacterSlot)unsigned char CMultiplayerSettings::GetCharacterReady(int nCharacterSlot)unsigned char CMultiplayerSettings::GetCharacterStatus(int nCharacterSlot)unsigned long CMultiplayerSettings::GetDataSize()unsigned char CMultiplayerSettings::GetPermission(int nPlayerSlot, int nPermission)unsigned char CMultiplayerSettings::GetPlayerReady(short nPlayerSlot)unsigned char CMultiplayerSettings::GetPlayerReady(int idPlayer)void CMultiplayerSettings::InitializeSettings()void CMultiplayerSettings::Marshal(unsigned char** pData, unsigned long* dwSize)void CMultiplayerSettings::OnDropPlayer(int idDroppedPlayer)void CMultiplayerSettings::ResetPermissionsForPlayer(int nPlayerSlot, unsigned char bFlush)void CMultiplayerSettings::ResetServerOnLoadGame()void CMultiplayerSettings::SetAllowReformPartyOption(unsigned char bReformParty, unsigned char bFlush)void CMultiplayerSettings::SetArbitrationLockAllowInput(unsigned char bStatus)void CMultiplayerSettings::SetArbitrationLockStatus(unsigned char bStatus)void CMultiplayerSettings::SetCharacterControlledByPlayer(int nCharacterSlot, int nPlayerSlot, unsignedchar bFlush, unsigned char bCharacterUpdate)void CMultiplayerSettings::SetCharacterCreationLocation(CString areaName, CPoint ptStart)void CMultiplayerSettings::SetCharacterReady(int nCharacterSlot, unsigned char bReady, unsigned charbFlush)void CMultiplayerSettings::SetImportingCharacterOption(unsigned char nImportingBitField)void CMultiplayerSettings::SetListenToJoinOption(unsigned char bListenToJoin, unsigned char bFlush)void CMultiplayerSettings::SetPermission(int nPlayerSlot, int nPermission, unsigned char bPermissionValue,unsigned char bFlush)void CMultiplayerSettings::SetPlayerReady(int idPlayer, unsigned char bValue, unsigned char bFlush)void CMultiplayerSettings::SetRestrictStoreOption(unsigned char bRestrictStore)void CMultiplayerSettings::SetServerOnLoadGame(int localPlayerID)void CMultiplayerSettings::SignalCharacterStatus(int nCharacterSlot, unsigned char nStatus, unsigned charbLocalMessage, unsigned char bFlush)void CMultiplayerSettings::Unmarshal(unsigned char* pData, unsigned long dwSize)
6.83.3 Constructors
Name DescriptionCMultiplayerSettings::CMultiplayerSettings Constructs a CMultiplayerSettings objectCMultiplayerSettings::~CMultiplayerSettings Destroys a CMultiplayerSettings object
CMultiplayerSettings::CMultiplayerSettings
Constructs a CMultiplayerSettings object
1570 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CMultiplayerSettings::CMultiplayerSettings();
Remarks
Constructs a CMultiplayerSettings object
CMultiplayerSettings::~CMultiplayerSettings
Destroys the CMultiplayerSettings object
void CMultiplayerSettings::~CMultiplayerSettings();
Remarks
Destroys the CMultiplayerSettings object
6.83.4 Methods
Name DescriptionCMultiplayerSettings::GetCharacterControlledByPlayerCMultiplayerSettings::GetCharacterReadyCMultiplayerSettings::GetCharacterStatusCMultiplayerSettings::GetDataSizeCMultiplayerSettings::GetPermissionCMultiplayerSettings::GetPlayerReadyCMultiplayerSettings::InitializeSettingsCMultiplayerSettings::MarshalCMultiplayerSettings::OnDropPlayerCMultiplayerSettings::ResetPermissionsForPlayerCMultiplayerSettings::ResetServerOnLoadGameCMultiplayerSettings::SetAllowReformPartyOptionCMultiplayerSettings::SetArbitrationLockAllowInputCMultiplayerSettings::SetArbitrationLockStatusCMultiplayerSettings::SetCharacterControlledByPlayerCMultiplayerSettings::SetCharacterCreationLocationCMultiplayerSettings::SetCharacterReadyCMultiplayerSettings::SetImportingCharacterOptionCMultiplayerSettings::SetListenToJoinOptionCMultiplayerSettings::SetPermissionCMultiplayerSettings::SetPlayerReadyCMultiplayerSettings::SetRestrictStoreOptionCMultiplayerSettings::SetServerOnLoadGameCMultiplayerSettings::SignalCharacterStatusCMultiplayerSettings::Unmarshal
6.83. CMultiplayerSettings Class 1571
EEex Documentation, Release 1.0
CMultiplayerSettings::GetCharacterControlledByPlayer
int CMultiplayerSettings::GetCharacterControlledByPlayer(int nCharacterSlot);
Parameters
• int nCharacterSlot -
Return Value
int
Remarks
CMultiplayerSettings::GetCharacterReady
unsigned char CMultiplayerSettings::GetCharacterReady(int nCharacterSlot);
Parameters
• int nCharacterSlot -
Return Value
unsigned char
Remarks
CMultiplayerSettings::GetCharacterStatus
unsigned char CMultiplayerSettings::GetCharacterStatus(int nCharacterSlot);
Parameters
• int nCharacterSlot -
Return Value
unsigned char
Remarks
CMultiplayerSettings::GetDataSize
unsigned long CMultiplayerSettings::GetDataSize();
Return Value
unsigned long
Remarks
1572 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CMultiplayerSettings::GetPermission
unsigned char CMultiplayerSettings::GetPermission(int nPlayerSlot, int nPermission);
Parameters
• int nPlayerSlot -
• int nPermission -
Return Value
unsigned char
Remarks
CMultiplayerSettings::GetPlayerReady
unsigned char CMultiplayerSettings::GetPlayerReady(short nPlayerSlot);
Parameters
• short nPlayerSlot -
Return Value
unsigned char
Remarks
CMultiplayerSettings::GetPlayerReady
unsigned char CMultiplayerSettings::GetPlayerReady(int idPlayer);
Parameters
• int idPlayer -
Return Value
unsigned char
Remarks
CMultiplayerSettings::InitializeSettings
void CMultiplayerSettings::InitializeSettings();
Remarks
6.83. CMultiplayerSettings Class 1573
EEex Documentation, Release 1.0
CMultiplayerSettings::Marshal
void CMultiplayerSettings::Marshal(unsigned char** pData,unsigned long* dwSize);
Parameters
• unsigned char** pData -
• unsigned long* dwSize -
Remarks
CMultiplayerSettings::OnDropPlayer
void CMultiplayerSettings::OnDropPlayer(int idDroppedPlayer);
Parameters
• int idDroppedPlayer -
Remarks
CMultiplayerSettings::ResetPermissionsForPlayer
void CMultiplayerSettings::ResetPermissionsForPlayer(int nPlayerSlot,unsigned char bFlush);
Parameters
• int nPlayerSlot -
• unsigned char bFlush -
Remarks
CMultiplayerSettings::ResetServerOnLoadGame
void CMultiplayerSettings::ResetServerOnLoadGame();
Remarks
CMultiplayerSettings::SetAllowReformPartyOption
1574 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CMultiplayerSettings::SetAllowReformPartyOption(unsigned char bReformParty,unsigned char bFlush);
Parameters
• unsigned char bReformParty -
• unsigned char bFlush -
Remarks
CMultiplayerSettings::SetArbitrationLockAllowInput
void CMultiplayerSettings::SetArbitrationLockAllowInput(unsigned char bStatus);
Parameters
• unsigned char bStatus -
Remarks
CMultiplayerSettings::SetArbitrationLockStatus
void CMultiplayerSettings::SetArbitrationLockStatus(unsigned char bStatus);
Parameters
• unsigned char bStatus -
Remarks
CMultiplayerSettings::SetCharacterControlledByPlayer
void CMultiplayerSettings::SetCharacterControlledByPlayer(int nCharacterSlot,int nPlayerSlot,unsigned char bFlush,unsigned char bCharacterUpdate);
Parameters
• int nCharacterSlot -
• int nPlayerSlot -
• unsigned char bFlush -
• unsigned char bCharacterUpdate -
Remarks
6.83. CMultiplayerSettings Class 1575
EEex Documentation, Release 1.0
CMultiplayerSettings::SetCharacterCreationLocation
void CMultiplayerSettings::SetCharacterCreationLocation(CString areaName,CPoint ptStart);
Parameters
• CString areaName -
• CPoint ptStart -
Remarks
CMultiplayerSettings::SetCharacterReady
void CMultiplayerSettings::SetCharacterReady(int nCharacterSlot,unsigned char bReady,unsigned char bFlush);
Parameters
• int nCharacterSlot -
• unsigned char bReady -
• unsigned char bFlush -
Remarks
CMultiplayerSettings::SetImportingCharacterOption
void CMultiplayerSettings::SetImportingCharacterOption(unsigned char→˓nImportingBitField);
Parameters
• unsigned char nImportingBitField -
Remarks
CMultiplayerSettings::SetListenToJoinOption
void CMultiplayerSettings::SetListenToJoinOption(unsigned char bListenToJoin,unsigned char bFlush);
Parameters
• unsigned char bListenToJoin -
1576 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• unsigned char bFlush -
Remarks
CMultiplayerSettings::SetPermission
void CMultiplayerSettings::SetPermission(int nPlayerSlot,int nPermission,unsigned char bPermissionValue,unsigned char bFlush);
Parameters
• int nPlayerSlot -
• int nPermission -
• unsigned char bPermissionValue -
• unsigned char bFlush -
Remarks
CMultiplayerSettings::SetPlayerReady
void CMultiplayerSettings::SetPlayerReady(int idPlayer,unsigned char bValue,unsigned char bFlush);
Parameters
• int idPlayer -
• unsigned char bValue -
• unsigned char bFlush -
Remarks
CMultiplayerSettings::SetRestrictStoreOption
void CMultiplayerSettings::SetRestrictStoreOption(unsigned char bRestrictStore);
Parameters
• unsigned char bRestrictStore -
Remarks
6.83. CMultiplayerSettings Class 1577
EEex Documentation, Release 1.0
CMultiplayerSettings::SetServerOnLoadGame
void CMultiplayerSettings::SetServerOnLoadGame(int localPlayerID);
Parameters
• int localPlayerID -
Remarks
CMultiplayerSettings::SignalCharacterStatus
void CMultiplayerSettings::SignalCharacterStatus(int nCharacterSlot,unsigned char nStatus,unsigned char bLocalMessage,unsigned char bFlush);
Parameters
• int nCharacterSlot -
• unsigned char nStatus -
• unsigned char bLocalMessage -
• unsigned char bFlush -
Remarks
CMultiplayerSettings::Unmarshal
void CMultiplayerSettings::Unmarshal(unsigned char* pData,unsigned long dwSize);
Parameters
• unsigned char* pData -
• unsigned long dwSize -
Remarks
6.84 CNetwork Class
• Overview
• Quick Reference
• Constructors
• Methods
1578 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.84.1 Overview
Note: The CNetwork class handles network session management, messaging and information for multiplayer games
The structure used for this class is CNetwork
6.84.2 Quick Reference
Quick Refvoid CNetwork::CNetwork()void CNetwork::~CNetwork()void CNetwork::AddMessageToWindow(int idDPTo, unsigned long dwFlags, void* lpData, unsigned long dwDataSize)unsigned char CNetwork::AddPlayerToList(int dpID, CString& sPlayerName, unsigned char bIsHost, unsigned char bMakeVisible)bool CNetwork::CheckForServiceProviderConnection()unsigned char CNetwork::CheckSessionStatus(unsigned char bInThreadLoop)void CNetwork::CloseSession(unsigned char bAIResponsible)unsigned char CNetwork::CreatePlayer(int& nErrorCode)void CNetwork::EnumeratePlayers(unsigned char bProtectList)unsigned char CNetwork::EnumerateServiceProviders()unsigned char* CNetwork::FetchFrame(int& dpIDFrom, unsigned long& dwSize)unsigned char* CNetwork::FetchMessage(int& nMsgFrom, int& nMsgTo, unsigned long& dwSize)unsigned char* CNetwork::FetchSpecificMessage(CString& sPlayerName, unsigned char nSpecMsgType, unsigned char nSpecMsgSubType, unsigned long& dwSize)int CNetwork::FindPlayerIDByName(CString& sPlayerName, unsigned char bInvisible)int CNetwork::FindPlayerLocationByID(int dpID, unsigned char bInvisible)int CNetwork::FindPlayerLocationByName(CString& sPlayerName, unsigned char bInvisible)int CNetwork::FindPlayerNumberByName(CString& sPlayerName)int CNetwork::GetHostPlayerID()void CNetwork::GetHostPlayerName(CString& sHostName)unsigned char CNetwork::GetPasswordRequiredForSelectedSession()int CNetwork::GetPlayerID(const int nPlayerNumber)void CNetwork::GetPlayerName(const int nPlayerNumber, CString& sPlayerName)int CNetwork::GetRawPlayerID(const int nPlayerNumber)void CNetwork::GetRawPlayerName(const int nPlayerNumber, CString& sPlayerName)unsigned char CNetwork::GetServiceProviderType(int nServiceProviderNumber, int& nServiceProviderType)unsigned char CNetwork::HostNewSession()unsigned char CNetwork::InitializeConnectionToServiceProvider(unsigned char bHostingGame)unsigned char CNetwork::JoinSelectedSession(int& nErrorCode)unsigned char CNetwork::KickPlayer(int dpID, unsigned char bAIResponsible)unsigned char CNetwork::MakePlayersVisible()void CNetwork::OnCloseSession()void CNetwork::OnOpenSession()unsigned char CNetwork::PeekMessageA()unsigned char CNetwork::PeekSpecificMessage(CString& sPlayerName, unsigned char nSpecMsgType, unsigned char nSpecMsgSubType)void CNetwork::RemoveAllPlayersFromList()void CNetwork::RemoveInitializeConnection()unsigned char CNetwork::RemovePlayerFromList(int dpID, unsigned char bAIResponsible)void CNetwork::RequestSessionDetails(int sessionNumber)
Continued on next page
6.84. CNetwork Class 1579
EEex Documentation, Release 1.0
Table 31 – continued from previous pageunsigned char CNetwork::SelectServiceProvider(int nServiceProviderNumber)unsigned char CNetwork::SelectSession(int nSessionNumber)unsigned char CNetwork::SendMessageA(CString& sPlayerName, unsigned long dwFlags, void* lpData, unsigned long nDataSize)unsigned char CNetwork::SendSpecificMessage(CString& sPlayerName, unsigned long dwFlags, unsigned char nSpecMsgType, unsigned char nSpecMsgSubType, void* lpData, unsigned long nDataSize)void CNetwork::SetApplicationOptions(unsigned char bKeepAlive, unsigned char bMigrateHost)unsigned char CNetwork::SetInSessionOptions()void CNetwork::SetJoinEnabled(unsigned char bJoinEnabled)void CNetwork::SetMaxPlayers(int nMaxPlayers)void CNetwork::SlidingWindowReceive()void CNetwork::SlidingWindowSend()int CNetwork::ThreadLoop()void CNetwork::UnselectServiceProvider()void CNetwork::UnselectSession()
6.84.3 Constructors
Name DescriptionCNetwork::CNetwork Constructs a CNetwork objectCNetwork::~CNetwork Destroys a CNetwork object
CNetwork::CNetwork
Constructs a CNetwork object
void CNetwork::CNetwork();
Remarks
Constructs a CNetwork object
CNetwork::~CNetwork
Destroys the CNetwork object
void CNetwork::~CNetwork();
Remarks
Destroys the CNetwork object
6.84.4 Methods
Name DescriptionContinued on next page
1580 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 32 – continued from previous pageCNetwork::AddMessageToWindowCNetwork::AddPlayerToListCNetwork::CheckForServiceProviderConnectionCNetwork::CheckSessionStatusCNetwork::CloseSessionCNetwork::CreatePlayerCNetwork::EnumeratePlayersCNetwork::EnumerateServiceProvidersCNetwork::FetchFrameCNetwork::FetchMessageCNetwork::FetchSpecificMessageCNetwork::FindPlayerIDByNameCNetwork::FindPlayerLocationByIDCNetwork::FindPlayerLocationByNameCNetwork::FindPlayerNumberByNameCNetwork::GetHostPlayerIDCNetwork::GetHostPlayerNameCNetwork::GetPasswordRequiredForSelectedSessionCNetwork::GetPlayerIDCNetwork::GetPlayerNameCNetwork::GetRawPlayerIDCNetwork::GetRawPlayerNameCNetwork::GetServiceProviderTypeCNetwork::HostNewSessionCNetwork::InitializeConnectionToServiceProviderCNetwork::JoinSelectedSessionCNetwork::KickPlayerCNetwork::MakePlayersVisibleCNetwork::OnCloseSessionCNetwork::OnOpenSessionCNetwork::PeekMessageACNetwork::PeekSpecificMessageCNetwork::RemoveAllPlayersFromListCNetwork::RemoveInitializeConnectionCNetwork::RemovePlayerFromListCNetwork::RequestSessionDetailsCNetwork::SelectServiceProviderCNetwork::SelectSessionCNetwork::SendMessageACNetwork::SendSpecificMessageCNetwork::SetApplicationOptionsCNetwork::SetInSessionOptionsCNetwork::SetJoinEnabledCNetwork::SetMaxPlayersCNetwork::SlidingWindowReceiveCNetwork::SlidingWindowSendCNetwork::ThreadLoopCNetwork::UnselectServiceProviderCNetwork::UnselectSession
6.84. CNetwork Class 1581
EEex Documentation, Release 1.0
CNetwork::AddMessageToWindow
void CNetwork::AddMessageToWindow(int idDPTo,unsigned long dwFlags,void* lpData,unsigned long dwDataSize);
Parameters
• int idDPTo -
• unsigned long dwFlags -
• void* lpData -
• unsigned long dwDataSize -
Remarks
CNetwork::AddPlayerToList
unsigned char CNetwork::AddPlayerToList(int dpID,CString& sPlayerName,unsigned char bIsHost,unsigned char bMakeVisible);
Parameters
• int dpID -
• CString& sPlayerName -
• unsigned char bIsHost -
• unsigned char bMakeVisible -
Return Value
Returns unsigned char
Remarks
CNetwork::CheckForServiceProviderConnection
bool CNetwork::CheckForServiceProviderConnection();
Return Value
Returns bool
Remarks
1582 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CNetwork::CheckSessionStatus
unsigned char CNetwork::CheckSessionStatus(unsigned char bInThreadLoop);
Parameters
• unsigned char bInThreadLoop -
Return Value
Returns unsigned char
Remarks
CNetwork::CloseSession
void CNetwork::CloseSession(unsigned char bAIResponsible);
Parameters
• unsigned char bAIResponsible -
Remarks
CNetwork::CreatePlayer
unsigned char CNetwork::CreatePlayer(int& nErrorCode);
Parameters
• int& nErrorCode -
Return Value
Returns unsigned char
Remarks
CNetwork::EnumeratePlayers
void CNetwork::EnumeratePlayers(unsigned char bProtectList);
Parameters
• unsigned char bProtectList -
Remarks
CNetwork::EnumerateServiceProviders
6.84. CNetwork Class 1583
EEex Documentation, Release 1.0
unsigned char CNetwork::EnumerateServiceProviders();
Return Value
Returns unsigned char
Remarks
CNetwork::FetchFrame
unsigned char* CNetwork::FetchFrame(int& dpIDFrom,unsigned long& dwSize);
Parameters
• int& dpIDFrom -
• unsigned long& dwSize -
Return Value
Returns unsigned char*
Remarks
CNetwork::FetchMessage
unsigned char* CNetwork::FetchMessage(int& nMsgFrom,int& nMsgTo,unsigned long& dwSize);
Parameters
• int& nMsgFrom -
• int& nMsgTo -
• unsigned long& dwSize -
Return Value
Returns unsigned char*
Remarks
1584 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CNetwork::FetchSpecificMessage
unsigned char* CNetwork::FetchSpecificMessage(CString& sPlayerName,unsigned char nSpecMsgType,unsigned char nSpecMsgSubType,unsigned long& dwSize);
Parameters
• CString& sPlayerName -
• unsigned char nSpecMsgType -
• unsigned char nSpecMsgSubType -
• unsigned long& dwSize -
Return Value
Returns unsigned char*
Remarks
CNetwork::FindPlayerIDByName
int CNetwork::FindPlayerIDByName(CString& sPlayerName,unsigned char bInvisible);
Parameters
• CString& sPlayerName -
• unsigned char bInvisible -
Return Value
Returns int
Remarks
CNetwork::FindPlayerLocationByID
int CNetwork::FindPlayerLocationByID(int dpID,unsigned char bInvisible);
Parameters
• int dpID -
• unsigned char bInvisible -
6.84. CNetwork Class 1585
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CNetwork::FindPlayerLocationByName
int CNetwork::FindPlayerLocationByName(CString& sPlayerName,unsigned char bInvisible);
Parameters
• CString& sPlayerName -
• unsigned char bInvisible -
Return Value
Returns int
Remarks
CNetwork::FindPlayerNumberByName
int CNetwork::FindPlayerNumberByName(CString& sPlayerName);
Parameters
• CString& sPlayerName -
Return Value
Returns int
Remarks
CNetwork::GetHostPlayerID
int CNetwork::GetHostPlayerID();
Return Value
Returns int
Remarks
CNetwork::GetHostPlayerName
1586 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CNetwork::GetHostPlayerName(CString& sHostName);
Parameters
• CString& sHostName -
Remarks
CNetwork::GetPasswordRequiredForSelectedSession
unsigned char CNetwork::GetPasswordRequiredForSelectedSession();
Return Value
Returns unsigned char
Remarks
CNetwork::GetPlayerID
int CNetwork::GetPlayerID(const int nPlayerNumber);
Parameters
• const int nPlayerNumber -
Return Value
Returns int
Remarks
CNetwork::GetPlayerName
void CNetwork::GetPlayerName(const int nPlayerNumber,CString& sPlayerName);
Parameters
• const int nPlayerNumber -
• CString& sPlayerName -
Remarks
CNetwork::GetRawPlayerID
6.84. CNetwork Class 1587
EEex Documentation, Release 1.0
int CNetwork::GetRawPlayerID(const int nPlayerNumber);
Parameters
• const int nPlayerNumber -
Return Value
Returns int
Remarks
CNetwork::GetRawPlayerName
void CNetwork::GetRawPlayerName(const int nPlayerNumber,CString& sPlayerName);
Parameters
• const int nPlayerNumber -
• CString& sPlayerName -
Remarks
CNetwork::GetServiceProviderType
unsigned char CNetwork::GetServiceProviderType(int nServiceProviderNumber,int& nServiceProviderType);
Parameters
• int nServiceProviderNumber -
• int& nServiceProviderType -
Return Value
Returns unsigned char
Remarks
CNetwork::HostNewSession
unsigned char CNetwork::HostNewSession();
Return Value
Returns unsigned char
Remarks
1588 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CNetwork::InitializeConnectionToServiceProvider
unsigned char CNetwork::InitializeConnectionToServiceProvider(unsigned char→˓bHostingGame);
Parameters
• unsigned char bHostingGame -
Return Value
Returns unsigned char
Remarks
CNetwork::JoinSelectedSession
unsigned char CNetwork::JoinSelectedSession(int& nErrorCode);
Parameters
• int& nErrorCode -
Return Value
Returns unsigned char
Remarks
CNetwork::KickPlayer
unsigned char CNetwork::KickPlayer(int dpID,unsigned char bAIResponsible);
Parameters
• int dpID -
• unsigned char bAIResponsible -
Return Value
Returns unsigned char
Remarks
6.84. CNetwork Class 1589
EEex Documentation, Release 1.0
CNetwork::MakePlayersVisible
unsigned char CNetwork::MakePlayersVisible();
Return Value
Returns unsigned char
Remarks
CNetwork::OnCloseSession
void CNetwork::OnCloseSession();
Remarks
CNetwork::OnOpenSession
void CNetwork::OnOpenSession();
Remarks
CNetwork::PeekMessageA
unsigned char CNetwork::PeekMessageA();
Return Value
Returns unsigned char
Remarks
CNetwork::PeekSpecificMessage
unsigned char CNetwork::PeekSpecificMessage(CString& sPlayerName,unsigned char nSpecMsgType,unsigned char nSpecMsgSubType);
Parameters
• CString& sPlayerName -
• unsigned char nSpecMsgType -
• unsigned char nSpecMsgSubType -
1590 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns unsigned char
Remarks
CNetwork::RemoveAllPlayersFromList
void CNetwork::RemoveAllPlayersFromList();
Remarks
CNetwork::RemoveInitializeConnection
void CNetwork::RemoveInitializeConnection();
Remarks
CNetwork::RemovePlayerFromList
unsigned char CNetwork::RemovePlayerFromList(int dpID,unsigned char bAIResponsible);
Parameters
• int dpID -
• unsigned char bAIResponsible -
Return Value
Returns unsigned char
Remarks
CNetwork::RequestSessionDetails
void CNetwork::RequestSessionDetails(int sessionNumber);
Parameters
• int sessionNumber -
Remarks
6.84. CNetwork Class 1591
EEex Documentation, Release 1.0
CNetwork::SelectServiceProvider
unsigned char CNetwork::SelectServiceProvider(int nServiceProviderNumber);
Parameters
• int nServiceProviderNumber -
Return Value
Returns unsigned char
Remarks
CNetwork::SelectSession
unsigned char CNetwork::SelectSession(int nSessionNumber);
Parameters
• int nSessionNumber -
Return Value
Returns unsigned char
Remarks
CNetwork::SendMessageA
unsigned char CNetwork::SendMessageA(CString& sPlayerName,unsigned long dwFlags,void* lpData,unsigned long nDataSize);
Parameters
• CString& sPlayerName -
• unsigned long dwFlags -
• void* lpData -
• unsigned long nDataSize -
Return Value
Returns unsigned char
Remarks
CNetwork::SendSpecificMessage
1592 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
unsigned char CNetwork::SendSpecificMessage(CString& sPlayerName,unsigned long dwFlags,unsigned char nSpecMsgType,unsigned char nSpecMsgSubType,void* lpData,unsigned long nDataSize);
Parameters
• CString& sPlayerName -
• unsigned long dwFlags -
• unsigned char nSpecMsgType -
• unsigned char nSpecMsgSubType -
• void* lpData -
• unsigned long nDataSize -
Return Value
Returns unsigned char
Remarks
CNetwork::SetApplicationOptions
void CNetwork::SetApplicationOptions(unsigned char bKeepAlive,unsigned char bMigrateHost);
Parameters
• unsigned char bKeepAlive -
• unsigned char bMigrateHost -
Remarks
CNetwork::SetInSessionOptions
unsigned char CNetwork::SetInSessionOptions();
Return Value
Returns unsigned char
Remarks
6.84. CNetwork Class 1593
EEex Documentation, Release 1.0
CNetwork::SetJoinEnabled
void CNetwork::SetJoinEnabled(unsigned char bJoinEnabled);
Parameters
• unsigned char bJoinEnabled -
Return Value
Remarks
CNetwork::SetMaxPlayers
void CNetwork::SetMaxPlayers(int nMaxPlayers);
Parameters
• int nMaxPlayers -
Remarks
CNetwork::SlidingWindowReceive
void CNetwork::SlidingWindowReceive();
Remarks
CNetwork::SlidingWindowSend
void CNetwork::SlidingWindowSend();
Remarks
CNetwork::ThreadLoop
int CNetwork::ThreadLoop();
Return Value
Returns int
Remarks
CNetwork::UnselectServiceProvider
1594 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CNetwork::UnselectServiceProvider();
Remarks
CNetwork::UnselectSession
void CNetwork::UnselectSession();
Remarks
6.85 CObjectMarker Class
• Overview
• Quick Reference
• Constructors
• Methods
6.85.1 Overview
Note: The CObjectMarker class handles object markers
The structure used for this class is CObjectMarker
6.85.2 Quick Reference
Quick Refvoid CObjectMarker::CObjectMarker()virtual void CObjectMarker::~CObjectMarker()virtual void CObjectMarker::AddToArea(CGameArea* pNewArea, CPoint& pos, long posZ, unsigned char list-Type)virtual unsigned char CObjectMarker::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)virtual unsigned char CObjectMarker::CompressTime(unsigned long __formal)virtual void CObjectMarker::RemoveFromArea()virtual void CObjectMarker::Render(CGameArea* pArea, CVidMode* pVidMode)
6.85. CObjectMarker Class 1595
EEex Documentation, Release 1.0
6.85.3 Constructors
Name DescriptionCObjectMarker::CObjectMarker Constructs a CObjectMarker objectCObjectMarker::CObjectMarker Destroys a CObjectMarker object
CObjectMarker::CObjectMarker
Constructs a CObjectMarker object
void CObjectMarker::CObjectMarker();
Remarks
Constructs a CObjectMarker object
CObjectMarker::~CObjectMarker
Destroys the CObjectMarker object
virtual void CObjectMarker::~CObjectMarker();
Remarks
Destroys the CObjectMarker object
6.85.4 Methods
Name DescriptionCObjectMarker::AddToAreaCObjectMarker::CanSaveGameCObjectMarker::CompressTimeCObjectMarker::RemoveFromAreaCObjectMarker::Render
CObjectMarker::AddToArea
virtual void CObjectMarker::AddToArea(CGameArea* pNewArea,CPoint& pos,long posZ,unsigned char listType);
Parameters
1596 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CGameArea* pNewArea -
• CPoint& pos -
• long posZ -
• unsigned char listType -
Remarks
CObjectMarker::CanSaveGame
virtual unsigned char CObjectMarker::CanSaveGame(unsigned long& strError,int restCheck,int combatCheck);
Parameters
• unsigned long& strError -
• int restCheck -
• int combatCheck -
Return Value
Returns unsigned char
Remarks
CObjectMarker::CompressTime
virtual unsigned char CObjectMarker::CompressTime(unsigned long __formal);
Parameters
• unsigned long __formal -
Return Value
Returns unsigned char
Remarks
CObjectMarker::RemoveFromArea
virtual void CObjectMarker::RemoveFromArea();
Remarks
6.85. CObjectMarker Class 1597
EEex Documentation, Release 1.0
CObjectMarker::Render
virtual void CObjectMarker::Render(CGameArea* pArea,CVidMode* pVidMode);
Parameters
• CGameArea* pArea -
• CVidMode* pVidMode -
Remarks
6.86 CObList Class
Note: The CObList class handles ordered lists of nonunique CObject pointers accessible sequentially or by pointervalue
The structure used for this class is CObList
Quick Refvoid CObList::CObList(int nBlockSize)virtual void CObList::~CObList()POSITION* CObList::AddHead(CObArray* newElement)POSITION* CObList::AddTail(CObArray* newElement)POSITION* CObList::Find(CObArray* searchValue, POSITION* startAfter)CObList::CNode* CObList::NewNode(CObList::CNode* pPrev, CObList::CNode* pNext)void CObList::RemoveAll()void CObList::RemoveAt(POSITION* position)CObArray* CObList::RemoveHead()
6.86.1 Constructors
Name DescriptionCObList::CObList Constructs a CObList objectCObList::~CObList Destroys a CObList object
CObList::CObList
Constructs a CObList object
void CObList::CObList(int nBlockSize);
Parameters
• int nBlockSize - the memory-allocation granularity for extending the list
1598 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Remarks
Constructs a CObList object
As the list grows, memory is allocated in units of nBlockSize entries. If a memory allocation fails, a CMemoryExcep-tion is thrown
CObList::~CObList
Destroys the CObList object
virtual void CObList::~CObList();
Remarks
Destroys the CObList object
6.86.2 Methods
Name DescriptionCObList::AddHead Adds an element to the head of the listCObList::AddTail Adds an element to the tail of the listCObList::Find Searches the list sequentially for matching specified pointerCObList::NewNode Creates a new node in the listCObList::RemoveAll Removes all the elements from this listCObList::RemoveAt Removes the specified element from this listCObList::RemoveHead Removes the element from the head of the list
CObList::AddHead
Adds an element (or all the elements in another list) to the head of the list (makes a new head)
POSITION* CObList::AddHead(CObArray* newElement);
Parameters
• CObArray* newElement - the CObject pointer to be added to this list
Return Value
Returns POSITION*, the value of the newly inserted element
Remarks
The list can be empty before the operation
6.86. CObList Class 1599
EEex Documentation, Release 1.0
CObList::AddTail
Adds an element (or all the elements in another list) to the tail of the list (makes a new tail)
POSITION* CObList::AddTail(CObArray* newElement);
Parameters
• CObArray* newElement - the CObject pointer to be added to this list
Return Value
The first version returns the POSITION value of the newly inserted element
Remarks
The list can be empty before the operation
CObList::Find
Searches the list sequentially to find the first CObject pointer matching the specified CObject pointer
POSITION* CObList::Find(CObArray* searchValue,POSITION* startAfter);
Parameters
• CObArray* searchValue - the object pointer to be found in this list
• POSITION* startAfter - the start position for the search
Return Value
A POSITION value that can be used for iteration or object pointer retrieval; NULL if the object is not found
Remarks
Note that the pointer values are compared, not the contents of the objects
CObList::NewNode
Creates a new node in the list
CObList::CNode* CObList::NewNode(CObList::CNode* pPrev,CObList::CNode* pNext);
Parameters
• CObList::CNode* pPrev - pointer to previous node
• CObList::CNode* pNext - pointer to next node
1600 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns CObList::CNode*
Remarks
CObList::RemoveAll
Removes all the elements from this list and frees the associated CObList memory
void CObList::RemoveAll();
Remarks
No error is generated if the list is already empty.
When you remove elements from a CObList, you remove the object pointers from the list. It is your responsibilityto delete the objects themselves.
CObList::RemoveAt
Removes the specified element from this list
void CObList::RemoveAt(POSITION* position);
Parameters
• POSITION* position - The position of the element to be removed from the list
Remarks
When you remove an element from a CObList, you remove the object pointer from the list. It is your responsibilityto delete the objects themselves.
You must ensure that your POSITION value represents a valid position in the list
CObList::RemoveHead
Removes the element from the head of the list and returns a pointer to it
CObArray* CObList::RemoveHead();
Return Value
Returns CObArray* - the CObject pointer previously at the head of the list
Remarks
You must ensure that the list is not empty before calling RemoveHead
6.86. CObList Class 1601
EEex Documentation, Release 1.0
6.87 CParticle Class
• Overview
• Quick Reference
• Constructors
• Methods
6.87.1 Overview
Note: The CParticle class handles particle effects typically seen in spells and spell effects
The structure used for this class is CParticle
6.87.2 Quick Reference
Quick Refvoid CParticle::CParticle(CParticle& copyParticle)void CParticle::CParticle(long posX, long posY, long posZ, long velX, long velY, long velZ, unsigned long rg-bInitColor, short nTailLength, long nGravity, unsigned short wType)void CParticle::CParticle()void CParticle::~CParticle()unsigned char CParticle::AsynchronousUpdate()int CParticle::GetParticleSize(unsigned short nBlobSize)void CParticle::Render(CPoint& worldToScreen, CRect& rClip, unsigned short nFlag, unsigned short nBlobSize)
6.87.3 Constructors
Name DescriptionCParticle::CParticle Constructs a CParticle objectCParticle::CParticle Destroys a CParticle object
CParticle::CParticle
Constructs a CParticle object
void CParticle::CParticle(CParticle& copyParticle);
Parameters
• CParticle& copyParticle -
1602 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Remarks
Constructs a CParticle object
CParticle::CParticle
Constructs a CParticle object
void CParticle::CParticle(long posX,long posY,long posZ,long velX,long velY,long velZ,unsigned long rgbInitColor,short nTailLength,long nGravity,unsigned short wType);
Parameters
• long posX -
• long posY -
• long posZ -
• long velX -
• long velY -
• long velZ -
• unsigned long rgbInitColor -
• short nTailLength -
• long nGravity -
• unsigned short wType -
Remarks
Constructs a CParticle object
CParticle::CParticle
Constructs a CParticle object
void CParticle::CParticle();
Remarks
Constructs a CParticle object
6.87. CParticle Class 1603
EEex Documentation, Release 1.0
CParticle::~CParticle
Destroys the CParticle object
virtual void CParticle::~CParticle();
Remarks
Destroys the CParticle object
6.87.4 Methods
Name DescriptionCParticle::AsynchronousUpdateCParticle::GetParticleSizeCParticle::Render
CParticle::AsynchronousUpdate
unsigned char CParticle::AsynchronousUpdate();
Return Value
Returns unsigned char
Remarks
CParticle::GetParticleSize
int CParticle::GetParticleSize(unsigned short nBlobSize);
Parameters
• unsigned short nBlobSize -
Return Value
Returns int
Remarks
1604 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CParticle::Render
void CParticle::Render(CPoint& worldToScreen,CRect& rClip,unsigned short nFlag,unsigned short nBlobSize);
Parameters
• CPoint& worldToScreen -
• CRect& rClip -
• unsigned short nFlag -
• unsigned short nBlobSize -
Remarks
6.88 CPathSearch Class
Quick Refvoid CPathSearch::CPathSearch(CPathNode** pListGrid)void CPathSearch::~CPathSearch()short CPathSearch::BuildPathList(CPathNode* startNode, CSearchBitmap* pSearchBitmap, int bBump)long CPathSearch::EstimateCost(long startPosition, long* goalPositions, short nGoalPosition)short CPathSearch::FindPath(tagPOINT* startPoint, tagPOINT* goalPoints, short nGoalPoints, long minNode-Limit, long maxNodeLimit, CSearchBitmap* pSearchBitmap, unsigned char* serviceState, int bBump, CRect*gridVirtual)long* CPathSearch::GetPath(short* nSteps)void CPathSearch::InsertOpenList(CPathNode* insertNode)CPathNode* CPathSearch::PopOpenList()void CPathSearch::SmoothPath(long* pivotPoints, long* pathSmooth, unsigned char actualCost, CSearch-Bitmap* pSearchBitmap, int bBump)void CPathSearch::SwapOpenListEntries(CPathNode* ancestor, CPathNode* descendant)
6.89 CPersistantEffect Class
Quick Refvirtual CPersistantEffect* CPersistantEffect::Copy()vvirtual void CPersistantEffect::AIUpdate(CGameSprite* __formal)virtual void CPersistantEffectBurningDeath::AIUpdate(CGameSprite* __formal)void CPersistantEffectApplyEffect::CPersistantEffectApplyEffect()void CPersistantEffectColorEffect::CPersistantEffectColorEffect()void CPersistantEffectDisease::CPersistantEffectDisease()void CPersistantEffectElectricDeath::CPersistantEffectElectricDeath()void CPersistantEffectFireDeath::CPersistantEffectFireDeath()virtual void CPersistantEffectApplyEffect::AIUpdate(CGameSprite* pSprite, long deltaT)virtual void CPersistantEffectColorEffect::AIUpdate(CGameSprite* pSprite, long deltaT)
Continued on next page
6.88. CPathSearch Class 1605
EEex Documentation, Release 1.0
Table 33 – continued from previous pagevirtual void CPersistantEffectDisease::AIUpdate(CGameSprite* pSprite, long deltaT)virtual void CPersistantEffectElectricDeath::AIUpdate(CGameSprite* pSprite, long deltaT)virtual void CPersistantEffectFadeEffect::AIUpdate(CGameSprite* pSprite, long deltaT)virtual void CPersistantEffectFireDeath::AIUpdate(CGameSprite* pSprite, long deltaT)virtual void CPersistantEffectMove::AIUpdate(CGameSprite* pSprite, long deltaT)virtual void CPersistantEffectPoison::AIUpdate(CGameSprite* pSprite, long deltaT)virtual void CPersistantEffectRegeneration::AIUpdate(CGameSprite* pSprite, long deltaT)virtual CPersistantEffect* CPersistantEffectApplyEffect::Copy()virtual CPersistantEffect* CPersistantEffectBurningDeath::Copy()virtual CPersistantEffect* CPersistantEffectDisease::Copy()virtual CPersistantEffect* CPersistantEffectMove::Copy()virtual CPersistantEffect* CPersistantEffectPoison::Copy()virtual CPersistantEffect* CPersistantEffectRegeneration::Copy()void CPersistantEffect::PlaySound(CResRef & res, CGameSprite* pSprite)void CPersistantEffect::SetPeriodCounter(long base)void CPersistantEffectDisease::SetRes(CString res)void CPersistantEffectDamage::SlowPoison(int factor)void CPersistantEffectListRegenerated::ClearAll()CPersistantEffectListRegenerated& CPersistantEffectListRegenerated::operator=(CPersistantEffectListRegenerated& y)void CPersistantEffectListRegenerated::AIUpdate(CGameSprite* pSprite, long deltaT)void CPersistantEffectListRegenerated::RemoveAllOfType(short effectId)void CPersistantEffectList::SlowPoison(short effectId, int factor)void CPersistantEffectListRegenerated::SlowPoison(short effectId, int factor)
6.90 CPlex Class
Quick Refvirtual CPlex* __stdcall CPlex::Create(CPlex*& pHead, unsigned int nMax, unsigned int cbElement) = 0void CPlex::FreeDataChain()
6.91 CProjectile Class
Quick Refvirtual void CProjectile::AIUpdate()virtual void CProjectile::CallBack()virtual void CProjectileNewScorcher::DeliverEffects()virtual int CProjectile::SaveProjectile()virtual void CProjectile::Marshal(SProjectileWrapper* pProjWrapper)virtual void CProjectile::SetTargetType(CAIObjectType& type)virtual void CProjectileChain::Render(CGameArea* __formal)virtual unsigned long CProjectile::GetDefaultRenderFlags()virtual void CProjectile::Fire(CGameArea* __formal)void CProjectile::CProjectile(CProjectileFileFormat* pProj)void CProjectile::CProjectile()void CProjectileArea::CProjectileArea(CProjectileAreaFileFormat* pProj, CGameAIBase* pSprite, CResRef resref)void CProjectileBAM::CProjectileBAM(CProjectileBAMFileFormat* pProj)
Continued on next page
1606 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 34 – continued from previous pagevoid CProjectileBAM::CProjectileBAM(CResRef res)void CProjectileChain::CProjectileChain(unsigned short projectileType, CResRef animation, short num, short delay, int originCaster, CAIObjectType targetType)void CProjectileColorSpray::CProjectileColorSpray()void CProjectileConeOfCold::CProjectileConeOfCold()void CProjectileFall::CProjectileFall(CResRef res)void CProjectileFireHands::CProjectileFireHands()void CProjectileInvisibleTravelling::CProjectileInvisibleTravelling()void CProjectileLightningBoltGround::CProjectileLightningBoltGround()void CProjectileLightningBounce::CProjectileLightningBounce()void CProjectileLightningStorm::CProjectileLightningStorm(short num, unsigned short wPaletteType)void CProjectileMagicMissileMulti::CProjectileMagicMissileMulti(short num, unsigned short wPaletteType)void CProjectileMulti::CProjectileMulti(unsigned short projectileType, CProjectileBAMFileFormat* pProj, CGameAIBase* pSprite)void CProjectileMulti::CProjectileMulti(unsigned short projectileType, CResRef animation, short num, unsigned short wPaletteType)void CProjectileMushroom::CProjectileMushroom()void CProjectileNewScorcher::CProjectileNewScorcher(CProjectileBAMFileFormat* pProj)void CProjectileScorcher::CProjectileScorcher(CResRef res)void CProjectileSegment::CProjectileSegment(CResRef bam, CVidPalette* palette, short direction, short counter)void CProjectileSkyStrike::CProjectileSkyStrike(CString& animation, CString& sound, unsigned char colorCode, int bGlow, unsigned short duration)void CProjectileSkyStrikeBAM::CProjectileSkyStrikeBAM(CProjectileBAMFileFormat* pProj)void CProjectileSpellHit::CProjectileSpellHit(CString& animation, CString& sound, CString& palette, unsigned long dwRenderFlags, unsigned char transparency)void CProjectileTravelDoor::CProjectileTravelDoor(CString& animation, CString& sound, CString& palette, unsigned long dwRenderFlags, unsigned char transparency)virtual void CProjectile::~CProjectile()virtual void CProjectileBAM::~CProjectileBAM()virtual void CProjectileArea::AIUpdate()virtual void CProjectileBAM::AIUpdate()virtual void CProjectileChain::AIUpdate()virtual void CProjectileColorSpray::AIUpdate()virtual void CProjectileFall::AIUpdate()virtual void CProjectileFireHands::AIUpdate()virtual void CProjectileLightningBounce::AIUpdate()virtual void CProjectileMushroom::AIUpdate()virtual void CProjectileNewScorcher::AIUpdate()virtual void CProjectileScorcher::AIUpdate()virtual void CProjectileConeOfCold::AIUpdate()virtual void CProjectileSegment::AIUpdate()virtual void CProjectileSkyStrike::AIUpdate()virtual void CProjectileSpellHit::AIUpdate()virtual void CProjectileTravelDoor::AIUpdate()void CProjectile::AddEffect(CGameEffect* effect)void CProjectile::AddExtraEffects()virtual void CProjectileNewScorcher::ApplyEffectsToArea()virtual void CProjectileNewScorcher::ApplyEffectsToTarget(long* node, bool primaryTargetFlag)int CProjectileArea::AreaEffect(unsigned char bEntryOnly)bool CProjectileBAM::BounceAI()void CProjectileBAM::CalculateFXRect(CRect& rFX, CPoint& ptReference, long posZ, CVidCell* vidCell)virtual void CProjectileChain::CallBack()virtual unsigned char CProjectile::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)virtual unsigned char CProjectileArea::CanSaveGame(unsigned long& strError, int restCheck, int combatCheck)void CProjectile::ClearEffects()virtual unsigned char CProjectileArea::CompressTime(unsigned long deltaTime)
Continued on next page
6.91. CProjectile Class 1607
EEex Documentation, Release 1.0
Table 34 – continued from previous pagevirtual CProjectileArea* __cdecl **CProjectileArea::CreateObject(CGameArea* pArea, CAreaFileProjectileObject* pProjObject, unsigned char* pEffects, unsigned long nEffectSize, unsigned long deltaTime) = 0CProjectile* CProjectileArea::CreateSecondary(int& firstPass)virtual CProjectile* __cdecl CProjectile::DecodeProjectile(const unsigned short wProjectileType, CGameAIBase* pSprite) = 0virtual void CProjectile::DeliverEffects()long CProjectile::DetermineHeight(CGameObject* pCaster)void CProjectileConeOfCold::DoLayers(CPoint& start, short nLayers, short direction, int leftOnly)void CProjectileArea::Explode()virtual void CProjectileAmbiant::Fire(CGameArea* pArea, long source, long target, CPoint targetPos, long nHeight, short nType)virtual void CProjectileArea::Fire(CGameArea* pArea, long source, long target, CPoint targetPos, long nHeight, short nType)virtual void CProjectileBAM::Fire(CGameArea* pArea, long source, long target, CPoint targetPos, long nHeight, short nType)virtual void CProjectileChain::Fire(CGameArea* pArea, long source, long dummy, CPoint target, long nHeight, short nType)virtual void CProjectileColorSpray::Fire(CGameArea* pArea, long sourceId, long targetId, CPoint targetPos, long nHeight, short nType)virtual void CProjectileConeOfCold::Fire(CGameArea* pArea, long source, long dummyId, CPoint ptTarget, long nHeight, short nType)virtual void CProjectileFall::Fire(CGameArea* pArea, long source, long target, CPoint targetPos, long nHeight, short nType)virtual void CProjectileInstant::Fire(CGameArea* pArea, long source, long target, CPoint targetPos, long nHeight, short nType)virtual void CProjectileLightningBoltGround::Fire(CGameArea* pArea, long source, long dummy, CPoint target, long nHeight, short nType)virtual void CProjectileLightningBounce::Fire(CGameArea* pArea, long source, long target, CPoint targetPos, long nHeight, short nType)virtual void CProjectileMulti::Fire(CGameArea* pArea, long source, long dummy, CPoint target, long nHeight, short nType)virtual void CProjectileMushroom::Fire(CGameArea* pArea, CPoint source)virtual void CProjectileNewScorcher::Fire(CGameArea* pArea, long sourceId, long targetId, CPoint targetPos, long nHeight, short nType)virtual void CProjectileFireHands::Fire(CGameArea* pArea, long sourceId, long targetId, CPoint targetPos, long nHeight, short nType)virtual void CProjectileScorcher::Fire(CGameArea* pArea, long sourceId, long targetId, CPoint targetPos, long nHeight, short nType)virtual void CProjectileSegment::Fire(CGameArea* pArea, CPoint& start, long nHeight)virtual void CProjectileSkyStrike::Fire(CGameArea* pArea, long source, long target, CPoint targetPos, long nHeight, short nType)virtual void CProjectileSpellHit::Fire(CGameArea* pArea, long source, long target, CPoint targetPos, long nHeight, short nType)virtual void CProjectileTravelDoor::Fire(CGameArea* pArea, long sourceId, long targetId, CPoint targetPos, long nHeight, short nType)short CProjectile::GetDirection(CPoint target)virtual void CProjectile::GetPreview(CGameArea* pArea)virtual void CProjectileArea::GetPreview(CGameArea* pArea)virtual void CProjectileBAM::GetPreview(CGameArea* pArea)virtual void __cdecl CProjectile::GetStart(long id, CPoint& start, unsigned char bCastOffset) = 0virtual CAIObjectType CProjectile::GetTargetType()virtual CAIObjectType CProjectileArea::GetTargetType()virtual CAIObjectType CProjectileChain::GetTargetType()virtual void __cdecl CProjectileNewScorcher::InitVertexOffsets() = 0virtual void CProjectileArea::Marshal(SProjectileWrapper* pProjWrapper)virtual void CProjectileBAM::Move(CPoint ptCurrDest)virtual void CProjectile::OnArrival()virtual void CProjectileArea::OnArrival()virtual void CProjectileBAM::OnArrival()void CProjectile::PlaySound(CResRef res, int loop, int bFireAndForget)int CProjectileArea::RayAreaEffect()int CProjectileArea::RectangleAreaEffect()virtual void CProjectile::RemoveSelf()virtual void CProjectileBAM::Render(CGameArea* pArea, CVidMode* pVidMode)virtual void CProjectileNewScorcher::Render(CGameArea* pArea, CVidMode* pVidMode)virtual void CProjectileScorcher::Render(CGameArea* pArea, CVidMode* pVidMode)virtual void CProjectileSkyStrike::Render(CGameArea* pArea, CVidMode* pVidMode)virtual void CProjectileSkyStrikeBAM::Render(CGameArea* pArea, CVidMode* pVidMode)virtual void CProjectileSpellHit::Render(CGameArea* pArea, CVidMode* pVidMode)
Continued on next page
1608 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 34 – continued from previous pagevirtual void CProjectileTravelDoor::Render(CGameArea* pArea, CVidMode* pVidMode)virtual int CProjectileArea::SaveProjectile()virtual void CProjectile::SetDefaultRenderFlags(unsigned long f)void CProjectileBAM::SetRange(unsigned short nRange, unsigned short nValue)virtual void CProjectileArea::SetTargetType(CAIObjectType& type)virtual void CProjectileChain::SetTargetType(CAIObjectType& type)void CProjectileBAM::SetVidCell(CVidCell* vidCell)
6.92 CPtrList Class
Quick Ref__POSITION* CPtrList::FindIndex(int nIndex)virtual void CPtrList::~CPtrList()void CPtrList::AddHead(CPtrList* pNewList)__POSITION* CPtrList::AddTail(void* newElement)void CPtrList::AddTail(CPtrList* pNewList)__POSITION* CPtrList::Find(void* searchValue, __POSITION* startAfter)__POSITION* CPtrList::InsertAfter(__POSITION* position, void* newElement)__POSITION* CPtrList::InsertBefore(__POSITION* position, void* newElement)CPtrList::CNode* CPtrList::NewNode(CPtrList::CNode* pPrev, CPtrList::CNode* pNext)void CPtrList::RemoveAll()void CPtrList::RemoveAt(__POSITION* position)void* CPtrList::RemoveTail()void CPtrList::CPtrList(int nBlockSize)__POSITION* CPtrList::AddHead(void* newElement)void* CPtrList::RemoveHead()
6.93 CRect Class
• Overview
• Quick Reference
• Constructors
• Methods
6.93.1 Overview
Note: The CRect class handles rectangles
The structure used for this class is CRect
6.92. CPtrList Class 1609
EEex Documentation, Release 1.0
6.93.2 Quick Reference
Quick Refvoid CRect::CRect(RECT* lpSrcRect)int CRect::PtInRect(POINT point)int CRect::IntersectRect(RECT* lpRect1, RECT* lpRect2)int CRect::IsRectEmpty()void CRect::DeflateRect(int l, int t, int r, int b)void CRect::InflateRect(int l, int t, int r, int b)void CRect::NormalizeRect()
6.93.3 Constructors
Name DescriptionCRect::CRect Constructs a CRect object
CRect::CRect
Constructs a CRect object
void CRect::CRect(RECT* lpSrcRect);
Parameters
• RECT* lpSrcRect -
Remarks
Constructs a CRect object
6.93.4 Methods
Name DescriptionCRect::PtInRect Determines whether the specified point lies within the rectangleCRect::IntersectRect Intersects two source rectangles into the rectangleCRect::IsRectEmpty Determines whether the rectangle is emptyCRect::DeflateRect Decreases the width and height of the rectangleCRect::InflateRect Increases the width and height of the rectangleCRect::NormalizeRect
1610 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRect::PtInRect
Determines whether the specified point lies within the rectangle
int CRect::PtInRect(POINT point);
Parameters
• POINT point - x and y coordinates used to determine if within rectangle
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CRect::IntersectRect
Calculates the intersection of two source rectangles and places the coordinates of the intersection source rectanglesinto the rectangle
int CRect::IntersectRect(RECT* lpRect1,RECT* lpRect2);
Parameters
• RECT* lpRect1 - pointer to source rectangle 1
• RECT* lpRect2 - pointer to source rectangle 2
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CRect::IsRectEmpty
Determines whether the rectangle is empty
int CRect::IsRectEmpty();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CRect::DeflateRect
Decreases the width and height of the rectangle
6.93. CRect Class 1611
EEex Documentation, Release 1.0
void CRect::DeflateRect(int l,int t,int r,int b);
Parameters
• int l - amount to decrease left side of rectangle
• int t - amount to decrease top side of rectangle
• int r - amount to decrease right side of rectangle
• int b - amount to decrease bottom side of rectangle
Remarks
The rectangle is adjusted by the amounts specified
CRect::InflateRect
Increases the width and height of the rectangle
void CRect::InflateRect(int l,int t,int r,int b);
Parameters
• int l - amount to increase left side of rectangle
• int t - amount to increase top side of rectangle
• int r - amount to increase right side of rectangle
• int b - amount to increase bottom side of rectangle
Remarks
The rectangle is adjusted by the amounts specified
CRect::NormalizeRect
void CRect::NormalizeRect();
Remarks
1612 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.94 CResRef Class
• Overview
• Quick Reference
• Constructors
• Operators
• Methods
6.94.1 Overview
Note: The CResRef class handles resource references (ResRef). Resource references are a maximum of 8 characterslong
The structure used for this class is CResRef
6.94.2 Quick Reference
Quick Refvoid CResRef::CResRef(CString& sName)void CResRef::CResRef(const char* pNewName)void CResRef::CResRef(unsigned char* resRef)void CResRef::CResRef()void CResRef::CopyToString(CString& str)int CResRef::EqualsSubstring(const char* pName)char* CResRef::GetResRef()void CResRef::GetResRef(unsigned char* resRef)CString CResRef::GetResRefStr()int CResRef::IsValid()void CResRef::MakeUpper()CResRef CResRef::operator=(CResRef & cResRef)CResRef CResRef::operator=(CString& sName)CResRef CResRef::operator=(const char* pName)CResRef CResRef::operator=(unsigned char* resRef)int CResRef::operator==(CString& sName)int CResRef::operator==(const char* pName)int CResRef::operator!=(CResRef & cResRef)int CResRef::operator!=(CString& sName)int CResRef::operator!=(const char* pName)CResRef CResRef::operator+=(CString& sName)
6.94. CResRef Class 1613
EEex Documentation, Release 1.0
6.94.3 Constructors
Name DescriptionCResRef::CResRef Constructs a CResRef object
CResRef::CResRef
Constructs a CResRef object
void CResRef::CResRef(CString& sName);
Parameters
• CString& sName - string containing resource reference name
Remarks
Constructs a CResRef object
CResRef::CResRef
Constructs a CResRef object
void CResRef::CResRef(const char* pNewName);
Parameters
• const char* pNewName - string containing resource reference name
Remarks
Constructs a CResRef object
CResRef::CResRef
Constructs a CResRef object
void CResRef::CResRef(unsigned char* resRef);
Parameters
• unsigned char* resRef - string containing resource reference name
Remarks
Constructs a CResRef object
1614 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CResRef::CResRef
Constructs a CResRef object
void CResRef::CResRef();
Remarks
Constructs a CResRef object
6.94.4 Methods
Name DescriptionCResRef::CopyToString Copy resource reference to a stringCResRef::EqualsSubstring Determines if specified substring is in the resource referenceCResRef::GetResRef Returns the resource referenceCResRef::GetResRefStr Returns the resource reference as a stringCResRef::IsValid Determines if the resource reference is validCResRef::MakeUpper Converts the resource reference characters to uppercase
CResRef::CopyToString
Copy resource reference to a string
void CResRef::CopyToString(CString& str);
Parameters
• CString& str - address of string to copy resource reference to
Remarks
CResRef::EqualsSubstring
Determines if specified substring is within the resource reference
int CResRef::EqualsSubstring(const char* pName);
Parameters
• const char* pName - pointer to substring to compare against resource reference
Return Value
Returns an int value representing 1 true, or 0 false otherwise
Remarks
6.94. CResRef Class 1615
EEex Documentation, Release 1.0
CResRef::GetResRef
Returns the resource reference
char\* CResRef::GetResRef();
Return Value
Returns char* - a pointer to the resource reference characters
Remarks
Resource references are a maximum of 8 characters long
CResRef::GetResRef
Returns the resource reference
void CResRef::GetResRef(unsigned char* resRef);
Parameters
• unsigned char* resRef - returns the resource reference characters into the buffer pointed to by resRef
Return Value
Returns
Remarks
Resource references are a maximum of 8 characters long
Ensure the buffer pointed to by resRef has enough space
CResRef::GetResRefStr
Returns the resource reference as a string
CString CResRef::GetResRefStr();
Return Value
Returns CString
Remarks
Similar to CResRef::GetResRef except returns the resource reference into a CString object
CResRef::IsValid
Determines if the resource reference is valid and that the resource exists
1616 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
int CResRef::IsValid();
Return Value
Returns an int value representing 1 true, or 0 false otherwise
Remarks
CResRef::MakeUpper
Converts the resource reference characters to uppercase
void CResRef::MakeUpper();
Remarks
gsack01 would be converted to GSACK01
6.94.5 Operators
Name DescriptionCResRef::operator= Assign a resource referenceCResRef::operator= Assign a resource referenceCResRef::operator= Assign a resource referenceCResRef::operator= Assign a resource referenceCResRef::operator== Comparison of resource referenceCResRef::operator== Comparison of resource referenceCResRef::operator!= Comparison of resource referenceCResRef::operator!= Comparison of resource referenceCResRef::operator!= Comparison of resource referenceCResRef::operator+= Add and assign
CResRef::operator=
Assign a resource reference to this resource reference object
CResRef::operator=(CResRef& cResRef);
Parameters
• CResRef & cResRef - address of variable containing the resource reference object
Return Value
Returns CResRef
Remarks
6.94. CResRef Class 1617
EEex Documentation, Release 1.0
CResRef::operator=
Assign a resource reference to this resource reference object
CResRef::operator=(CString& sName);
Parameters
• CString& sName - address of variable containing a string of the resource reference name
Return Value
Returns CResRef
Remarks
CResRef::operator=
Assign a resource reference to this resource reference object
CResRef::operator=(const char* pName);
Parameters
• const char* pName - pointer to a string containing the resource reference name
Return Value
Returns CResRef
Remarks
CResRef::operator=
Assign a resource reference to this resource reference object
CResRef::operator=(unsigned char* resRef);
Parameters
• unsigned char* resRef - pointer to a string containing the resource reference name
Return Value
Returns CResRef
Remarks
1618 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CResRef::operator==
Comparison of resource reference name
int CResRef::operator==(CString& sName);
Parameters
• CString& sName - address of variable containing string of resource reference name to compare
Return Value
Returns an int value representing 1 true if the comparison matches, or 0 false otherwise
Remarks
CResRef::operator==
Comparison of resource reference name
int CResRef::operator==(const char* pName);
Parameters
• const char* pName - pointer to string containing resource reference name to compare
Return Value
Returns an int value representing 1 true if the comparison matches, or 0 false otherwise
Remarks
CResRef::operator!=
Comparison of resource reference object
int CResRef::operator!=(CResRef& cResRef);
Parameters
• CResRef & cResRef - address of variable containing resource reference object to compare
Return Value
Returns an int value representing 1 true if the comparison does not match, or 0 false if it does match
Remarks
6.94. CResRef Class 1619
EEex Documentation, Release 1.0
CResRef::operator!=
Comparison of resource reference name
int CResRef::operator!=(CString& sName);
Parameters
• CString& sName - address of variable containing string of resource reference name to compare
Return Value
Returns an int value representing 1 true if the comparison does not match, or 0 false if it does match
Remarks
CResRef::operator!=
Comparison of resource reference name
int CResRef::operator!=(const char* pName);
Parameters
• const char* pName - pointer to string containing resource reference name to compare
Return Value
Returns an int value representing 1 true if the comparison does not match, or 0 false if it does match
Remarks
CResRef::operator+=
Add and assign
CResRef CResRef::operator+=(CString& sName);
Parameters
• CString& sName - address of variable containing string of resource reference name
Return Value
Returns :ref:‘CResRef<CResRef>
Remarks
6.95 CRuleTables Class
• Overview
• Quick Reference
• Constructors
1620 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• Methods
6.95.1 Overview
Note: The CRuleTables class handles looking up externalized data stored in .ids files for use with the game enginerules: stats, classes, skills, experience, spells, proficiencies, THACO and other data that is used in the game or by thegame engine.
The structure used for this class is CRuleTables
6.95.2 Quick Reference
Quick Refvoid CRuleTables::CRuleTables()void CRuleTables::~CRuleTables()void CRuleTables::Add25StartEquipment(CGameSprite* pSprite, int forceDefault)void CRuleTables::AdjustStoreMarkup(unsigned char nCHR, short nReputation, unsigned long& dwMarkup)int CRuleTables::CanFall(unsigned long nClass, unsigned long kit)int CRuleTables::ClassGetsSpecializationAPR(unsigned char classID, unsigned long kitID)int CRuleTables::ClassUnarmedAPRDivisor(unsigned char classID, unsigned long kitID)int CRuleTables::ClassZeroSkillTHAC0Bonus(unsigned char classID, unsigned long kitID)int CRuleTables::Compare(unsigned int a, unsigned int b, int relation)int CRuleTables::FindSavingThrow(unsigned char nClass, unsigned char nSubClass, CDerivedStats& DStats, CString& sSavingThrow)int CRuleTables::FindTHAC0(unsigned char nClass, unsigned char nSubClass, CDerivedStats& DStats)CString CRuleTables::GetAchievement(CString global)unsigned long CRuleTables::GetAlignmentDescStringRef(unsigned char nAlignment)CString CRuleTables::GetAlignmentString(unsigned char nAlignment)void CRuleTables::GetAlignmentStringMixed(unsigned char nAlignment, CString& sAlignment)unsigned long CRuleTables::GetAlignmentStringRef(unsigned char nAlignment)int CRuleTables::GetAnimationSpeed(unsigned short animationId, int defaultSpeed)unsigned short CRuleTables::GetAnimationType(CAIObjectType& TypeAI)int CRuleTables::GetAreaCreatureNodeCount(CString areaName)CResRef CRuleTables::GetAutoSpellPick(unsigned char level, unsigned char index)int CRuleTables::GetBackstabMultiplier(CAIObjectType& TypeAI, CDerivedStats& DStats, unsigned long nKit)CString CRuleTables::GetBanterDialogFile(CString& name)long CRuleTables::GetBanterFrequency()long CRuleTables::GetBanterProbability()long CRuleTables::GetBanterReplayDelay()long CRuleTables::GetBanterSpecialProbability()void CRuleTables::GetBardSkillPoints(unsigned char nLevel, unsigned char& nPickPockets)unsigned char CRuleTables::GetBaseLore(CAIObjectType& TypeAI, CDerivedStats& DStats)void CRuleTables::GetBaseSkillPoints(CAIObjectType& TypeAI, CDerivedStats& DStats, unsigned char& nPickPockets, unsigned char& nOpenLocks, unsigned char& nFindTraps, unsigned char& nMoveSilently, unsigned char& nHideInShadows, unsigned char& nDetectIllusion, unsigned char& nSetTraps)int CRuleTables::GetBountyChance(unsigned short nReputation)void CRuleTables::GetChapterBMP(CResRef & cResText, unsigned char nRace, unsigned char nClass, unsigned short nReputation, CResRef & cResPower, CTypedPtrList& list)int CRuleTables::GetChapterSong(CResRef & cResText)
Continued on next page
6.95. CRuleTables Class 1621
EEex Documentation, Release 1.0
Table 35 – continued from previous pageCList* CRuleTables::GetChapterText(CResRef & cResText, unsigned char nRace, unsigned char nClass, unsigned short nReputation, CResRef & cResPower)unsigned long CRuleTables::GetCharacterSound(CString& sCustomSlot, unsigned long nSoundSlot, unsigned char nSex)void CRuleTables::GetCharacterStateDescription(int nState, CString& sDescription)int CRuleTables::GetClassAPRBonus(CAIObjectType& TypeAI, CDerivedStats& DStats, short proficiencyLevel)C2DArray* CRuleTables::GetClassAbilityTable(unsigned char nClass, unsigned long nSpecialist)unsigned long CRuleTables::GetClassBriefDescription(int classID, int kitID, unsigned long dwFlags)unsigned long CRuleTables::GetClassFallenNotice(int classID, int kitID, unsigned long dwFlags)unsigned long CRuleTables::GetClassFromKitId(unsigned long kit)short CRuleTables::GetClassProficiency(unsigned char nClass, unsigned char nActiveClass, unsigned char nInactiveClass, int bInactiveUsable, unsigned long nProfType, unsigned long nSpecialist)CString CRuleTables::GetClassString(unsigned char nClass, unsigned long nSpecialist)unsigned long CRuleTables::GetClassStringLower(unsigned char nClass, unsigned long nSpecialist, unsigned long dwFlags, CString& sClass, CGameSprite* pSprite)void CRuleTables::GetClassStringMixed(unsigned char nClass, unsigned long nSpecialist, unsigned long dwFlags, CString& sClass, CGameSprite* pSprite)int CRuleTables::GetClassTHAC0Bonus(CGameSprite* pSprite)unsigned long CRuleTables::GetClassTextBiography(int classID, int kitID, unsigned long dwFlags)unsigned long CRuleTables::GetClassTextDescription(int classID, int kitID, unsigned long dwFlags)unsigned long CRuleTables::GetClassTextLower(int classID, int kitID, unsigned long dwFlags)unsigned long CRuleTables::GetClassTextMixed(int classID, int kitID, unsigned long dwFlags)int CRuleTables::GetConFatigueBonus(unsigned char nCON)unsigned char CRuleTables::GetContingencyCondition(unsigned long& strRef, unsigned long& description, unsigned short id)unsigned char CRuleTables::GetContingencyTarget(unsigned long& strRef, unsigned long& description, unsigned short id)int CRuleTables::GetCripplingStrike(CAIObjectType& TypeAI, CDerivedStats& DStats, unsigned long nKit)int CRuleTables::GetCustomSound(CString& end, unsigned char soundId)void CRuleTables::GetDefaultColours(CGameSprite* pSprite)CString CRuleTables::GetDefaultScript(CGameSprite* pSprite)unsigned char CRuleTables::GetDonateRumorChance(unsigned long dwGold)CString CRuleTables::GetDreamFile(CString& name)int CRuleTables::GetDualClass(unsigned char nClass1, unsigned char nClass2, unsigned char& nDualClass)void CRuleTables::GetDualClassMinAbilitiesDst(unsigned char nSubClass, unsigned long nSpecialistMage, unsigned char& nMinSTR, unsigned char& nMinDEX, unsigned char& nMinCON, unsigned char& nMinINT, unsigned char& nMinWIS, unsigned char& nMinCHR)void CRuleTables::GetDualClassMinAbilitiesSrc(unsigned char nSubClass, unsigned long nSpecialistMage, unsigned char& nMinSTR, unsigned char& nMinDEX, unsigned char& nMinCON, unsigned char& nMinINT, unsigned char& nMinWIS, unsigned char& nMinCHR)int CRuleTables::GetExtraAnimation(unsigned short animationId, char* armorMaxCode, unsigned char* bCanLieDown, unsigned char* bDetectedByInfravision, int* bDoubleBlit, int* bEquipHelmet, int* bSplitBams, unsigned char* colorBlood, unsigned char* colorChunks, int* falseColor, CString* heightCode, CString* heightCodeHelmet, CString* heightCodeShieldPaperDoll, unsigned long* nSndFreq, unsigned char* personalSpace, CString* resref, CString* resrefPaperDoll, unsigned char* resrefArmorBase, unsigned char* resrefArmorSpecific, CString* resrefShadow)CResRef CRuleTables::GetFamiliar(unsigned char alignment)void CRuleTables::GetGenderStringMixed(unsigned char nGender, CString& sGender)void CRuleTables::GetHPCONBonus(unsigned char nClass, unsigned char nCON, int& nBonus, int& nMinRoll)int CRuleTables::GetHPCONBonusTotal(CAIObjectType& TypeAI, CDerivedStats& DStats, unsigned char nCON)int CRuleTables::GetHitPoints(CAIObjectType& TypeAI, CDerivedStats& OldDStats, CDerivedStats& NewDStats, unsigned char nCON)int CRuleTables::GetInnateClassSkill(CGameSprite* pSprite, CString sSkill)void CRuleTables::GetIntoxicationInfo(unsigned char nCON, int& nIntoxicationRate, int& nRecoveryRate, int& nIntoxicationCap)unsigned long CRuleTables::GetItemAbilityDescription(CResRef & cResItem, int nAbilityNum)CResRef CRuleTables::GetItemDropSound(int itemtype)CResRef CRuleTables::GetItemTakeSound(int itemtype)int CRuleTables::GetItemTypeSlot(int itemtype)int CRuleTables::GetItemUseFlag(CString item)int CRuleTables::GetItemUseString(CString item)CString CRuleTables::GetItemUseUser(CString item)CString CRuleTables::GetItemUseUserName(CString item)CString CRuleTables::GetJoinDialogFile(CString& name)int CRuleTables::GetLayOnHandsAmount(CAIObjectType& TypeAI, CDerivedStats& DStats)CGameAbilityList* CRuleTables::GetLevelUpAbilities(CGameSprite* pSprite, int nLevel)void CRuleTables::GetLevelUpAbilityTableString(CGameSprite* pSprite, int nLevel, CString& sTableName)int CRuleTables::GetLoreBonus(unsigned char nWIS, unsigned char nINT)
Continued on next page
1622 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 35 – continued from previous pageCResRef CRuleTables::GetMageSpell(int nSpellLevel, int nSpellIndex)int CRuleTables::GetMaxMemorizedSpellsMage(CAIObjectType& TypeAI, CDerivedStats& DStats, unsigned long nSpecialistMage, int nSpellLevel)int CRuleTables::GetMaxMemorizedSpellsPriest(CAIObjectType& TypeAI, CDerivedStats& DStats, int nSpellLevel, int& nBonus)int CRuleTables::GetMaxMemorizedSpellsRanger(CAIObjectType& TypeAI, CDerivedStats& DStats, int nSpellLevel)int CRuleTables::GetMaxSpellLevel(CDerivedStats& DStats)int CRuleTables::GetMaxSpellsPerLevel(CDerivedStats& DStats)int CRuleTables::GetMaximumProficiency(int nLevel, int nClass)CString CRuleTables::GetMonkFist(int nLevel)void CRuleTables::GetMovieDescription(CString& sMovie, CString& sDescription)C2DArray* CRuleTables::GetNPCChart()void CRuleTables::GetNextLevel(CAIObjectType& TypeAI, CDerivedStats& DStats)void CRuleTables::GetNextLevelSubClass(unsigned char nClass, unsigned char nSubClass, unsigned char nActiveClass, unsigned char nInactiveClass, CDerivedStats& DStats)unsigned long CRuleTables::GetNextLevelXP(unsigned char nClass, unsigned char nLevel)int CRuleTables::GetNumLevelUpAbilities(CAIObjectType& TypeAI, CDerivedStats& OldDStats, CDerivedStats& NewDStats, unsigned char& nLevel)int CRuleTables::GetNumPriestSpells(int nSpellLevel)int CRuleTables::GetNumQuickWeaponSlots(unsigned char nClass, unsigned char nActiveClass, unsigned char nInactiveClass, int bInactiveUsable, unsigned long nSpecialist)CString CRuleTables::GetPostDialogFile(CString& name)CResRef CRuleTables::GetPriestSpell(int nSpellLevel, int nSpellIndex)void CRuleTables::GetProfBonuses(int nProf, int nLev, int* damR, int* damL, int* thacR, int* thacL, int* ACB, int* ACM, int* speed, int* crit)unsigned long CRuleTables::GetProficiencyClassIndex(unsigned char nClass, unsigned long nSpecialist)unsigned long CRuleTables::GetProficiencyDescription(unsigned long id)unsigned long CRuleTables::GetProficiencyId(unsigned long index)unsigned long CRuleTables::GetProficiencyName(unsigned long id)int CRuleTables::GetProficiencySlots(CAIObjectType& TypeAI, CDerivedStats& OldDStats, CDerivedStats& NewDStats, unsigned char GetInactive)int CRuleTables::GetRaceFeatures(int race, int type)CString CRuleTables::GetRaceString(unsigned char nRace)void CRuleTables::GetRaceStringMixed(unsigned char nRace, CString& sRace)int CRuleTables::GetRaceTHAC0Bonus(int itemType, unsigned char race)unsigned long CRuleTables::GetRaceTextBiography(int raceID)unsigned long CRuleTables::GetRaceTextLower(int raceID)unsigned long CRuleTables::GetRaceTextMixed(int raceID)int CRuleTables::GetRaiseDeadCost(CAIObjectType& TypeAI, CDerivedStats& DStats)void CRuleTables::GetRandomItem(CString& item)unsigned long CRuleTables::GetRangerHatedRaceHelp(short index)unsigned char CRuleTables::GetRangerHatedRaceIds(short index)unsigned long CRuleTables::GetRangerHatedRaceStrref(short index)unsigned long CRuleTables::GetRangerHatedRaceStrrefFromIds(short ids)void CRuleTables::GetRangerSkillPoints(unsigned char nLevel, unsigned char& nStealth)unsigned long CRuleTables::GetReputationDescription(const short nReputation)int CRuleTables::GetSavingThrow(CAIObjectType& TypeAI, CDerivedStats& DStats, unsigned char nCON, CString& sSavingThrow)void CRuleTables::GetScriptDescription(CString& sScript, CString& sTitle, CString& sDescription)int CRuleTables::GetSetSnareLimit(CGameSprite* pSprite)void CRuleTables::GetShamanSkillPoints(unsigned char nLevel, unsigned char& nDetect)void CRuleTables::GetSkillBonus(CAIObjectType& TypeAI, CDerivedStats& DStats, unsigned short& nPickPockets, unsigned short& nOpenLocks, unsigned short& nFindTraps, unsigned short& nMoveSilently, unsigned short& nHideInShadows, unsigned short& nDetectIllusion, unsigned short& nSetTraps)void CRuleTables::GetSkillBonusValue(CAIObjectType& TypeAI, CDerivedStats& DStats, int& nPickPocketsBonus, int& nOpenLocksBonus, int& nFindTrapsBonus, int& nMoveSilentlyBonus, int& nHideInShadowsBonus, int& nDetectIllusionBonus, int& nSetTrapsBonus)int CRuleTables::GetSlotStealSkill(int slot)int CRuleTables::GetSneakAttack(CAIObjectType& TypeAI, CDerivedStats& DStats, unsigned long nKit)unsigned char CRuleTables::GetSoundEnvironment(CString stAreaRef, unsigned long& dwEnvironment, float& fDamping, float& fDecay, float& fVolume, float& fReverbLevel)int CRuleTables::GetSpecialItemPriority(CResRef & itemName, int type)int CRuleTables::GetSpellAbilityValue(int classID, int nAbilityColumn)
Continued on next page
6.95. CRuleTables Class 1623
EEex Documentation, Release 1.0
Table 35 – continued from previous pagevoid CRuleTables::GetSpellDescription(CString& sSpell, CString& sDescription)int CRuleTables::GetSpellProtectionRelation(int nRow)int CRuleTables::GetSpellProtectionStat(int nRow)int CRuleTables::GetSpellProtectionValue(int nRow)void CRuleTables::GetStartArea(CResRef & cResArea, CPoint& ptView)void CRuleTables::GetStartAreaMP(CResRef & cResArea, CPoint& ptView)void CRuleTables::GetStartAreaTutorial(CResRef & cResArea, CPoint& ptView)CPoint CRuleTables::GetStartPoint(int nCharacterSlot)CPoint CRuleTables::GetStartPointMP(int nCharacterSlot)CPoint CRuleTables::GetStartPointTutorial(int nCharacterSlot)CResRef CRuleTables::GetStartWeapon(unsigned char nClass)int CRuleTables::GetStartingGold(CGameSprite* pSprite)unsigned char CRuleTables::GetStartingReputation(unsigned char nAlignment)CString CRuleTables::GetStatName(int offset)float CRuleTables::GetStatValue(CString statName)int CRuleTables::GetSubClassProficiencySlots(int nSubClass, int nOldLevel, int nNewLevel)int CRuleTables::GetSubClasses(unsigned char nClass, unsigned char* aSubClass)int CRuleTables::GetSummonLimit(CString summonType)C2DArray* CRuleTables::GetSummoningTable(int index)CResRef CRuleTables::GetTBPStartPartyMember(int member)int CRuleTables::GetTHAC0(CAIObjectType& TypeAI, CDerivedStats& DStats)int CRuleTables::GetThiefSkillPercentage(CGameSprite* pSprite, CString sSkill, unsigned char dualingTo)int CRuleTables::GetThiefSkillsDual(CGameSprite* pSprite)int CRuleTables::GetThiefSkillsLevelUp(CGameSprite* pSprite)int CRuleTables::GetThiefSkillsStart(CGameSprite* pSprite)int CRuleTables::GetWedFogAreaSettings(CString key, int* contrast, unsigned long* innerColor, unsigned long* outerColor, float* alpha, int* preDisperseSeconds)bool CRuleTables::GetWedFogPointSettings(CString key, int* pointAmount, int* pointDuration, CPoint* pointPos, float* pointUForce, float* pointVForce)unsigned long CRuleTables::GetXPCap(CAIObjectType& TypeAI)int CRuleTables::IsClassRaceCompatable(unsigned char classID, unsigned char raceID)unsigned char CRuleTables::IsDualClassAllowed(unsigned char nActiveClass, unsigned char nSubClass, unsigned long nSpecialist)int CRuleTables::IsItemExclusive(CItem* pItem)int CRuleTables::IsProtectedFromSpell(int nRow, CGameSprite* stats, CGameSprite* mine, int value)int CRuleTables::IsSpellHidden(CString spellRef)int CRuleTables::IsSpellRemoved(CString spellRef)int CRuleTables::IsUsableByAlignment(unsigned long dwNotUsableBy, unsigned char alignment)int CRuleTables::IsValidAlignment(unsigned char nClass, unsigned char nAlignment, unsigned long nSpecialist)unsigned char CRuleTables::MapCharacterSpecializationToSchool(unsigned short nSpecialistMage)int CRuleTables::RollHitPoints(C2DArray& tHitPoints, unsigned char nOldLevel, unsigned char nNewLevel, int nCONMinRoll, int nDivisor, int bOverrideSides, int overrideSides, int bOverrideMod, int overrideMod)int CRuleTables::RollHitPoints(unsigned char nClass, unsigned char nSubClass, CDerivedStats& OldDStats, CDerivedStats& NewDStats, int nCONMinRoll, int nDivisor, int bIsSingleClass)int CRuleTables::RollHitPoints(int nSides, int nRolls, int nLevel, int nMinRoll, int nModifier)int CRuleTables::SetCampaign(CString campaign)long CRuleTables::SevenEyesImmunity(CGameSprite* sprite, unsigned long opcode, unsigned long param2, CString& resource, int& strref)void CRuleTables::UnsetCampaign()
6.95.3 Constructors
Name DescriptionCRuleTables::CRuleTables Constructs a CRuleTables objectCRuleTables::CRuleTables Destroys a CRuleTables object
1624 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRuleTables::CRuleTables
Constructs a CRuleTables object
void CRuleTables::CRuleTables();
Remarks
Constructs a CRuleTables object
CRuleTables::~CRuleTables
Destroys the CRuleTables object
virtual void CRuleTables::~CRuleTables();
Remarks
Destroys the CRuleTables object
6.95.4 Methods
Name DescriptionCRuleTables::Add25StartEquipmentCRuleTables::AdjustStoreMarkupCRuleTables::CanFallCRuleTables::ClassGetsSpecializationAPRCRuleTables::ClassUnarmedAPRDivisorCRuleTables::ClassZeroSkillTHAC0BonusCRuleTables::CompareCRuleTables::FindSavingThrowCRuleTables::FindTHAC0CRuleTables::GetAchievementCRuleTables::GetAlignmentDescStringRefCRuleTables::GetAlignmentStringCRuleTables::GetAlignmentStringMixedCRuleTables::GetAlignmentStringRefCRuleTables::GetAnimationSpeedCRuleTables::GetAnimationTypeCRuleTables::GetAreaCreatureNodeCountCRuleTables::GetAutoSpellPickCRuleTables::GetBackstabMultiplierCRuleTables::GetBanterDialogFileCRuleTables::GetBanterFrequencyCRuleTables::GetBanterProbabilityCRuleTables::GetBanterReplayDelayCRuleTables::GetBanterSpecialProbabilityCRuleTables::GetBardSkillPoints
Continued on next page
6.95. CRuleTables Class 1625
EEex Documentation, Release 1.0
Table 36 – continued from previous pageCRuleTables::GetBaseLoreCRuleTables::GetBaseSkillPointsCRuleTables::GetBountyChanceCRuleTables::GetChapterBMPCRuleTables::GetChapterSongCRuleTables::GetChapterTextCRuleTables::GetCharacterSoundCRuleTables::GetCharacterStateDescriptionCRuleTables::GetClassAPRBonusCRuleTables::GetClassAbilityTableCRuleTables::GetClassBriefDescriptionCRuleTables::GetClassFallenNoticeCRuleTables::GetClassFromKitIdCRuleTables::GetClassProficiencyCRuleTables::GetClassStringCRuleTables::GetClassStringLowerCRuleTables::GetClassStringMixedCRuleTables::GetClassTHAC0BonusCRuleTables::GetClassTextBiographyCRuleTables::GetClassTextDescriptionCRuleTables::GetClassTextLowerCRuleTables::GetClassTextMixedCRuleTables::GetConFatigueBonusCRuleTables::GetContingencyConditionCRuleTables::GetContingencyTargetCRuleTables::GetCripplingStrikeCRuleTables::GetCustomSoundCRuleTables::GetDefaultColoursCRuleTables::GetDefaultScriptCRuleTables::GetDonateRumorChanceCRuleTables::GetDreamFileCRuleTables::GetDualClassCRuleTables::GetDualClassMinAbilitiesDstCRuleTables::GetDualClassMinAbilitiesSrcCRuleTables::GetExtraAnimationCRuleTables::GetFamiliarCRuleTables::GetGenderStringMixedCRuleTables::GetHPCONBonusCRuleTables::GetHPCONBonusTotalCRuleTables::GetHitPointsCRuleTables::GetInnateClassSkillCRuleTables::GetIntoxicationInfoCRuleTables::GetItemAbilityDescriptionCRuleTables::GetItemDropSoundCRuleTables::GetItemTakeSoundCRuleTables::GetItemTypeSlotCRuleTables::GetItemUseFlagCRuleTables::GetItemUseStringCRuleTables::GetItemUseUserCRuleTables::GetItemUseUserName
Continued on next page
1626 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 36 – continued from previous pageCRuleTables::GetJoinDialogFileCRuleTables::GetLayOnHandsAmountCRuleTables::GetLevelUpAbilitiesCRuleTables::GetLevelUpAbilityTableStringCRuleTables::GetLoreBonusCRuleTables::GetMageSpellCRuleTables::GetMaxMemorizedSpellsMageCRuleTables::GetMaxMemorizedSpellsPriestCRuleTables::GetMaxMemorizedSpellsRangerCRuleTables::GetMaxSpellLevelCRuleTables::GetMaxSpellsPerLevelCRuleTables::GetMaximumProficiencyCRuleTables::GetMonkFistCRuleTables::GetMovieDescriptionCRuleTables::GetNPCChartCRuleTables::GetNextLevelCRuleTables::GetNextLevelSubClassCRuleTables::GetNextLevelXPCRuleTables::GetNumLevelUpAbilitiesCRuleTables::GetNumPriestSpellsCRuleTables::GetNumQuickWeaponSlotsCRuleTables::GetPostDialogFileCRuleTables::GetPriestSpellCRuleTables::GetProfBonusesCRuleTables::GetProficiencyClassIndexCRuleTables::GetProficiencyDescriptionCRuleTables::GetProficiencyIdCRuleTables::GetProficiencyNameCRuleTables::GetProficiencySlotsCRuleTables::GetRaceFeaturesCRuleTables::GetRaceStringCRuleTables::GetRaceStringMixedCRuleTables::GetRaceTHAC0BonusCRuleTables::GetRaceTextBiographyCRuleTables::GetRaceTextLowerCRuleTables::GetRaceTextMixedCRuleTables::GetRaiseDeadCostCRuleTables::GetRandomItemCRuleTables::GetRangerHatedRaceHelpCRuleTables::GetRangerHatedRaceIdsCRuleTables::GetRangerHatedRaceStrrefCRuleTables::GetRangerHatedRaceStrrefFromIdsCRuleTables::GetRangerSkillPointsCRuleTables::GetReputationDescriptionCRuleTables::GetSavingThrowCRuleTables::GetScriptDescriptionCRuleTables::GetSetSnareLimitCRuleTables::GetShamanSkillPointsCRuleTables::GetSkillBonusCRuleTables::GetSkillBonusValue
Continued on next page
6.95. CRuleTables Class 1627
EEex Documentation, Release 1.0
Table 36 – continued from previous pageCRuleTables::GetSlotStealSkillCRuleTables::GetSneakAttackCRuleTables::GetSoundEnvironmentCRuleTables::GetSpecialItemPriorityCRuleTables::GetSpellAbilityValueCRuleTables::GetSpellDescriptionCRuleTables::GetSpellProtectionRelationCRuleTables::GetSpellProtectionStatCRuleTables::GetSpellProtectionValueCRuleTables::GetStartAreaCRuleTables::GetStartAreaMPCRuleTables::GetStartAreaTutorialCRuleTables::GetStartPointCRuleTables::GetStartPointMPCRuleTables::GetStartPointTutorialCRuleTables::GetStartWeaponCRuleTables::GetStartingGoldCRuleTables::GetStartingReputationCRuleTables::GetStatNameCRuleTables::GetStatValueCRuleTables::GetSubClassProficiencySlotsCRuleTables::GetSubClassesCRuleTables::GetSummonLimitCRuleTables::GetSummoningTableCRuleTables::GetTBPStartPartyMemberCRuleTables::GetTHAC0CRuleTables::GetThiefSkillPercentageCRuleTables::GetThiefSkillsDualCRuleTables::GetThiefSkillsLevelUpCRuleTables::GetThiefSkillsStartCRuleTables::GetWedFogAreaSettingsCRuleTables::GetWedFogPointSettingsCRuleTables::GetXPCapCRuleTables::IsClassRaceCompatableCRuleTables::IsDualClassAllowedCRuleTables::IsItemExclusiveCRuleTables::IsProtectedFromSpellCRuleTables::IsSpellHiddenCRuleTables::IsSpellRemovedCRuleTables::IsUsableByAlignmentCRuleTables::IsValidAlignmentCRuleTables::MapCharacterSpecializationToSchoolCRuleTables::RollHitPointsCRuleTables::SetCampaignCRuleTables::SevenEyesImmunityCRuleTables::UnsetCampaign
1628 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRuleTables::Add25StartEquipment
void CRuleTables::Add25StartEquipment(CGameSprite* pSprite,int forceDefault);
Parameters
• CGameSprite* pSprite -
• int forceDefault -
Remarks
CRuleTables::AdjustStoreMarkup
void CRuleTables::AdjustStoreMarkup(unsigned char nCHR,short nReputation,unsigned long& dwMarkup);
Parameters
• unsigned char nCHR -
• short nReputation -
• unsigned long& dwMarkup -
Remarks
CRuleTables::CanFall
int CRuleTables::CanFall(unsigned long nClass,unsigned long kit);
Parameters
• unsigned long nClass -
• unsigned long kit -
Return Value
Returns int
Remarks
CRuleTables::ClassGetsSpecializationAPR
6.95. CRuleTables Class 1629
EEex Documentation, Release 1.0
int CRuleTables::ClassGetsSpecializationAPR(unsigned char classID,unsigned long kitID);
Parameters
• unsigned char classID -
• unsigned long kitID -
Return Value
Returns int
Remarks
CRuleTables::ClassUnarmedAPRDivisor
int CRuleTables::ClassUnarmedAPRDivisor(unsigned char classID,unsigned long kitID);
Parameters
• unsigned char classID -
• unsigned long kitID -
Return Value
Returns int
Remarks
CRuleTables::ClassZeroSkillTHAC0Bonus
int CRuleTables::ClassZeroSkillTHAC0Bonus(unsigned char classID,unsigned long kitID);
Parameters
• unsigned char classID -
• unsigned long kitID -
Return Value
Returns int
Remarks
1630 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRuleTables::Compare
int CRuleTables::Compare(unsigned int a,unsigned int b,int relation);
Parameters
• unsigned int a -
• unsigned int b -
• int relation -
Return Value
Returns int
Remarks
CRuleTables::FindSavingThrow
int CRuleTables::FindSavingThrow(unsigned char nClass,unsigned char nSubClass,CDerivedStats& DStats,CString& sSavingThrow);
Parameters
• unsigned char nClass -
• unsigned char nSubClass -
• CDerivedStats& DStats -
• CString& sSavingThrow -
Return Value
Returns int
Remarks
CRuleTables::FindTHAC0
int CRuleTables::FindTHAC0(unsigned char nClass,unsigned char nSubClass,CDerivedStats& DStats);
Parameters
• unsigned char nClass -
• unsigned char nSubClass -
6.95. CRuleTables Class 1631
EEex Documentation, Release 1.0
• CDerivedStats& DStats -
Return Value
Returns int
Remarks
CRuleTables::GetAchievement
CString CRuleTables::GetAchievement(CString global);
Parameters
• CString global -
Return Value
Returns CString
Remarks
CRuleTables::GetAlignmentDescStringRef
unsigned long CRuleTables::GetAlignmentDescStringRef(unsigned char nAlignment);
Parameters
• unsigned char nAlignment -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetAlignmentString
CString CRuleTables::GetAlignmentString(unsigned char nAlignment);
Parameters
• unsigned char nAlignment -
Return Value
Returns CString
Remarks
CRuleTables::GetAlignmentStringMixed
1632 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CRuleTables::GetAlignmentStringMixed(unsigned char nAlignment,CString& sAlignment);
Parameters
• unsigned char nAlignment -
• CString& sAlignment -
Remarks
CRuleTables::GetAlignmentStringRef
unsigned long CRuleTables::GetAlignmentStringRef(unsigned char nAlignment);
Parameters
• unsigned char nAlignment -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetAnimationSpeed
int CRuleTables::GetAnimationSpeed(unsigned short animationId,int defaultSpeed);
Parameters
• unsigned short animationId -
• int defaultSpeed -
Return Value
Returns int
Remarks
CRuleTables::GetAnimationType
unsigned short CRuleTables::GetAnimationType(CAIObjectType& TypeAI);
Parameters
• CAIObjectType& TypeAI -
6.95. CRuleTables Class 1633
EEex Documentation, Release 1.0
Return Value
Returns unsigned short
Remarks
CRuleTables::GetAreaCreatureNodeCount
int CRuleTables::GetAreaCreatureNodeCount(CString areaName);
Parameters
• CString areaName -
Return Value
Returns int
Remarks
CRuleTables::GetAutoSpellPick
CResRef CRuleTables::GetAutoSpellPick(unsigned char level,unsigned char index);
Parameters
• unsigned char level -
• unsigned char index -
Return Value
Returns CResRef
Remarks
CRuleTables::GetBackstabMultiplier
int CRuleTables::GetBackstabMultiplier(CAIObjectType& TypeAI,CDerivedStats& DStats,unsigned long nKit);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
• unsigned long nKit -
1634 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CRuleTables::GetBanterDialogFile
CString CRuleTables::GetBanterDialogFile(CString& name);
Parameters
• CString& name -
Return Value
Returns CString
Remarks
CRuleTables::GetBanterFrequency
long CRuleTables::GetBanterFrequency();
Return Value
Returns long
Remarks
CRuleTables::GetBanterProbability
long CRuleTables::GetBanterProbability();
Return Value
Returns long
Remarks
CRuleTables::GetBanterReplayDelay
long CRuleTables::GetBanterReplayDelay();
Return Value
Returns long
Remarks
6.95. CRuleTables Class 1635
EEex Documentation, Release 1.0
CRuleTables::GetBanterSpecialProbability
long CRuleTables::GetBanterSpecialProbability();
Return Value
Returns long
Remarks
CRuleTables::GetBardSkillPoints
void CRuleTables::GetBardSkillPoints(unsigned char nLevel,unsigned char& nPickPockets);
Parameters
• unsigned char nLevel -
• unsigned char& nPickPockets -
Remarks
CRuleTables::GetBaseLore
unsigned char CRuleTables::GetBaseLore(CAIObjectType& TypeAI,CDerivedStats& DStats);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
Return Value
Returns unsigned char
Remarks
CRuleTables::GetBaseSkillPoints
void CRuleTables::GetBaseSkillPoints(CAIObjectType& TypeAI,CDerivedStats& DStats,unsigned char& nPickPockets,unsigned char& nOpenLocks,unsigned char& nFindTraps,unsigned char& nMoveSilently,
(continues on next page)
1636 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
(continued from previous page)
unsigned char& nHideInShadows,unsigned char& nDetectIllusion,unsigned char& nSetTraps);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
• unsigned char& nPickPockets -
• unsigned char& nOpenLocks -
• unsigned char& nFindTraps -
• unsigned char& nMoveSilently -
• unsigned char& nHideInShadows -
• unsigned char& nDetectIllusion -
• unsigned char& nSetTraps -
Remarks
CRuleTables::GetBountyChance
int CRuleTables::GetBountyChance(unsigned short nReputation);
Parameters
• unsigned short nReputation -
Return Value
Returns int
Remarks
CRuleTables::GetChapterBMP
void CRuleTables::GetChapterBMP(CResRef& cResText,unsigned char nRace,unsigned char nClass,unsigned short nReputation,CResRef& cResPower,CTypedPtrList& list);
Parameters
• CResRef & cResText -
• unsigned char nRace -
• unsigned char nClass -
6.95. CRuleTables Class 1637
EEex Documentation, Release 1.0
• unsigned short nReputation -
• CResRef & cResPower -
• CTypedPtrList& list -
Return Value
Returns
Remarks
CRuleTables::GetChapterSong
int CRuleTables::GetChapterSong(:ref:`CResRef<CResRef>`\& cResText);
Parameters
• CResRef & cResText -
Return Value
Returns int
Remarks
CRuleTables::GetChapterText
CList* CRuleTables::GetChapterText(CResRef& cResText,unsigned char nRace,unsigned char nClass,unsigned short nReputation,CResRef& cResPower);
Parameters
• CResRef & cResText -
• unsigned char nRace -
• unsigned char nClass -
• unsigned short nReputation -
• CResRef & cResPower -
Return Value
Returns CList*
Remarks
CRuleTables::GetCharacterSound
1638 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
unsigned long CRuleTables::GetCharacterSound(CString& sCustomSlot,unsigned long nSoundSlot,unsigned char nSex);
Parameters
• CString& sCustomSlot -
• unsigned long nSoundSlot -
• unsigned char nSex -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetCharacterStateDescription
void CRuleTables::GetCharacterStateDescription(int nState,CString& sDescription);
Parameters
• int nState -
• CString& sDescription -
Remarks
CRuleTables::GetClassAPRBonus
int CRuleTables::GetClassAPRBonus(CAIObjectType& TypeAI,CDerivedStats& DStats,short proficiencyLevel);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
• short proficiencyLevel -
Return Value
Returns int
Remarks
6.95. CRuleTables Class 1639
EEex Documentation, Release 1.0
CRuleTables::GetClassAbilityTable
C2DArray* CRuleTables::GetClassAbilityTable(unsigned char nClass,unsigned long nSpecialist);
Parameters
• unsigned char nClass -
• unsigned long nSpecialist -
Return Value
Returns C2DArray*
Remarks
CRuleTables::GetClassBriefDescription
unsigned long CRuleTables::GetClassBriefDescription(int classID,int kitID,unsigned long dwFlags);
Parameters
• int classID -
• int kitID -
• unsigned long dwFlags -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetClassFallenNotice
unsigned long CRuleTables::GetClassFallenNotice(int classID,int kitID,unsigned long dwFlags);
Parameters
• int classID -
• int kitID -
• unsigned long dwFlags -
1640 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns unsigned long
Remarks
CRuleTables::GetClassFromKitId
unsigned long CRuleTables::GetClassFromKitId(unsigned long kit);
Parameters
• unsigned long kit -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetClassProficiency
short CRuleTables::GetClassProficiency(unsigned char nClass,unsigned char nActiveClass,unsigned char nInactiveClass,int bInactiveUsable,unsigned long nProfType,unsigned long nSpecialist);
Parameters
• unsigned char nClass -
• unsigned char nActiveClass -
• unsigned char nInactiveClass -
• int bInactiveUsable -
• unsigned long nProfType -
• unsigned long nSpecialist -
Return Value
Returns short
Remarks
6.95. CRuleTables Class 1641
EEex Documentation, Release 1.0
CRuleTables::GetClassString
CString CRuleTables::GetClassString(unsigned char nClass,unsigned long nSpecialist);
Parameters
• unsigned char nClass -
• unsigned long nSpecialist -
Return Value
Returns CString
Remarks
CRuleTables::GetClassStringLower
unsigned long CRuleTables::GetClassStringLower(unsigned char nClass,unsigned long nSpecialist,unsigned long dwFlags,CString& sClass,CGameSprite* pSprite);
Parameters
• unsigned char nClass -
• unsigned long nSpecialist -
• unsigned long dwFlags -
• CString& sClass -
• CGameSprite* pSprite -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetClassStringMixed
void CRuleTables::GetClassStringMixed(unsigned char nClass,unsigned long nSpecialist,unsigned long dwFlags,CString& sClass,CGameSprite* pSprite);
Parameters
• unsigned char nClass -
1642 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• unsigned long nSpecialist -
• unsigned long dwFlags -
• CString& sClass -
• CGameSprite* pSprite -
Remarks
CRuleTables::GetClassTHAC0Bonus
int CRuleTables::GetClassTHAC0Bonus(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Return Value
Returns int
Remarks
CRuleTables::GetClassTextBiography
unsigned long CRuleTables::GetClassTextBiography(int classID,int kitID,unsigned long dwFlags);
Parameters
• int classID -
• int kitID -
• unsigned long dwFlags -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetClassTextDescription
unsigned long CRuleTables::GetClassTextDescription(int classID,int kitID,unsigned long dwFlags);
Parameters
6.95. CRuleTables Class 1643
EEex Documentation, Release 1.0
• int classID -
• int kitID -
• unsigned long dwFlags -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetClassTextLower
unsigned long CRuleTables::GetClassTextLower(int classID,int kitID,unsigned long dwFlags);
Parameters
• int classID -
• int kitID -
• unsigned long dwFlags -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetClassTextMixed
unsigned long CRuleTables::GetClassTextMixed(int classID,int kitID,unsigned long dwFlags);
Parameters
• int classID -
• int kitID -
• unsigned long dwFlags -
Return Value
Returns unsigned long
Remarks
1644 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRuleTables::GetConFatigueBonus
int CRuleTables::GetConFatigueBonus(unsigned char nCON);
Parameters
• unsigned char nCON -
Return Value
Returns int
Remarks
CRuleTables::GetContingencyCondition
unsigned char CRuleTables::GetContingencyCondition(unsigned long& strRef,unsigned long& description,unsigned short id);
Parameters
• unsigned long& strRef -
• unsigned long& description -
• unsigned short id -
Return Value
Returns
Remarks
CRuleTables::GetContingencyTarget
unsigned char CRuleTables::GetContingencyTarget(unsigned long& strRef,unsigned long& description,unsigned short id);
Parameters
• unsigned long& strRef -
• unsigned long& description -
• unsigned short id -
Return Value
Returns
Remarks
6.95. CRuleTables Class 1645
EEex Documentation, Release 1.0
CRuleTables::GetCripplingStrike
int CRuleTables::GetCripplingStrike(CAIObjectType& TypeAI,CDerivedStats& DStats,unsigned long nKit);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
• unsigned long nKit -
Return Value
Returns int
Remarks
CRuleTables::GetCustomSound
int CRuleTables::GetCustomSound(CString& end,unsigned char soundId);
Parameters
• CString& end -
• unsigned char soundId -
Return Value
Returns int
Remarks
CRuleTables::GetDefaultColours
void CRuleTables::GetDefaultColours(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Remarks
CRuleTables::GetDefaultScript
1646 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CString CRuleTables::GetDefaultScript(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Return Value
Returns CString
Remarks
CRuleTables::GetDonateRumorChance
unsigned char CRuleTables::GetDonateRumorChance(unsigned long dwGold);
Parameters
• unsigned long dwGold -
Return Value
Returns unsigned char
Remarks
CRuleTables::GetDreamFile
CString CRuleTables::GetDreamFile(CString& name);
Parameters
• CString& name -
Return Value
Returns CString
Remarks
CRuleTables::GetDualClass
int CRuleTables::GetDualClass(unsigned char nClass1,unsigned char nClass2,unsigned char& nDualClass);
Parameters
• unsigned char nClass1 -
• unsigned char nClass2 -
• unsigned char& nDualClass -
6.95. CRuleTables Class 1647
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CRuleTables::GetDualClassMinAbilitiesDst
void CRuleTables::GetDualClassMinAbilitiesDst(unsigned char nSubClass,unsigned long nSpecialistMage,unsigned char& nMinSTR,unsigned char& nMinDEX,unsigned char& nMinCON,unsigned char& nMinINT,unsigned char& nMinWIS,unsigned char& nMinCHR);
Parameters
• unsigned char nSubClass -
• unsigned long nSpecialistMage -
• unsigned char& nMinSTR -
• unsigned char& nMinDEX -
• unsigned char& nMinCON -
• unsigned char& nMinINT -
• unsigned char& nMinWIS -
• unsigned char& nMinCHR -
Remarks
CRuleTables::GetDualClassMinAbilitiesSrc
void void CRuleTables::GetDualClassMinAbilitiesSrc(unsigned char nSubClass,unsigned long nSpecialistMage,unsigned char& nMinSTR,unsigned char& nMinDEX,unsigned char& nMinCON,unsigned char& nMinINT,unsigned char& nMinWIS,unsigned char& nMinCHR);
Parameters
• unsigned char nSubClass -
• unsigned long nSpecialistMage -
• unsigned char& nMinSTR -
1648 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• unsigned char& nMinDEX -
• unsigned char& nMinCON -
• unsigned char& nMinINT -
• unsigned char& nMinWIS -
• unsigned char& nMinCHR -
Remarks
CRuleTables::GetExtraAnimation
int CRuleTables::GetExtraAnimation(unsigned short animationId,char* armorMaxCode,unsigned char* bCanLieDown,unsigned char* bDetectedByInfravision,int* bDoubleBlit,int* bEquipHelmet,int* bSplitBams,unsigned char* colorBlood,unsigned char* colorChunks,int* falseColor,CString* heightCode,CString* heightCodeHelmet,CString* heightCodeShieldPaperDoll,unsigned long* nSndFreq,unsigned char* personalSpace,CString* resref,CString* resrefPaperDoll,unsigned char* resrefArmorBase,unsigned char* resrefArmorSpecific,CString* resrefShadow);
Parameters
• unsigned short animationId -
• char* armorMaxCode -
• unsigned char* bCanLieDown -
• unsigned char* bDetectedByInfravision -
• int* bDoubleBlit -
• int* bEquipHelmet -
• int* bSplitBams -
• unsigned char* colorBlood -
• unsigned char* colorChunks -
• int* falseColor -
• CString* heightCode -
• CString* heightCodeHelmet -
6.95. CRuleTables Class 1649
EEex Documentation, Release 1.0
• CString* heightCodeShieldPaperDoll -
• unsigned long* nSndFreq -
• unsigned char* personalSpace -
• CString* resref -
• CString* resrefPaperDoll -
• unsigned char* resrefArmorBase -
• unsigned char* resrefArmorSpecific -
• CString* resrefShadow -
Return Value
Returns int
Remarks
CRuleTables::GetFamiliar
CResRef CRuleTables::GetFamiliar(unsigned char alignment);
Parameters
• unsigned char alignment -
Return Value
Returns CResRef
Remarks
CRuleTables::GetGenderStringMixed
void CRuleTables::GetGenderStringMixed(unsigned char nGender,CString& sGender);
Parameters
• unsigned char nGender -
• CString& sGender -
Remarks
CRuleTables::GetHPCONBonus
1650 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CRuleTables::GetHPCONBonus(unsigned char nClass,unsigned char nCON,int& nBonus,int& nMinRoll);
Parameters
• unsigned char nClass -
• unsigned char nCON -
• int& nBonus -
• int& nMinRoll -
Remarks
CRuleTables::GetHPCONBonusTotal
int CRuleTables::GetHPCONBonusTotal(CAIObjectType& TypeAI,CDerivedStats& DStats,unsigned char nCON);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
• unsigned char nCON -
Return Value
Returns int
Remarks
CRuleTables::GetHitPoints
int CRuleTables::GetHitPoints(CAIObjectType& TypeAI,CDerivedStats& OldDStats,CDerivedStats& NewDStats,unsigned char nCON);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& OldDStats -
• CDerivedStats& NewDStats -
• unsigned char nCON -
6.95. CRuleTables Class 1651
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CRuleTables::GetInnateClassSkill
int CRuleTables::GetInnateClassSkill(CGameSprite* pSprite,CString sSkill);
Parameters
• CGameSprite* pSprite -
• CString sSkill -
Return Value
Returns int
Remarks
CRuleTables::GetIntoxicationInfo
void CRuleTables::GetIntoxicationInfo(unsigned char nCON,int& nIntoxicationRate,int& nRecoveryRate,int& nIntoxicationCap);
Parameters
• unsigned char nCON -
• int& nIntoxicationRate -
• int& nRecoveryRate -
• int& nIntoxicationCap -
Remarks
CRuleTables::GetItemAbilityDescription
unsigned long CRuleTables::GetItemAbilityDescription(CResRef& cResItem,int nAbilityNum);
Parameters
• CResRef & cResItem -
1652 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• int nAbilityNum -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetItemDropSound
CResRef CRuleTables::GetItemDropSound(int itemtype);
Parameters
• int itemtype -
Return Value
Returns CResRef
Remarks
CRuleTables::GetItemTakeSound
CResRef CRuleTables::GetItemTakeSound(int itemtype);
Parameters
• int itemtype -
Return Value
Returns CResRef
Remarks
CRuleTables::GetItemTypeSlot
int CRuleTables::GetItemTypeSlot(int itemtype);
Parameters
• int itemtype -
Return Value
Returns int
Remarks
CRuleTables::GetItemUseFlag
6.95. CRuleTables Class 1653
EEex Documentation, Release 1.0
int CRuleTables::GetItemUseFlag(CString item);
Parameters
• CString item -
Return Value
Returns int
Remarks
CRuleTables::GetItemUseString
int CRuleTables::GetItemUseString(CString item);
Parameters
• CString item -
Return Value
Returns int
Remarks
CRuleTables::GetItemUseUser
CString CRuleTables::GetItemUseUser(CString item);
Parameters
• CString item -
Return Value
Returns CString
Remarks
CRuleTables::GetItemUseUserName
CString CRuleTables::GetItemUseUserName(CString item);
Parameters
• CString item -
Return Value
Returns CString
Remarks
1654 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRuleTables::GetJoinDialogFile
CString CRuleTables::GetJoinDialogFile(CString item);
Parameters
• CString item -
Return Value
Returns CString
Remarks
CRuleTables::GetLayOnHandsAmount
int CRuleTables::GetLayOnHandsAmount(CAIObjectType& TypeAI,CDerivedStats& DStats);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
Return Value
Returns int
Remarks
CRuleTables::GetLevelUpAbilities
CGameAbilityList* CRuleTables::GetLevelUpAbilities(CGameSprite* pSprite,int nLevel);
Parameters
• CGameSprite* pSprite -
• int nLevel -
Return Value
Returns CGameAbilityList*
Remarks
CRuleTables::GetLevelUpAbilityTableString
6.95. CRuleTables Class 1655
EEex Documentation, Release 1.0
void CRuleTables::GetLevelUpAbilityTableString(CGameSprite* pSprite,int nLevel,CString& sTableName);
Parameters
• CGameSprite* pSprite -
• int nLevel -
• CString& sTableName -
Remarks
CRuleTables::GetLoreBonus
int CRuleTables::GetLoreBonus(unsigned char nWIS,unsigned char nINT);
Parameters
• unsigned char nWIS -
• unsigned char nINT -
Return Value
Returns int
Remarks
CRuleTables::GetMageSpell
CResRef CRuleTables::GetMageSpell(int nSpellLevel,int nSpellIndex);
Parameters
• int nSpellLevel -
• int nSpellIndex -
Return Value
Returns CResRef
Remarks
CRuleTables::GetMaxMemorizedSpellsMage
1656 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
int CRuleTables::GetMaxMemorizedSpellsMage(CAIObjectType& TypeAI,CDerivedStats& DStats,unsigned long nSpecialistMage,int nSpellLevel);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
• unsigned long nSpecialistMage -
• int nSpellLevel -
Return Value
Returns int
Remarks
CRuleTables::GetMaxMemorizedSpellsPriest
int CRuleTables::GetMaxMemorizedSpellsPriest(CAIObjectType& TypeAI,CDerivedStats& DStats,int nSpellLevel,int& nBonus);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
• int nSpellLevel -
• int& nBonus -
Return Value
Returns int
Remarks
CRuleTables::GetMaxMemorizedSpellsRanger
int CRuleTables::GetMaxMemorizedSpellsRanger(CAIObjectType& TypeAI,CDerivedStats& DStats,int nSpellLevel);
Parameters
• CAIObjectType& TypeAI -
6.95. CRuleTables Class 1657
EEex Documentation, Release 1.0
• CDerivedStats& DStats -
• int nSpellLevel -
Return Value
Returns int
Remarks
CRuleTables::GetMaxSpellLevel
int CRuleTables::GetMaxSpellLevel(CDerivedStats& DStats);
Parameters
• CDerivedStats& DStats -
Return Value
Returns int
Remarks
CRuleTables::GetMaxSpellsPerLevel
int CRuleTables::GetMaxSpellsPerLevel(CDerivedStats& DStats);
Parameters
• CDerivedStats& DStats -
Return Value
Returns int
Remarks
CRuleTables::GetMaximumProficiency
int CRuleTables::GetMaximumProficiency(int nLevel,int nClass);
Parameters
• int nLevel -
• int nClass -
Return Value
Returns int
Remarks
1658 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRuleTables::GetMonkFist
CString CRuleTables::GetMonkFist(int nLevel);
Parameters
• int nLevel -
Return Value
Returns CString
Remarks
CRuleTables::GetMovieDescription
void CRuleTables::GetMovieDescription(CString& sMovie,CString& sDescription);
Parameters
• CString& sMovie -
• CString& sDescription -
Remarks
CRuleTables::GetNPCChart
C2DArray* CRuleTables::GetNPCChart();
Return Value
Returns C2DArray*
Remarks
CRuleTables::GetNextLevel
void CRuleTables::GetNextLevel(CAIObjectType& TypeAI,CDerivedStats& DStats);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
Remarks
6.95. CRuleTables Class 1659
EEex Documentation, Release 1.0
CRuleTables::GetNextLevelSubClass
void CRuleTables::GetNextLevelSubClass(unsigned char nClass,unsigned char nSubClass,unsigned char nActiveClass,unsigned char nInactiveClass,CDerivedStats& DStats);
Parameters
• unsigned char nClass -
• unsigned char nSubClass -
• unsigned char nActiveClass -
• unsigned char nInactiveClass -
• CDerivedStats& DStats -
Remarks
CRuleTables::GetNextLevelXP
unsigned long CRuleTables::GetNextLevelXP(unsigned char nClass,unsigned char nLevel);
Parameters
• unsigned char nClass -
• unsigned char nLevel -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetNumLevelUpAbilities
int CRuleTables::GetNumLevelUpAbilities(CAIObjectType& TypeAI,CDerivedStats& OldDStats,CDerivedStats& NewDStats,unsigned char& nLevel);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& OldDStats -
• CDerivedStats& NewDStats -
1660 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• unsigned char& nLevel -
Return Value
Returns int
Remarks
CRuleTables::GetNumPriestSpells
int CRuleTables::GetNumPriestSpells(int nSpellLevel);
Parameters
• int nSpellLevel -
Return Value
Returns int
Remarks
CRuleTables::GetNumQuickWeaponSlots
int CRuleTables::GetNumQuickWeaponSlots(unsigned char nClass,unsigned char nActiveClass,unsigned char nInactiveClass,int bInactiveUsable,unsigned long nSpecialist);
Parameters
• unsigned char nClass -
• unsigned char nActiveClass -
• unsigned char nInactiveClass -
• int bInactiveUsable -
• unsigned long nSpecialist -
Return Value
Returns int
Remarks
6.95. CRuleTables Class 1661
EEex Documentation, Release 1.0
CRuleTables::GetPostDialogFile
CString CRuleTables::GetPostDialogFile(CString& name);
Parameters
• CString& name -
Return Value
Returns CString
Remarks
CRuleTables::GetPriestSpell
CResRef CRuleTables::GetPriestSpell(int nSpellLevel,int nSpellIndex);
Parameters
• int nSpellLevel -
• int nSpellIndex -
Return Value
Returns CResRef
Remarks
CRuleTables::GetProfBonuses
void CRuleTables::GetProfBonuses(int nProf,int nLev,int* damR,int* damL,int* thacR,int* thacL,int* ACB,int* ACM,int* speed,int* crit);
Parameters
• int nProf -
• int nLev -
• int* damR -
• int* damL -
• int* thacR -
1662 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• int* thacL -
• int* ACB -
• int* ACM -
• int* speed -
• int* crit -
Remarks
CRuleTables::GetProficiencyClassIndex
unsigned long CRuleTables::GetProficiencyClassIndex(unsigned char nClass,unsigned long nSpecialist);
Parameters
• unsigned char nClass -
• unsigned long nSpecialist -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetProficiencyDescription
unsigned long CRuleTables::GetProficiencyDescription(unsigned long id);
Parameters
• unsigned long id -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetProficiencyId
unsigned long CRuleTables::GetProficiencyId(unsigned long index);
Parameters
• unsigned long index -
6.95. CRuleTables Class 1663
EEex Documentation, Release 1.0
Return Value
Returns unsigned long
Remarks
CRuleTables::GetProficiencyName
unsigned long CRuleTables::GetProficiencyName(unsigned long id);
Parameters
• unsigned long id -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetProficiencySlots
int CRuleTables::GetProficiencySlots(CAIObjectType& TypeAI,CDerivedStats& OldDStats,CDerivedStats& NewDStats,unsigned char GetInactive);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& OldDStats -
• CDerivedStats& NewDStats -
• unsigned char GetInactive -
Return Value
Returns int
Remarks
CRuleTables::GetRaceFeatures
int CRuleTables::GetRaceFeatures(int race,int type);
Parameters
• int race -
1664 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• int type -
Return Value
Returns int
Remarks
CRuleTables::GetRaceString
CString CRuleTables::GetRaceString(unsigned char nRace);
Parameters
• unsigned char nRace -
Return Value
Returns CString
Remarks
CRuleTables::GetRaceStringMixed
void CRuleTables::GetRaceStringMixed(unsigned char nRace,CString& sRace);
Parameters
• unsigned char nRace -
• CString& sRace -
Remarks
CRuleTables::GetRaceTHAC0Bonus
int CRuleTables::GetRaceTHAC0Bonus(int itemType,unsigned char race);
Parameters
• int itemType -
• unsigned char nRace -
Return Value
Returns int
Remarks
6.95. CRuleTables Class 1665
EEex Documentation, Release 1.0
CRuleTables::GetRaceTextBiography
unsigned long CRuleTables::GetRaceTextBiography(int raceID);
Parameters
• int raceID -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetRaceTextLower
unsigned long CRuleTables::GetRaceTextLower(int raceID);
Parameters
• int raceID -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetRaceTextMixed
unsigned long CRuleTables::GetRaceTextMixed(int raceID);
Parameters
• int raceID -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetRaiseDeadCost
int CRuleTables::GetRaiseDeadCost(CAIObjectType& TypeAI,CDerivedStats& DStats);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
1666 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CRuleTables::GetRandomItem
void CRuleTables::GetRandomItem(CString& item);
Parameters
• CString& item -
Remarks
CRuleTables::GetRangerHatedRaceHelp
unsigned long CRuleTables::GetRangerHatedRaceHelp(short index);
Parameters
• short index -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetRangerHatedRaceIds
unsigned char CRuleTables::GetRangerHatedRaceIds(short index);
Parameters
• short index -
Return Value
Returns unsigned char
Remarks
6.95. CRuleTables Class 1667
EEex Documentation, Release 1.0
CRuleTables::GetRangerHatedRaceStrref
unsigned long CRuleTables::GetRangerHatedRaceStrref(short index);
Parameters
• short index -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetRangerHatedRaceStrrefFromIds
unsigned long CRuleTables::GetRangerHatedRaceStrrefFromIds(short ids);
Parameters
• short ids -
Return Value
Returns unsigned long
Remarks
CRuleTables::GetRangerSkillPoints
void CRuleTables::GetRangerSkillPoints(unsigned char nLevel,unsigned char& nStealth);
Parameters
• unsigned char nLevel -
• unsigned char& nStealth -
Remarks
CRuleTables::GetReputationDescription
unsigned long CRuleTables::GetReputationDescription(const short nReputation);
Parameters
• const short nReputation -
1668 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns unsigned long
Remarks
CRuleTables::GetSavingThrow
int CRuleTables::GetSavingThrow(CAIObjectType& TypeAI,CDerivedStats& DStats,unsigned char nCON,CString& sSavingThrow);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
• unsigned char nCON -
• CString& sSavingThrow -
Return Value
Returns int
Remarks
CRuleTables::GetScriptDescription
void CRuleTables::GetScriptDescription(CString& sScript,CString& sTitle,CString& sDescription);
Parameters
• CString& sScript -
• CString& sTitle -
• CString& sDescription -
Remarks
CRuleTables::GetSetSnareLimit
int CRuleTables::GetSetSnareLimit(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
6.95. CRuleTables Class 1669
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CRuleTables::GetShamanSkillPoints
void CRuleTables::GetShamanSkillPoints(unsigned char nLevel,unsigned char& nDetect);
Parameters
• unsigned char nLevel -
• unsigned char& nDetect -
Remarks
CRuleTables::GetSkillBonus
void CRuleTables::GetSkillBonus(CAIObjectType& TypeAI,CDerivedStats& DStats,unsigned short& nPickPockets,unsigned short& nOpenLocks,unsigned short& nFindTraps,unsigned short& nMoveSilently,unsigned short& nHideInShadows,unsigned short& nDetectIllusion,unsigned short& nSetTraps);
Parameters
• CAIObjectType& TypeAI
• CDerivedStats& DStats
• unsigned short& nPickPockets -
• unsigned short& nOpenLocks -
• unsigned short& nFindTraps -
• unsigned short& nMoveSilently -
• unsigned short& nHideInShadows -
• unsigned short& nDetectIllusion -
• unsigned short& nSetTraps -
Return Value
Returns
Remarks
1670 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRuleTables::GetSkillBonusValue
void CRuleTables::GetSkillBonusValue(CAIObjectType& TypeAI,CDerivedStats& DStats,int& nPickPocketsBonus,int& nOpenLocksBonus,int& nFindTrapsBonus,int& nMoveSilentlyBonus,int& nHideInShadowsBonus,int& nDetectIllusionBonus,int& nSetTrapsBonus);
Parameters
• CAIObjectType& TypeAI
• CDerivedStats& DStats
• int& nPickPocketsBonus -
• int& nOpenLocksBonus -
• int& nFindTrapsBonus -
• int& nMoveSilentlyBonus -
• int& nHideInShadowsBonus -
• int& nDetectIllusionBonus -
• int& nSetTrapsBonus -
Remarks
CRuleTables::GetSlotStealSkill
int CRuleTables::GetSlotStealSkill(int slot);
Parameters
• int slot -
Return Value
Returns int
Remarks
CRuleTables::GetSneakAttack
int CRuleTables::GetSneakAttack(CAIObjectType& TypeAI,CDerivedStats& DStats,unsigned long nKit);
Parameters
6.95. CRuleTables Class 1671
EEex Documentation, Release 1.0
• CAIObjectType& TypeAI
• CDerivedStats& DStats
• unsigned long nKit -
Return Value
Returns int
Remarks
CRuleTables::GetSoundEnvironment
unsigned char CRuleTables::GetSoundEnvironment(CString stAreaRef,unsigned long& dwEnvironment,float& fDamping,float& fDecay,float& fVolume,float& fReverbLevel);
Parameters
• CString stAreaRef -
• unsigned long& dwEnvironment -
• float& fDamping -
• float& fDecay -
• float& fVolume -
• float& fReverbLevel -
Return Value
Returns unsigned char
Remarks
CRuleTables::GetSpecialItemPriority
int CRuleTables::GetSpecialItemPriority(CResRef& itemName,int type);
Parameters
• CResRef & itemName -
• int type -
Return Value
Returns int
Remarks
1672 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRuleTables::GetSpellAbilityValue
int CRuleTables::GetSpellAbilityValue(int classID,int nAbilityColumn);
Parameters
• int classID -
• int nAbilityColumn -
Return Value
Returns int
Remarks
CRuleTables::GetSpellDescription
void CRuleTables::GetSpellDescription(CString& sSpell,CString& sDescription);
Parameters
• CString& sSpell -
• CString& sDescription -
Remarks
CRuleTables::GetSpellProtectionRelation
int CRuleTables::GetSpellProtectionRelation(int nRow);
Parameters
• int nRow -
Return Value
Returns int
Remarks
6.95. CRuleTables Class 1673
EEex Documentation, Release 1.0
CRuleTables::GetSpellProtectionStat
int CRuleTables::GetSpellProtectionStat(int nRow);
Parameters
• int nRow -
Return Value
Returns int
Remarks
CRuleTables::GetSpellProtectionValue
int CRuleTables::GetSpellProtectionValue(int nRow);
Parameters
• int nRow -
Return Value
Returns int
Remarks
CRuleTables::GetStartArea
void CRuleTables::GetStartArea(CResRef& cResArea,CPoint& ptView);
Parameters
• CResRef & cResArea -
• CPoint& ptView -
Remarks
CRuleTables::GetStartAreaMP
void CRuleTables::GetStartAreaMP(CResRef& cResArea,CPoint& ptView);
Parameters
• CResRef & cResArea -
• CPoint& ptView -
1674 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Remarks
CRuleTables::GetStartAreaTutorial
void CRuleTables::GetStartAreaTutorial(CResRef& cResArea,CPoint& ptView);
Parameters
• CResRef & cResArea -
• CPoint& ptView -
Remarks
CRuleTables::GetStartPoint
CPoint CRuleTables::GetStartPoint(int nCharacterSlot);
Parameters
• int nCharacterSlot -
Return Value
Returns CPoint
Remarks
CRuleTables::GetStartPointMP
CPoint CRuleTables::GetStartPointMP(int nCharacterSlot);
Parameters
• int nCharacterSlot -
Return Value
Returns CPoint
Remarks
6.95. CRuleTables Class 1675
EEex Documentation, Release 1.0
CRuleTables::GetStartPointTutorial
CPoint CRuleTables::GetStartPointTutorial(int nCharacterSlot);
Parameters
• int nCharacterSlot -
Return Value
Returns CPoint
Remarks
CRuleTables::GetStartWeapon
CResRef CRuleTables::GetStartWeapon((unsigned char nClass);
Parameters
• unsigned char nClass -
Return Value
Returns CResRef
Remarks
CRuleTables::GetStartingGold
int CRuleTables::GetStartingGold(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Return Value
Returns int
Remarks
CRuleTables::GetStartingReputation
unsigned char CRuleTables::GetStartingReputation(unsigned char nAlignment);
Parameters
• unsigned char nAlignment -
Return Value
Returns unsigned char
Remarks
1676 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRuleTables::GetStatName
CString CRuleTables::GetStatName(int offset);
Parameters
• int offset -
Return Value
Returns CString
Remarks
CRuleTables::GetStatValue
float CRuleTables::GetStatValue(CString statName);
Parameters
• CString statName -
Return Value
Returns float
Remarks
CRuleTables::GetSubClassProficiencySlots
int CRuleTables::GetSubClassProficiencySlots(int nSubClass,int nOldLevel,int nNewLevel);
Parameters
• int nSubClass -
• int nOldLevel -
• int nNewLevel -
Return Value
Returns int
Remarks
6.95. CRuleTables Class 1677
EEex Documentation, Release 1.0
CRuleTables::GetSubClasses
int CRuleTables::GetSubClasses(unsigned char nClass,unsigned char* aSubClass);
Parameters
• unsigned char nClass -
• unsigned char* aSubClass -
Return Value
Returns int
Remarks
CRuleTables::GetSummonLimit
int CRuleTables::GetSummonLimit(CString summonType);
Parameters
• CString summonType -
Return Value
Returns int
Remarks
CRuleTables::GetSummoningTable
C2DArray* CRuleTables::GetSummoningTable(int index);
Parameters
• int index -
Return Value
Returns C2DArray*
Remarks
1678 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRuleTables::GetTBPStartPartyMember
CResRef CRuleTables::GetTBPStartPartyMember(int member);
Parameters
• int member -
Return Value
Returns CResRef
Remarks
CRuleTables::GetTHAC0
int CRuleTables::GetTHAC0(CAIObjectType& TypeAI,CDerivedStats& DStats);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
Return Value
Returns int
Remarks
CRuleTables::GetThiefSkillPercentage
int CRuleTables::GetThiefSkillPercentage(CGameSprite* pSprite,CString sSkill,unsigned char dualingTo);
Parameters
• CGameSprite* pSprite -
• CString sSkill -
• unsigned char dualingTo -
Return Value
Returns int
Remarks
6.95. CRuleTables Class 1679
EEex Documentation, Release 1.0
CRuleTables::GetThiefSkillsDual
int CRuleTables::GetThiefSkillsDual(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Return Value
Returns int
Remarks
CRuleTables::GetThiefSkillsLevelUp
int CRuleTables::GetThiefSkillsLevelUp(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Return Value
Returns int
Remarks
CRuleTables::GetThiefSkillsStart
int CRuleTables::GetThiefSkillsStart(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite -
Return Value
Returns int
Remarks
CRuleTables::GetWedFogAreaSettings
int CRuleTables::GetWedFogAreaSettings(CString key,int* contrast,unsigned long* innerColor,unsigned long* outerColor,float* alpha,int* preDisperseSeconds);
1680 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Parameters
• CString key -
• int* contrast -
• unsigned long* innerColor -
• unsigned long* outerColor -
• float* alpha -
• int* preDisperseSeconds -
Return Value
Returns int
Remarks
CRuleTables::GetWedFogPointSettings
bool CRuleTables::GetWedFogPointSettings(CString key,int* pointAmount,int* pointDuration,CPoint* pointPos,float* pointUForce,float* pointVForce);
Parameters
• CString key -
• int* pointAmount -
• int* pointDuration -
• CPoint* pointPos -
• float* pointUForce -
• float* pointVForce -
Return Value
Returns bool
Remarks
CRuleTables::GetXPCap
unsigned long CRuleTables::GetXPCap(CAIObjectType& TypeAI);
Parameters
• CAIObjectType& TypeAI -
6.95. CRuleTables Class 1681
EEex Documentation, Release 1.0
Return Value
Returns unsigned long
Remarks
CRuleTables::IsClassRaceCompatable
int CRuleTables::IsClassRaceCompatable(unsigned char classID,unsigned char raceID);
Parameters
• unsigned char classID -
• unsigned char raceID -
Return Value
Returns int
Remarks
CRuleTables::IsDualClassAllowed
unsigned char CRuleTables::IsDualClassAllowed(unsigned char nActiveClass,unsigned char nSubClass,unsigned long nSpecialist);
Parameters
• unsigned char nActiveClass -
• unsigned char nSubClass -
• unsigned long nSpecialist -
Return Value
Returns unsigned char
Remarks
CRuleTables::IsItemExclusive
int CRuleTables::IsItemExclusive(CItem* pItem);
Parameters
• CItem* pItem -
1682 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CRuleTables::IsProtectedFromSpell
int CRuleTables::IsProtectedFromSpell(int nRow,CGameSprite* stats,CGameSprite* mine,int value);
Parameters
• int nRow -
• CGameSprite* stats -
• CGameSprite* mine -
• int value -
Return Value
Returns int
Remarks
CRuleTables::IsSpellHidden
int CRuleTables::IsSpellHidden(CString spellRef);
Parameters
• CString spellRef -
Return Value
Returns int
Remarks
CRuleTables::IsSpellRemoved
int CRuleTables::IsSpellRemoved(CString spellRef);
Parameters
• CString spellRef -
6.95. CRuleTables Class 1683
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CRuleTables::IsUsableByAlignment
int CRuleTables::IsUsableByAlignment(unsigned long dwNotUsableBy,unsigned char alignment);
Parameters
• unsigned long dwNotUsableBy -
• unsigned char alignment -
Return Value
Returns int
Remarks
CRuleTables::IsValidAlignment
int CRuleTables::IsValidAlignment(unsigned char nClass,unsigned char nAlignment,unsigned long nSpecialist);
Parameters
• unsigned char nClass -
• unsigned char nAlignment -
• unsigned long nSpecialist -
Return Value
Returns int
Remarks
CRuleTables::MapCharacterSpecializationToSchool
unsigned char CRuleTables::MapCharacterSpecializationToSchool(unsigned short→˓nSpecialistMage);
Parameters
• unsigned short nSpecialistMage -
1684 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns unsigned char
Remarks
CRuleTables::RollHitPoints
int CRuleTables::RollHitPoints(C2DArray& tHitPoints,unsigned char nOldLevel,unsigned char nNewLevel,int nCONMinRoll,int nDivisor,int bOverrideSides,int overrideSides,int bOverrideMod,int overrideMod);
Parameters
• C2DArray& tHitPoints -
• unsigned char nOldLevel -
• unsigned char nNewLevel -
• int nCONMinRoll -
• int nDivisor -
• int bOverrideSides -
• int overrideSides -
• int bOverrideMod -
• int overrideMod -
Return Value
Returns int
Remarks
CRuleTables::RollHitPoints
int CRuleTables::RollHitPoints(unsigned char nClass,unsigned char nSubClass,CDerivedStats& OldDStats,CDerivedStats& NewDStats,int nCONMinRoll,int nDivisor,int bIsSingleClass);
Parameters
6.95. CRuleTables Class 1685
EEex Documentation, Release 1.0
• unsigned char nClass -
• unsigned char nSubClass -
• CDerivedStats& OldDStats -
• CDerivedStats& NewDStats -
• int nCONMinRoll -
• int nDivisor -
• int bIsSingleClass -
Return Value
Returns int
Remarks
CRuleTables::RollHitPoints
int CRuleTables::RollHitPoints(int nSides,int nRolls,int nLevel,int nMinRoll,int nModifier);
Parameters
• int nSides -
• int nRolls -
• int nLevel -
• int nMinRoll -
• int nModifier -
Return Value
Returns int
Remarks
CRuleTables::SetCampaign
int CRuleTables::SetCampaign(CString campaign);
Parameters
• CString campaign -
Return Value
Returns int
Remarks
1686 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CRuleTables::SevenEyesImmunity
long CRuleTables::SevenEyesImmunity(CGameSprite* sprite,unsigned long opcode,unsigned long param2,CString& resource,int& strref);
Parameters
• CGameSprite* sprite -
• unsigned long opcode -
• unsigned long param2 -
• CString& resource -
• int& strref -
Return Value
Returns long
Remarks
CRuleTables::UnsetCampaign
void CRuleTables::UnsetCampaign();
Remarks
6.96 CScreenAI Class
• Overview
• Quick Reference
• Constructors
• Methods
6.96.1 Overview
Note: The CScreenAI class handles AI
The structure used for this class is CScreenAI
6.96. CScreenAI Class 1687
EEex Documentation, Release 1.0
6.96.2 Quick Reference
Quick Refvoid CScreenAI::CScreenAI()virtual int CScreenAI::CheckMouseLButton()virtual int CScreenAI::CheckMouseMove()virtual int CScreenAI::CheckMouseRButton()virtual int CScreenAI::CheckSystemKeyCtrl()virtual short CScreenAI::GetNumVirtualKeys()virtual CKeyInfo* CScreenAI::GetVirtualKeys()virtual void CScreenAI::EngineActivated()virtual void CScreenAI::EngineDeactivated()virtual void CScreenAI::EngineDestroyed()virtual void CScreenAI::EngineGameInit()virtual void CScreenAI::EngineGameUninit()virtual void CScreenAI::EngineInitialized()virtual int* CScreenAI::GetVirtualKeysFlags()virtual void CScreenAI::OnKeyDown(int nKeysFlags)virtual void CScreenAI::OnLButtonDblClk(CPoint cPoint)virtual void CScreenAI::OnLButtonDown(CPoint cPoint)virtual void CScreenAI::OnLButtonUp(CPoint cPoint)virtual void CScreenAI::OnMouseMove(CPoint cPoint)virtual void CScreenAI::OnRButtonDown(CPoint cPoint)virtual void CScreenAI::OnRButtonUp(CPoint cPoint)virtual void CScreenAI::SetSystemKeyCtrl(unsigned char bValue)virtual void CScreenAI::TimerAsynchronousUpdate()virtual void CScreenAI::TimerSynchronousUpdate()
6.96.3 Constructors
Name DescriptionCScreenAI::CScreenAI Constructs a CScreenAI object
CScreenAI::CScreenAI
Constructs a CScreenAI object
void CScreenAI::CScreenAI();
Remarks
Constructs a CScreenAI object
1688 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.96.4 Methods
Name DescriptionCScreenAI::CheckMouseLButtonCScreenAI::CheckMouseMoveCScreenAI::CheckMouseRButtonCScreenAI::CheckSystemKeyCtrlCScreenAI::GetNumVirtualKeysCScreenAI::GetVirtualKeysCScreenAI::EngineActivatedCScreenAI::EngineDeactivatedCScreenAI::EngineDestroyedCScreenAI::EngineGameInitCScreenAI::EngineGameUninitCScreenAI::EngineInitializedCScreenAI::GetVirtualKeysFlagsCScreenAI::OnKeyDownCScreenAI::OnLButtonDblClkCScreenAI::OnLButtonDownCScreenAI::OnLButtonUpCScreenAI::OnMouseMoveCScreenAI::OnRButtonDownCScreenAI::OnRButtonUpCScreenAI::SetSystemKeyCtrlCScreenAI::TimerAsynchronousUpdateCScreenAI::TimerSynchronousUpdate
CScreenAI::CheckMouseLButton
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::CheckMouseMove
6.96. CScreenAI Class 1689
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::CheckMouseRButton
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::CheckSystemKeyCtrl
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1690 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenAI::GetNumVirtualKeys
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::GetVirtualKeys
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::EngineActivated
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.96. CScreenAI Class 1691
EEex Documentation, Release 1.0
CScreenAI::EngineDeactivated
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::EngineDestroyed
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::EngineGameInit
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1692 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenAI::EngineGameUninit
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::EngineInitialized
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::GetVirtualKeysFlags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.96. CScreenAI Class 1693
EEex Documentation, Release 1.0
CScreenAI::OnKeyDown
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::OnLButtonDblClk
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::OnLButtonDown
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1694 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenAI::OnLButtonUp
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::OnMouseMove
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::OnRButtonDown
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.96. CScreenAI Class 1695
EEex Documentation, Release 1.0
CScreenAI::OnRButtonUp
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::SetSystemKeyCtrl
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenAI::TimerAsynchronousUpdate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1696 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenAI::TimerSynchronousUpdate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.97 CScreenChapter Class
• Overview
• Quick Reference
• Constructors
• Methods
6.97.1 Overview
Note: The CScreenChapter class handles chapter screens and dream transitions
The structure used for this class is CScreenChapter
6.97.2 Quick Reference
Quick Refvoid CScreenChapter::CScreenChapter()virtual void CScreenChapter::~CScreenChapter()virtual int CScreenChapter::CheckMouseLButton()virtual int CScreenChapter::CheckMouseMove()virtual int CScreenChapter::CheckMouseRButton()virtual int CScreenChapter::CheckSystemKeyCtrl()virtual void CScreenChapter::CancelEngine()virtual void CScreenChapter::EngineActivated()virtual void CScreenChapter::EngineDeactivated()
Continued on next page
6.97. CScreenChapter Class 1697
EEex Documentation, Release 1.0
Table 37 – continued from previous pagevirtual void CScreenChapter::EngineDestroyed()virtual void CScreenChapter::EngineGameInit()virtual void CScreenChapter::EngineInitialized()virtual void CScreenChapter::EngineGameUninit()virtual int CScreenChapter::GetEngineState()void CScreenChapter::GetNextDreamIndex(long& nDream)virtual short CScreenChapter::GetNumVirtualKeys()virtual int* CScreenChapter::GetVirtualKeysFlags()virtual CKeyInfo* CScreenChapter::GetVirtualKeys()int CScreenChapter::IsDoneButtonClickable()int CScreenChapter::IsReplayButtonClickable()void CScreenChapter::OnDoneButtonClick()virtual void CScreenChapter::OnKeyDown(int nKeysFlags)virtual void CScreenChapter::OnLButtonDown(CPoint cPoint)virtual void CScreenChapter::OnLButtonDblClk(CPoint cPoint)virtual void CScreenChapter::OnLButtonUp(CPoint cPoint)virtual void CScreenChapter::OnRButtonDown(CPoint cPoint)virtual void CScreenChapter::OnRButtonUp(CPoint cPoint)void CScreenChapter::OnMixerInitialize()virtual void CScreenChapter::OnMouseMove(CPoint cPoint)virtual void CScreenChapter::OnPortraitLClick(unsigned long id)void CScreenChapter::OnReplayButtonClick()void CScreenChapter::ResetMainPanel()virtual void CScreenChapter::SetSystemKeyCtrl(unsigned char bValue)void CScreenChapter::StartChapter(CResRef & cResText)void CScreenChapter::StartChapterMultiplayerHost(unsigned char nChapter, unsigned char* chapterResRef)int CScreenChapter::StartDream(unsigned char bRenting, CString& dreamOverride)int CScreenChapter::StartText(CResRef & cResText)void CScreenChapter::StartTextScreen(CString& textscreenOverride)void CScreenChapter::StartTextScreenMultiplayerHost(unsigned char* textscreenResRef)void CScreenChapter::StopDream()virtual int CScreenChapter::StopMusic()void CScreenChapter::StopText(int bNotifyServer)void CScreenChapter::StopTextScreen()void CScreenChapter::SwitchMainPanel(unsigned long dwMainPanelId)virtual void CScreenChapter::TimerAsynchronousUpdate()virtual void CScreenChapter::TimerSynchronousUpdate()
6.97.3 Constructors
Name DescriptionCScreenChapter::CScreenChapter Constructs a CScreenChapter objectCScreenChapter::~CScreenChapter Destroys a CScreenChapter object
CScreenChapter::CScreenChapter
Constructs a CScreenChapter object
1698 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CScreenChapter::CScreenChapter();
Remarks
Constructs a CScreenChapter object
CScreenChapter::~CScreenChapter
Destroys the CScreenChapter object
virtual void CScreenChapter::~CScreenChapter();
Remarks
Destroys the CScreenChapter object
6.97.4 Methods
Name DescriptionCScreenChapter::CheckMouseLButtonCScreenChapter::CheckMouseMoveCScreenChapter::CheckMouseRButtonCScreenChapter::CheckSystemKeyCtrlCScreenChapter::CancelEngineCScreenChapter::EngineActivatedCScreenChapter::EngineDeactivatedCScreenChapter::EngineDestroyedCScreenChapter::EngineGameInitCScreenChapter::EngineInitializedCScreenChapter::EngineGameUninitCScreenChapter::GetEngineStateCScreenChapter::GetNextDreamIndexCScreenChapter::GetNumVirtualKeysCScreenChapter::GetVirtualKeysFlagsCScreenChapter::GetVirtualKeysCScreenChapter::IsDoneButtonClickableCScreenChapter::IsReplayButtonClickableCScreenChapter::OnDoneButtonClickCScreenChapter::OnKeyDownCScreenChapter::OnLButtonDownCScreenChapter::OnLButtonDblClkCScreenChapter::OnLButtonUpCScreenChapter::OnRButtonDownCScreenChapter::OnRButtonUpCScreenChapter::OnMixerInitializeCScreenChapter::OnMouseMoveCScreenChapter::OnPortraitLClick
Continued on next page
6.97. CScreenChapter Class 1699
EEex Documentation, Release 1.0
Table 38 – continued from previous pageCScreenChapter::OnReplayButtonClickCScreenChapter::ResetMainPanelCScreenChapter::SetSystemKeyCtrlCScreenChapter::StartChapterCScreenChapter::StartChapterMultiplayerHostCScreenChapter::StartDreamCScreenChapter::StartTextCScreenChapter::StartTextScreenCScreenChapter::StartTextScreenMultiplayerHostCScreenChapter::StopDreamCScreenChapter::StopMusicCScreenChapter::StopTextCScreenChapter::StopTextScreenCScreenChapter::SwitchMainPanelCScreenChapter::TimerAsynchronousUpdateCScreenChapter::TimerSynchronousUpdate
CScreenChapter::CheckMouseLButton
virtual int CScreenChapter::CheckMouseLButton();
Return Value
int
Remarks
CScreenChapter::CheckMouseMove
virtual int CScreenChapter::CheckMouseMove();
Return Value
int
Remarks
CScreenChapter::CheckMouseRButton
virtual int CScreenChapter::CheckMouseRButton();
Return Value
int
Remarks
1700 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenChapter::CheckSystemKeyCtrl
virtual int CScreenChapter::CheckSystemKeyCtrl();
Return Value
int
Remarks
CScreenChapter::CancelEngine
virtual void CScreenChapter::CancelEngine();
Remarks
CScreenChapter::EngineActivated
virtual void CScreenChapter::EngineActivated();
Remarks
CScreenChapter::EngineDeactivated
virtual void CScreenChapter::EngineDeactivated();
Remarks
CScreenChapter::EngineDestroyed
virtual void CScreenChapter::EngineDestroyed();
Remarks
CScreenChapter::EngineGameInit
virtual void CScreenChapter::EngineGameInit();
Remarks
6.97. CScreenChapter Class 1701
EEex Documentation, Release 1.0
CScreenChapter::EngineInitialized
virtual void CScreenChapter::EngineInitialized();
Remarks
CScreenChapter::EngineGameUninit
virtual void CScreenChapter::EngineGameUninit();
Remarks
CScreenChapter::GetEngineState
virtual int CScreenChapter::GetEngineState();
Return Value
int
Remarks
CScreenChapter::GetNextDreamIndex
void CScreenChapter::GetNextDreamIndex(long& nDream);
Parameters
• long& nDream -
Remarks
CScreenChapter::GetNumVirtualKeys
virtual short CScreenChapter::GetNumVirtualKeys();
Return Value
short
Remarks
CScreenChapter::GetVirtualKeysFlags
1702 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual int\* CScreenChapter::GetVirtualKeysFlags();
Return Value
int*
Remarks
CScreenChapter::GetVirtualKeys
virtual :ref:`CKeyInfo<CKeyInfo>`\* CScreenChapter::GetVirtualKeys();
Return Value
Returns CKeyInfo*
Remarks
CScreenChapter::IsDoneButtonClickable
int CScreenChapter::IsDoneButtonClickable();
Return Value
int
Remarks
CScreenChapter::IsReplayButtonClickable
int CScreenChapter::IsReplayButtonClickable();
Return Value
int
Remarks
CScreenChapter::OnDoneButtonClick
void CScreenChapter::OnDoneButtonClick();
Remarks
CScreenChapter::OnKeyDown
6.97. CScreenChapter Class 1703
EEex Documentation, Release 1.0
virtual void CScreenChapter::OnKeyDown(int nKeysFlags);
Parameters
• int nKeysFlags -
Remarks
CScreenChapter::OnLButtonDown
virtual void CScreenChapter::OnLButtonDown(:ref:`CPoint<CPoint>` cPoint);
Parameters
• CPoint cPoint -
Remarks
CScreenChapter::OnLButtonDblClk
virtual void CScreenChapter::OnLButtonDblClk(:ref:`CPoint<CPoint>` cPoint);
Parameters
• CPoint cPoint -
Remarks
CScreenChapter::OnLButtonUp
virtual void CScreenChapter::OnLButtonUp(:ref:`CPoint<CPoint>` cPoint);
Parameters
• CPoint cPoint -
Remarks
CScreenChapter::OnRButtonDown
virtual void CScreenChapter::OnRButtonDown(:ref:`CPoint<CPoint>` cPoint);
Parameters
• CPoint cPoint -
Remarks
1704 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenChapter::OnRButtonUp
virtual void CScreenChapter::OnRButtonUp(:ref:`CPoint<CPoint>` cPoint);
Parameters
• CPoint cPoint -
Remarks
CScreenChapter::OnMixerInitialize
void CScreenChapter::OnMixerInitialize();
Remarks
CScreenChapter::OnMouseMove
virtual void CScreenChapter::OnMouseMove(:ref:`CPoint<CPoint>` cPoint);
Parameters
• CPoint cPoint -
Remarks
CScreenChapter::OnPortraitLClick
virtual void CScreenChapter::OnPortraitLClick(unsigned long id);
Parameters
• unsigned long id -
Remarks
CScreenChapter::OnReplayButtonClick
void CScreenChapter::OnReplayButtonClick();
Remarks
CScreenChapter::ResetMainPanel
6.97. CScreenChapter Class 1705
EEex Documentation, Release 1.0
void CScreenChapter::ResetMainPanel();
Remarks
CScreenChapter::SetSystemKeyCtrl
virtual void CScreenChapter::SetSystemKeyCtrl(unsigned char bValue);
Parameters
• unsigned char bValue -
Remarks
CScreenChapter::StartChapter
void CScreenChapter::StartChapter(:ref:`CResRef<CResRef>`\& cResText);
Parameters
• CResRef & cResText -
Remarks
CScreenChapter::StartChapterMultiplayerHost
void CScreenChapter::StartChapterMultiplayerHost(unsigned char nChapter,
unsigned char* chapterResRef);
Parameters
• unsigned char nChapter -
• unsigned char* chapterResRef -
Remarks
CScreenChapter::StartDream
int CScreenChapter::StartDream(unsigned char bRenting,
CString& dreamOverride);
Parameters
• unsigned char bRenting -
1706 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
• CString& dreamOverride -
Return Value
int
Remarks
CScreenChapter::StartText
int CScreenChapter::StartText(:ref:`CResRef<CResRef>`\& cResText);
Parameters
• CResRef & cResText -
Return Value
int
Remarks
CScreenChapter::StartTextScreen
void CScreenChapter::StartTextScreen(:ref:`CString<CString>`\& textscreenOverride);
Parameters
• CString& textscreenOverride -
Remarks
CScreenChapter::StartTextScreenMultiplayerHost
void CScreenChapter::StartTextScreenMultiplayerHost(unsigned char\* textscreenResRef);
Parameters
• unsigned char* textscreenResRef -
Remarks
CScreenChapter::StopDream
void CScreenChapter::StopDream();
Remarks
6.97. CScreenChapter Class 1707
EEex Documentation, Release 1.0
CScreenChapter::StopMusic
virtual int CScreenChapter::StopMusic();
Return Value
int
Remarks
CScreenChapter::StopText
void CScreenChapter::StopText(int bNotifyServer);
Parameters
• int bNotifyServer -
Remarks
CScreenChapter::StopTextScreen
void CScreenChapter::StopTextScreen();
Remarks
CScreenChapter::SwitchMainPanel
void CScreenChapter::SwitchMainPanel(unsigned long dwMainPanelId);
Parameters
• unsigned long dwMainPanelId -
Remarks
CScreenChapter::TimerAsynchronousUpdate
virtual void CScreenChapter::TimerAsynchronousUpdate();
Remarks
CScreenChapter::TimerSynchronousUpdate
1708 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
virtual void CScreenChapter::TimerSynchronousUpdate();
Remarks
6.98 CScreenCharacter Class
• Overview
• Quick Reference
• Constructors
• Methods
6.98.1 Overview
Note: The CScreenCharacter class handles characters
The structure used for this class is CScreenCharacter
6.98.2 Quick Reference
Quick Refvoid CScreenCharacter::CScreenCharacter()virtual void CScreenCharacter::~CScreenCharacter()virtual void CScreenCharacter::CancelEngine()void CScreenCharacter::CheckDropEquipment()void CScreenCharacter::CheckDropSlot(int nSlot)virtual int CScreenCharacter::CheckMouseLButton()virtual int CScreenCharacter::CheckMouseMove()virtual int CScreenCharacter::CheckMouseRButton()virtual int CScreenCharacter::CheckSystemKeyCapsLock()virtual int CScreenCharacter::CheckSystemKeyCtrl()virtual int CScreenCharacter::CheckSystemKeyShift()void CScreenCharacter::CheckMultiPlayerViewableModifyable()virtual void CScreenCharacter::EngineActivated()virtual void CScreenCharacter::EngineDeactivated()virtual void CScreenCharacter::EngineDestroyed()virtual void CScreenCharacter::EngineInitialized()virtual void CScreenCharacter::EngineGameInit()virtual void CScreenCharacter::EngineGameUninit()virtual int CScreenCharacter::GetCapsLockKey()virtual int CScreenCharacter::GetCtrlKey()virtual short CScreenCharacter::GetNumVirtualKeys()
Continued on next page
6.98. CScreenCharacter Class 1709
EEex Documentation, Release 1.0
Table 39 – continued from previous pagevirtual int CScreenCharacter::GetShiftKey()virtual CKeyInfo* CScreenCharacter::GetVirtualKeys()virtual int* CScreenCharacter::GetVirtualKeysFlags()int CScreenCharacter::GetTempSmartScriptLocal(int nSetting)int CScreenCharacter::IsAppearanceButtonClickable()int CScreenCharacter::IsCharacterViewable()int CScreenCharacter::IsDoneButtonClickable(int characterID)int CScreenCharacter::IsDoneButtonClickable(CGameSprite* pSprite)int CScreenCharacter::IsDualClassButtonClickable()int CScreenCharacter::IsExportButtonClickable()int CScreenCharacter::IsInGame()int CScreenCharacter::IsLevelUpButtonClickable(CGameSprite* pSprite)int CScreenCharacter::IsLevelUpButtonClickable()unsigned char CScreenCharacter::IsNameOnExportList(CString stName)int CScreenCharacter::IsReformPartyButtonClickable()void CScreenCharacter::LevelUp(CGameSprite* pSprite)void CScreenCharacter::MakeDualClass(CGameSprite* pSprite, unsigned char nNewClass)void CScreenCharacter::OnAppearanceButtonClick()void CScreenCharacter::OnCancelButtonClick()void CScreenCharacter::OnCharacterItemSelect(int nMarker)void CScreenCharacter::OnCusomizeBiographyButtonClick()void CScreenCharacter::OnCustomizeButtonClick()void CScreenCharacter::OnDoneButtonClick()void CScreenCharacter::OnDualClassButtonClick()void CScreenCharacter::OnErrorButtonClick(int nButton)virtual bool CScreenCharacter::OnEvent(SDL_Event* e)void CScreenCharacter::OnExportButtonClick()void CScreenCharacter::OnHairSkinButtonClick()virtual void CScreenCharacter::OnKeyDown(int nKeysFlags)virtual void CScreenCharacter::OnLButtonDblClk(CPoint cPoint)virtual void CScreenCharacter::OnLButtonDown(CPoint cPoint)virtual void CScreenCharacter::OnLButtonUp(CPoint cPoint)void CScreenCharacter::OnLevelUpButtonClick()virtual void CScreenCharacter::OnMouseMove(CPoint cPoint)void CScreenCharacter::OnPlayButtonClick()virtual void CScreenCharacter::OnPortraitLClick(unsigned long id)virtual void CScreenCharacter::OnRButtonDown(CPoint cPoint)virtual void CScreenCharacter::OnRButtonUp(CPoint cPoint)void CScreenCharacter::OnReformPartyButtonClick()virtual void CScreenCharacter::OnRestButtonClick()void CScreenCharacter::OnScriptButtonClick()void CScreenCharacter::OnScriptItemSelect(int nIndex)void CScreenCharacter::OnSoundItemSelect(int nIndex)void CScreenCharacter::OnSoundsButtonClick()void CScreenCharacter::RecallAppearance(CGameSprite* pSprite)void CScreenCharacter::RecallHairSkin(CGameSprite* pSprite)void CScreenCharacter::RecallScript(CGameSprite* pSprite)void CScreenCharacter::RecallSounds(CGameSprite* pSprite)void CScreenCharacter::RefreshScripts()void CScreenCharacter::RemoveAbilities(CGameSprite* pSprite, int nNewClass, int bRemoveInnates)
Continued on next page
1710 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 39 – continued from previous pagevoid CScreenCharacter::ResumeSpellPicking()void CScreenCharacter::SetSmartScriptLocal(int nSetting, int bSet)virtual void CScreenCharacter::SetSystemKeyCapsLock(int bValue)virtual void CScreenCharacter::SetSystemKeyCtrl(unsigned char bValue)virtual void CScreenCharacter::SetSystemKeyShift(int bValue)void CScreenCharacter::SetTempSmartScriptLocal(int nSetting, int bSet)void CScreenCharacter::StoreAppearance(CGameSprite* pSprite)void CScreenCharacter::StoreScript(CGameSprite* pSprite)virtual void CScreenCharacter::TimerAsynchronousUpdate()virtual void CScreenCharacter::TimerSynchronousUpdate()void CScreenCharacter::UpdateCharacterList(CString luaVar)virtual void CScreenCharacter::UpdateCharacterStatus(long nSpriteId)void CScreenCharacter::UpdateMainPanel(int bCharacterChanged)
6.98.3 Constructors
Name DescriptionCScreenCharacter::CScreenCharacter Constructs a CScreenCharacter objectCScreenCharacter::CScreenCharacter Destroys a CScreenCharacter object
CScreenCharacter::CScreenCharacter
Constructs a CScreenCharacter object
void CScreenCharacter::CScreenCharacter();
Remarks
Constructs a CScreenCharacter object
CScreenCharacter::~CScreenCharacter
Destroys the CScreenCharacter object
virtual void CScreenCharacter::~CScreenCharacter();
Remarks
Destroys the CScreenCharacter object
6.98.4 Methods
Name DescriptionContinued on next page
6.98. CScreenCharacter Class 1711
EEex Documentation, Release 1.0
Table 40 – continued from previous pageCScreenCharacter::CancelEngineCScreenCharacter::CheckDropEquipmentCScreenCharacter::CheckDropSlotCScreenCharacter::CheckMouseLButtonCScreenCharacter::CheckMouseMoveCScreenCharacter::CheckMouseRButtonCScreenCharacter::CheckSystemKeyCapsLockCScreenCharacter::CheckSystemKeyCtrlCScreenCharacter::CheckSystemKeyShiftCScreenCharacter::CheckMultiPlayerViewableModifyableCScreenCharacter::EngineActivatedCScreenCharacter::EngineDeactivatedCScreenCharacter::EngineDestroyedCScreenCharacter::EngineInitializedCScreenCharacter::EngineGameInitCScreenCharacter::EngineGameUninitCScreenCharacter::GetCapsLockKeyCScreenCharacter::GetCtrlKeyCScreenCharacter::GetNumVirtualKeysCScreenCharacter::GetShiftKeyCScreenCharacter::GetVirtualKeysCScreenCharacter::GetVirtualKeysFlagsCScreenCharacter::GetTempSmartScriptLocalCScreenCharacter::IsAppearanceButtonClickableCScreenCharacter::IsCharacterViewableCScreenCharacter::IsDoneButtonClickableCScreenCharacter::IsDualClassButtonClickableCScreenCharacter::IsExportButtonClickableCScreenCharacter::IsInGameCScreenCharacter::IsLevelUpButtonClickableCScreenCharacter::IsNameOnExportListCScreenCharacter::IsReformPartyButtonClickableCScreenCharacter::LevelUpCScreenCharacter::MakeDualClassCScreenCharacter::OnAppearanceButtonClickCScreenCharacter::OnCancelButtonClickCScreenCharacter::OnCharacterItemSelectCScreenCharacter::OnCusomizeBiographyButtonClickCScreenCharacter::OnCustomizeButtonClickCScreenCharacter::OnDoneButtonClickCScreenCharacter::OnDualClassButtonClickCScreenCharacter::OnErrorButtonClickCScreenCharacter::OnEventCScreenCharacter::OnExportButtonClickCScreenCharacter::OnHairSkinButtonClickCScreenCharacter::OnKeyDownCScreenCharacter::OnLButtonDblClkCScreenCharacter::OnLButtonDownCScreenCharacter::OnLButtonUpCScreenCharacter::OnLevelUpButtonClick
Continued on next page
1712 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 40 – continued from previous pageCScreenCharacter::OnMouseMoveCScreenCharacter::OnPlayButtonClickCScreenCharacter::OnPortraitLClickCScreenCharacter::OnRButtonDownCScreenCharacter::OnRButtonUpCScreenCharacter::OnReformPartyButtonClickCScreenCharacter::OnRestButtonClickCScreenCharacter::OnScriptButtonClickCScreenCharacter::OnScriptItemSelectCScreenCharacter::OnSoundItemSelectCScreenCharacter::OnSoundsButtonClickCScreenCharacter::RecallAppearanceCScreenCharacter::RecallHairSkinCScreenCharacter::RecallScriptCScreenCharacter::RecallSoundsCScreenCharacter::RefreshScriptsCScreenCharacter::RemoveAbilitiesCScreenCharacter::ResumeSpellPickingCScreenCharacter::SetSmartScriptLocalCScreenCharacter::SetSystemKeyCapsLockCScreenCharacter::SetSystemKeyCtrlCScreenCharacter::SetSystemKeyShiftCScreenCharacter::SetTempSmartScriptLocalCScreenCharacter::StoreAppearanceCScreenCharacter::StoreScriptCScreenCharacter::TimerAsynchronousUpdateCScreenCharacter::TimerSynchronousUpdateCScreenCharacter::UpdateCharacterListCScreenCharacter::UpdateCharacterStatusCScreenCharacter::UpdateMainPanel
CScreenCharacter::CancelEngine
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1713
EEex Documentation, Release 1.0
CScreenCharacter::CheckDropEquipment
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::CheckDropSlot
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::CheckMouseLButton
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1714 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::CheckMouseMove
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::CheckMouseRButton
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::CheckSystemKeyCapsLock
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1715
EEex Documentation, Release 1.0
CScreenCharacter::CheckSystemKeyCtrl
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::CheckSystemKeyShift
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::CheckMultiPlayerViewableModifyable
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1716 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::EngineActivated
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::EngineDeactivated
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::EngineDestroyed
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1717
EEex Documentation, Release 1.0
CScreenCharacter::EngineInitialized
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::EngineGameInit
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::EngineGameUninit
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1718 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::GetCapsLockKey
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::GetCtrlKey
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::GetNumVirtualKeys
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1719
EEex Documentation, Release 1.0
CScreenCharacter::GetShiftKey
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::GetVirtualKeys
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::GetVirtualKeysFlags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1720 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::GetTempSmartScriptLocal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::IsAppearanceButtonClickable
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::IsCharacterViewable
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1721
EEex Documentation, Release 1.0
CScreenCharacter::IsDoneButtonClickable
int **CScreenCharacter\:\:IsDoneButtonClickable**\(int characterID);
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::IsDoneButtonClickable
int **CScreenCharacter\:\:IsDoneButtonClickable**\(:ref:`CGameSprite<CGameSprite>`\*→˓pSprite);
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::IsDualClassButtonClickable
x;
Parameters
• – *
• – *
• – *
• – *
1722 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns
Remarks
CScreenCharacter::IsExportButtonClickable
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::IsInGame
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::IsLevelUpButtonClickable
int **CScreenCharacter\:\:IsLevelUpButtonClickable**\(:ref:`CGameSprite<CGameSprite>→˓`\* pSprite);
Parameters
• – *
6.98. CScreenCharacter Class 1723
EEex Documentation, Release 1.0
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::IsLevelUpButtonClickable
int **CScreenCharacter\:\:IsLevelUpButtonClickable**\();
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::IsNameOnExportList
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::IsReformPartyButtonClickable
1724 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::LevelUp
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::MakeDualClass
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1725
EEex Documentation, Release 1.0
CScreenCharacter::OnAppearanceButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnCancelButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnCharacterItemSelect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1726 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::OnCusomizeBiographyButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnCustomizeButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnDoneButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1727
EEex Documentation, Release 1.0
CScreenCharacter::OnDualClassButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnErrorButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnEvent
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1728 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::OnExportButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnHairSkinButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnKeyDown
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1729
EEex Documentation, Release 1.0
CScreenCharacter::OnLButtonDblClk
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnLButtonDown
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnLButtonUp
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1730 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::OnLevelUpButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnMouseMove
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnPlayButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1731
EEex Documentation, Release 1.0
CScreenCharacter::OnPortraitLClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnRButtonDown
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnRButtonUp
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1732 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::OnReformPartyButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnRestButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnScriptButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1733
EEex Documentation, Release 1.0
CScreenCharacter::OnScriptItemSelect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnSoundItemSelect
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::OnSoundsButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1734 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::RecallAppearance
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::RecallHairSkin
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::RecallScript
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1735
EEex Documentation, Release 1.0
CScreenCharacter::RecallSounds
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::RefreshScripts
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::RemoveAbilities
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1736 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::ResumeSpellPicking
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::SetSmartScriptLocal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::SetSystemKeyCapsLock
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1737
EEex Documentation, Release 1.0
CScreenCharacter::SetSystemKeyCtrl
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::SetSystemKeyShift
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::SetTempSmartScriptLocal
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1738 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::StoreAppearance
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::StoreScript
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::TimerAsynchronousUpdate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.98. CScreenCharacter Class 1739
EEex Documentation, Release 1.0
CScreenCharacter::TimerSynchronousUpdate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::UpdateCharacterList
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenCharacter::UpdateCharacterStatus
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1740 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCharacter::UpdateMainPanel
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.99 CScreenConnection Class
• Overview
• Quick Reference
• Constructors
• Methods
6.99.1 Overview
Note: The CScreenConnection class handles connection to multiplayer games
The structure used for this class is CScreenConnection
6.99.2 Quick Reference
Quick Refvoid CScreenConnection::CScreenConnection()void CScreenConnection::AutoSelectServiceProvider()void CScreenConnection::AutoStartConnect()void CScreenConnection::AutoStartHost()int CScreenConnection::AutoStartInitialize()void CScreenConnection::CancelJoinGame()virtual int CScreenConnection::CheckMouseLButton()virtual int CScreenConnection::CheckMouseMove()virtual int CScreenConnection::CheckMouseRButton()
Continued on next page
6.99. CScreenConnection Class 1741
EEex Documentation, Release 1.0
Table 41 – continued from previous pagevirtual int CScreenConnection::CheckSystemKeyCapsLock()virtual int CScreenConnection::CheckSystemKeyCtrl()virtual int CScreenConnection::CheckSystemKeyShift()void CScreenConnection::ClearSessions()virtual void CScreenConnection::EngineActivated()virtual void CScreenConnection::EngineDeactivated()virtual void CScreenConnection::EngineDestroyed()virtual void CScreenConnection::EngineGameInit()virtual void CScreenConnection::EngineGameUninit()virtual void CScreenConnection::EngineInitialized()CString CScreenConnection::GenerateSessionDescription()virtual int CScreenConnection::GetCapsLockKey()virtual short CScreenConnection::GetNumVirtualKeys()virtual int CScreenConnection::GetShiftKey()virtual CKeyInfo* CScreenConnection::GetVirtualKeys()virtual int* CScreenConnection::GetVirtualKeysFlags()void CScreenConnection::HandleEMEvent(unsigned char nEvent, unsigned char nEventStage)void CScreenConnection::HandleJoinCompletion(unsigned char nEvent)int CScreenConnection::HasServiceProvider()void CScreenConnection::InitializeSessionData()int CScreenConnection::IsValidAddress(const char* sAddress)void CScreenConnection::JoinGame()void CScreenConnection::JoinGameIPAddress(char* addr)void CScreenConnection::OnDoneButtonClick()void CScreenConnection::OnJoinGameButtonClick()virtual void CScreenConnection::OnKeyDown(int nKeysFlags)void CScreenConnection::OnLoadGameButtonClick()virtual void CScreenConnection::OnLButtonDblClk(CPoint cPoint)virtual void CScreenConnection::OnLButtonDown(CPoint cPoint)void CScreenConnection::OnMainCancelButtonClick()virtual void CScreenConnection::OnMouseMove(CPoint cPoint)void CScreenConnection::OnNewGameButtonClick()virtual void CScreenConnection::OnRButtonDown(CPoint cPoint)virtual void CScreenConnection::OnLButtonUp(CPoint cPoint)virtual void CScreenConnection::OnRButtonUp(CPoint cPoint)void CScreenConnection::SelectServiceProvider(int protocol)void CScreenConnection::SetEliminateInitialize(unsigned char bValue)void CScreenConnection::SetPlayerName(char* name)void CScreenConnection::SetSessionDefaultStrings(CString& sSessionName, CString& sSessionPassword, CString& sPlayerName, int bCreating)virtual void CScreenConnection::SetSystemKeyCapsLock(int bValue)virtual void CScreenConnection::SetSystemKeyCtrl(unsigned char bValue)virtual void CScreenConnection::SetSystemKeyShift(int bValue)void CScreenConnection::ShowSessionTerminatedMessage(bool showTerminated)void CScreenConnection::StartConnection(unsigned char bDirectPlayLobby)void CScreenConnection::StopConnectingToProvider()virtual void CScreenConnection::TimerAsynchronousUpdate()virtual void CScreenConnection::TimerSynchronousUpdate()void CScreenConnection::UpdateLuaTables()
1742 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.99.3 Constructors
Name DescriptionCScreenConnection::CScreenConnection Constructs a CScreenConnection object
CScreenConnection::CScreenConnection
Constructs a CScreenConnection object
void CScreenConnection::CScreenConnection();
Remarks
Constructs a CScreenConnection object
6.99.4 Methods
Name DescriptionCScreenConnection::AutoSelectServiceProviderCScreenConnection::AutoStartConnectCScreenConnection::AutoStartHostCScreenConnection::AutoStartInitializeCScreenConnection::CancelJoinGameCScreenConnection::CheckMouseLButtonCScreenConnection::CheckMouseMoveCScreenConnection::CheckMouseRButtonCScreenConnection::CheckSystemKeyCapsLockCScreenConnection::CheckSystemKeyCtrlCScreenConnection::CheckSystemKeyShiftCScreenConnection::ClearSessionsCScreenConnection::EngineActivatedCScreenConnection::EngineDeactivatedCScreenConnection::EngineDestroyedCScreenConnection::EngineGameInitCScreenConnection::EngineGameUninitCScreenConnection::EngineInitializedCScreenConnection::GenerateSessionDescriptionCScreenConnection::GetCapsLockKeyCScreenConnection::GetNumVirtualKeysCScreenConnection::GetShiftKeyCScreenConnection::GetVirtualKeysCScreenConnection::GetVirtualKeysFlagsCScreenConnection::HandleEMEventCScreenConnection::HandleJoinCompletionCScreenConnection::HasServiceProviderCScreenConnection::InitializeSessionDataCScreenConnection::IsValidAddressCScreenConnection::JoinGame
Continued on next page
6.99. CScreenConnection Class 1743
EEex Documentation, Release 1.0
Table 42 – continued from previous pageCScreenConnection::JoinGameIPAddressCScreenConnection::OnDoneButtonClickCScreenConnection::OnJoinGameButtonClickCScreenConnection::OnKeyDownCScreenConnection::OnLoadGameButtonClickCScreenConnection::OnLButtonDblClkCScreenConnection::OnLButtonDownCScreenConnection::OnMainCancelButtonClickCScreenConnection::OnMouseMoveCScreenConnection::OnNewGameButtonClickCScreenConnection::OnRButtonDownCScreenConnection::OnLButtonUpCScreenConnection::OnRButtonUpCScreenConnection::SelectServiceProviderCScreenConnection::SetEliminateInitializeCScreenConnection::SetPlayerNameCScreenConnection::SetSessionDefaultStringsCScreenConnection::SetSystemKeyCapsLockCScreenConnection::SetSystemKeyCtrlCScreenConnection::SetSystemKeyShiftCScreenConnection::ShowSessionTerminatedMessageCScreenConnection::StartConnectionCScreenConnection::StopConnectingToProviderCScreenConnection::TimerAsynchronousUpdateCScreenConnection::TimerSynchronousUpdateCScreenConnection::UpdateLuaTables
CScreenConnection::AutoSelectServiceProvider
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::AutoStartConnect
x;
1744 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::AutoStartHost
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::AutoStartInitialize
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.99. CScreenConnection Class 1745
EEex Documentation, Release 1.0
CScreenConnection::CancelJoinGame
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::CheckMouseLButton
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::CheckMouseMove
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1746 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenConnection::CheckMouseRButton
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::CheckSystemKeyCapsLock
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::CheckSystemKeyCtrl
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.99. CScreenConnection Class 1747
EEex Documentation, Release 1.0
CScreenConnection::CheckSystemKeyShift
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::ClearSessions
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::EngineActivated
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1748 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenConnection::EngineDeactivated
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::EngineDestroyed
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::EngineGameInit
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.99. CScreenConnection Class 1749
EEex Documentation, Release 1.0
CScreenConnection::EngineGameUninit
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::EngineInitialized
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::GenerateSessionDescription
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1750 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenConnection::GetCapsLockKey
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::GetNumVirtualKeys
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::GetShiftKey
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.99. CScreenConnection Class 1751
EEex Documentation, Release 1.0
CScreenConnection::GetVirtualKeys
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::GetVirtualKeysFlags
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::HandleEMEvent
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1752 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenConnection::HandleJoinCompletion
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::HasServiceProvider
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::InitializeSessionData
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.99. CScreenConnection Class 1753
EEex Documentation, Release 1.0
CScreenConnection::IsValidAddress
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::JoinGame
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::JoinGameIPAddress
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1754 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenConnection::OnDoneButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::OnJoinGameButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::OnKeyDown
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.99. CScreenConnection Class 1755
EEex Documentation, Release 1.0
CScreenConnection::OnLoadGameButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::OnLButtonDblClk
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::OnLButtonDown
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1756 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenConnection::OnMainCancelButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::OnMouseMove
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::OnNewGameButtonClick
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.99. CScreenConnection Class 1757
EEex Documentation, Release 1.0
CScreenConnection::OnRButtonDown
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::OnLButtonUp
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::OnRButtonUp
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1758 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenConnection::SelectServiceProvider
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::SetEliminateInitialize
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::SetPlayerName
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.99. CScreenConnection Class 1759
EEex Documentation, Release 1.0
CScreenConnection::SetSessionDefaultStrings
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::SetSystemKeyCapsLock
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::SetSystemKeyCtrl
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1760 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenConnection::SetSystemKeyShift
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::ShowSessionTerminatedMessage
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::StartConnection
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.99. CScreenConnection Class 1761
EEex Documentation, Release 1.0
CScreenConnection::StopConnectingToProvider
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::TimerAsynchronousUpdate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
CScreenConnection::TimerSynchronousUpdate
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1762 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenConnection::UpdateLuaTables
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
6.100 CScreenCreateChar Class
• Overview
• Quick Reference
• Constructors
• Methods
6.100.1 Overview
Note: The CScreenCreateChar class handles character generation
The structure used for this class is CScreenCreateChar
6.100.2 Quick Reference
Quick Refvoid CScreenCreateChar::CScreenCreateChar()virtual void CScreenCreateChar::~CScreenCreateChar()int CScreenCreateChar::AbilityCountInEffectList(CGameSprite* pSprite, CString& sAbility)int CScreenCreateChar::AbilityExistsInEffectList(CGameSprite* pSprite, CString& sPrereq)void CScreenCreateChar::AcceptCharacter(int selectedDifficulty)void CScreenCreateChar::AddChosenSpellsToKnown(CGameSprite* pSprite)bool CScreenCreateChar::CanSpendProficiencySlots()void CScreenCreateChar::CancelCreateChar()virtual void CScreenCreateChar::CancelEngine()
Continued on next page
6.100. CScreenCreateChar Class 1763
EEex Documentation, Release 1.0
Table 43 – continued from previous pagevoid CScreenCreateChar::CancelLevelUp()void CScreenCreateChar::CancelMemorizeSpells()int CScreenCreateChar::CheckAbilityEnabled(CGameSprite* pSprite, CAbilityData* pAbility)int CScreenCreateChar::CheckCompatibleEquipment(unsigned char nClass, unsigned char nActiveClass, unsigned char nInactiveClass, int bInactiveUsable, unsigned long baseFlags, unsigned long nSpecialist)int CScreenCreateChar::CheckCompatibleSlot(int nSlot, unsigned char nClass, unsigned char nActiveClass, unsigned char nInactiveClass, int bInactiveUsable, unsigned long baseFlags, unsigned long nSpecialist)void CScreenCreateChar::CheckDropEquipment()void CScreenCreateChar::CheckDropSlot(int nSlot)virtual int CScreenCreateChar::CheckMouseLButton()virtual int CScreenCreateChar::CheckMouseMove()virtual int CScreenCreateChar::CheckMouseRButton()virtual int CScreenCreateChar::CheckSystemKeyCapsLock()virtual int CScreenCreateChar::CheckSystemKeyCtrl()virtual int CScreenCreateChar::CheckSystemKeyShift()void CScreenCreateChar::CompleteCharacterAbilities(CGameSprite* pSprite)void CScreenCreateChar::CompleteCharacterClass(CGameSprite* pSprite)void CScreenCreateChar::CompleteCharacterHighLevelAbilities(CGameSprite* pSprite)void CScreenCreateChar::CompleteCharacterInitialise(CGameSprite* pSprite)void CScreenCreateChar::CompleteCharacterSkills(CGameSprite* pSprite)void CScreenCreateChar::CompleteCharacterSounds(CGameSprite* pSprite)void CScreenCreateChar::CompleteCharacterWrapup(CGameSprite* pSprite)int CScreenCreateChar::CountInSelectedList(CString& sAbility)void CScreenCreateChar::DecCurrentPortrait(CGameSprite* pSprite)void CScreenCreateChar::DeleteCharacter()virtual void CScreenCreateChar::EngineActivated()virtual void CScreenCreateChar::EngineDeactivated()virtual void CScreenCreateChar::EngineDestroyed()virtual void CScreenCreateChar::EngineGameInit()virtual void CScreenCreateChar::EngineGameUninit()virtual void CScreenCreateChar::EngineInitialized()int CScreenCreateChar::ExistsInSelectedList(CString& sAbility)virtual int CScreenCreateChar::GetCapsLockKey()int CScreenCreateChar::GetCharacterVersion(CAIObjectType* TypeAI, CDerivedStats* pDStats, CRuleTables& cRule)virtual int CScreenCreateChar::GetCtrlKey()CString CScreenCreateChar::GetCurrentPortrait(CGameSprite* pSprite, char size)virtual void __cdecl CScreenCreateChar::GetCurrentPortraitCallback(void* batton) = 0int CScreenCreateChar::GetDualClassCount()virtual int CScreenCreateChar::GetEngineState()void CScreenCreateChar::GetImportableCharacters()virtual short CScreenCreateChar::GetNumVirtualKeys()virtual int CScreenCreateChar::GetShiftKey()int CScreenCreateChar::GetSpecialistBonusSpells(int level, CGameSprite* pSprite)int CScreenCreateChar::GetStoredSkill(unsigned char index)virtual CKeyInfo* CScreenCreateChar::GetVirtualKeys()virtual int* CScreenCreateChar::GetVirtualKeysFlags()void CScreenCreateChar::ImportCharacter(CString& sCharacter)void CScreenCreateChar::ImportGame(CString& sFileName)void CScreenCreateChar::ImportParty()void CScreenCreateChar::IncCurrentPortrait(CGameSprite* pSprite)void CScreenCreateChar::IncCustomSoundIndex()int CScreenCreateChar::IsAbilityRecallButtonClickable()
Continued on next page
1764 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 43 – continued from previous pageint CScreenCreateChar::IsAdvancedButtonClickable()bool CScreenCreateChar::IsChargenComplete()int CScreenCreateChar::IsClearMemoryAbilities()int CScreenCreateChar::IsDoneButtonClickable(CGameSprite* pSprite)int CScreenCreateChar::IsHighLevelAbilitiesButtonClickable()bool CScreenCreateChar::IsMainBackButtonClickable()int CScreenCreateChar::IsThiefSkillPlusMinusButtonClickable()void CScreenCreateChar::LevelUp(CGameSprite* pSprite)int CScreenCreateChar::MageSchoolSpellsAvailable(unsigned char nSpellLevel, CGameSprite* pSprite)void CScreenCreateChar::MakeDualClass(CGameSprite* pSprite, unsigned char nNewClass)void CScreenCreateChar::MakeSingleClass(CGameSprite* pSprite)void CScreenCreateChar::OnAbilityPlusMinusButtonClick(int stat, bool plus)void CScreenCreateChar::OnAbilityReRollButtonClick()void CScreenCreateChar::OnAbilityRecallButtonClick()void CScreenCreateChar::OnAbilityStoreButtonClick()void CScreenCreateChar::OnAdvancedButtonClick()void CScreenCreateChar::OnAlignmentSelectButtonClick(int alignment)void CScreenCreateChar::OnBiographyButtonClick()void CScreenCreateChar::OnCancelButtonClick()void CScreenCreateChar::OnCharacterExportItemSelect(int nMarker)void CScreenCreateChar::OnCharacterImportItemSelect(int nMarker)void CScreenCreateChar::OnCheatyMcCheaterson()void CScreenCreateChar::OnClassSelectButtonClick(int classId)void CScreenCreateChar::OnDoneButtonClick()virtual void __cdecl CScreenCreateChar::OnDoneButtonClickCallback(void* batton) = 0void CScreenCreateChar::OnGenderSelectButtonClick(int value)void CScreenCreateChar::OnHLAButtonClick(int HLA, int change)void CScreenCreateChar::OnHighLevelAbilitiesButtonClick()void CScreenCreateChar::OnImportCharacterButtonClick()void CScreenCreateChar::OnImportCharacterFileButtonClick()void CScreenCreateChar::OnImportSaveButtonClick()virtual void CScreenCreateChar::OnKeyDown(int nKeysFlags)void CScreenCreateChar::OnKitSelectButtonClick(int kitId)virtual void CScreenCreateChar::OnLButtonDblClk(CPoint cPoint)virtual void CScreenCreateChar::OnLButtonDown(CPoint cPoint)virtual void CScreenCreateChar::OnLButtonUp(CPoint cPoint)void CScreenCreateChar::OnLearnMageSpellButtonClick(int spell)void CScreenCreateChar::OnLevelUp(CGameSprite* pSprite, unsigned long nExperience)void CScreenCreateChar::OnMainBackButtonClick()void CScreenCreateChar::OnMainCancelButtonClick()void CScreenCreateChar::OnMemorizeMageSpellButtonClick(int spell, int amount)void CScreenCreateChar::OnMemorizePriestSpellButtonClick(int spell, int amount)void CScreenCreateChar::OnMenuButtonClick()virtual void CScreenCreateChar::OnMouseMove(CPoint cPoint)void CScreenCreateChar::OnPlayButtonClick()void CScreenCreateChar::OnPrerollCancelButtonClick()void CScreenCreateChar::OnPrerollCharacterPick(int nId)void CScreenCreateChar::OnProficiencyPlusMinusButtonClick(int id, bool plus)void CScreenCreateChar::OnRaceSelectButtonClick(int raceId)void CScreenCreateChar::OnRacialEnemySelectButtonClick(int enemy)
Continued on next page
6.100. CScreenCreateChar Class 1765
EEex Documentation, Release 1.0
Table 43 – continued from previous pagevirtual void CScreenCreateChar::OnRButtonDown(CPoint cPoint)virtual void CScreenCreateChar::OnRButtonUp(CPoint cPoint)void CScreenCreateChar::OnResetSkills(CGameSprite* pSprite)void CScreenCreateChar::OnSoundItemSelect(int nIndex)void CScreenCreateChar::OnThiefSkillPlusMinusButtonClick(int thiefSkillId, bool plus)void CScreenCreateChar::RecallMemoryAbilities(unsigned char& nSTR, unsigned char& nSTRExtra, unsigned char& nDEX, unsigned char& nCON, unsigned char& nINT, unsigned char& nWIS, unsigned char& nCHR, int& nExtra)void CScreenCreateChar::RemoveAbilities(CGameSprite* pSprite, int nNewClass, int bRemoveInnates)void CScreenCreateChar::RemoveItems(CGameSprite* pSprite)void CScreenCreateChar::RemoveSelectedAbility(unsigned char nButtonIndex)void CScreenCreateChar::ResetAbilities(CGameSprite* pSprite, int bForced)void CScreenCreateChar::ResetAbilitiesPanel(CGameSprite* pSprite)int CScreenCreateChar::ResetAbility(CGameSprite* pSprite, CString& sMin, CString& sMax, CString& sMod, unsigned char& nAbility, unsigned char& nMin, unsigned char& nMax)void CScreenCreateChar::ResetAlignmentPanel(CGameSprite* pSprite)void CScreenCreateChar::ResetBiographyPanel(CGameSprite* pSprite)void CScreenCreateChar::ResetChooseMagePanel(CGameSprite* pSprite)void CScreenCreateChar::ResetClassPanel(CGameSprite* pSprite)void CScreenCreateChar::ResetCustomSoundsPanel(CGameSprite* pSprite)void CScreenCreateChar::ResetDualClassChooseMagePanel(CGameSprite* pSprite)void CScreenCreateChar::ResetDualClassProficienciesPanel(CGameSprite* pSprite)void CScreenCreateChar::ResetExportPanel(CGameSprite* pSprite)void CScreenCreateChar::ResetGenderPanel(CGameSprite* pSprite)void CScreenCreateChar::ResetHatedRacePanel(CGameSprite* pSprite)void CScreenCreateChar::ResetImportPanel(CGameSprite* pSprite)void CScreenCreateChar::ResetLevelUpPanel(CGameSprite* pSprite)void CScreenCreateChar::ResetMemorizeMagePanel(CGameSprite* pSprite)void CScreenCreateChar::ResetMemorizePriestPanel(CGameSprite* pSprite)void CScreenCreateChar::ResetNamePanel(CGameSprite* pSprite)void CScreenCreateChar::ResetPrerollPanel()void CScreenCreateChar::ResetProficienciesPanel(CGameSprite* pSprite)void CScreenCreateChar::ResetRacePanel(CGameSprite* pSprite)void CScreenCreateChar::ResetSpellTables(CGameSprite* pSprite)void CScreenCreateChar::SetAbilityHelpInfo(int stat)virtual void CScreenCreateChar::SetSystemKeyCapsLock(int bValue)virtual void CScreenCreateChar::SetSystemKeyCtrl(unsigned char bValue)virtual void CScreenCreateChar::SetSystemKeyShift(int bValue)void CScreenCreateChar::ShowNextSpellScreen(CGameSprite* pSprite)void CScreenCreateChar::ShowPortraitPanel()void CScreenCreateChar::StartCreateChar(int nCharacterSlot, int nEngineState)void CScreenCreateChar::StartEditing(int nSprite, CScreenCreateCharStep nStep)void CScreenCreateChar::StopCreateChar()virtual void CScreenCreateChar::TimerAsynchronousUpdate()virtual void CScreenCreateChar::TimerSynchronousUpdate()void CScreenCreateChar::UpdateAbilitiesPanel(CGameSprite* pSprite)void CScreenCreateChar::UpdateAlignmentPanel(CGameSprite* pSprite)void CScreenCreateChar::UpdateCharacterList(CString luaVar)void CScreenCreateChar::UpdateChooseDualClassPanel(CGameSprite* pSprite)void CScreenCreateChar::UpdateChooseMagePanel(CGameSprite* pSprite)char* CScreenCreateChar::UpdateClass(CGameSprite* pSprite)char* CScreenCreateChar::UpdateClassEntry(CAIObjectType& TypeAI, CDerivedStats& DStats, unsigned long nSpecialist, unsigned char nActiveClass, unsigned char nInactiveClass, unsigned char nSubClass, unsigned long dwFlags)void CScreenCreateChar::UpdateClassPanel(CGameSprite* pSprite)
Continued on next page
1766 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 43 – continued from previous pagevoid CScreenCreateChar::UpdateHatedRacePanel(CGameSprite* pSprite)void CScreenCreateChar::UpdateHighLevelAbilitiesPanel(CGameSprite* pSprite)void CScreenCreateChar::UpdateKitPanel(CGameSprite* pSprite)void CScreenCreateChar::UpdateMainPanel(CGameSprite* pSprite)void CScreenCreateChar::UpdateMemorizeMagePanel(CGameSprite* pSprite)void CScreenCreateChar::UpdateMemorizePriestPanel(CGameSprite* pSprite)void CScreenCreateChar::UpdateNamePanel(CGameSprite* pSprite)void CScreenCreateChar::UpdateProficienciesPanel(CGameSprite* pSprite)void CScreenCreateChar::UpdateRacePanel(CGameSprite* pSprite)
6.100.3 Constructors
Name DescriptionCScreenCreateChar::CScreenCreateChar Constructs a CScreenCreateChar objectCScreenCreateChar::~CScreenCreateChar Destroys a CScreenCreateChar object
CScreenCreateChar::CScreenCreateChar
Constructs a CScreenCreateChar object
void CScreenCreateChar::CScreenCreateChar();
Remarks
Constructs a CScreenCreateChar object
CScreenCreateChar::~CScreenCreateChar
Destroys the CScreenCreateChar object
virtual void CScreenCreateChar::~CScreenCreateChar();
Remarks
Destroys the CScreenCreateChar object
6.100.4 Methods
Name DescriptionCScreenCreateChar::AbilityCountInEffectListCScreenCreateChar::AbilityExistsInEffectListCScreenCreateChar::AcceptCharacterCScreenCreateChar::AddChosenSpellsToKnown
Continued on next page
6.100. CScreenCreateChar Class 1767
EEex Documentation, Release 1.0
Table 44 – continued from previous pageCScreenCreateChar::CanSpendProficiencySlots Determines if character has skill points available to spend on proficienciesCScreenCreateChar::CancelCreateChar Cancels character creation processCScreenCreateChar::CancelEngine Cancel engineCScreenCreateChar::CancelLevelUp Cancel level upCScreenCreateChar::CancelMemorizeSpells Cancel memorized spellsCScreenCreateChar::CheckAbilityEnabled Determines if an ability is enabledCScreenCreateChar::CheckCompatibleEquipment Determines if equiptment is compatable with character class, sub-class or kitCScreenCreateChar::CheckCompatibleSlotCScreenCreateChar::CheckDropEquipmentCScreenCreateChar::CheckDropSlotCScreenCreateChar::CheckMouseLButtonCScreenCreateChar::CheckMouseMoveCScreenCreateChar::CheckMouseRButtonCScreenCreateChar::CheckSystemKeyCapsLock Determines if caps lock key is enabledCScreenCreateChar::CheckSystemKeyCtrl Determines if control key is enabled (pressed)CScreenCreateChar::CheckSystemKeyShift Determines if shift key is enabled (pressed)CScreenCreateChar::CompleteCharacterAbilities Complete the character abilities part of the character creationCScreenCreateChar::CompleteCharacterClass Complete the character class part of the character creationCScreenCreateChar::CompleteCharacterHighLevelAbilities Complete the character high level abilities (HLA) part of the character creationCScreenCreateChar::CompleteCharacterInitialise Initialize the complete character creation processCScreenCreateChar::CompleteCharacterSkills Complete the character skills part of the character creationCScreenCreateChar::CompleteCharacterSounds Complete the character sound set (voice) part of the character creationCScreenCreateChar::CompleteCharacterWrapupCScreenCreateChar::CountInSelectedListCScreenCreateChar::DecCurrentPortrait Decrement the current portrait selection for the characterCScreenCreateChar::DeleteCharacter Delete characterCScreenCreateChar::EngineActivated Character creation engine activatedCScreenCreateChar::EngineDeactivated Character creation engine deactivatedCScreenCreateChar::EngineDestroyed Character creation engine destroyedCScreenCreateChar::EngineGameInit Character creation engine initializationCScreenCreateChar::EngineGameUninit Character creation engine un-initializationCScreenCreateChar::EngineInitialized Character creation engine initializedCScreenCreateChar::ExistsInSelectedList Determines if a specified ability exists in a selected listCScreenCreateChar::GetCapsLockKey Determines if caps lock key is enabledCScreenCreateChar::GetCharacterVersion Gets character versionCScreenCreateChar::GetCtrlKey Determines if control key is enabled (pressed)CScreenCreateChar::GetCurrentPortrait Returns the current portrait set for the specified characterCScreenCreateChar::GetCurrentPortraitCallback Callback for current portraitCScreenCreateChar::GetDualClassCount Get dual class countCScreenCreateChar::GetEngineState Get the character creation engine stateCScreenCreateChar::GetImportableCharactersCScreenCreateChar::GetNumVirtualKeysCScreenCreateChar::GetShiftKey Determines if shift key is enabled (pressed)CScreenCreateChar::GetSpecialistBonusSpells Returns count of bonus spells available for a specialise mage for specified levelCScreenCreateChar::GetStoredSkill Returns stored skill valueCScreenCreateChar::GetVirtualKeys Return keyCode and other information for current keypressCScreenCreateChar::GetVirtualKeysFlagsCScreenCreateChar::ImportCharacter Import a previously saved character into character creationCScreenCreateChar::ImportGame Import a previously saved game for importing of a character in the saved gameCScreenCreateChar::ImportParty Import a party of characters
Continued on next page
1768 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 44 – continued from previous pageCScreenCreateChar::IncCurrentPortrait Increment the current portrait selection for the characterCScreenCreateChar::IncCustomSoundIndexCScreenCreateChar::IsAbilityRecallButtonClickable Determines if ability recall button can be clickedCScreenCreateChar::IsAdvancedButtonClickable Determines if advanced button can be clickedCScreenCreateChar::IsChargenComplete Determines if character creation is completeCScreenCreateChar::IsClearMemoryAbilitiesCScreenCreateChar::IsDoneButtonClickable Determines if done button can be clickedCScreenCreateChar::IsHighLevelAbilitiesButtonClickable Determines if high level abilities (HLA) button can be clickedCScreenCreateChar::IsMainBackButtonClickable Determines if main screen’s back button can be clickedCScreenCreateChar::IsThiefSkillPlusMinusButtonClickable Determines if thieving skills plus (+) or (-) button can be clickedCScreenCreateChar::LevelUp Level up character during character creationCScreenCreateChar::MageSchoolSpellsAvailable Determines if mage spells from a specified level are available to characterCScreenCreateChar::MakeDualClass Changes a character from single class to dual classCScreenCreateChar::MakeSingleClass Changes a character from dual class to single classCScreenCreateChar::OnAbilityPlusMinusButtonClick Event action for when ability plus (+) or minus (-) buttons are clickedCScreenCreateChar::OnAbilityReRollButtonClick Event action for when re-roll ability scores button is clickedCScreenCreateChar::OnAbilityRecallButtonClick Event action for when recall previously stored ability scores button is clickedCScreenCreateChar::OnAbilityStoreButtonClick Event action for when store ability scores button is clickedCScreenCreateChar::OnAdvancedButtonClick Event action for when advanced button is clickedCScreenCreateChar::OnAlignmentSelectButtonClick Event action for when an alignment button is clickedCScreenCreateChar::OnBiographyButtonClick Event action for when biography button is clickedCScreenCreateChar::OnCancelButtonClick Event action for when cancel button is clickedCScreenCreateChar::OnCharacterExportItemSelect Event action for when export of character item button is clickedCScreenCreateChar::OnCharacterImportItemSelect Event action for when import of character item button is clickedCScreenCreateChar::OnCheatyMcCheaterson Event action for when cheating on ability score rollsCScreenCreateChar::OnClassSelectButtonClick Event action for when character class button is clickedCScreenCreateChar::OnDoneButtonClick Event action for when finishing character creation and done button is clickedCScreenCreateChar::OnDoneButtonClickCallback Callback for when finishing character creation and done button is clickedCScreenCreateChar::OnGenderSelectButtonClick Event action for when a gender selection button is clickedCScreenCreateChar::OnHLAButtonClick Event action for when a specific high level ability (HLA) button is clickedCScreenCreateChar::OnHighLevelAbilitiesButtonClick Event action for when high level abilities (HLA) button is clickedCScreenCreateChar::OnImportCharacterButtonClick Event action for when import of a previously generated character button is clickedCScreenCreateChar::OnImportCharacterFileButtonClick Event action for when selecting a character filename for importingCScreenCreateChar::OnImportSaveButtonClick Event action for when import save button is clickedCScreenCreateChar::OnKeyDown Key press event for when a key has been pressed (down)CScreenCreateChar::OnKitSelectButtonClick Event action for when class kit button is clickedCScreenCreateChar::OnLButtonDblClk Mouse button event for when the left mouse has been double clickedCScreenCreateChar::OnLButtonDown Mouse button event for when the left mouse has been clicked (down)CScreenCreateChar::OnLButtonUp Mouse button event for when the left mouse has been released (up)CScreenCreateChar::OnLearnMageSpellButtonClick Event action for when learn mage spell button is clickedCScreenCreateChar::OnLevelUp Event action for when level up button is clickedCScreenCreateChar::OnMainBackButtonClick Event action for when the main screen’s back button is clickedCScreenCreateChar::OnMainCancelButtonClick Event action for when the main screen’s cancel button is clickedCScreenCreateChar::OnMemorizeMageSpellButtonClick Event action for when a mage spell to memorize button is clickedCScreenCreateChar::OnMemorizePriestSpellButtonClick Event action for when a priest spell to memorize button is clickedCScreenCreateChar::OnMenuButtonClick Event action for when a menu button is clickedCScreenCreateChar::OnMouseMove Event action for when the mouse movesCScreenCreateChar::OnPlayButtonClick Event action for when play button is clickedCScreenCreateChar::OnPrerollCancelButtonClick Event action for when cancel preroll button is clickedCScreenCreateChar::OnPrerollCharacterPick Event action for when clicking on a pregenerated character
Continued on next page
6.100. CScreenCreateChar Class 1769
EEex Documentation, Release 1.0
Table 44 – continued from previous pageCScreenCreateChar::OnProficiencyPlusMinusButtonClick Event action for when proficiency plus (+) or minus (-) buttons are clickedCScreenCreateChar::OnRaceSelectButtonClick Event action for when a race button is clickedCScreenCreateChar::OnRacialEnemySelectButtonClick Event action for when a racial enemy button is clickedCScreenCreateChar::OnRButtonDown Mouse button event for when the right mouse has been clicked (down)CScreenCreateChar::OnRButtonUp Mouse button event for when the right mouse has been released (up)CScreenCreateChar::OnResetSkills Event action for when a reset skills button is clickedCScreenCreateChar::OnSoundItemSelect Event action for when a sound set button is selectedCScreenCreateChar::OnThiefSkillPlusMinusButtonClick Event action for when thieving skills plus (+) or minus (-) buttons are clickedCScreenCreateChar::RecallMemoryAbilities Recall previously stored ability scoresCScreenCreateChar::RemoveAbilities Remove abilities from characterCScreenCreateChar::RemoveItems Remove items from characterCScreenCreateChar::RemoveSelectedAbility Remove specific selected ability from characterCScreenCreateChar::ResetAbilities Reset character abilitiesCScreenCreateChar::ResetAbilitiesPanel Reset character ability scores panelCScreenCreateChar::ResetAbility Reset a specific ability score of a characterCScreenCreateChar::ResetAlignmentPanel Reset alignment selection panelCScreenCreateChar::ResetBiographyPanel Reset biography panelCScreenCreateChar::ResetChooseMagePanel Reset mage specialist selection panelCScreenCreateChar::ResetClassPanel Reset class selection panelCScreenCreateChar::ResetCustomSoundsPanel Reset custom sound set selection panelCScreenCreateChar::ResetDualClassChooseMagePanel Reset dual classing with mage panelCScreenCreateChar::ResetDualClassProficienciesPanel Reset dual class proficiencies panelCScreenCreateChar::ResetExportPanel Reset export character panelCScreenCreateChar::ResetGenderPanel Reset gender selection panelCScreenCreateChar::ResetHatedRacePanel Reset racial enemy panelCScreenCreateChar::ResetImportPanel Reset import character panelCScreenCreateChar::ResetLevelUpPanel Reset level up panelCScreenCreateChar::ResetMemorizeMagePanel Reset memorized mage spells panelCScreenCreateChar::ResetMemorizePriestPanel Reset memorized priest spells panelCScreenCreateChar::ResetNamePanel Reset character name panelCScreenCreateChar::ResetPrerollPanel Reset preroll panelCScreenCreateChar::ResetProficienciesPanel Reset proficiencies panelCScreenCreateChar::ResetRacePanel Reset race selection panelCScreenCreateChar::ResetSpellTables Reset spell tablesCScreenCreateChar::SetAbilityHelpInfo Set tokens for ability score informationCScreenCreateChar::SetSystemKeyCapsLock Set caps lock key on or offCScreenCreateChar::SetSystemKeyCtrl Set control key on or offCScreenCreateChar::SetSystemKeyShift Set shift key on or offCScreenCreateChar::ShowNextSpellScreen Show next spell screenCScreenCreateChar::ShowPortraitPanel Show portrait panelCScreenCreateChar::StartCreateChar Start the charaction creation processCScreenCreateChar::StartEditingCScreenCreateChar::StopCreateChar Stop the charaction creation processCScreenCreateChar::TimerAsynchronousUpdate Update timer asynchronouslyCScreenCreateChar::TimerSynchronousUpdate Update timer synchronouslyCScreenCreateChar::UpdateAbilitiesPanel Update ability scores panelCScreenCreateChar::UpdateAlignmentPanel Update alignment selection panelCScreenCreateChar::UpdateCharacterList Update character list selection panelCScreenCreateChar::UpdateChooseDualClassPanel Update dual class selection panelCScreenCreateChar::UpdateChooseMagePanel Update mage specialist selection panel
Continued on next page
1770 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 44 – continued from previous pageCScreenCreateChar::UpdateClass Update class selectionCScreenCreateChar::UpdateClassEntry Update class entry (sub-class) selectionCScreenCreateChar::UpdateClassPanel Update class selection panelCScreenCreateChar::UpdateHatedRacePanel Update racial enemy selection panelCScreenCreateChar::UpdateHighLevelAbilitiesPanel Update high level abilities (HLA) panelCScreenCreateChar::UpdateKitPanel Update class kit panelCScreenCreateChar::UpdateMainPanel Update main panelCScreenCreateChar::UpdateMemorizeMagePanel Update memorized mage spells panelCScreenCreateChar::UpdateMemorizePriestPanel Update memorized priest spells panelCScreenCreateChar::UpdateNamePanel Update character name panelCScreenCreateChar::UpdateProficienciesPanel Update proficienies panelCScreenCreateChar::UpdateRacePanel Update race selection panel
CScreenCreateChar::AbilityCountInEffectList
int CScreenCreateChar::AbilityCountInEffectList(CGameSprite* pSprite,CString& sAbility);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• CString& sAbility -
Return Value
Returns int
Remarks
CScreenCreateChar::AbilityExistsInEffectList
int CScreenCreateChar::AbilityExistsInEffectList(CGameSprite* pSprite,CString& sPrereq);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• CString& sPrereq -
Return Value
Returns int
Remarks
6.100. CScreenCreateChar Class 1771
EEex Documentation, Release 1.0
CScreenCreateChar::AcceptCharacter
void CScreenCreateChar::AcceptCharacter(int selectedDifficulty);
Parameters
• int selectedDifficulty -
Remarks
CScreenCreateChar::AddChosenSpellsToKnown
void CScreenCreateChar::AddChosenSpellsToKnown(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::CanSpendProficiencySlots
Determines if character has skill points available to spend on proficiencies
bool CScreenCreateChar::CanSpendProficiencySlots();
Return Value
Returns bool - 1 true or 0 false
Remarks
CScreenCreateChar::CancelCreateChar
Cancels character creation process
void CScreenCreateChar::CancelCreateChar();
Remarks
See also CScreenCreateChar::StartCreateChar and CScreenCreateChar::StopCreateChar
CScreenCreateChar::CancelEngine
Cancel engine
virtual void CScreenCreateChar::CancelEngine();
Remarks
1772 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::CancelLevelUp
Cancel level up
void CScreenCreateChar::CancelLevelUp();
Remarks
CScreenCreateChar::CancelMemorizeSpells
Cancel memorized spells
void CScreenCreateChar::CancelMemorizeSpells();
Remarks
CScreenCreateChar::CheckAbilityEnabled
Determines if an ability is enabled
int CScreenCreateChar::CheckAbilityEnabled(CGameSprite* pSprite,CAbilityData* pAbility);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• CAbilityData* pAbility -
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::CheckCompatibleEquipment
Determines if equiptment is compatable with character class, sub-class or kit
int CScreenCreateChar::CheckCompatibleEquipment(unsigned char nClass,unsigned char nActiveClass,unsigned char nInactiveClass,int bInactiveUsable,unsigned long baseFlags,unsigned long nSpecialist);
Parameters
• unsigned char nClass -
6.100. CScreenCreateChar Class 1773
EEex Documentation, Release 1.0
• unsigned char nActiveClass -
• unsigned char nInactiveClass -
• int bInactiveUsable -
• unsigned long baseFlags -
• unsigned long nSpecialist -
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::CheckCompatibleSlot
int CScreenCreateChar::CheckCompatibleSlot(int nSlot,unsigned char nClass,unsigned char nActiveClass,unsigned char nInactiveClass,int bInactiveUsable,unsigned long baseFlags,unsigned long nSpecialist);
Parameters
• int nSlot -
• unsigned char nClass -
• unsigned char nActiveClass -
• unsigned char nInactiveClass -
• int bInactiveUsable -
• unsigned long baseFlags -
• unsigned long nSpecialist -
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::CheckDropEquipment
void CScreenCreateChar::CheckDropEquipment();
Remarks
1774 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::CheckDropSlot
void CScreenCreateChar::CheckDropSlot(int nSlot);
Parameters
• int nSlot -
Remarks
CScreenCreateChar::CheckMouseLButton
virtual int CScreenCreateChar::CheckMouseLButton();
Return Value
Returns int
Remarks
CScreenCreateChar::CheckMouseMove
virtual int CScreenCreateChar::CheckMouseMove();
Return Value
Returns int
Remarks
CScreenCreateChar::CheckMouseRButton
virtual int CScreenCreateChar::CheckMouseRButton();
Return Value
Returns int
Remarks
6.100. CScreenCreateChar Class 1775
EEex Documentation, Release 1.0
CScreenCreateChar::CheckSystemKeyCapsLock
Determines if caps lock key is enabled
virtual int CScreenCreateChar::CheckSystemKeyCapsLock();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::CheckSystemKeyCtrl
Determines if control key is enabled (pressed)
virtual int CScreenCreateChar::CheckSystemKeyCtrl();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::CheckSystemKeyShift
Determines if shift key is enabled (pressed)
virtual int CScreenCreateChar::CheckSystemKeyShift();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::CompleteCharacterAbilities
Complete the character abilities part of the character creation
void CScreenCreateChar::CompleteCharacterAbilities(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1776 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::CompleteCharacterClass
Complete the character class part of the character creation
void CScreenCreateChar::CompleteCharacterClass(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::CompleteCharacterHighLevelAbilities
Complete the character high level abilities (HLA) part of the character creation
void CScreenCreateChar::CompleteCharacterHighLevelAbilities(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::CompleteCharacterInitialise
Initialize the complete character creation process
void CScreenCreateChar::CompleteCharacterInitialise(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::CompleteCharacterSkills
Complete the character skills part of the character creation
void CScreenCreateChar::CompleteCharacterSkills(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
6.100. CScreenCreateChar Class 1777
EEex Documentation, Release 1.0
CScreenCreateChar::CompleteCharacterSounds
Complete the character sound set (voice) part of the character creation
void CScreenCreateChar::CompleteCharacterSounds(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::CompleteCharacterWrapup
void CScreenCreateChar::CompleteCharacterWrapup(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::CountInSelectedList
int CScreenCreateChar::CountInSelectedList(CString& sAbility);
Parameters
• CString& sAbility -
Return Value
Returns int
Remarks
CScreenCreateChar::DecCurrentPortrait
Decrement the current portrait selection for the character
void CScreenCreateChar::DecCurrentPortrait(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
See also CScreenCreateChar::IncCurrentPortrait
1778 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::DeleteCharacter
Delete character
void CScreenCreateChar::DeleteCharacter();
Remarks
CScreenCreateChar::EngineActivated
Character creation engine activated
virtual void CScreenCreateChar::EngineActivated();
Remarks
CScreenCreateChar::EngineDeactivated
Character creation engine deactivated
virtual void CScreenCreateChar::EngineDeactivated();
Remarks
CScreenCreateChar::EngineDestroyed
Character creation engine destroyed
virtual void CScreenCreateChar::EngineDestroyed();
Remarks
CScreenCreateChar::EngineGameInit
Character creation engine initialization
virtual void CScreenCreateChar::EngineGameInit();
Remarks
CScreenCreateChar::EngineGameUninit
Character creation engine un-initialization
6.100. CScreenCreateChar Class 1779
EEex Documentation, Release 1.0
virtual void CScreenCreateChar::EngineGameUninit();
Remarks
CScreenCreateChar::EngineInitialized
Character creation engine initialized
virtual void CScreenCreateChar::EngineInitialized();
Remarks
CScreenCreateChar::ExistsInSelectedList
Determines if a specified ability exists in a selected list
int CScreenCreateChar::ExistsInSelectedList(CString& sAbility);
Parameters
• CString& sAbility -
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::GetCapsLockKey
Determines if caps lock key is enabled
virtual int CScreenCreateChar::GetCapsLockKey();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
1780 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::GetCharacterVersion
Gets character version
int CScreenCreateChar::GetCharacterVersion(CAIObjectType* TypeAI,CDerivedStats* pDStats,CRuleTables& cRule);
Parameters
• CAIObjectType* TypeAI -
• CDerivedStats* pDStats -
• CRuleTables& cRule -
Return Value
Returns int
Remarks
CRE file format used?
CScreenCreateChar::GetCtrlKey
Determines if control key is enabled (pressed)
virtual int CScreenCreateChar::GetCtrlKey();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::GetCurrentPortrait
Returns the current portrait set for the specified character
CString CScreenCreateChar::GetCurrentPortrait(CGameSprite* pSprite,char size);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• char size - * *
Return Value
Returns a CString
Remarks
6.100. CScreenCreateChar Class 1781
EEex Documentation, Release 1.0
CScreenCreateChar::GetCurrentPortraitCallback
Callback for current portrait
virtual void __cdecl CScreenCreateChar::GetCurrentPortraitCallback(void* batton);
Parameters
• void* batton - * *
Remarks
CScreenCreateChar::GetDualClassCount
Get dual class count
int CScreenCreateChar::GetDualClassCount();
Return Value
Returns int
Remarks
CScreenCreateChar::GetEngineState
Get the character creation engine state
virtual int CScreenCreateChar::GetEngineState();
Return Value
Returns int
Remarks
CScreenCreateChar::GetImportableCharacters
void CScreenCreateChar::GetImportableCharacters();
Remarks
1782 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::GetNumVirtualKeys
Returns number of keys supported by keyboard for key event processing
virtual short CScreenCreateChar::GetNumVirtualKeys();
Return Value
Returns a short value indicating number of keys supported
Remarks
CScreenCreateChar::GetShiftKey
Determines if shift key is enabled (pressed)
virtual int CScreenCreateChar::GetShiftKey();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::GetSpecialistBonusSpells
Returns count of bonus spells available for a specialise mage for specified level
int CScreenCreateChar::GetSpecialistBonusSpells(int level,CGameSprite* pSprite);
Parameters
• int level - spell level for bonus specialist spells
• CGameSprite* pSprite - pointer to game sprite object
Return Value
Returns an int value indicating count of bonus spells
Remarks
CScreenCreateChar::GetStoredSkill
Returns stored skill value
int CScreenCreateChar::GetStoredSkill(unsigned char index);
Parameters
• unsigned char index - index of skill ability to return stored value for
6.100. CScreenCreateChar Class 1783
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CScreenCreateChar::GetVirtualKeys
Return keyCode and other information for current keypress
virtual CKeyInfo* CScreenCreateChar::GetVirtualKeys();
Return Value
Returns CKeyInfo*
Remarks
CKeyInfo contains keyCode and other keyboard information: repeatCount, repeatDelay and repeatRate
CScreenCreateChar::GetVirtualKeysFlags
virtual int* CScreenCreateChar::GetVirtualKeysFlags();
Return Value
Returns int*
Remarks
CScreenCreateChar::ImportCharacter
Import a previously saved character into character creation
void CScreenCreateChar::ImportCharacter(CString& sCharacter);
Parameters
• CString& sCharacter -
Remarks
1784 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::ImportGame
Import a previously saved game for importing of a character in the saved game
void CScreenCreateChar::ImportGame(CString& sFileName);
Parameters
• CString& sFileName -
Remarks
CScreenCreateChar::ImportParty
Import a party of characters
void CScreenCreateChar::ImportParty();
Remarks
CScreenCreateChar::IncCurrentPortrait
Increment the current portrait selection for the character
void CScreenCreateChar::IncCurrentPortrait(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
See also CScreenCreateChar::DecCurrentPortrait
CScreenCreateChar::IncCustomSoundIndex
void CScreenCreateChar::IncCustomSoundIndex();
Remarks
6.100. CScreenCreateChar Class 1785
EEex Documentation, Release 1.0
CScreenCreateChar::IsAbilityRecallButtonClickable
Determines if ability recall button can be clicked
int CScreenCreateChar::IsAbilityRecallButtonClickable();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::IsAdvancedButtonClickable
Determines if advanced button can be clicked
int CScreenCreateChar::IsAdvancedButtonClickable();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::IsChargenComplete
Determines if character creation is complete
bool CScreenCreateChar::IsChargenComplete();
Return Value
Returns bool - 1 true or 0 false
Remarks
CScreenCreateChar::IsClearMemoryAbilities
int CScreenCreateChar::IsClearMemoryAbilities();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::IsDoneButtonClickable
Determines if done button can be clicked
1786 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
int CScreenCreateChar::IsDoneButtonClickable(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - * *
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::IsHighLevelAbilitiesButtonClickable
Determines if high level abilities (HLA) button can be clicked
int CScreenCreateChar::IsHighLevelAbilitiesButtonClickable();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::IsMainBackButtonClickable
Determines if main screen’s back button can be clicked
bool CScreenCreateChar::IsMainBackButtonClickable();
Return Value
Returns bool - 1 true or 0 false
Remarks
CScreenCreateChar::IsThiefSkillPlusMinusButtonClickable
Determines if thieving skills plus (+) or (-) button can be clicked
int CScreenCreateChar::IsThiefSkillPlusMinusButtonClickable();
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
6.100. CScreenCreateChar Class 1787
EEex Documentation, Release 1.0
CScreenCreateChar::LevelUp
Level up character during character creation
void CScreenCreateChar::LevelUp(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Return Value
Remarks
CScreenCreateChar::MageSchoolSpellsAvailable
Determines if mage spells from a specified level are available to character
int CScreenCreateChar::MageSchoolSpellsAvailable(unsigned char nSpellLevel,CGameSprite* pSprite);
Parameters
• unsigned char nSpellLevel -
• CGameSprite* pSprite - pointer to game sprite object
Return Value
Returns an int value representing 1 true, or 0 false
Remarks
CScreenCreateChar::MakeDualClass
Changes a character from single class to dual class
void CScreenCreateChar::MakeDualClass(CGameSprite* pSprite,unsigned char nNewClass);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• unsigned char nNewClass - * *
Remarks
CScreenCreateChar::MakeSingleClass
Changes a character from dual class to single class
1788 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CScreenCreateChar::MakeSingleClass(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::OnAbilityPlusMinusButtonClick
Event action for when ability plus (+) or minus (-) buttons are clicked
void CScreenCreateChar::OnAbilityPlusMinusButtonClick(int stat,bool plus);
Parameters
• int stat -
• bool plus -
Remarks
CScreenCreateChar::OnAbilityReRollButtonClick
Event action for when re-roll ability scores button is clicked
void CScreenCreateChar::OnAbilityReRollButtonClick();
Remarks
CScreenCreateChar::OnAbilityRecallButtonClick
Event action for when recall previously stored ability scores button is clicked
void CScreenCreateChar::OnAbilityRecallButtonClick();
Remarks
CScreenCreateChar::OnAbilityStoreButtonClick
Event action for when store ability scores button is clicked
void CScreenCreateChar::OnAbilityStoreButtonClick();
Remarks
6.100. CScreenCreateChar Class 1789
EEex Documentation, Release 1.0
CScreenCreateChar::OnAdvancedButtonClick
Event action for when advanced button is clicked
void CScreenCreateChar::OnAdvancedButtonClick();
Remarks
CScreenCreateChar::OnAlignmentSelectButtonClick
Event action for when an alignment button is clicked
void CScreenCreateChar::OnAlignmentSelectButtonClick(int alignment);
Parameters
• int alignment -
Remarks
CScreenCreateChar::OnBiographyButtonClick
Event action for when an biography button is clicked
void CScreenCreateChar::OnBiographyButtonClick();
Remarks
CScreenCreateChar::OnCancelButtonClick
Event action for when cancel button is clicked
void CScreenCreateChar::OnCancelButtonClick();
Remarks
CScreenCreateChar::OnCharacterExportItemSelect
Event action for when export of character item button is clicked
void CScreenCreateChar::OnCharacterExportItemSelect(int nMarker);
Parameters
• int nMarker -
Remarks
1790 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::OnCharacterImportItemSelect
Event action for when import of character item button is clicked
void CScreenCreateChar::OnCharacterImportItemSelect(int nMarker);
Parameters
• int nMarker -
Remarks
CScreenCreateChar::OnCheatyMcCheaterson
Event action for when cheating on ability score rolls
void CScreenCreateChar::OnCheatyMcCheaterson();
Remarks
If the CLUA Console is enabled then cheat keys are also enabled. Pressing CTRL + 8 during character creation thiswill set all attributes to 18 (STR 18/00)
CScreenCreateChar::OnClassSelectButtonClick
Event action for when character class button is clicked
void CScreenCreateChar::OnClassSelectButtonClick(int classId);
Parameters
• int classId -
Remarks
CScreenCreateChar::OnDoneButtonClick
Event action for when finishing character creation and done button is clicked
void CScreenCreateChar::OnDoneButtonClick();
Remarks
CScreenCreateChar::OnDoneButtonClickCallback
Callback for when finishing character creation and done button is clicked
6.100. CScreenCreateChar Class 1791
EEex Documentation, Release 1.0
virtual void __cdecl CScreenCreateChar::OnDoneButtonClickCallback(void* batton);
Parameters
• void* batton -
Remarks
CScreenCreateChar::OnGenderSelectButtonClick
Event action for when a gender selection button is clicked
void CScreenCreateChar::OnGenderSelectButtonClick(int value);
Parameters
• int value -
Remarks
CScreenCreateChar::OnHLAButtonClick
Event action for when a specific high level ability (HLA) button is clicked
void CScreenCreateChar::OnHLAButtonClick(int HLA,int change);
Parameters
• int HLA -
• int change -
Remarks
CScreenCreateChar::OnHighLevelAbilitiesButtonClick
Event action for when high level abilities (HLA) button is clicked
void CScreenCreateChar::OnHighLevelAbilitiesButtonClick();
Remarks
CScreenCreateChar::OnImportCharacterButtonClick
Event action for when import of a previously generated character button is clicked
1792 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
void CScreenCreateChar::OnImportCharacterButtonClick();
Remarks
CScreenCreateChar::OnImportCharacterFileButtonClick
Event action for when selecting a character filename for importing
void CScreenCreateChar::OnImportCharacterFileButtonClick();
Remarks
CScreenCreateChar::OnImportSaveButtonClick
Event action for when import save button is clicked
void CScreenCreateChar::OnImportSaveButtonClick();
Remarks
CScreenCreateChar::OnKeyDown
Key press event for when a key has been pressed (down)
virtual void CScreenCreateChar::OnKeyDown(int nKeysFlags);
Parameters
• int nKeysFlags -
Remarks
CScreenCreateChar::OnKitSelectButtonClick
Event action for when class kit button is clicked
void CScreenCreateChar::OnKitSelectButtonClick(int kitId);
Parameters
• int kitId -
Remarks
6.100. CScreenCreateChar Class 1793
EEex Documentation, Release 1.0
CScreenCreateChar::OnLButtonDblClk
Mouse button event for when the left mouse has been double clicked
virtual void CScreenCreateChar::OnLButtonDblClk(CPoint cPoint);
Parameters
• CPoint cPoint - x and y coordinate for the mouse position
Remarks
CScreenCreateChar::OnLButtonDown
Mouse button event for when the left mouse has been clicked (down)
virtual void CScreenCreateChar::OnLButtonDown(CPoint cPoint);
Parameters
• CPoint cPoint - x and y coordinate for the mouse position
Remarks
CScreenCreateChar::OnLButtonUp
Mouse button event for when the left mouse has been released (up)
virtual void CScreenCreateChar::OnLButtonUp(CPoint cPoint);
Parameters
• CPoint cPoint - x and y coordinate for the mouse position
Remarks
CScreenCreateChar::OnLearnMageSpellButtonClick
Event action for when learn mage spell button is clicked
void CScreenCreateChar::OnLearnMageSpellButtonClick(int spell);
Parameters
• int spell -
Remarks
1794 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::OnLevelUp
Event action for when level up button is clicked
void CScreenCreateChar::OnLevelUp(CGameSprite* pSprite,unsigned long nExperience);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• unsigned long nExperience -
Remarks
Level up is available when importing a previously generated character, or previously saved character from Baldur’sGate (or Baldur’s Gate: Shadows of Amn - if starting play at Throne of Bhaal campaign) that is at a lower level thanthe recommended minimum level required for starting the game campaign selected.
CScreenCreateChar::OnMainBackButtonClick
Event action for when the main screen’s back button is clicked
void CScreenCreateChar::OnMainBackButtonClick();
Remarks
CScreenCreateChar::OnMainCancelButtonClick
Event action for when the main screen’s cancel button is clicked
void CScreenCreateChar::OnMainCancelButtonClick();
Remarks
CScreenCreateChar::OnMemorizeMageSpellButtonClick
Event action for when a mage spell to memorize button is clicked
void CScreenCreateChar::OnMemorizeMageSpellButtonClick(int spell,int amount);
Parameters
• int spell -
• int amount -
Remarks
6.100. CScreenCreateChar Class 1795
EEex Documentation, Release 1.0
CScreenCreateChar::OnMemorizePriestSpellButtonClick
Event action for when a priest spell to memorize button is clicked
void CScreenCreateChar::OnMemorizePriestSpellButtonClick(int spell,int amount);
Parameters
• int spell -
• int amount -
Remarks
CScreenCreateChar::OnMenuButtonClick
Event action for when a menu button is clicked
void CScreenCreateChar::OnMenuButtonClick();
Remarks
CScreenCreateChar::OnMouseMove
Event action for when the mouse moves
virtual void CScreenCreateChar::OnMouseMove(CPoint cPoint);
Parameters
• CPoint cPoint - x and y coordinate of mouse position
Remarks
CScreenCreateChar::OnPlayButtonClick
Event action for when play button is clicked
void CScreenCreateChar::OnPlayButtonClick();
Remarks
For playing sound set voices for character generation
1796 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::OnPrerollCancelButtonClick
Event action for when cancel preroll button is clicked
void CScreenCreateChar::OnPrerollCancelButtonClick();
Remarks
For pregenerated characters selection dialog
CScreenCreateChar::OnPrerollCharacterPick
Event action for when clicking on a pregenerated character
void CScreenCreateChar::OnPrerollCharacterPick(int nId);
Parameters
• int nId -
Remarks
For pregenerated characters selection dialog
CScreenCreateChar::OnProficiencyPlusMinusButtonClick
Event action for when proficiency plus (+) or minus (-) buttons are clicked
void CScreenCreateChar::OnProficiencyPlusMinusButtonClick(int id,bool plus);
Parameters
• int id -
• bool plus -
Remarks
For weapon proficiencies dialog
CScreenCreateChar::OnRaceSelectButtonClick
Event action for when a race button is clicked
void CScreenCreateChar::OnRaceSelectButtonClick(int raceId);
Parameters
• int raceId -
Remarks
6.100. CScreenCreateChar Class 1797
EEex Documentation, Release 1.0
CScreenCreateChar::OnRacialEnemySelectButtonClick
Event action for when a racial enemy button is clicked
void CScreenCreateChar::OnRacialEnemySelectButtonClick(int enemy);
Parameters
• int enemy -
Remarks
For Ranger based classes or other kits that support racial enemies
CScreenCreateChar::OnRButtonDown
Mouse button event for when the right mouse has been clicked (down)
virtual void CScreenCreateChar::OnRButtonDown(CPoint cPoint);
Parameters
• CPoint cPoint - x and y coordinate of mouse position
Remarks
CScreenCreateChar::OnRButtonUp
Mouse button event for when the right mouse has been released (up)
virtual void CScreenCreateChar::OnRButtonUp\(CPoint cPoint);
Parameters
• CPoint cPoint - x and y coordinate of mouse position
Remarks
CScreenCreateChar::OnResetSkills
Event action for when a reset skills button is clicked
void CScreenCreateChar::OnResetSkills(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
Resets skill points previously assigned
1798 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::OnSoundItemSelect
Event action for when a sound set button is selected
void CScreenCreateChar::OnSoundItemSelect(int nIndex);
Parameters
• int nIndex -
Remarks
CScreenCreateChar::OnThiefSkillPlusMinusButtonClick
Event action for when thieving skills plus (+) or minus (-) buttons are clicked
void CScreenCreateChar::OnThiefSkillPlusMinusButtonClick(int thiefSkillId,bool plus);
Parameters
• int thiefSkillId -
• bool plus -
Remarks
Thief, bard and lore skills
CScreenCreateChar::RecallMemoryAbilities
Recall previously stored ability scores. Stores ability scores in the addresses of variables passed as parameters.
void CScreenCreateChar::RecallMemoryAbilities(unsigned char\& nSTR,unsigned char\& nSTRExtra,unsigned char\& nDEX,unsigned char\& nCON,unsigned char\& nINT,unsigned char\& nWIS,unsigned char\& nCHR,int\& nExtra);
Parameters
• unsigned char& nSTR - strength ability score
• unsigned char& nSTRExtra - strength extra (percentile) ability score
• unsigned char& nDEX - dexterity ability score
• unsigned char& nCON - constitution ability score
• unsigned char& nINT - intelligence ability score
• unsigned char& nWIS - wisdom ability score
6.100. CScreenCreateChar Class 1799
EEex Documentation, Release 1.0
• unsigned char& nCHR - charisma ability score
• int& nExtra - extra ability score
Remarks
CScreenCreateChar::RemoveAbilities
Remove abilities from character
void CScreenCreateChar::RemoveAbilities(CGameSprite* pSprite,int nNewClass,int bRemoveInnates);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• int nNewClass -
• int bRemoveInnates -
Remarks
CScreenCreateChar::RemoveItems
Remove items from character
void CScreenCreateChar::RemoveItems(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::RemoveSelectedAbility
Remove specific selected ability from character
void CScreenCreateChar::RemoveSelectedAbility(unsigned char nButtonIndex);
Parameters
• unsigned char nButtonIndex -
Remarks
1800 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::ResetAbilities
Reset character abilities
void CScreenCreateChar::ResetAbilities(CGameSprite* pSprite,int bForced);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• int bForced -
Remarks
CScreenCreateChar::ResetAbilitiesPanel
Reset character ability scores panel
void CScreenCreateChar::ResetAbilitiesPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetAbility
Reset a specific ability score of a character
int CScreenCreateChar::ResetAbility(CGameSprite* pSprite,CString& sMin,CString& sMax,CString& sMod,unsigned char& nAbility,unsigned char& nMin,unsigned char& nMax);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
• CString& sMin -
• CString& sMax -
• CString& sMod -
• unsigned char& nAbility -
• unsigned char& nMin -
• unsigned char& nMax -
6.100. CScreenCreateChar Class 1801
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CScreenCreateChar::ResetAlignmentPanel
Reset alignment selection panel
void CScreenCreateChar::ResetAlignmentPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetBiographyPanel
Reset biography panel
void CScreenCreateChar::ResetBiographyPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetChooseMagePanel
Reset mage specialist selection panel
void CScreenCreateChar::ResetChooseMagePanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1802 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::ResetClassPanel
Reset class selection panel
void CScreenCreateChar::ResetClassPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetCustomSoundsPanel
Reset custom sound set selection panel
void CScreenCreateChar::ResetCustomSoundsPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetDualClassChooseMagePanel
Reset dual classing with mage panel
void CScreenCreateChar::ResetDualClassChooseMagePanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetDualClassProficienciesPanel
Reset dual class proficiencies panel
void CScreenCreateChar::ResetDualClassProficienciesPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
6.100. CScreenCreateChar Class 1803
EEex Documentation, Release 1.0
CScreenCreateChar::ResetExportPanel
Reset export character panel
void CScreenCreateChar::ResetExportPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetGenderPanel
Reset gender selection panel
void CScreenCreateChar::ResetGenderPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetHatedRacePanel
Reset racial enemy panel
void CScreenCreateChar::ResetHatedRacePanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetImportPanel
Reset import character panel
void CScreenCreateChar::ResetImportPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1804 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::ResetLevelUpPanel
Reset level up panel
void CScreenCreateChar::ResetLevelUpPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetMemorizeMagePanel
Reset memorized mage spells panel
void CScreenCreateChar::ResetMemorizeMagePanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetMemorizePriestPanel
Reset memorized priest spells panel
void CScreenCreateChar::ResetMemorizePriestPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetNamePanel
Reset character name panel
void CScreenCreateChar::ResetNamePanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
6.100. CScreenCreateChar Class 1805
EEex Documentation, Release 1.0
CScreenCreateChar::ResetPrerollPanel
Reset preroll panel
void CScreenCreateChar::ResetPrerollPanel();
Remarks
CScreenCreateChar::ResetProficienciesPanel
Reset proficiencies panel
void CScreenCreateChar::ResetProficienciesPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
Reset weapon, thief and bard skill proficiencies
CScreenCreateChar::ResetRacePanel
Reset race selection panel
void CScreenCreateChar::ResetRacePanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ResetSpellTables
Reset spell tables
void CScreenCreateChar::ResetSpellTables(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
Spells avaialble for each spell level for character at a experience level
1806 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::SetAbilityHelpInfo
Set tokens for ability score information
void CScreenCreateChar::SetAbilityHelpInfo(int stat);
Parameters
• int stat - value representing the ability score to set token information for
Remarks
Sets ability score tokens <MINIMUM> and <MAXIMUM> for the panel that displays the specifics of each ability score,recommended scores and minimum required scores for specific classes.
Note: The full text and description for the ability score help information is fetched outside of this function. By usingthe Infinity_FetchString function in UI.MENU to fetch a string reference (StrRef) and combining with the ability scoretokens fetched by createCharScreen:SetAbilityHelpInfo (or CScreenCreateChar::SetAbilityHelpInfo), this full text isthen output into the help panel.
The stat parameter can be one of the following values, which equate to the ability score to set information for:
Stat Ability1 Strength2 Dexterity3 Constitution4 Intelligence5 Wisdom6 Charisma
CScreenCreateChar::SetSystemKeyCapsLock
Set caps lock key on or off
virtual void CScreenCreateChar::SetSystemKeyCapsLock(int bValue);
Parameters
• int bValue -
Remarks
CScreenCreateChar::SetSystemKeyCtrl
Set control key on or off
virtual void CScreenCreateChar::SetSystemKeyCtrl(unsigned char bValue);
Parameters
• unsigned char bValue -
6.100. CScreenCreateChar Class 1807
EEex Documentation, Release 1.0
Remarks
CScreenCreateChar::SetSystemKeyShift
Set shift key on or off
virtual void CScreenCreateChar::SetSystemKeyShift(int bValue);
Parameters
• int bValue -
Remarks
CScreenCreateChar::ShowNextSpellScreen
Show next spell screen
void CScreenCreateChar::ShowNextSpellScreen(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::ShowPortraitPanel
Show portrait panel
void CScreenCreateChar::ShowPortraitPanel();
Remarks
CScreenCreateChar::StartCreateChar
Start the charaction creation process
void CScreenCreateChar::StartCreateChar(int nCharacterSlot,int nEngineState);
Parameters
• int nCharacterSlot - slot for new character to occupy
• int nEngineState - engine state
Remarks
See also CScreenCreateChar::StopCreateChar and CScreenCreateChar::CancelCreateChar
1808 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::StartEditing
void CScreenCreateChar::StartEditing(int nSprite,CScreenCreateCharStep nStep);
Parameters
• int nSprite - * *
• CScreenCreateCharStep nStep -
Remarks
CScreenCreateChar::StopCreateChar
Stop the charaction creation process
void CScreenCreateChar::StopCreateChar();
Remarks
See also CScreenCreateChar::StartCreateChar and CScreenCreateChar::CancelCreateChar
CScreenCreateChar::TimerAsynchronousUpdate
Update timer asynchronously
virtual void CScreenCreateChar::TimerAsynchronousUpdate();
Remarks
CScreenCreateChar::TimerSynchronousUpdate
Update timer synchronously
virtual void CScreenCreateChar::TimerSynchronousUpdate();
Remarks
6.100. CScreenCreateChar Class 1809
EEex Documentation, Release 1.0
CScreenCreateChar::UpdateAbilitiesPanel
Update ability scores panel
void CScreenCreateChar::UpdateAbilitiesPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::UpdateAlignmentPanel
Update alignement selection panel
void CScreenCreateChar::UpdateAlignmentPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::UpdateCharacterList
Update character list selection panel
void CScreenCreateChar::UpdateCharacterList(CString luaVar);
Parameters
• CString luaVar -
Remarks
CScreenCreateChar::UpdateChooseDualClassPanel
Update dual class selection panel
void CScreenCreateChar::UpdateChooseDualClassPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1810 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::UpdateChooseMagePanel
Update mage specialist selection panel
void CScreenCreateChar::UpdateChooseMagePanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::UpdateClass
Update class selection
char* CScreenCreateChar::UpdateClass(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Return Value
Returns char*
Remarks
CScreenCreateChar::UpdateClassEntry
Update class entry (sub-class) selection
char* CScreenCreateChar::UpdateClassEntry(CAIObjectType& TypeAI,CDerivedStats& DStats,unsigned long nSpecialist,unsigned char nActiveClass,unsigned char nInactiveClass,unsigned char nSubClass,unsigned long dwFlags);
Parameters
• CAIObjectType& TypeAI -
• CDerivedStats& DStats -
• unsigned long nSpecialist -
• unsigned char nActiveClass -
• unsigned char nInactiveClass -
• unsigned char nSubClass -
• unsigned long dwFlags -
6.100. CScreenCreateChar Class 1811
EEex Documentation, Release 1.0
Return Value
Returns char*
Remarks
CScreenCreateChar::UpdateClassPanel
Update class selection panel
void CScreenCreateChar::UpdateClassPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::UpdateHatedRacePanel
Update racial enemy selection panel
void CScreenCreateChar::UpdateHatedRacePanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::UpdateHighLevelAbilitiesPanel
Update high level abilities (HLA) panel
void CScreenCreateChar::UpdateHighLevelAbilitiesPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
1812 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateChar::UpdateKitPanel
Update class kit panel
void CScreenCreateChar::UpdateKitPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::UpdateMainPanel
Update main panel
void CScreenCreateChar::UpdateMainPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::UpdateMemorizeMagePanel
Update memorized mage spells panel
void CScreenCreateChar::UpdateMemorizeMagePanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::UpdateMemorizePriestPanel
Update memorized priest spells panel
void CScreenCreateChar::UpdateMemorizePriestPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
6.100. CScreenCreateChar Class 1813
EEex Documentation, Release 1.0
CScreenCreateChar::UpdateNamePanel
Update character name panel
void CScreenCreateChar::UpdateNamePanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::UpdateProficienciesPanel
Update proficienies panel
void CScreenCreateChar::UpdateProficienciesPanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
CScreenCreateChar::UpdateRacePanel
Update race selection panel
void CScreenCreateChar::UpdateRacePanel(CGameSprite* pSprite);
Parameters
• CGameSprite* pSprite - pointer to game sprite object
Remarks
6.101 CScreenCreateParty Class
• Overview
• Quick Reference
• Constructors
• Methods
1814 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
6.101.1 Overview
Note: The CScreenCreateParty class handles party and character generation
The structure used for this class is CScreenCreateParty
6.101.2 Quick Reference
Quick Refvoid CScreenCreateParty::CScreenCreateParty()virtual int CScreenCreateParty::CheckMouseLButton()virtual int CScreenCreateParty::CheckMouseMove()virtual int CScreenCreateParty::CheckMouseRButton()virtual int CScreenCreateParty::CheckSystemKeyCtrl()virtual void CScreenCreateParty::EngineActivated()virtual void CScreenCreateParty::EngineDeactivated()virtual void CScreenCreateParty::EngineDestroyed()virtual void CScreenCreateParty::EngineInitialized()virtual int CScreenCreateParty::GetEngineState()virtual short CScreenCreateParty::GetNumVirtualKeys()virtual CKeyInfo* CScreenCreateParty::GetVirtualKeys()virtual int* CScreenCreateParty::GetVirtualKeysFlags()void CScreenCreateParty::ImportFrom2DA(int merge)void CScreenCreateParty::ImportFromSave(CImportGame& game)void CScreenCreateParty::OnBackButtonClick()void CScreenCreateParty::OnCreateDeleteButtonClick(int nButton)void CScreenCreateParty::OnDoneButtonClick()virtual void CScreenCreateParty::OnKeyDown(int nKeysFlags)virtual void CScreenCreateParty::OnLButtonDblClk(CPoint cPoint)virtual void CScreenCreateParty::OnLButtonDown(CPoint cPoint)virtual void CScreenCreateParty::OnLButtonUp(CPoint cPoint)virtual void CScreenCreateParty::OnMouseMove(CPoint cPoint)void CScreenCreateParty::OnPortraitButtonClick(int nButton)virtual void CScreenCreateParty::OnRButtonDown(CPoint cPoint)virtual void CScreenCreateParty::OnRButtonUp(CPoint cPoint)virtual void CScreenCreateParty::SetSystemKeyCtrl(unsigned char bValue)virtual void CScreenCreateParty::TimerAsynchronousUpdate()virtual void CScreenCreateParty::TimerSynchronousUpdate()void CScreenCreateParty::UpdateLuaTables()
6.101.3 Constructors
Name DescriptionCScreenCreateParty::CScreenCreateParty Constructs a CScreenCreateParty object
6.101. CScreenCreateParty Class 1815
EEex Documentation, Release 1.0
CScreenCreateParty::CScreenCreateParty
Constructs a CScreenCreateParty object
void CScreenCreateParty::CScreenCreateParty();
Remarks
Constructs a CScreenCreateParty object
6.101.4 Methods
Name DescriptionCScreenCreateParty::CheckMouseLButtonCScreenCreateParty::CheckMouseMoveCScreenCreateParty::CheckMouseRButtonCScreenCreateParty::CheckSystemKeyCtrlCScreenCreateParty::EngineActivatedCScreenCreateParty::EngineDeactivatedCScreenCreateParty::EngineDestroyedCScreenCreateParty::EngineInitializedCScreenCreateParty::GetEngineStateCScreenCreateParty::GetNumVirtualKeysCScreenCreateParty::GetVirtualKeysCScreenCreateParty::GetVirtualKeysFlagsCScreenCreateParty::ImportFrom2DACScreenCreateParty::ImportFromSaveCScreenCreateParty::OnBackButtonClickCScreenCreateParty::OnCreateDeleteButtonClickCScreenCreateParty::OnDoneButtonClickCScreenCreateParty::OnKeyDownCScreenCreateParty::OnLButtonDblClkCScreenCreateParty::OnLButtonDownCScreenCreateParty::OnLButtonUpCScreenCreateParty::OnMouseMoveCScreenCreateParty::OnPortraitButtonClickCScreenCreateParty::OnRButtonDownCScreenCreateParty::OnRButtonUpCScreenCreateParty::SetSystemKeyCtrlCScreenCreateParty::TimerAsynchronousUpdateCScreenCreateParty::TimerSynchronousUpdateCScreenCreateParty::UpdateLuaTables
CScreenCreateParty::CheckMouseLButton
virtual int CScreenCreateParty::CheckMouseLButton();
1816 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Return Value
Returns int
Remarks
CScreenCreateParty::CheckMouseMove
virtual int CScreenCreateParty::CheckMouseMove();
Return Value
Returns int
Remarks
CScreenCreateParty::CheckMouseRButton
virtual int CScreenCreateParty::CheckMouseRButton();
Return Value
Returns int
Remarks
CScreenCreateParty::CheckSystemKeyCtrl
virtual int CScreenCreateParty::CheckSystemKeyCtrl();
Return Value
Returns int
Remarks
CScreenCreateParty::EngineActivated
virtual void CScreenCreateParty::EngineActivated();
Remarks
CScreenCreateParty::EngineDeactivated
6.101. CScreenCreateParty Class 1817
EEex Documentation, Release 1.0
virtual void CScreenCreateParty::EngineDeactivated();
Remarks
CScreenCreateParty::EngineDestroyed
virtual void CScreenCreateParty::EngineDestroyed();
Remarks
CScreenCreateParty::EngineInitialized
virtual void CScreenCreateParty::EngineInitialized();
Remarks
CScreenCreateParty::GetEngineState
virtual int CScreenCreateParty::GetEngineState();
Return Value
Returns int
Remarks
CScreenCreateParty::GetNumVirtualKeys
virtual short CScreenCreateParty::GetNumVirtualKeys();
Return Value
Returns short
Remarks
CScreenCreateParty::GetVirtualKeys
virtual CKeyInfo* CScreenCreateParty::GetVirtualKeys();
Return Value
Returns CKeyInfo*
Remarks
1818 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateParty::GetVirtualKeysFlags
virtual int* CScreenCreateParty::GetVirtualKeysFlags();
Return Value
Returns int*
Remarks
CScreenCreateParty::ImportFrom2DA
void CScreenCreateParty::ImportFrom2DA(int merge);
Parameters
• int merge -
Remarks
CScreenCreateParty::ImportFromSave
void CScreenCreateParty::ImportFromSave(CImportGame& game);
Parameters
• CImportGame& game -
Remarks
CScreenCreateParty::OnBackButtonClick
void CScreenCreateParty::OnBackButtonClick();
Remarks
CScreenCreateParty::OnCreateDeleteButtonClick
void CScreenCreateParty::OnCreateDeleteButtonClick(int nButton);
Parameters
• int nButton -
Remarks
6.101. CScreenCreateParty Class 1819
EEex Documentation, Release 1.0
CScreenCreateParty::OnDoneButtonClick
void CScreenCreateParty::OnDoneButtonClick();
Remarks
CScreenCreateParty::OnKeyDown
virtual void CScreenCreateParty::OnKeyDown(int nKeysFlags);
Parameters
• int nKeysFlags -
Remarks
CScreenCreateParty::OnLButtonDblClk
virtual void CScreenCreateParty::OnLButtonDblClk(CPoint cPoint);
Parameters
• CPoint cPoint - x and y coordinates of mouse position
Remarks
CScreenCreateParty::OnLButtonDown
virtual void CScreenCreateParty::OnLButtonDown(:ref:`CPoint<CPoint>` cPoint);
Parameters
• CPoint cPoint - x and y coordinates of mouse position
Remarks
CScreenCreateParty::OnLButtonUp
virtual void CScreenCreateParty::OnLButtonUp(:ref:`CPoint<CPoint>` cPoint);
Parameters
• CPoint cPoint - x and y coordinates of mouse position
Remarks
1820 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
CScreenCreateParty::OnMouseMove
virtual void CScreenCreateParty::OnMouseMove(:ref:`CPoint<CPoint>` cPoint);
Parameters
• CPoint cPoint - x and y coordinates of mouse position
Remarks
CScreenCreateParty::OnPortraitButtonClick
void CScreenCreateParty::OnPortraitButtonClick(int nButton);
Parameters
• int nButton -
Remarks
CScreenCreateParty::OnRButtonDown
virtual void CScreenCreateParty::OnRButtonDown(:ref:`CPoint<CPoint>` cPoint);
Parameters
• CPoint cPoint - x and y coordinates of mouse position
Remarks
CScreenCreateParty::OnRButtonUp
virtual void CScreenCreateParty::OnRButtonUp(:ref:`CPoint<CPoint>` cPoint);
Parameters
• CPoint cPoint - x and y coordinates of mouse position
Remarks
CScreenCreateParty::SetSystemKeyCtrl
virtual void CScreenCreateParty::SetSystemKeyCtrl(unsigned char bValue);
Parameters
• unsigned char bValue -
Remarks
6.101. CScreenCreateParty Class 1821
EEex Documentation, Release 1.0
CScreenCreateParty::TimerAsynchronousUpdate
virtual void CScreenCreateParty::TimerAsynchronousUpdate();
Remarks
CScreenCreateParty::TimerSynchronousUpdate
virtual void CScreenCreateParty::TimerSynchronousUpdate();
Remarks
CScreenCreateParty::UpdateLuaTables
void CScreenCreateParty::UpdateLuaTables();
Remarks
6.102 CScreenDLC Class
• Overview
• Quick Reference
• Constructors
• Methods
6.102.1 Overview
Note: The CScreenDLC class handles downloadable content
The structure used for this class is CScreenDLC
6.102.2 Quick Reference
Quick Refvoid CScreenDLC::CScreenDLC()virtual void CScreenDLC::CancelEngine()void CScreenDLC::DecrementDLCIndex()
Continued on next page
1822 Chapter 6. EE Game Classes (x86)
EEex Documentation, Release 1.0
Table 46 – continued from previous pagevirtual void CScreenDLC::EngineActivated()virtual void CScreenDLC::EngineDeactivated()virtual void CScreenDLC::EngineDestroyed()virtual void CScreenDLC::EngineGameInit()virtual void CScreenDLC::EngineGameUninit()virtual void CScreenDLC::EngineInitialized()int CScreenDLC::GetDLCBought()int CScreenDLC::GetDLCCount()int CScreenDLC::GetDLCDescription()const char* CScreenDLC::GetDLCImage()int CScreenDLC::GetDLCIndex()const char* CScreenDLC::GetDLCName()int CScreenDLC::GetDLCState()int CScreenDLC::GetDLCTitle()void CScreenDLC::GetDownloadString()virtual short CScreenDLC::GetNumVirtualKeys()virtual CKeyInfo* CScreenDLC::GetVirtualKeys()virtual int* CScreenDLC::GetVirtualKeysFlags()void CScreenDLC::IncrementDLCIndex()void CScreenDLC::OnBuyButtonClick()void CScreenDLC::OnDoneButtonClick()void CScreenDLC::OnErrorButtonClick()virtual void CScreenDLC::OnKeyDown(int nKeysFlags)void CScreenDLC::RestorePurchases()void CScreenDLC::SetDLCIndex(int index)virtual void CScreenDLC::TimerAsynchronousUpdate()virtual void CScreenDLC::TimerSynchronousUpdate()void CScreenDLC::UpdateDLCState()
6.102.3 Constructors
Name DescriptionCScreenDLC::CScreenDLC Constructs a CScreenDLC object
CScreenDLC::CScreenDLC
Constructs a CScreenDLC object
void CScreenDLC::CScreenDLC();
Remarks
Constructs a CScreenDLC object
6.102.4 Methods
6.102. CScreenDLC Class 1823
EEex Documentation, Release 1.0
Name DescriptionCScreenDLC::CancelEngineCScreenDLC::DecrementDLCIndexCScreenDLC::EngineActivatedCScreenDLC::EngineDeactivatedCScreenDLC::EngineDestroyedCScreenDLC::EngineGameInitCScreenDLC::EngineGameUninitCScreenDLC::EngineInitializedCScreenDLC::GetDLCBoughtCScreenDLC::GetDLCCountCScreenDLC::GetDLCDescriptionCScreenDLC::GetDLCImageCScreenDLC::GetDLCIndexCScreenDLC::GetDLCNameCScreenDLC::GetDLCStateCScreenDLC::GetDLCTitleCScreenDLC::GetDownloadStringCScreenDLC::GetNumVirtualKeysCScreenDLC::GetVirtualKeysCScreenDLC::GetVirtualKeysFlagsCScreenDLC::IncrementDLCIndexCScreenDLC::OnBuyButtonClickCScreenDLC::OnDoneButtonClickCScreenDLC::OnErrorButtonClickCScreenDLC::OnKeyDownCScreenDLC::RestorePurchasesCScreenDLC::SetDLCIndexCScreenDLC::TimerAsynchronousUpdateCScreenDLC::TimerSynchronousUpdateCScreenDLC::UpdateDLCState
CScreenDLC::CancelEngine
x;
Parameters
• – *
• – *
• – *
• – *
Return Value
Returns
Remarks
1824 Chapter 6. EE Game Classes (x86)