Tramway SDK
Classes | Typedefs | Enumerations | Functions | Variables
tram::Ext::Kitchensink Namespace Reference

Extension containing random stuff that doesn't fit in anywhere else. More...

Classes

class  AIAgent
 
class  AIPackage
 
struct  AIVariable
 
class  AnimationStateComponent
 
class  AnimationTable
 
struct  AnimState
 
struct  AnimStateSpace
 
struct  AnimStateTransitionDefault
 
struct  AnimStateTransitionFrom
 
struct  AnimStateTransitionInto
 
struct  Attribute
 
struct  AttributeContainer
 
class  AttributeInfo
 
struct  BaseAttribute
 
struct  BaseFactionRank
 
class  Breakable
 
class  Button
 Essentially a func_door. More...
 
class  Character
 
class  CharacterClass
 
struct  CharacterDisposition
 
class  DebugShape
 
class  DebugText
 
struct  DialogAction
 
struct  DialogCondition
 
class  DialogController
 
struct  DialogTopic
 
struct  Effect
 
struct  EntityChildren
 
class  Faction
 
struct  FactionRank
 
struct  FactionRelation
 
struct  InitialAttribute
 
class  Inventory
 
struct  InventoryFactoryInfo
 
class  InventoryManager
 
class  ItemClass
 
struct  ItemInstance
 
class  KitchensinkMenuList
 
class  ListDialog
 
class  ListInventory
 
class  ListInventoryManager
 
class  ListTrade
 
class  Pickup
 
struct  Quest
 
class  QuestEntity
 
class  QuestList
 
struct  QuestTrigger
 
struct  QuestVariable
 
class  SoundTable
 Maps actions to sounds. More...
 
class  Train
 
class  TriggerAutosave
 
class  TriggerHurt
 
class  TriggerMultiple
 
class  TriggerOnce
 
class  TriggerPlayerMovement
 
class  TriggerPush
 
class  TriggerRemove
 
class  TriggerTeleport
 
class  Water
 

Typedefs

typedef AIPackage *(* ai_package_constr) (valuearray_t)
 
typedef void(* item_action_func) (Inventory *, ItemInstance *)
 

Enumerations

enum  : int { EFFECT_RAISE_BASE , EFFECT_RAISE_CONSTANT , EFFECT_NEGATE_CHANGE }
 
enum  DialogType { DIALOG_TOPIC , DIALOG_IMPORT_SINGLE , DIALOG_IMPORT_MULTIPLE }
 
enum  {
  BUTTON_FIELD_FLAGS , BUTTON_FIELD_MODEL , BUTTON_FIELD_LIGHTMAP , BUTTON_FIELD_ORIGIN ,
  BUTTON_FIELD_DIRECTION , BUTTON_FIELD_SPEED , BUTTON_FIELD_PAUSE , BUTTON_FIELD_DISTANCE ,
  BUTTON_FIELD_SOUND , BUTTON_FIELD_PARENT , BUTTON_FIELD_LAST
}
 
enum  {
  BUTTON_FLAG_ROTARY = 1 , BUTTON_FLAG_MOMENTARY = 2 , BUTTON_FLAG_TOGGLE = 4 , BUTTON_FLAG_LOCKED = 8 ,
  BUTTON_FLAG_PUSHED = 16
}
 
enum  {
  BUTTON_STATE_NADIR_WAITING , BUTTON_STATE_NADIR_READY , BUTTON_STATE_RISING , BUTTON_STATE_ZENITH_WAITING ,
  BUTTON_STATE_ZENITH_READY , BUTTON_STATE_LOWERING
}
 
