scene_template
The `scene_template` table
This table is used to store necessary data for scenes to run, e.g. ScriptPackageId and Flags.
Structure
Field | Type | Attributes | Key | Null | Default | Extra | Comment |
SceneId | in(10) | unsigned | PRI | NO | NONE |
|
|
Flags | int(10) | unsigned | NO | 16 |
|
| |
ScriptPackageId | int(10) | unsigned | NO | NONE |
|
| |
ScriptName | char(64) | unsigned |
| NO | ' ' |
|
|
Description of the fields
SceneId
SceneId given by auras which have SPELL_AURA_SCENE_PLAY (430).
Some scenes do not have a spell, this are handled by scripts.
Use C++ hook to start them, e.g.:
player->GetSceneMgr().PlayScene(SceneId);
Flags
This flags handle behavior of scene.
Flag | Int Value | Bit value | Comment |
---|---|---|---|
SCENEFLAG_NONE | 0 | 0x00000000 |
|
SCENEFLAG_UNK1 | 1 | 0x00000001 | NYI |
SCENEFLAG_UNK2 | (SCENEFLAG_CANCLE_AT_END) | 2 | 0x00000002 | Scene is being canceled at SceneComplete // NYI |
SCENEFLAG_NOT_CANCELABLE | 4 | 0x00000004 | Player can't cancle scene (cinematic scenes) |
SCENEFLAG_UNK8 | 8 | 0x00000008 | NYI |
SCENEFLAG_UNK16 | 16 | 0x00000010 | NYI |
SCENEFLAG_UNK32 | 32 | 0x00000020 | NYI |
ScriptPackageId
ScriptPackageId is the Id of the clientside SceneScriptPackage, see SceneScriptPackage.db2
ScriptName
Name of script defined in: scene_scripts.cpp