Nuclide
Software Development Kit for id Technology
|
This class is responsible for handling core entity functionality.
It handles entity spawns, respawns, save/load as well as key/value pair loading, as well as inputs/outputs which is our basic entity model.
This is a very low-level class. You're never meant to use this. Use NSEntity as a basis for your classes.
Public Member Functions | |
void | NSIO (void) |
virtual void | Spawned (void) |
Called when the entity is fulled initialized. More... | |
virtual void | Respawn (void) |
Server: Called when the entity first spawns or when game-logic requests the entity to return to its original spawn state. More... | |
virtual void | SpawnKey (string, string) |
This method handles entity key/value pairs on map load. More... | |
nonvirtual float | GetDefAct (string) |
Looks up a sequence from an act of a key within this entity's declaration. More... | |
nonvirtual string | GetDefString (string) |
Looks up the string value of a key within this entity's declaration. More... | |
nonvirtual float | GetDefFloat (string) |
Looks up the floating-point value of a key within this entity's declaration. More... | |
nonvirtual bool | GetDefBool (string) |
Looks up the boolean value of a key within this entity's declaration. More... | |
nonvirtual int | GetDefInt (string) |
Looks up the integer value of a key within this entity's declaration. More... | |
nonvirtual vector | GetDefVector (string) |
Looks up the integer value of a key within this entity's declaration. More... | |
nonvirtual float | GetSubDefAct (string, string) |
Like GetDefAct, but queries a specified def, falling back to reading from our own if it's not defined. More... | |
nonvirtual string | GetSubDefString (string, string) |
Like GetDefString, but queries a specified def, falling back to reading from our own if it's not defined. More... | |
nonvirtual float | GetSubDefFloat (string, string) |
Like GetDefFloat, but queries a specified def, falling back to reading from our own if it's not defined. More... | |
nonvirtual bool | GetSubDefBool (string, string) |
Like GetDefBool, but queries a specified def, falling back to reading from our own if it's not defined. More... | |
nonvirtual int | GetSubDefInt (string, string) |
Like GetDefInt, but queries a specified def, falling back to reading from our own if it's not defined. More... | |
nonvirtual vector | GetSubDefVector (string, string) |
Like GetDefVector, but queries a specified def, falling back to reading from our own if it's not defined. More... | |
nonvirtual void | Destroy (void) |
When called, will remove the entity from the game entirely. More... | |
virtual void | OnRemoveEntity (void) |
Handles what happens before the entity gets removed from the client game. More... | |
virtual void | Save (float) |
Handles saving a copy of this entity to a given filehandle. More... | |
virtual void | Restore (string, string) |
Similar to NSIO::SpawnKey but for save-game fields. More... | |
virtual void | RestoreComplete (void) |
Called when the entity has been successfully restored from a savegame file. More... | |
virtual void | TransitionComplete (void) |
Called when the entity has successfully completed a level transition. More... | |
virtual void | Input (entity, string, string) |
Called when we are being prompted by another object/function with an input message. More... | |
nonvirtual void | UseOutput (entity, string) |
Triggers an output field that has been created beforehand. More... | |
nonvirtual string | PrepareOutput (string, string) |
Prepares an output field. More... | |
nonvirtual string | CreateOutput (string) |
Called at the end of setting up an entity's output field. More... | |
nonvirtual bool | CheckOutput (string) |
Returns whether the Output is ready, or has done firing - not currently scheduled to fire, etc. More... | |
virtual void | ParentUpdate (void) |
Called when we need to re-align the entity to our parent entity. More... | |
nonvirtual void | SaveFloat (float, string, float) |
Saves a floating point key/value pair to a filehandle. More... | |
nonvirtual void | SaveInt (float, string, int) |
Saves a integer key/value pair to a filehandle. More... | |
nonvirtual void | SaveString (float, string, string) |
Saves a string key/value pair to a filehandle. More... | |
nonvirtual void | SaveVector (float, string, vector) |
Saves a vector key/value pair to a filehandle. More... | |
nonvirtual void | SaveBool (float, string, bool) |
Saves a boolean key/value pair to a filehandle. More... | |
nonvirtual void | SaveEntity (float, string, entity) |
Saves an entity id key/value pair to a filehandle. More... | |
nonvirtual float | GetSpawnFloat (string) |
Returns the floating-point value of a named key in the entity's spawn data. More... | |
nonvirtual int | GetSpawnInt (string) |
Returns the integer value of a named key in the entity's spawn data. More... | |
nonvirtual string | GetSpawnString (string) |
Returns the string value of a named key in the entity's spawn data. More... | |
nonvirtual vector | GetSpawnVector (string) |
Returns the vector value of a named key in the entity's spawn data. More... | |
nonvirtual bool | GetSpawnBool (string) |
Returns the boolean value of a named key in the entity's spawn data. More... | |
nonvirtual entity | GetSpawnEntity (string, entity) |
Returns an entity of a named key in the entity's spawn data. More... | |
nonvirtual float | ReadFloat (string) |
Returns a floating point value from a string value. More... | |
nonvirtual int | ReadInt (string) |
Returns an integer value from a string. More... | |
nonvirtual string | ReadString (string) |
Returns a string value from a string (with error checking). More... | |
nonvirtual vector | ReadVector (string) |
Returns a vector from a string. More... | |
nonvirtual bool | ReadBool (string) |
Returns a boolean value from a string. More... | |
nonvirtual entity | ReadEntity (string) |
Reads an entity id from a string and returns the entity. More... | |
nonvirtual float | GetTime (void) |
Get the level time the entity finds itself in. More... | |
nonvirtual void | DebugFloat (string, float) |
Debug print for a given float. More... | |
nonvirtual void | DebugInt (string, int) |
Debug print for a given integer. More... | |
nonvirtual void | DebugString (string, string) |
Debug print for a given string. More... | |
nonvirtual void | DebugVector (string, vector) |
Debug print for a given vector. More... | |
nonvirtual void | DebugBool (string, bool) |
Debug print for a given boolean. More... | |
nonvirtual void | DebugEntity (string, entity) |
Debug print for a given entity. More... | |
nonvirtual void | SetEditorIcon (string) |
Sets the editor icon. More... | |
void NSIO::NSIO | ( | void | ) |
bool NSIO::CheckOutput | ( | string | strOut | ) |
Returns whether the Output is ready, or has done firing - not currently scheduled to fire, etc.
Input is the identifier of an output.
string NSIO::CreateOutput | ( | string | outmsg | ) |
Called at the end of setting up an entity's output field.
The input is a 5 parameter, commar separated string. The return value is the targetname of a minion object that'll handle the triggering (and counting down of uses) as defined in the Source Engine's Input/Output specification.
void NSIO::DebugBool | ( | string | key, |
bool | value | ||
) |
Debug print for a given boolean.
void NSIO::DebugEntity | ( | string | key, |
entity | targ | ||
) |
Debug print for a given entity.
void NSIO::DebugFloat | ( | string | key, |
float | value | ||
) |
Debug print for a given float.
void NSIO::DebugInt | ( | string | key, |
int | value | ||
) |
Debug print for a given integer.
void NSIO::DebugString | ( | string | key, |
string | value | ||
) |
Debug print for a given string.
void NSIO::DebugVector | ( | string | key, |
vector | value | ||
) |
Debug print for a given vector.
void NSIO::Destroy | ( | void | ) |
When called, will remove the entity from the game entirely.
float NSIO::GetDefAct | ( | string | activityName | ) |
Looks up a sequence from an act of a key within this entity's declaration.
bool NSIO::GetDefBool | ( | string | keyName | ) |
Looks up the boolean value of a key within this entity's declaration.
float NSIO::GetDefFloat | ( | string | keyName | ) |
Looks up the floating-point value of a key within this entity's declaration.
int NSIO::GetDefInt | ( | string | keyName | ) |
Looks up the integer value of a key within this entity's declaration.
string NSIO::GetDefString | ( | string | keyName | ) |
Looks up the string value of a key within this entity's declaration.
vector NSIO::GetDefVector | ( | string | keyName | ) |
Looks up the integer value of a key within this entity's declaration.
bool NSIO::GetSpawnBool | ( | string | keyName | ) |
Returns the boolean value of a named key in the entity's spawn data.
entity NSIO::GetSpawnEntity | ( | string | keyName, |
entity | startEntity | ||
) |
Returns an entity of a named key in the entity's spawn data.
keyName | Name of the key in the spawn data. |
startEntity | Start search at this entity. Can be world or __NULL__ . |
float NSIO::GetSpawnFloat | ( | string | keyName | ) |
Returns the floating-point value of a named key in the entity's spawn data.
int NSIO::GetSpawnInt | ( | string | keyName | ) |
Returns the integer value of a named key in the entity's spawn data.
string NSIO::GetSpawnString | ( | string | keyName | ) |
Returns the string value of a named key in the entity's spawn data.
vector NSIO::GetSpawnVector | ( | string | keyName | ) |
Returns the vector value of a named key in the entity's spawn data.
float NSIO::GetSubDefAct | ( | string | subDef, |
string | activityName | ||
) |
Like GetDefAct, but queries a specified def, falling back to reading from our own if it's not defined.
Returns the framegroup for a given activity.
bool NSIO::GetSubDefBool | ( | string | subDef, |
string | keyName | ||
) |
Like GetDefBool, but queries a specified def, falling back to reading from our own if it's not defined.
float NSIO::GetSubDefFloat | ( | string | subDef, |
string | keyName | ||
) |
Like GetDefFloat, but queries a specified def, falling back to reading from our own if it's not defined.
int NSIO::GetSubDefInt | ( | string | subDef, |
string | keyName | ||
) |
Like GetDefInt, but queries a specified def, falling back to reading from our own if it's not defined.
string NSIO::GetSubDefString | ( | string | subDef, |
string | keyName | ||
) |
Like GetDefString, but queries a specified def, falling back to reading from our own if it's not defined.
vector NSIO::GetSubDefVector | ( | string | subDef, |
string | keyName | ||
) |
Like GetDefVector, but queries a specified def, falling back to reading from our own if it's not defined.
float NSIO::GetTime | ( | void | ) |
Get the level time the entity finds itself in.
Always use this instead of the time
global. The time
global may not be valid on every type of entity. Specifically, MOVETYPE_PUSH entities only update upon movement (so that any think timers the entity may have are not triggered when it is at rest.
|
virtual |
Called when we are being prompted by another object/function with an input message.
Reimplemented in env_explosion, env_fade, env_physexplosion, env_shake, env_shooter, env_spark, func_areaportal, func_door, func_door_rotating, func_guntarget, func_plat, func_tracktrain, func_wall_toggle, game_team_master, game_text, light, logic_case, logic_relay, logic_timer, path_track, phys_convert, phys_hinge, phys_keepupright, phys_slideconstraint, point_camera, point_servercommand, point_trigger, prop_portal, scripted_sentence, trigger_changelevel, trigger_hurt, trigger_multiple, trigger_once, ambient_generic, env_beam, env_bubbles, env_cascade_light, env_fog_controller, env_funnel, env_instructor_hint, env_muzzleflash, env_smoker, env_sprite, func_conveyor, info_waypoint, logic_achievement, NSGameRules, NSClientPlayer, NSEntity, NSItem, NSMonster, NSActor, NSPhysicsConstraint, NSRenderableEntity, NSSoundScape, NSSurfacePropEntity, and NSTrigger.
|
virtual |
Handles what happens before the entity gets removed from the client game.
Reimplemented in cycler_wreckage, env_shake, func_pushable, ambient_generic, env_cascade_light, light_dynamic, prop_vehicle_driveable, NSClient, NSClientPlayer, NSPhysicsConstraint, NSRagdoll, NSSound, and NSTimer.
|
virtual |
Called when we need to re-align the entity to our parent entity.
Reimplemented in NSEntity, and NSSurfacePropEntity.
string NSIO::PrepareOutput | ( | string | strOut, |
string | strValue | ||
) |
Prepares an output field.
Commonly used within ::SpawnKey() to prepare output fields. For example: m_someOutput = PrepareOutput(m_someOutput, strValue);` This will ensure that when an entity wants to trigger multiple outputs that those can be called with a single UseOutput
call.
bool NSIO::ReadBool | ( | string | inputString | ) |
Returns a boolean value from a string.
entity NSIO::ReadEntity | ( | string | inputString | ) |
Reads an entity id from a string and returns the entity.
float NSIO::ReadFloat | ( | string | inputString | ) |
Returns a floating point value from a string value.
int NSIO::ReadInt | ( | string | inputString | ) |
Returns an integer value from a string.
string NSIO::ReadString | ( | string | inputString | ) |
Returns a string value from a string (with error checking).
vector NSIO::ReadVector | ( | string | inputString | ) |
Returns a vector from a string.
|
virtual |
Server: Called when the entity first spawns or when game-logic requests the entity to return to its original spawn state.
Reimplemented in env_particle, env_soundscape, light_environment, prop_static, button_target, cycler, env_explosion, env_message, env_model, env_shooter, env_spark, func_breakable, func_brush, func_button, func_door, func_door_rotating, func_guntarget, func_healthcharger, func_monsterclip, func_mortar_field, func_pendulum, func_physbox, func_plat, func_platrot, func_pushable, func_recharge, func_rot_button, func_rotating, func_tank, func_tracktrain, func_train, func_traincontrols, func_wall_toggle, game_counter, game_counter_set, game_zone_player, info_node, info_node_air, infodecal, item_eyescanner, item_food, item_generic, item_healthcharger, item_recharge, light, logic_auto, logic_case, logic_relay, logic_timer, momentary_door, momentary_rot_button, monster_furniture, monster_generic, monstermaker, multi_manager, multisource, path_corner, path_track, phys_ballsocket, phys_constraint, phys_constraintsystem, phys_convert, phys_hinge, phys_keepupright, phys_slideconstraint, point_camera, point_trigger, prop_door_rotating, prop_dynamic, prop_physics, prop_portal, prop_static, random_speaker, random_trigger, reserved_spot, scripted_sequence, targ_speaker, target_cdaudio, target_speaker, trigger_auto, trigger_autosave, trigger_cdaudio, trigger_changelevel, trigger_counter, trigger_endsection, trigger_hurt, trigger_look, trigger_monsterjump, trigger_once, trigger_playerfreeze, trigger_relay, trigger_teleport, trigger_transition, ambient_generic, env_beam, env_bubbles, env_cascade_light, env_fog, env_fog_controller, env_funnel, env_glow, env_instructor_hint, env_laser, env_smoker, env_sprite, func_conveyor, func_friction, func_illusionary, func_ladder, func_lod, func_useableladder, func_wall, logic_achievement, speaker, trigger_gravity, trigger_push, NSOutput, NSBrushTrigger, NSCharger, NSClientPlayer, NSEntity, NSItem, NSMonster, NSPhysicsEntity, NSPointTrigger, NSRenderableEntity, NSSound, NSSpawnPoint, NSSurfacePropEntity, NSTalkMonster, and NSTrigger.
|
virtual |
Similar to NSIO::SpawnKey
but for save-game fields.
Whatever you write into file handles within your NSIO::Save()
method needs to be read back in here.
Reimplemented in env_beverage, env_explosion, env_fade, env_global, env_hudhint, env_message, env_physexplosion, env_shake, env_shooter, env_spark, func_areaportal, func_breakable, func_brush, func_button, func_door, func_door_rotating, func_guntarget, func_healthcharger, func_mortar_field, func_pendulum, func_plat, func_platrot, func_pushable, func_recharge, func_rot_button, func_rotating, func_tank, func_trackchange, func_tracktrain, func_train, func_wall_toggle, game_counter, game_counter_set, game_player_equip, game_player_hurt, game_score, game_team_master, game_text, game_zone_player, info_hint, infodecal, item_food, item_generic, item_healthcharger, item_recharge, light, logic_auto, logic_case, logic_timer, momentary_rot_button, NSMomentary, monstermaker, multi_manager, path_corner, path_track, phys_convert, phys_hinge, phys_keepupright, phys_slideconstraint, player_loadsaved, point_camera, point_trigger, prop_door_rotating, random_speaker, random_trigger, scripted_sentence, scripted_sequence, targ_speaker, target_cdaudio, trigger_auto, trigger_autosave, trigger_cdaudio, trigger_changelevel, trigger_changetarget, trigger_counter, trigger_hurt, trigger_look, trigger_monsterjump, trigger_multiple, trigger_once, trigger_relay, trigger_teleport, ambient_generic, env_bubbles, env_cascade_light, env_fog, env_fog_controller, env_funnel, env_instructor_hint, env_muzzleflash, env_smoker, func_conveyor, info_waypoint, logic_achievement, speaker, trigger_gravity, trigger_push, NSWorldspawn, NSGameRules, NSAttack, NSCharger, NSClient, NSClientPlayer, NSClientSpectator, NSEntity, NSItem, NSMonster, NSMoverEntity, NSActor, NSPhysicsConstraint, NSPhysicsEntity, NSPointTrigger, NSProjectile, NSRenderableEntity, NSSoundScape, NSSquadMonster, NSSurfacePropEntity, NSTalkMonster, NSTimer, NSTrigger, NSVehicle, and NSWeapon.
|
virtual |
Called when the entity has been successfully restored from a savegame file.
Reimplemented in light, logic_auto, trigger_auto, trigger_changelevel, NSGameRules, and NSActor.
|
virtual |
Handles saving a copy of this entity to a given filehandle.
Within you want to use the NSIO::SaveFloat() etc. methods to write the internal member attributes to the specified file handle.
Reimplemented in env_beverage, env_explosion, env_fade, env_global, env_hudhint, env_message, env_physexplosion, env_shake, env_shooter, env_spark, func_areaportal, func_breakable, func_brush, func_button, func_door, func_door_rotating, func_guntarget, func_healthcharger, func_mortar_field, func_pendulum, func_plat, func_platrot, func_pushable, func_recharge, func_rot_button, func_rotating, func_tank, func_trackchange, func_tracktrain, func_train, func_wall_toggle, game_counter, game_counter_set, game_player_equip, game_player_hurt, game_score, game_team_master, game_text, game_zone_player, info_hint, infodecal, item_food, item_generic, item_healthcharger, item_recharge, light, logic_auto, logic_case, logic_timer, momentary_rot_button, NSMomentary, monstermaker, multi_manager, path_corner, path_track, phys_convert, phys_hinge, phys_keepupright, phys_slideconstraint, player_loadsaved, point_camera, point_trigger, prop_door_rotating, random_speaker, random_trigger, scripted_sentence, scripted_sequence, targ_speaker, target_cdaudio, trigger_auto, trigger_autosave, trigger_cdaudio, trigger_changelevel, trigger_changetarget, trigger_counter, trigger_hurt, trigger_look, trigger_monsterjump, trigger_multiple, trigger_once, trigger_relay, trigger_teleport, ambient_generic, env_bubbles, env_cascade_light, env_fog, env_fog_controller, env_funnel, env_instructor_hint, env_muzzleflash, env_smoker, func_conveyor, info_waypoint, logic_achievement, speaker, trigger_gravity, trigger_push, NSWorldspawn, NSGameRules, NSAttack, NSCharger, NSClient, NSClientPlayer, NSClientSpectator, NSEntity, NSItem, NSMonster, NSMoverEntity, NSActor, NSPhysicsConstraint, NSPhysicsEntity, NSPointTrigger, NSProjectile, NSRenderableEntity, NSSoundScape, NSSquadMonster, NSSurfacePropEntity, NSTalkMonster, NSTimer, NSTrigger, NSVehicle, and NSWeapon.
void NSIO::SaveBool | ( | float | handle, |
string | key, | ||
bool | value | ||
) |
Saves a boolean key/value pair to a filehandle.
void NSIO::SaveEntity | ( | float | handle, |
string | key, | ||
entity | targ | ||
) |
Saves an entity id key/value pair to a filehandle.
void NSIO::SaveFloat | ( | float | handle, |
string | key, | ||
float | value | ||
) |
Saves a floating point key/value pair to a filehandle.
void NSIO::SaveInt | ( | float | handle, |
string | key, | ||
int | value | ||
) |
Saves a integer key/value pair to a filehandle.
void NSIO::SaveString | ( | float | handle, |
string | key, | ||
string | value | ||
) |
Saves a string key/value pair to a filehandle.
void NSIO::SaveVector | ( | float | handle, |
string | key, | ||
vector | value | ||
) |
Saves a vector key/value pair to a filehandle.
void NSIO::SetEditorIcon | ( | string | newIcon | ) |
Sets the editor icon.
Must be 16x16 px and located in gfx/icon16/
.
|
virtual |
Called when the entity is fulled initialized.
Any spawn key/value info pairs have already been dealt with. So now we can make full decisions on the entity. Always make sure to call super::Spawned();
inside your method when overriding.
Reimplemented in NSInteractiveSurface, env_sun, func_dustcloud, func_dustmotes, func_smokevolume, infodecal, prop_static, cycler_wreckage, env_beverage, env_explosion, env_global, env_shooter, env_spark, func_areaportal, func_breakable, func_button, func_door, func_door_rotating, func_guntarget, func_healthcharger, func_plat, func_pushable, func_recharge, func_tank, func_trackchange, func_tracktrain, func_train, info_hint, infodecal, item_healthcharger, item_recharge, light, light_environment, logic_auto, logic_case, logic_timer, multi_manager, path_corner, phys_convert, point_trigger, scripted_sentence, trigger_autosave, trigger_changelevel, trigger_hurt, trigger_look, trigger_multiple, trigger_once, trigger_teleport, ambient_generic, env_bubbles, env_fog, env_sprite, func_lod, func_tankmortar, logic_achievement, prop_vehicle_driveable, speaker, NSWorldspawn, NSAttack, NSCharger, NSClientPlayer, NSEntity, NSItem, NSMonster, NSActor, NSPhysicsConstraint, NSPhysicsEntity, NSProjectile, NSSound, NSSquadMonster, NSSurfacePropEntity, and NSWeapon.
|
virtual |
This method handles entity key/value pairs on map load.
You can easily convert the strValue
parameter using the ReadFloat etc. methods that are part of NSIO.
Reimplemented in env_fire, NSInteractiveSurface, env_cubemap, env_particle, env_soundscape, env_sun, func_dustcloud, func_dustmotes, func_smokevolume, infodecal, light_environment, point_message, prop_static, sky_camera, env_beverage, env_explosion, env_fade, env_global, env_hudhint, env_message, env_model, env_physexplosion, env_shake, env_shooter, env_sound, env_spark, func_areaportal, func_breakable, func_brush, func_button, func_door, func_door_rotating, func_guntarget, func_healthcharger, func_mortar_field, func_pendulum, func_physbox, func_plat, func_platrot, func_pushable, func_recharge, func_rot_button, func_rotating, func_tank, func_trackchange, func_tracktrain, func_train, game_counter, game_counter_set, game_player_equip, game_player_hurt, game_score, game_team_master, game_text, game_zone_player, info_hint, infodecal, item_eyescanner, item_generic, item_healthcharger, item_recharge, light, light_environment, logic_auto, logic_case, logic_relay, logic_timer, momentary_door, momentary_rot_button, monster_furniture, monstermaker, multi_manager, path_corner, path_track, phys_convert, phys_hinge, phys_keepupright, phys_slideconstraint, player_loadsaved, point_camera, point_trigger, prop_door_rotating, prop_dynamic, prop_physics, prop_portal, random_speaker, random_trigger, scripted_sentence, scripted_sequence, targ_speaker, target_cdaudio, target_speaker, trigger_auto, trigger_cdaudio, trigger_changelevel, trigger_changetarget, trigger_counter, trigger_hurt, trigger_look, trigger_monsterjump, trigger_multiple, trigger_once, trigger_relay, trigger_teleport, ambient_generic, env_beam, env_bubbles, env_cascade_light, env_fog, env_fog_controller, env_funnel, env_glow, env_instructor_hint, env_laser, env_muzzleflash, env_shockwave, env_smoker, env_sprite, func_conveyor, func_friction, func_lod, func_useableladder, info_waypoint, light_dynamic, logic_achievement, speaker, trigger_gravity, trigger_push, NSWorldspawn, NSAttack, NSCharger, NSEntity, NSItem, NSMonster, NSMoverEntity, NSPhysicsConstraint, NSPhysicsEntity, NSPointTrigger, NSProjectile, NSRenderableEntity, NSSoundScape, NSSquadMonster, NSSurfacePropEntity, NSTalkMonster, NSTrigger, and NSWeapon.
|
virtual |
Called when the entity has successfully completed a level transition.
Reimplemented in func_tracktrain.
void NSIO::UseOutput | ( | entity | act, |
string | outname | ||
) |
Triggers an output field that has been created beforehand.