enum  quest_t : int {
  QUEST_VAR_INVALID , QUEST_VAR_VALUE , QUEST_VAR_OBJECTIVE , QUEST_VAR_VALUE_IS ,
  QUEST_VAR_VALUE_IS_NOT , QUEST_VAR_VALUE_GREATER , QUEST_VAR_VALUE_GREATER_OR_EQUAL , QUEST_VAR_VALUE_LESS ,
  QUEST_VAR_VALUE_LESS_OR_EQUAL , QUEST_VAR_CONDITION_NOT , QUEST_VAR_CONDITION_AND , QUEST_VAR_CONDITION_OR ,
  QUEST_VAR_CONDITION_SCRIPT , QUEST_VAR_ENTITY_ITEM_COUNT , QUEST_TGR_SET_VARIABLE , QUEST_TGR_SET_OBJECTIVE ,
  QUEST_TGR_INCREMENT , QUEST_TGR_SHOW_MESSAGE
}
 
enum  SoundAction {
  SOUND_OPEN , SOUND_CLOSE , SOUND_LOCKED , SOUND_END_OPEN ,
  SOUND_END_CLOSE , SOUND_WALK_ON , SOUND_JUMP_ON , SOUND_HIT
}
 

Functions

void InitAI ()
 
void UpdateAI ()
 
Hashmap< AttributeContainer * > containers ("Ext::Kitchensink::AttributeContainer Hashmap", ATTRIBUTE_CONTAINER_COUNT)
 
Hashmap< AttributeInfo * > infos ("Ext::Kitchensink::AttributeInfo Hashmap", ATTRIBUTE_INFO_COUNT)
 
Hashmap< Faction * > factions ("Ext::Kitchensink::Faction Hashmap", FACTION_COUNT)
 
Hashmap< CharacterClass * > character_classes ("Ext::Kitchensink::Character Hashmap", CHARACTER_COUNT)
 
Hashmap< Character * > characters ("Ext::Kitchensink::CharacterClass Hashmap", CLASS_COUNT)
 
void RecursivelyAppendNextTopic (std::vector< name_t > &topics, name_t appendable)
 
void AddChild (name_t parent, id_t child)
 
void UpdateHierarchy (id_t parent_id)
 
void Init ()
 
void Update ()
 

Variables

Hashmap< EntityChildrenhierarchy_map ("hierarchy_map", 200)
 
uint32_t KITCHENSINK_SYSTEM = -1u
 
const size_t SEARCH_STRING_LENGTH = 100
 

Detailed Description

Extension containing random stuff that doesn't fit in anywhere else.

Featuring a collection (mostly) unfinished re-usable game mechanics for RPG games, as well as a couple of useful data tools and entities.

This is where you can find out func_door analog too.

Typedef Documentation

◆ ai_package_constr

typedef AIPackage *(* tram::Ext::Kitchensink::ai_package_constr) (valuearray_t)

◆ item_action_func

typedef void(* tram::Ext::Kitchensink::item_action_func) (Inventory *, ItemInstance *)

Enumeration Type Documentation

◆ anonymous enum

anonymous enum : int
Enumerator
EFFECT_RAISE_BASE 
EFFECT_RAISE_CONSTANT 
EFFECT_NEGATE_CHANGE 

◆ anonymous enum

anonymous enum
Enumerator
BUTTON_FIELD_FLAGS 
BUTTON_FIELD_MODEL 
BUTTON_FIELD_LIGHTMAP 
BUTTON_FIELD_ORIGIN 
BUTTON_FIELD_DIRECTION 
BUTTON_FIELD_SPEED 
BUTTON_FIELD_PAUSE 
BUTTON_FIELD_DISTANCE 
BUTTON_FIELD_SOUND 
BUTTON_FIELD_PARENT 
BUTTON_FIELD_LAST 

◆ anonymous enum

anonymous enum
Enumerator
BUTTON_FLAG_ROTARY 
BUTTON_FLAG_MOMENTARY 
BUTTON_FLAG_TOGGLE 
BUTTON_FLAG_LOCKED 
BUTTON_FLAG_PUSHED 

◆ anonymous enum

anonymous enum
Enumerator
BUTTON_STATE_NADIR_WAITING 
BUTTON_STATE_NADIR_READY 
BUTTON_STATE_RISING 
BUTTON_STATE_ZENITH_WAITING 
BUTTON_STATE_ZENITH_READY 
BUTTON_STATE_LOWERING 

◆ DialogType

Enumerator
DIALOG_TOPIC 
DIALOG_IMPORT_SINGLE 
DIALOG_IMPORT_MULTIPLE 

◆ quest_t

Enumerator
QUEST_VAR_INVALID 
QUEST_VAR_VALUE 
QUEST_VAR_OBJECTIVE 
QUEST_VAR_VALUE_IS 
QUEST_VAR_VALUE_IS_NOT 
QUEST_VAR_VALUE_GREATER 
QUEST_VAR_VALUE_GREATER_OR_EQUAL 
QUEST_VAR_VALUE_LESS 
QUEST_VAR_VALUE_LESS_OR_EQUAL 
QUEST_VAR_CONDITION_NOT 
QUEST_VAR_CONDITION_AND 
QUEST_VAR_CONDITION_OR 
QUEST_VAR_CONDITION_SCRIPT 
QUEST_VAR_ENTITY_ITEM_COUNT 
QUEST_TGR_SET_VARIABLE 
QUEST_TGR_SET_OBJECTIVE 
QUEST_TGR_INCREMENT 
QUEST_TGR_SHOW_MESSAGE 

◆ SoundAction

Enumerator
SOUND_OPEN 
SOUND_CLOSE 
SOUND_LOCKED 
SOUND_END_OPEN 
SOUND_END_CLOSE 
SOUND_WALK_ON 
SOUND_JUMP_ON 
SOUND_HIT 

Function Documentation

◆ AddChild()

void tram::Ext::Kitchensink::AddChild ( name_t  parent,
id_t  child 
)

◆ character_classes()

Hashmap< CharacterClass * > tram::Ext::Kitchensink::character_classes ( "Ext::Kitchensink::Character Hashmap ,
CHARACTER_COUNT   
)

◆ characters()

Hashmap< Character * > tram::Ext::Kitchensink::characters ( "Ext::Kitchensink::CharacterClass Hashmap ,
CLASS_COUNT   
)

◆ containers()

Hashmap< AttributeContainer * > tram::Ext::Kitchensink::containers ( "Ext::Kitchensink::AttributeContainer Hashmap ,
ATTRIBUTE_CONTAINER_COUNT   
)

◆ factions()

Hashmap< Faction * > tram::Ext::Kitchensink::factions ( "Ext::Kitchensink::Faction Hashmap ,
FACTION_COUNT   
)

◆ infos()

Hashmap< AttributeInfo * > tram::Ext::Kitchensink::infos ( "Ext::Kitchensink::AttributeInfo Hashmap ,
ATTRIBUTE_INFO_COUNT   
)

◆ Init()

void tram::Ext::Kitchensink::Init ( )

◆ InitAI()

void tram::Ext::Kitchensink::InitAI ( )

◆ RecursivelyAppendNextTopic()

void tram::Ext::Kitchensink::RecursivelyAppendNextTopic ( std::vector< name_t > &  topics,
name_t  appendable 
)

◆ Update()

void tram::Ext::Kitchensink::Update ( )

◆ UpdateAI()

void tram::Ext::Kitchensink::UpdateAI ( )

◆ UpdateHierarchy()

void tram::Ext::Kitchensink::UpdateHierarchy ( id_t  parent_id)

Variable Documentation

◆ hierarchy_map

Hashmap< EntityChildren > tram::Ext::Kitchensink::hierarchy_map("hierarchy_map", 200) ( "hierarchy_map"  ,
200   
)

◆ KITCHENSINK_SYSTEM

uint32_t tram::Ext::Kitchensink::KITCHENSINK_SYSTEM = -1u

◆ SEARCH_STRING_LENGTH

const size_t tram::Ext::Kitchensink::SEARCH_STRING_LENGTH = 100