Actor Class Reference

#include <actors.h>

Inheritance diagram for Actor:

Inheritance graph
[legend]
Collaboration diagram for Actor:

Collaboration graph
[legend]
List of all members.

Public Types

enum  Attack_mode {
  nearest = 0, weakest = 1, strongest = 2, beserk = 3,
  protect = 4, defend = 5, flank = 6, flee = 7,
  random = 8, manual = 9
}
enum  Alignment { neutral = 0, friendly = 1, hostile = 2, unknown_align = 3 }
enum  Spots {
  head = 0, back = 1, belt = 2, lhand = 3,
  lfinger = 4, legs = 5, feet = 6, rfinger = 7,
  rhand = 8, torso = 9, neck = 10, ammo = 11,
  back2h_spot = 12, shield_spot = 13, ears_spot = 14, cloak_spot = 15,
  hands2_spot = 16, ucont_spot = 17, lrhand = 100, lrfinger = 101,
  special_spot = 102
}
enum  Serpent_flags { naked = 8 }
enum  type_flags {
  tf_fly = 4, tf_walk = 5, tf_swim = 6, tf_ethereal = 7,
  tf_want_primary = 8, tf_sex = 9, tf_bleeding = 10, tf_in_party = 12,
  tf_in_action = 13, tf_conjured = 14, tf_summonned = 15
}
enum  Item_properties {
  strength = 0, dexterity = 1, intelligence = 2, health = 3,
  combat = 4, mana = 5, magic = 6, training = 7,
  exp = 8, food_level = 9
}
enum  Frames {
  standing = 0, step_right_frame = 1, step_left_frame = 2, ready_frame = 3,
  raise1_frame = 4, reach1_frame = 5, strike1_frame = 6, raise2_frame = 7,
  reach2_frame = 8, strike2_frame = 9, sit_frame = 10, bow_frame = 11,
  kneel_frame = 12, sleep_frame = 13, up_frame = 14, out_frame = 15
}
enum  FIS_Type { FIS_Other = 0, FIS_2Hand = 1, FIS_2Finger = 2, FIS_Spell = 3 }

Public Member Functions

 Actor (const std::string &nm, int shapenum, int num=-1, int uc=-1)
 ~Actor ()
int is_blocked (Tile_coord &t, Tile_coord *f=0)
int ready_ammo ()
void ready_best_weapon ()
void unready_weapon (int spot)
int add_dirty (int figure_rect=0)
void change_frame (int frnum)
int figure_weapon_pos (int &weapon_x, int &weapon_y, int &weapon_frame)
void use_food ()
void check_temperature (bool freeze)
Frames_sequenceget_frames (int dir)
int & get_step_index ()
int get_attack_frames (int weapon, bool projectile, int dir, signed char *frames) const
int free_hand () const
int free_finger () const
bool is_two_handed () const
bool is_two_fingered () const
int has_light_source () const
Attack_mode get_attack_mode ()
void set_attack_mode (Attack_mode amode, bool byuser=false)
bool did_user_set_attack () const
bool is_combat_protected () const
void set_combat_protected (bool v)
int get_oppressor () const
void set_oppressor (int opp)
int get_face_shapenum () const
int get_usecode () const
Scheduleget_schedule () const
int get_frame_time () const
void set_frame_time (int ftime)
void stand_at_rest ()
void clear_rest_time ()
void resting (int msecs)
bool is_moving () const
bool is_dormant () const
bool is_dead () const
bool is_in_party () const
void set_dormant ()
Actor_actionget_action ()
void set_action (Actor_action *newact)
void notify_object_gone (Game_object *obj)
Tile_coord get_dest ()
void walk_to_tile (Tile_coord dest, int speed=250, int delay=0, int maxblk=3)
void walk_to_tile (int tx, int ty, int tz, int speed=250, int delay=0, int maxblk=3)
int walk_path_to_tile (Tile_coord src, Tile_coord dest, int speed=250, int delay=0, int dist=0, int maxblk=3)
int walk_path_to_tile (Tile_coord dest, int speed=250, int delay=0, int dist=0, int maxblk=3)
void start (int speed=250, int delay=0)
void stop ()
void follow (Actor *leader)
int approach_another (Actor *other, bool wait=false)
void set_target (Game_object *obj, bool start_combat=false)
Game_objectget_target ()
bool fits_in_spot (Game_object *obj, int spot, FIS_Type type=FIS_Other)
void get_prefered_slots (Game_object *obj, int &prefered, int &alternate, FIS_Type &fistype)
int find_best_spot (Game_object *obj)
int get_prev_schedule_type ()
void restore_schedule ()
void set_schedule_type (int new_schedule_type, Schedule *newsched=0)
virtual void set_schedule_and_loc (int new_schedule_type, Tile_coord dest, int delay=-1)
int get_schedule_type () const
int get_alignment () const
void set_alignment (short a)
virtual void switched_chunks (Map_chunk *, Map_chunk *)
virtual void update_schedule (int hour3, int backwards=0, int delay=-1)
virtual void paint ()
virtual void activate (int event=1)
virtual bool edit ()
virtual int drop (Game_object *obj)
virtual std::string get_name () const
std::string get_npc_name () const
void set_npc_name (const char *n)
void set_property (int prop, int val)
bool reduce_health (int delta, Actor *attacker=0)
int get_property (int prop) const
int get_effective_prop (int prop) const
bool is_dying () const
int get_level () const
Npc_timer_listneed_timers ()
virtual void set_flag (int flag)
virtual void set_siflag (int flag)
void set_type_flag (int flag)
virtual void clear_flag (int flag)
virtual void clear_siflag (int flag)
void clear_type_flag (int flag)
virtual int get_siflag (int flag) const
int get_type_flag (int flag) const
void set_type_flags (unsigned short tflags)
int get_skin_color () const
void set_skin_color (int color)
virtual int get_type_flags () const
unsigned char get_ident ()
void set_ident (unsigned char id)
int get_temperature () const
void set_temperature (int t)
int figure_warmth ()
bool is_unused () const
void set_unused (bool tf)
int get_npc_num () const
int get_party_id () const
void set_party_id (int i)
void set_usecode_dir (int d)
int get_usecode_dir () const
virtual Actoras_actor ()
void init_readied ()
virtual void remove (Game_object *obj)
virtual bool add (Game_object *obj, bool dont_check=false, bool combine=false)
virtual int add_readied (Game_object *obj, int index, int dont_check=0, int force_pos=0)
virtual int find_readied (Game_object *obj)
virtual Game_objectget_readied (int index) const
virtual void call_readied_usecode (int index, Game_object *obj, int eventid)
virtual int get_max_weight ()
virtual void change_member_shape (Game_object *obj, int newshape)
virtual int move_aside (Actor *for_actor, int dir)
virtual int get_rotated_frame (int quads)
virtual int get_armor_points ()
virtual Weapon_infoget_weapon (int &points, int &shape)
Weapon_infoget_weapon (int &points)
bool figure_hit_points (Actor *attacker, int weapon_shape, int ammo_shape)
virtual Game_objectattacked (Actor *attacker, int weapon_shape=0, int ammo_shape=0)
virtual void die (Actor *attacker)
Actorresurrect (Dead_body *body)
Monster_actorclone ()
void mend_hourly ()
void read (DataSource *nfile, int num, bool has_usecode, bool &fix_unused)
virtual void write_ireg (DataSource *out)
virtual int get_ireg_size ()
void write (DataSource *nfile)
virtual void write_contents (DataSource *out)
void set_actor_shape ()
void set_polymorph (int shape)
void set_polymorph_default ()
int get_polymorph ()
int get_shape_real ()
int get_sexed_coloured_shape ()
virtual void set_schedules (Schedule_change *list, int cnt)
virtual void set_schedule_time_type (int time, int type)
virtual void set_schedule_time_location (int time, int x, int y)
virtual void remove_schedule (int time)
virtual void get_schedules (Schedule_change *&list, int &cnt)
void show_inventory ()
int inventory_shapenum ()
bool was_hit ()
void cache_out ()

Static Public Member Functions

static void init_default_frames ()
static void get_tile_info (Actor *actor, Game_window *gwin, Map_chunk *nlist, int tx, int ty, int &water, int &poison)
static void update_from_studio (unsigned char *data, int datalen)
static bool roll_to_win (int attacker, int defender)

Protected Member Functions

void paint_weapon ()
void init ()
void movef (Map_chunk *old_chunk, Map_chunk *new_chunk, int new_sx, int new_sy, int new_frame, int new_lift)

Protected Attributes

std::string name
int usecode
bool usecode_assigned
bool unused
short npc_num
short face_num
short party_id
int properties [12]
unsigned char temperature
short shape_save
short oppressor
Game_objecttarget
Attack_mode attack_mode
Frames_sequence ** frames
unsigned char schedule_type
Tile_coord schedule_loc
unsigned char next_schedule
Scheduleschedule
bool dormant
bool hit
bool combat_protected
bool user_set_attack
short alignment
Game_objectspots [18]
bool two_handed
bool two_fingered
unsigned char light_sources
unsigned char usecode_dir
unsigned siflags:32
unsigned type_flags:32
unsigned char ident
int skin_color
Actor_actionaction
int frame_time
int step_index
Npc_timer_listtimers
Rectangle weapon_rect
long rest_time

Static Protected Attributes

static const short party_pos [4][10][2]
static Frames_sequenceavatar_frames [4]
static Frames_sequencenpc_frames [4]

Static Private Attributes

static Actorediting

Friends

class Clear_hit

Detailed Description

Definition at line 48 of file actors.h.


Member Enumeration Documentation

enum Actor::Attack_mode

Enumerator:
nearest 
weakest 
strongest 
beserk 
protect 
defend 
flank 
flee 
random 
manual 

Definition at line 66 of file actors.h.

enum Actor::Alignment

Enumerator:
neutral 
friendly 
hostile 
unknown_align 

Definition at line 147 of file actors.h.

enum Actor::Spots

Enumerator:
head 
back 
belt 
lhand 
lfinger 
legs 
feet 
rfinger 
rhand 
torso 
neck 
ammo 
back2h_spot 
shield_spot 
ears_spot 
cloak_spot 
hands2_spot 
ucont_spot 
lrhand 
lrfinger 
special_spot 

Definition at line 153 of file actors.h.

enum Actor::Serpent_flags

Enumerator:
naked 

Definition at line 208 of file actors.h.

enum Actor::type_flags

Enumerator:
tf_fly 
tf_walk 
tf_swim 
tf_ethereal 
tf_want_primary 
tf_sex 
tf_bleeding 
tf_in_party 
tf_in_action 
tf_conjured 
tf_summonned 

Definition at line 215 of file actors.h.

enum Actor::Item_properties

Enumerator:
strength 
dexterity 
intelligence 
health 
combat 
mana 
magic 
training 
exp 
food_level 

Definition at line 228 of file actors.h.

enum Actor::Frames

Enumerator:
standing 
step_right_frame 
step_left_frame 
ready_frame 
raise1_frame 
reach1_frame 
strike1_frame 
raise2_frame 
reach2_frame 
strike2_frame 
sit_frame 
bow_frame 
kneel_frame 
sleep_frame 
up_frame 
out_frame 

Definition at line 240 of file actors.h.

enum Actor::FIS_Type

Enumerator:
FIS_Other 
FIS_2Hand 
FIS_2Finger 
FIS_Spell 

Definition at line 259 of file actors.h.


Constructor & Destructor Documentation

Actor::Actor ( const std::string &  nm,
int  shapenum,
int  num = -1,
int  uc = -1 
)

Definition at line 445 of file actors.cc.

Actor::~Actor (  ) 

Definition at line 473 of file actors.cc.


Member Function Documentation

void Actor::paint_weapon (  )  [protected]

Definition at line 1571 of file actors.cc.

References ShapeID::get_shape(), Game_window::get_shape_location(), Game_window::get_shape_rect(), ShapeID::get_shapenum(), gwin, Obj_flags::invisible, ShapeID::paint_invisible(), and ShapeID::paint_shape().

Here is the call graph for this function:

void Actor::init (  )  [protected]

Definition at line 193 of file actors.cc.

void Actor::movef ( Map_chunk old_chunk,
Map_chunk new_chunk,
int  new_sx,
int  new_sy,
int  new_frame,
int  new_lift 
) [inline, protected]

Reimplemented in Npc_actor.

Definition at line 423 of file actors.cc.

References Map_chunk::add().

Referenced by Npc_actor::movef(), and Main_actor::step().

Here is the call graph for this function:

void Actor::init_default_frames (  )  [static]

Definition at line 679 of file actors.cc.

References east, north, south, and west.

int Actor::is_blocked ( Tile_coord t,
Tile_coord f = 0 
)

Definition at line 394 of file actors.cc.

References c_tiles_per_chunk, Exult_server::info, Map_chunk::is_blocked(), Map_chunk::setup_cache(), Tile_coord::tx, Tile_coord::ty, and Tile_coord::tz.

Here is the call graph for this function:

int Actor::ready_ammo (  ) 

Definition at line 212 of file actors.cc.

References ammo, c_any_framenum, c_any_qual, c_any_shapenum, Weapon_info::get_ammo_consumed(), ShapeID::get_shapenum(), get_weapon(), In_ammo_family(), Exult_server::obj, and Game_object::remove_this().

Here is the call graph for this function:

void Actor::ready_best_weapon (  ) 

Definition at line 250 of file actors.cc.

References c_any_framenum, c_any_qual, c_any_shapenum, Weapon_info::get_damage(), get_weapon(), Exult_server::info, Exult_server::obj, other, Game_object::remove_this(), and two_handed_weapon.

Here is the call graph for this function:

void Actor::unready_weapon ( int  spot  ) 

Definition at line 315 of file actors.cc.

References Exult_server::info, and Exult_server::obj.

int Actor::add_dirty ( int  figure_rect = 0  ) 

Definition at line 338 of file actors.cc.

References Game_window::add_dirty(), Game_window::clip_to_win(), Rectangle::enlarge(), Game_window::get_shape_location(), Game_window::get_shape_rect(), ShapeID::get_shapenum(), gwin, Rectangle::shift(), and Rectangle::w.

Referenced by Clear_hit::handle_event().

Here is the call graph for this function:

void Actor::change_frame ( int  frnum  ) 

Reimplemented from Game_object.

Definition at line 378 of file actors.cc.

Referenced by Face_pos_actor_action::handle_event(), Pickup_actor_action::handle_event(), Frames_actor_action::handle_event(), Bake_schedule::now_what(), Path_walking_actor_action::stop(), and Game_window::theft().

int Actor::figure_weapon_pos ( int &  weapon_x,
int &  weapon_y,
int &  weapon_frame 
)

Definition at line 1618 of file actors.cc.

References Get_dir_from_frame(), ShapeID::get_info(), ShapeID::get_shapenum(), Shape_info::get_weapon_offset(), gwin, Game_window::in_combat(), and Is_attack_frame().

Here is the call graph for this function:

void Actor::use_food (  ) 

Definition at line 487 of file actors.cc.

References first_hunger, first_needfood, first_starving, Game::get_game_type(), Ucscript::say, and SERPENT_ISLE.

Here is the call graph for this function:

void Actor::check_temperature ( bool  freeze  ) 

Definition at line 521 of file actors.cc.

References GAME_SI, Ucscript::say, and Schedule::wait.

Frames_sequence* Actor::get_frames ( int  dir  )  [inline]

Definition at line 140 of file actors.h.

References frames.

Referenced by Path_walking_actor_action::handle_event(), Usecode_script::step(), and Path_walking_actor_action::stop().

int& Actor::get_step_index (  )  [inline]

Definition at line 142 of file actors.h.

References step_index.

Referenced by Path_walking_actor_action::handle_event().

int Actor::get_attack_frames ( int  weapon,
bool  projectile,
int  dir,
signed char *  frames 
) const

Definition at line 634 of file actors.cc.

References Ucscript::frame, Get_weapon_frames(), Shape_frame::is_empty(), sea_serpent_attack_frames, standing, and visible_frames.

Here is the call graph for this function:

int Actor::free_hand (  )  const [inline]

Definition at line 178 of file actors.h.

References lhand, rhand, spots, and two_handed.

int Actor::free_finger (  )  const [inline]

Definition at line 183 of file actors.h.

References lfinger, rfinger, spots, and two_fingered.

bool Actor::is_two_handed (  )  const [inline]

Definition at line 189 of file actors.h.

References two_handed.

Referenced by Actor_gump::paint().

bool Actor::is_two_fingered (  )  const [inline]

Definition at line 190 of file actors.h.

References two_fingered.

Referenced by Actor_gump::paint().

int Actor::has_light_source (  )  const [inline]

Definition at line 191 of file actors.h.

References light_sources.

Attack_mode Actor::get_attack_mode (  )  [inline]

Definition at line 193 of file actors.h.

References attack_mode.

Referenced by Combat_mode_button::Combat_mode_button().

void Actor::set_attack_mode ( Attack_mode  amode,
bool  byuser = false 
) [inline]

Definition at line 195 of file actors.h.

References attack_mode, and user_set_attack.

Referenced by Game_window::toggle_combat().

bool Actor::did_user_set_attack (  )  const [inline]

Definition at line 197 of file actors.h.

References user_set_attack.

bool Actor::is_combat_protected (  )  const [inline]

Definition at line 199 of file actors.h.

References combat_protected.

Referenced by Halo_button::Halo_button().

void Actor::set_combat_protected ( bool  v  )  [inline]

Definition at line 201 of file actors.h.

References combat_protected.

int Actor::get_oppressor (  )  const [inline]

Definition at line 203 of file actors.h.

References oppressor.

void Actor::set_oppressor ( int  opp  )  [inline]

Definition at line 205 of file actors.h.

References oppressor.

int Actor::get_face_shapenum (  )  const [inline]

Definition at line 266 of file actors.h.

References face_num.

Referenced by Conversation::show_avatar_choices(), and Conversation::show_face().

int Actor::get_usecode (  )  const [inline]

Definition at line 268 of file actors.h.

References ShapeID::get_shapenum(), and usecode.

Referenced by CheatScreen::NPCDisplay().

Here is the call graph for this function:

Schedule* Actor::get_schedule (  )  const [inline]

Definition at line 270 of file actors.h.

References schedule.

Referenced by Usecode_internal::UI_nap_time().

int Actor::get_frame_time (  )  const [inline]

Definition at line 272 of file actors.h.

References frame_time.

Referenced by follow(), Path_walking_actor_action::handle_event(), and Follow_avatar_schedule::now_what().

void Actor::set_frame_time ( int  ftime  )  [inline]

Definition at line 274 of file actors.h.

References frame_time.

Referenced by Path_walking_actor_action::handle_event().

void Actor::stand_at_rest (  ) 

Definition at line 720 of file actors.cc.

References Obj_flags::asleep, Schedule::follow_avatar, and Ucscript::frame.

Referenced by resting().

void Actor::clear_rest_time (  )  [inline]

Definition at line 277 of file actors.h.

References rest_time.

void Actor::resting ( int  msecs  )  [inline]

Definition at line 279 of file actors.h.

References rest_time, and stand_at_rest().

Referenced by Handle_events().

Here is the call graph for this function:

bool Actor::is_moving (  )  const [inline]

Definition at line 284 of file actors.h.

References frame_time.

Referenced by follow(), Follow_avatar_schedule::now_what(), and Wait_for_arrival().

bool Actor::is_dormant (  )  const [inline]

Definition at line 286 of file actors.h.

References dormant.

Referenced by Path_walking_actor_action::handle_event().

bool Actor::is_dead (  )  const [inline]

Definition at line 288 of file actors.h.

References Obj_flags::dead, and Ireg_game_object::flags.

Referenced by Field_object::activate(), attacked(), follow(), Party_manager::move_followers(), Need_new_opponent(), Game_window::teleport_party(), Usecode_internal::UI_approach_avatar(), and Monster_actor::write().

bool Actor::is_in_party (  )  const [inline]

Definition at line 290 of file actors.h.

References Ireg_game_object::flags, and Obj_flags::in_party.

Referenced by die(), CheatScreen::FlagCheck(), CheatScreen::FlagMenu(), Game_window::paused_combat_select(), and reduce_health().

void Actor::set_dormant (  )  [inline]

Definition at line 292 of file actors.h.

References dormant.

Actor_action* Actor::get_action (  )  [inline]

Definition at line 294 of file actors.h.

References action.

Referenced by Actor_action::handle_event_safely(), and Wait_for_arrival().

void Actor::set_action ( Actor_action newact  ) 

Definition at line 737 of file actors.cc.

Referenced by Bake_schedule::now_what(), Schedule::set_action_sequence(), Game_window::teleport_party(), and Usecode_internal::UI_move_object().

void Actor::notify_object_gone ( Game_object obj  ) 

Definition at line 755 of file actors.cc.

References Exult_server::obj.

Referenced by Pickup_actor_action::handle_event().

Tile_coord Actor::get_dest (  ) 

Definition at line 768 of file actors.cc.

Referenced by follow().

void Actor::walk_to_tile ( Tile_coord  dest,
int  speed = 250,
int  delay = 0,
int  maxblk = 3 
)

Definition at line 783 of file actors.cc.

Referenced by walk_to_tile().

void Actor::walk_to_tile ( int  tx,
int  ty,
int  tz,
int  speed = 250,
int  delay = 0,
int  maxblk = 3 
) [inline]

Definition at line 304 of file actors.h.

References walk_to_tile().

Here is the call graph for this function:

int Actor::walk_path_to_tile ( Tile_coord  src,
Tile_coord  dest,
int  speed = 250,
int  delay = 0,
int  dist = 0,
int  maxblk = 3 
)

Definition at line 807 of file actors.cc.

Referenced by walk_path_to_tile().

int Actor::walk_path_to_tile ( Tile_coord  dest,
int  speed = 250,
int  delay = 0,
int  dist = 0,
int  maxblk = 3 
) [inline]

Definition at line 310 of file actors.h.

References Game_object::get_tile(), and walk_path_to_tile().

Here is the call graph for this function:

void Actor::start ( int  speed = 250,
int  delay = 0 
)

Definition at line 834 of file actors.cc.

References Time_queue::add(), Game::get_ticks(), Game_window::get_tqueue(), gwin, and Time_queue::remove().

Referenced by Bake_schedule::now_what().

Here is the call graph for this function:

void Actor::stop (  ) 

Definition at line 856 of file actors.cc.

Referenced by Get_click(), and set_schedule_and_loc().

void Actor::follow ( Actor leader  ) 

Definition at line 890 of file actors.cc.

References action, Approach(), Tile_coord::distance(), Map_chunk::find_spot(), first_catchup, Actor_action::following_smart_path(), get_dest(), get_frame_time(), Game_object::get_tile(), Game_window::get_win_tile_rect(), gwin, is_dead(), is_moving(), last_catchup, Game_window::paint(), Ucscript::say, Tile_coord::tx, Tile_coord::ty, Tile_coord::tz, Rectangle::w, and Game_window::walk_in_formation.

Here is the call graph for this function:

int Actor::approach_another ( Actor other,
bool  wait = false 
)

Definition at line 986 of file actors.cc.

References Map_chunk::find_spot(), Game_window::get_std_delay(), Game_window::get_win_tile_rect(), gwin, Rectangle::has_point(), other, Tile_coord::tx, Tile_coord::ty, Tile_coord::tz, Wait_for_arrival(), and Actor_action::walk_to_tile().

Referenced by Game_window::attack_avatar(), and Usecode_internal::UI_approach_avatar().

Here is the call graph for this function:

void Actor::get_tile_info ( Actor actor,
Game_window gwin,
Map_chunk nlist,
int  tx,
int  ty,
int &  water,
int &  poison 
) [static]

Definition at line 1021 of file actors.cc.

References BLACK_GATE, feet, Map_chunk::get_flat(), ShapeID::get_framenum(), Game::get_game_type(), ShapeID::get_info(), Shape_info::get_monster_info(), ShapeID::get_shapenum(), Shape_info::is_poisonous(), Shape_info::is_water(), Monster_info::poison_safe(), and SERPENT_ISLE.

Referenced by Actor_pathfinder_client::get_step_cost().

Here is the call graph for this function:

void Actor::set_target ( Game_object obj,
bool  start_combat = false 
)

Definition at line 1068 of file actors.cc.

References Schedule::combat, and Exult_server::obj.

Referenced by Game_window::attack_avatar(), and Combat_schedule::now_what().

Game_object* Actor::get_target (  )  [inline]

Definition at line 326 of file actors.h.

References target.

Referenced by Combat_schedule::find_opponents(), and Combat_schedule::now_what().

bool Actor::fits_in_spot ( Game_object obj,
int  spot,
FIS_Type  type = FIS_Other 
)

Definition at line 1084 of file actors.cc.

References back2h_spot, belt, BLACK_GATE, FIS_2Finger, FIS_2Hand, FIS_Spell, Game::get_game_type(), Paperdoll_gump::IsObjectAllowed(), lfinger, lhand, Exult_server::obj, rfinger, rhand, shield_spot, spots, and two_fingered.

Here is the call graph for this function:

void Actor::get_prefered_slots ( Game_object obj,
int &  prefered,
int &  alternate,
FIS_Type fistype 
)

Definition at line 1129 of file actors.cc.

References ammo_si, ammunition, amulet_si, armour_si, backpack_si, belt_si, BLACK_GATE, boots_si, cloak_si, earrings_si, foot_armor, Game::get_game_type(), gloves, gloves_si, head_armor, helm_si, Exult_server::info, Paperdoll_gump::IsObjectAllowed(), leg_armor, leggings_si, neck_armor, Exult_server::obj, other, other_spell, other_spell_si, ring, ring_si, SERPENT_ISLE, spell, spell_si, torso_armor, two_handed_si, two_handed_weapon, and usecode_container_si.

Here is the call graph for this function:

int Actor::find_best_spot ( Game_object obj  ) 

Definition at line 1289 of file actors.cc.

References Game::get_game_type(), Exult_server::obj, and SERPENT_ISLE.

Here is the call graph for this function:

int Actor::get_prev_schedule_type (  ) 

Definition at line 1328 of file actors.cc.

void Actor::restore_schedule (  ) 

Definition at line 1341 of file actors.cc.

References Schedule::walk_to_schedule.

Referenced by Game_window::read_npcs().

void Actor::set_schedule_type ( int  new_schedule_type,
Schedule newsched = 0 
)

Definition at line 1362 of file actors.cc.

References Game_window::add_dirty(), Schedule::bake, Schedule::blacksmith, Schedule::combat, Pace_schedule::create_horiz(), Pace_schedule::create_vert(), Schedule::dance, Schedule::desk_work, Schedule::duel, Schedule::eat, Schedule::eat_at_inn, Schedule::farm, Schedule::follow_avatar, Schedule::graze, gwin, Schedule::horiz_pace, Schedule::hound, Schedule::kid_games, Schedule::lab, Schedule::loiter, Schedule::miner, Schedule::patrol, Schedule::preach, Schedule::sew, Schedule::shy, Schedule::sit, Schedule::sleep, standing, Schedule::talk, Schedule::tend_shop, Schedule::thief, Schedule::vert_pace, Schedule::wait, Schedule::waiter, Schedule::walk_to_schedule, and Schedule::wander.

Referenced by CheatScreen::BusinessActivate(), cache_out(), Monster_actor::create(), set_schedule_and_loc(), Game_window::toggle_combat(), and Usecode_internal::UI_nap_time().

Here is the call graph for this function:

void Actor::set_schedule_and_loc ( int  new_schedule_type,
Tile_coord  dest,
int  delay = -1 
) [virtual]

Definition at line 1507 of file actors.cc.

References c_tiles_per_chunk, dormant, Schedule::ending(), Game_object::get_cx(), Game_object::get_cy(), Game_singletons::gmap, Game_map::is_chunk_read(), Ireg_game_object::move(), next_schedule, Schedule::now_what(), schedule, schedule_loc, schedule_type, set_schedule_type(), stop(), Tile_coord::tx, Tile_coord::ty, Tile_coord::tz, and Schedule::walk_to_schedule.

Here is the call graph for this function:

int Actor::get_schedule_type (  )  const [inline]

Definition at line 342 of file actors.h.

References schedule_type.

Referenced by attacked(), CheatScreen::BusinessDisplay(), cache_out(), CheatScreen::NPCDisplay(), Game_window::teleport_party(), and Game_window::toggle_combat().

int Actor::get_alignment (  )  const [inline]

Definition at line 345 of file actors.h.

References alignment.

Referenced by Combat_schedule::find_opponents().

void Actor::set_alignment ( short  a  )  [inline]

Definition at line 347 of file actors.h.

References alignment.

Referenced by Monster_actor::create(), and Usecode_internal::UI_create_new_object().

virtual void Actor::switched_chunks ( Map_chunk ,
Map_chunk  
) [inline, virtual]

Reimplemented in Main_actor, and Npc_actor.

Definition at line 350 of file actors.h.

virtual void Actor::update_schedule ( int  hour3,
int  backwards = 0,
int  delay = -1 
) [inline, virtual]

Reimplemented in Npc_actor.

Definition at line 353 of file actors.h.

Referenced by Usecode_internal::UI_run_schedule().

void Actor::paint (  )  [virtual]

Reimplemented from Ireg_game_object.

Reimplemented in Npc_actor, and Monster_actor.

Definition at line 1537 of file actors.cc.

References Obj_flags::cursed, CURSED_PIXEL, Obj_flags::dont_move, Game::get_game_type(), Game_window::get_shape_location(), gwin, Ucscript::hit, HIT_PIXEL, Obj_flags::invisible, ShapeID::paint_outline(), POISON_PIXEL, Obj_flags::poisoned, PROTECT_PIXEL, Obj_flags::protection, and SERPENT_ISLE.

Referenced by Npc_actor::paint().

Here is the call graph for this function:

void Actor::activate ( int  event = 1  )  [virtual]

Reimplemented from Container_game_object.

Reimplemented in Npc_actor.

Definition at line 1678 of file actors.cc.

References Obj_flags::asleep, cheat, Schedule::combat, Obj_flags::confused, Ireg_game_object::get_flag(), Game::get_game_type(), Game_window::get_main_actor(), gwin, Game_window::in_combat(), Cheat::in_pickpocket(), Game_window::is_time_stopped(), SERPENT_ISLE, Schedule::sleep, sleep_frame, and Ucscript::usecode.

Referenced by Npc_actor::activate().

Here is the call graph for this function:

bool Actor::edit (  )  [virtual]

Reimplemented from Game_object.

Definition at line 1727 of file actors.cc.

References cheat, Schedule_change::get_pos(), Schedule_change::get_type(), Cheat::in_map_editor(), Npc_actor_out(), Tile_coord::tx, Serial_schedule::tx, Tile_coord::ty, Serial_schedule::ty, Serial_schedule::type, Tile_coord::tz, and Ucscript::usecode.

Here is the call graph for this function:

void Actor::update_from_studio ( unsigned char *  data,
int  datalen 
) [static]

Reimplemented from Game_object.

Definition at line 1771 of file actors.cc.

References Game_window::add_npc(), Exult_server::cancel, Game_window::drop_at_lift(), Ucscript::frame, Get_click(), gwin, Mouse::hand, Exult_server::npc, Npc_actor_in(), Exult_server::Send_data(), Ucscript::usecode, and Exult_server::user_responded.

Here is the call graph for this function:

int Actor::drop ( Game_object obj  )  [virtual]

Reimplemented from Container_game_object.

Definition at line 1910 of file actors.cc.

References Exult_server::obj.

string Actor::get_name (  )  const [virtual]

Reimplemented from Game_object.

Definition at line 1925 of file actors.cc.

References Game_object::get_name(), and Obj_flags::met.

Referenced by Game_object::attacked(), figure_hit_points(), Path_walking_actor_action::handle_event(), and Stats_gump::paint().

Here is the call graph for this function:

string Actor::get_npc_name (  )  const

Definition at line 1936 of file actors.cc.

References Game_object::get_name().

Referenced by CheatScreen::BusinessDisplay(), and CheatScreen::NPCDisplay().

Here is the call graph for this function:

void Actor::set_npc_name ( const char *  n  ) 

Definition at line 1946 of file actors.cc.

References name.

Referenced by CheatScreen::NPCActivate().

void Actor::set_property ( int  prop,
int  val 
)

Definition at line 1955 of file actors.cc.

References cheat, gwin, Cheat::in_god_mode(), Exult_server::magic, and Game_window::set_all_dirty().

Referenced by attacked(), Monster_actor::create(), Spellbook_object::do_spell(), Cheat::heal_party(), Cheat::levelup_party(), CheatScreen::NPCActivate(), and CheatScreen::StatActivate().

Here is the call graph for this function:

bool Actor::reduce_health ( int  delta,
Actor attacker = 0 
)

Definition at line 2022 of file actors.cc.

References Time_queue::add(), Obj_flags::asleep, Game_window::attack_avatar(), BLACK_GATE, Monster_info::cant_bleed(), Monster_info::cant_die(), Monster_info::cant_yell(), cheat, Usecode_machine::died, first_call_police, first_ouch, Palette::flash_red(), flee, friendly, GAME_BG, GAME_SI, Game::get_game_type(), Game_window::get_main_actor(), Game_window::get_pal(), Game::get_ticks(), Game_window::get_tqueue(), gwin, Ucscript::hit, Shape_info::human, Cheat::in_god_mode(), is_dying(), is_in_party(), Obj_flags::is_temporary, last_call_police, last_ouch, neutral, Ucscript::say, SERPENT_ISLE, and Obj_flags::si_tournament.

Referenced by Usecode_script::exec(), and Field_object::field_effect().

Here is the call graph for this function:

int Actor::get_property ( int  prop  )  const [inline]

Definition at line 371 of file actors.h.

References properties.

Referenced by attacked(), Spellbook_object::can_do_spell(), Spellbook_object::do_spell(), Field_object::field_effect(), get_level(), Cheat::heal_party(), Monster_pathfinder_client::Monster_pathfinder_client(), CheatScreen::NPCDisplay(), Stats_gump::paint(), Game_window::show_items(), and CheatScreen::StatMenu().

int Actor::get_effective_prop ( int  prop  )  const

Definition at line 2129 of file actors.cc.

References combat, Obj_flags::cursed, dexterity, intelligence, Obj_flags::might, and strength.

Referenced by Game_object::attack_object(), Stats_gump::paint(), Stat_bar::Stat_bar(), and Stat_bar::update_widget().

bool Actor::is_dying (  )  const [inline]

Definition at line 374 of file actors.h.

References health, properties, and strength.

Referenced by reduce_health().

int Actor::get_level (  )  const [inline]

Definition at line 377 of file actors.h.

References exp, get_property(), and Log2().

Referenced by Game_object::attack_object(), Spellbook_object::can_do_spell(), CheatScreen::NPCDisplay(), and Stats_gump::paint().

Here is the call graph for this function:

Npc_timer_list * Actor::need_timers (  ) 

Definition at line 180 of file actors.cc.

void Actor::set_flag ( int  flag  )  [virtual]

Reimplemented from Ireg_game_object.

Definition at line 2154 of file actors.cc.

References Obj_flags::asleep, Obj_flags::cursed, Obj_flags::dont_move, gwin, Obj_flags::invisible, Obj_flags::might, Obj_flags::paralyzed, Obj_flags::poisoned, Obj_flags::protection, Game_window::set_all_dirty(), Schedule::sleep, and sleep_frame.

Referenced by CheatScreen::AdvancedFlagLoop(), call_readied_usecode(), Monster_actor::create(), Main_actor::die(), die(), Field_object::field_effect(), CheatScreen::FlagActivate(), Party_manager::link_party(), set_polymorph(), Npc_actor::step(), Main_actor::step(), and Cheat::toggle_Petra().

Here is the call graph for this function:

void Actor::set_siflag ( int  flag  )  [virtual]

Reimplemented from Game_object.

Definition at line 2211 of file actors.cc.

Referenced by CheatScreen::FlagActivate(), and Cheat::toggle_naked().

void Actor::set_type_flag ( int  flag  ) 

Definition at line 2222 of file actors.cc.

Referenced by Cheat::change_gender(), Monster_actor::create(), and CheatScreen::FlagActivate().

void Actor::clear_flag ( int  flag  )  [virtual]

Reimplemented from Ireg_game_object.

Definition at line 2237 of file actors.cc.

References Obj_flags::asleep, Map_chunk::find_spot(), Obj_flags::invisible, Schedule::sleep, sleep_frame, Schedule::stand, standing, Tile_coord::tx, and Tile_coord::tz.

Referenced by CheatScreen::AdvancedFlagLoop(), call_readied_usecode(), Field_object::field_effect(), CheatScreen::FlagActivate(), Cheat::heal_party(), resurrect(), set_polymorph(), and Cheat::toggle_Petra().

Here is the call graph for this function:

void Actor::clear_siflag ( int  flag  )  [virtual]

Reimplemented from Game_object.

Definition at line 2267 of file actors.cc.

Referenced by CheatScreen::FlagActivate(), and Cheat::toggle_naked().

void Actor::clear_type_flag ( int  flag  ) 

Definition at line 2278 of file actors.cc.

Referenced by Cheat::change_gender(), and CheatScreen::FlagActivate().

int Actor::get_siflag ( int  flag  )  const [virtual]

Reimplemented from Game_object.

Definition at line 2293 of file actors.cc.

Referenced by CheatScreen::FlagActivate(), CheatScreen::FlagMenu(), set_actor_shape(), set_polymorph(), and Cheat::toggle_naked().

int Actor::get_type_flag ( int  flag  )  const [virtual]

Reimplemented from Game_object.

Definition at line 2302 of file actors.cc.

Referenced by Cheat::change_gender(), CheatScreen::FlagActivate(), CheatScreen::FlagMenu(), inventory_shapenum(), set_actor_shape(), set_polymorph(), Conversation::show_avatar_choices(), SI_get_frame(), and Usecode_internal::UI_is_pc_female().

void Actor::set_type_flags ( unsigned short  tflags  ) 

Definition at line 2314 of file actors.cc.

int Actor::get_skin_color (  )  const [inline]

Definition at line 390 of file actors.h.

References skin_color.

Referenced by Cheat::change_skin(), set_actor_shape(), set_polymorph(), Conversation::show_avatar_choices(), Conversation::show_face(), SI_get_frame(), and Usecode_internal::UI_get_skin_colour().

void Actor::set_skin_color ( int  color  )  [inline]

Definition at line 391 of file actors.h.

References set_actor_shape(), and skin_color.

Referenced by Cheat::change_skin().

Here is the call graph for this function:

virtual int Actor::get_type_flags (  )  const [inline, virtual]

Definition at line 392 of file actors.h.

Referenced by Monster_pathfinder_client::Monster_pathfinder_client().

unsigned char Actor::get_ident (  )  [inline]

Definition at line 396 of file actors.h.

References ident.

Referenced by CheatScreen::FlagMenu(), and Usecode_internal::UI_get_npc_id().

void Actor::set_ident ( unsigned char  id  )  [inline]

Definition at line 397 of file actors.h.

References ident.

Referenced by Usecode_internal::UI_set_npc_id().

int Actor::get_temperature (  )  const [inline]

Definition at line 399 of file actors.h.

References temperature.

Referenced by CheatScreen::FlagMenu(), and Stats_gump::paint().

void Actor::set_temperature ( int  t  ) 

Definition at line 2327 of file actors.cc.

int Actor::figure_warmth (  ) 

Definition at line 2344 of file actors.cc.

References ShapeID::get_framenum(), and ShapeID::get_shapenum().

Referenced by CheatScreen::FlagMenu().

Here is the call graph for this function:

bool Actor::is_unused (  )  const [inline]

Definition at line 403 of file actors.h.

References unused.

void Actor::set_unused ( bool  tf  )  [inline]

Definition at line 405 of file actors.h.

References unused.

int Actor::get_npc_num (  )  const [inline]

Definition at line 408 of file actors.h.

References npc_num.

Referenced by CheatScreen::AdvancedFlagLoop(), attacked(), CheatScreen::BusinessCheck(), CheatScreen::BusinessDisplay(), CheatScreen::BusinessMenu(), CheatScreen::FlagCheck(), CheatScreen::FlagLoop(), CheatScreen::FlagMenu(), CheatScreen::NPCLoop(), Paperdoll_gump::Paperdoll_gump(), Portrait_button::Portrait_button(), set_actor_shape(), set_polymorph(), set_polymorph_default(), CheatScreen::StatCheck(), CheatScreen::StatLoop(), CheatScreen::StatMenu(), and Usecode_internal::UI_set_oppressor().

int Actor::get_party_id (  )  const [inline]

Definition at line 411 of file actors.h.

References party_id.

void Actor::set_party_id ( int  i  )  [inline]

Definition at line 413 of file actors.h.

References party_id.

Referenced by Party_manager::remove_from_party().

void Actor::set_usecode_dir ( int  d  )  [inline]

Definition at line 416 of file actors.h.

References usecode_dir.

int Actor::get_usecode_dir (  )  const [inline]

Definition at line 418 of file actors.h.

References usecode_dir.

virtual Actor* Actor::as_actor (  )  [inline, virtual]

Reimplemented from Game_object.

Definition at line 420 of file actors.h.

void Actor::init_readied (  ) 

Definition at line 2460 of file actors.cc.

References Usecode_machine::readied.

void Actor::remove ( Game_object obj  )  [virtual]

Reimplemented from Container_game_object.

Definition at line 2494 of file actors.cc.

References find_readied(), Exult_server::obj, Container_game_object::remove(), and Usecode_machine::unreadied.

Referenced by Combat_schedule::find_foe().

Here is the call graph for this function:

bool Actor::add ( Game_object obj,
bool  dont_check = false,
bool  combine = false 
) [virtual]

Reimplemented from Container_game_object.

Reimplemented in Monster_actor.

Definition at line 2529 of file actors.cc.

References Container_game_object::add(), CERR, and Exult_server::obj.

Referenced by Monster_actor::add(), Cheat::create_last_shape(), Pickup_actor_action::handle_event(), and Usecode_internal::UI_recall_virtue_stone().

Here is the call graph for this function:

int Actor::add_readied ( Game_object obj,
int  index,
int  dont_check = 0,
int  force_pos = 0 
) [virtual]

Reimplemented from Game_object.

Definition at line 2599 of file actors.cc.

References Container_game_object::add(), and Exult_server::obj.

Here is the call graph for this function:

int Actor::find_readied ( Game_object obj  )  [virtual]

Reimplemented from Container_game_object.

Definition at line 2660 of file actors.cc.

References Exult_server::obj.

Referenced by Paperdoll_gump::paint(), and remove().

virtual Game_object* Actor::get_readied ( int  index  )  const [inline, virtual]

Reimplemented from Container_game_object.

Definition at line 431 of file actors.h.

References spots.

Referenced by Spellbook_object::has_ring(), Usecode_internal::UI_wearing_fellowship(), and Wearing_ring().

void Actor::call_readied_usecode ( int  index,
Game_object obj,
int  eventid 
) [virtual]

Reimplemented from Container_game_object.

Definition at line 2404 of file actors.cc.

References BLACK_GATE, clear_flag(), Shape_info::container, Game::get_game_type(), Exult_server::info, Exult_server::obj, other, Obj_flags::protection, Usecode_machine::readied, SERPENT_ISLE, and set_flag().

Here is the call graph for this function:

int Actor::get_max_weight (  )  [virtual]

Reimplemented from Game_object.

Definition at line 2393 of file actors.cc.

References strength.

void Actor::change_member_shape ( Game_object obj,
int  newshape 
) [virtual]

Reimplemented from Container_game_object.

Definition at line 2675 of file actors.cc.

References Container_game_object::change_member_shape(), and Exult_server::obj.

Here is the call graph for this function:

int Actor::move_aside ( Actor for_actor,
int  dir 
) [virtual]

Reimplemented from Game_object.

Reimplemented in Monster_actor.

Definition at line 2694 of file actors.cc.

References Tile_coord::get_neighbor(), Map_chunk::is_blocked(), standing, Ucscript::step, Tile_coord::tx, and Tile_coord::ty.

Here is the call graph for this function:

int Actor::get_rotated_frame ( int  quads  )  [virtual]

Reimplemented from Game_object.

Definition at line 2728 of file actors.cc.

int Actor::get_armor_points (  )  [virtual]

Reimplemented in Monster_actor.

Definition at line 2745 of file actors.cc.

Referenced by Monster_actor::get_armor_points().

Weapon_info * Actor::get_weapon ( int &  points,
int &  shape 
) [virtual]

Reimplemented in Monster_actor.

Definition at line 2766 of file actors.cc.

References Weapon_info::get_damage(), ShapeID::get_info(), ShapeID::get_shapenum(), and Shape_info::get_weapon_info().

Referenced by Game_object::attack_object(), figure_hit_points(), Monster_actor::get_weapon(), get_weapon(), ready_ammo(), and ready_best_weapon().

Here is the call graph for this function:

Weapon_info* Actor::get_weapon ( int &  points  )  [inline]

Definition at line 449 of file actors.h.

References get_weapon().

Here is the call graph for this function:

bool Actor::roll_to_win ( int  attacker,
int  defender 
) [static]

Definition at line 2802 of file actors.cc.

Referenced by Usecode_internal::UI_roll_to_win().

bool Actor::figure_hit_points ( Actor attacker,
int  weapon_shape,
int  ammo_shape 
)

Definition at line 2838 of file actors.cc.

References Obj_flags::asleep, Monster_info::cant_die(), cheat, combat_trace, Weapon_info::curse, Obj_flags::cursed, dexterity, Combat::difficulty, Weapon_info::explodes(), Map_chunk::find_spot(), GAME_SI, Weapon_info::get_ammo_consumed(), Shape_info::get_ammo_info(), Ammo_info::get_damage(), Weapon_info::get_damage(), Get_effective_prop(), Ireg_game_object::get_flag(), Game::get_game_type(), Weapon_info::get_hitsfx(), ShapeID::get_info(), Game_window::get_main_actor(), get_name(), Ammo_info::get_powers(), Weapon_info::get_powers(), Audio::get_ptr(), Weapon_info::get_usecode(), get_weapon(), Shape_info::get_weapon_info(), gwin, Cheat::in_god_mode(), intelligence, Obj_flags::is_temporary, Weapon_info::is_thrown(), item_names, Weapon_info::magebane, mana, Game_object::move(), npc_num, Obj_flags::okay_to_take, Weapon_info::paralyze, Obj_flags::paralyzed, party_id, Audio::play_sound_effect(), Weapon_info::poison, Monster_info::poison_safe(), Obj_flags::poisoned, Obj_flags::protection, Weapon_info::returns(), Game_object::say(), SERPENT_ISLE, Game_object::set_flag(), Ucscript::sfx, Combat::show_hits, Weapon_info::sleep, Monster_info::splits(), strength, Tile_coord::tx, and Usecode_machine::weapon.

Here is the call graph for this function:

Game_object * Actor::attacked ( Actor attacker,
int  weapon_shape = 0,
int  ammo_shape = 0 
) [virtual]

Reimplemented from Game_object.

Definition at line 3048 of file actors.cc.

References BLACK_GATE, Schedule::duel, first_need_help, Game::get_game_type(), Game_window::get_main_actor(), get_npc_num(), get_property(), get_schedule_type(), gwin, is_dead(), last_need_help, Ucscript::say, and set_property().

Here is the call graph for this function:

void Actor::die ( Actor attacker  )  [virtual]

Reimplemented in Main_actor, and Monster_actor.

Definition at line 3115 of file actors.cc.

References Container_game_object::add(), Game_window::add_dirty(), BLACK_GATE, bp, Obj_flags::dead, Body_lookup::find(), Map_chunk::find_spot(), Game::get_game_type(), Game_window::get_tqueue(), gwin, Monster_info::has_no_body(), Exult_server::info, Usecode_machine::internal_exec, Is_draco(), Game_object::is_dragable(), is_in_party(), Obj_flags::is_temporary, Combat_schedule::monster_died(), Ireg_game_object::move(), Obj_flags::okay_to_take, Ucscript::remove, Time_queue::remove(), Game_window::set_body(), Ireg_game_object::set_flag(), set_flag(), Container_game_object::set_flag_recursively(), Game_object::set_invalid(), Game_object::set_quality(), and Tile_coord::tx.

Referenced by Monster_actor::die().

Here is the call graph for this function:

Actor * Actor::resurrect ( Dead_body body  ) 

Definition at line 3285 of file actors.cc.

References Game_window::add_dirty(), Obj_flags::asleep, clear_flag(), Obj_flags::dead, Schedule::follow_avatar, Game_window::get_body(), T_Object_list< T >::get_first(), Container_game_object::get_objects(), Ireg_game_object::get_owner(), Game_object::get_tile(), gwin, kneel_frame, Schedule::loiter, Ucscript::npc_frame, Obj_flags::paralyzed, Obj_flags::poisoned, Container_game_object::remove(), Container_game_object::remove_this(), Game_window::set_body(), sleep_frame, standing, and Usecode_script::start().

Referenced by Usecode_script::exec(), and Cheat::heal_party().

Here is the call graph for this function:

Monster_actor * Actor::clone (  ) 

Definition at line 3222 of file actors.cc.

References Monster_actor::create(), Map_chunk::find_spot(), Exult_server::info, and Tile_coord::tx.

Here is the call graph for this function:

void Actor::mend_hourly (  ) 

Definition at line 3245 of file actors.cc.

References Exult_server::magic.

void Actor::read ( DataSource nfile,
int  num,
bool  has_usecode,
bool &  fix_unused 
)

Definition at line 51 of file actorio.cc.

References Obj_flags::asleep, BLACK_GATE, c_tiles_per_chunk, Obj_flags::charmed, combat, Obj_flags::cursed, Obj_flags::dead, dexterity, exp, food_level, Obj_flags::freeze, GAME_BG, Game::get_avname(), Game::get_avsex(), Game::get_avskin(), Game::get_game_type(), Game_window::get_map(), gwin, health, Obj_flags::in_party, intelligence, Obj_flags::invisible, Game::is_new_game(), Obj_flags::is_temporary, magic, Exult_server::magic, mana, Obj_flags::met, Obj_flags::no_spell_casting, Obj_flags::on_moving_barge, Obj_flags::paralyzed, Obj_flags::petra, Obj_flags::poisoned, Obj_flags::polymorph, Obj_flags::protection, DataSource::read(), Obj_flags::read, DataSource::read1(), DataSource::read2(), DataSource::read4(), Game_map::read_ireg_objects(), Game_map::read_special_ireg(), Obj_flags::si_tournament, Obj_flags::si_zombie, DataSource::skip(), strength, tf_sex, tf_walk, training, and Ucscript::usecode.

Referenced by Game_window::read_npcs().

Here is the call graph for this function:

virtual void Actor::write_ireg ( DataSource out  )  [inline, virtual]

Reimplemented from Container_game_object.

Definition at line 466 of file actors.h.

virtual int Actor::get_ireg_size (  )  [inline, virtual]

Reimplemented from Container_game_object.

Definition at line 467 of file actors.h.

void Actor::write ( DataSource nfile  ) 

Reimplemented in Monster_actor.

Definition at line 446 of file actorio.cc.

References Obj_flags::asleep, BLACK_GATE, Obj_flags::charmed, combat, Obj_flags::cursed, dexterity, exp, food_level, Obj_flags::freeze, Game::get_game_type(), Game_object::get_name(), health, Obj_flags::in_party, intelligence, Obj_flags::is_temporary, magic, mana, Obj_flags::met, Obj_flags::no_spell_casting, Obj_flags::on_moving_barge, Obj_flags::paralyzed, Obj_flags::petra, Obj_flags::poisoned, Obj_flags::polymorph, Obj_flags::protection, Obj_flags::read, Obj_flags::si_tournament, Obj_flags::si_zombie, strength, training, DataSource::write(), DataSource::write1(), DataSource::write2(), DataSource::write4(), Game_object::write_common_ireg(), and Game_map::write_scheduled().

Referenced by Monster_actor::write().

Here is the call graph for this function:

void Actor::write_contents ( DataSource out  )  [virtual]

Reimplemented from Container_game_object.

Definition at line 658 of file actorio.cc.

References T_Object_iterator< T >::get_next(), Exult_server::obj, DataSource::write1(), and DataSource::write2().

Here is the call graph for this function:

void Actor::set_actor_shape (  ) 

Definition at line 3561 of file actors.cc.

References BLACK_GATE, Shape_manager::can_use_multiracial(), Ireg_game_object::get_flag(), ShapeID::get_framenum(), Game::get_game_type(), get_npc_num(), get_siflag(), get_skin_color(), get_type_flag(), naked, Obj_flags::polymorph, SERPENT_ISLE, ShapeID::set_file(), ShapeID::set_shape(), SF_BG_SISHAPES_VGA, SF_SHAPES_VGA, Game_singletons::sman, and tf_sex.

Referenced by set_polymorph_default(), and set_skin_color().

Here is the call graph for this function:

void Actor::set_polymorph ( int  shape  ) 

Definition at line 3609 of file actors.cc.

References clear_flag(), Game_object::get_dir_framenum(), Game::get_game_type(), Game_window::get_main_actor(), get_npc_num(), ShapeID::get_shapenum(), get_siflag(), get_skin_color(), get_type_flag(), Game_singletons::gwin, naked, Obj_flags::polymorph, SERPENT_ISLE, set_flag(), ShapeID::set_shape(), shape_save, standing, and tf_sex.

Referenced by set_polymorph_default(), and Usecode_internal::UI_set_polymorph().

Here is the call graph for this function:

void Actor::set_polymorph_default (  ) 

Definition at line 3649 of file actors.cc.

References Ireg_game_object::get_flag(), Game::get_game_type(), get_npc_num(), ShapeID::get_shapenum(), Obj_flags::petra, Obj_flags::polymorph, SERPENT_ISLE, set_actor_shape(), set_polymorph(), and shape_save.

Here is the call graph for this function:

int Actor::get_polymorph (  )  [inline]

Definition at line 474 of file actors.h.

References shape_save.

Referenced by CheatScreen::FlagCheck(), and CheatScreen::NPCDisplay().

int Actor::get_shape_real (  ) 

Definition at line 3674 of file actors.cc.

References BLACK_GATE, Game::get_game_type(), and tf_sex.

Referenced by Face_button::Face_button(), Paperdoll_gump::find_object(), Paperdoll_gump::paint(), Usecode_internal::UI_get_item_shape(), and Face_button::update_widget().

Here is the call graph for this function:

int Actor::get_sexed_coloured_shape (  )  [inline]

Definition at line 480 of file actors.h.

References ShapeID::get_shapenum(), and shape_save.

Referenced by Face_button::Face_button(), Paperdoll_gump::find_object(), Paperdoll_gump::paint(), and Face_button::update_widget().

Here is the call graph for this function:

virtual void Actor::set_schedules ( Schedule_change list,
int  cnt 
) [inline, virtual]

Reimplemented in Npc_actor.

Definition at line 483 of file actors.h.

Referenced by Usecode_internal::UI_set_new_schedules().

virtual void Actor::set_schedule_time_type ( int  time,
int  type 
) [inline, virtual]

Reimplemented in Npc_actor.

Definition at line 484 of file actors.h.

Referenced by CheatScreen::BusinessActivate(), and Usecode_internal::UI_modify_schedule().

virtual void Actor::set_schedule_time_location ( int  time,
int  x,
int  y 
) [inline, virtual]

Reimplemented in Npc_actor.

Definition at line 485 of file actors.h.

Referenced by CheatScreen::BusinessActivate(), and Usecode_internal::UI_modify_schedule().

virtual void Actor::remove_schedule ( int  time  )  [inline, virtual]

Reimplemented in Npc_actor.

Definition at line 486 of file actors.h.

Referenced by CheatScreen::BusinessActivate().

virtual void Actor::get_schedules ( Schedule_change *&  list,
int &  cnt 
) [inline, virtual]

Reimplemented in Npc_actor.

Definition at line 487 of file actors.h.

Referenced by CheatScreen::BusinessDisplay().

void Actor::show_inventory (  ) 

Definition at line 1863 of file actors.cc.

References Gump_manager::add_gump(), Game_singletons::gumpman, and inventory_shapenum().

Referenced by ActionInventory(), Portrait_button::double_clicked(), and Face_button::double_clicked().

Here is the call graph for this function:

int Actor::inventory_shapenum (  ) 

Definition at line 1872 of file actors.cc.

References ACTOR_FIRST_GUMP, Shape_manager::can_use_paperdolls(), Shape_manager::get_bg_paperdolls(), Game::get_game_type(), get_type_flag(), Paperdoll_gump::IsNPCFemale(), npc_num, party_id, SERPENT_ISLE, Game_singletons::sman, and tf_sex.

Referenced by ActionInventory(), and show_inventory().

Here is the call graph for this function:

bool Actor::was_hit (  )  [inline]

Definition at line 493 of file actors.h.

References hit.

Referenced by Portrait_button::Portrait_button(), and Portrait_button::update_widget().

void Actor::cache_out (  ) 

Definition at line 1495 of file actors.cc.

References get_schedule_type(), set_schedule_type(), and Schedule::walk_to_schedule.

Here is the call graph for this function:


Friends And Related Function Documentation

friend class Clear_hit [friend]

Definition at line 123 of file actors.h.


Member Data Documentation

Actor * Actor::editing [static, private]

Reimplemented from Game_object.

Definition at line 50 of file actors.h.

std::string Actor::name [protected]

Definition at line 52 of file actors.h.

Referenced by set_npc_name().

int Actor::usecode [protected]

Definition at line 53 of file actors.h.

Referenced by get_usecode().

bool Actor::usecode_assigned [protected]

Definition at line 54 of file actors.h.

bool Actor::unused [protected]

Definition at line 55 of file actors.h.

Referenced by is_unused(), and set_unused().

short Actor::npc_num [protected]

Definition at line 57 of file actors.h.

Referenced by figure_hit_points(), get_npc_num(), and inventory_shapenum().

short Actor::face_num [protected]

Definition at line 58 of file actors.h.

Referenced by get_face_shapenum().

short Actor::party_id [protected]

Definition at line 59 of file actors.h.

Referenced by figure_hit_points(), get_party_id(), inventory_shapenum(), and set_party_id().

int Actor::properties[12] [protected]

Definition at line 60 of file actors.h.

Referenced by get_property(), and is_dying().

unsigned char Actor::temperature [protected]

Definition at line 61 of file actors.h.

Referenced by get_temperature().

short Actor::shape_save [protected]

Definition at line 62 of file actors.h.

Referenced by get_polymorph(), get_sexed_coloured_shape(), set_polymorph(), and set_polymorph_default().

short Actor::oppressor [protected]

Definition at line 63 of file actors.h.

Referenced by get_oppressor(), and set_oppressor().

Game_object* Actor::target [protected]

Definition at line 64 of file actors.h.

Referenced by get_target().

const short Actor::party_pos [static, protected]

Definition at line 80 of file actors.h.

Attack_mode Actor::attack_mode [protected]

Definition at line 82 of file actors.h.

Referenced by get_attack_mode(), and set_attack_mode().

Frames_sequence * Actor::avatar_frames [static, protected]

Definition at line 84 of file actors.h.

Referenced by Main_actor::Main_actor().

Frames_sequence * Actor::npc_frames [static, protected]

Definition at line 85 of file actors.h.

Frames_sequence** Actor::frames [protected]

Definition at line 86 of file actors.h.

Referenced by get_frames(), and Main_actor::Main_actor().

unsigned char Actor::schedule_type [protected]

Definition at line 89 of file actors.h.

Referenced by get_schedule_type(), and set_schedule_and_loc().

Tile_coord Actor::schedule_loc [protected]

Definition at line 90 of file actors.h.

Referenced by set_schedule_and_loc().

unsigned char Actor::next_schedule [protected]

Definition at line 91 of file actors.h.

Referenced by set_schedule_and_loc().

Schedule* Actor::schedule [protected]

Definition at line 93 of file actors.h.

Referenced by get_schedule(), and set_schedule_and_loc().

bool Actor::dormant [protected]

Definition at line 94 of file actors.h.

Referenced by is_dormant(), set_dormant(), and set_schedule_and_loc().

bool Actor::hit [protected]

Definition at line 95 of file actors.h.

Referenced by Clear_hit::handle_event(), and was_hit().

bool Actor::combat_protected [protected]

Definition at line 96 of file actors.h.

Referenced by is_combat_protected(), and set_combat_protected().

bool Actor::user_set_attack [protected]

Definition at line 97 of file actors.h.

Referenced by did_user_set_attack(), and set_attack_mode().

short Actor::alignment [protected]

Definition at line 98 of file actors.h.

Referenced by get_alignment(), and set_alignment().

Game_object* Actor::spots[18] [protected]

Definition at line 99 of file actors.h.

Referenced by fits_in_spot(), free_finger(), free_hand(), and get_readied().

bool Actor::two_handed [protected]

Definition at line 101 of file actors.h.

Referenced by free_hand(), and is_two_handed().

bool Actor::two_fingered [protected]

Definition at line 102 of file actors.h.

Referenced by fits_in_spot(), free_finger(), and is_two_fingered().

unsigned char Actor::light_sources [protected]

Definition at line 103 of file actors.h.

Referenced by has_light_source().

unsigned char Actor::usecode_dir [protected]

Definition at line 104 of file actors.h.

Referenced by get_usecode_dir(), and set_usecode_dir().

unsigned Actor::siflags [protected]

Definition at line 105 of file actors.h.

unsigned Actor::type_flags [protected]

Definition at line 106 of file actors.h.

unsigned char Actor::ident [protected]

Definition at line 108 of file actors.h.

Referenced by get_ident(), and set_ident().

int Actor::skin_color [protected]

Definition at line 110 of file actors.h.

Referenced by get_skin_color(), and set_skin_color().

Actor_action* Actor::action [protected]

Definition at line 111 of file actors.h.

Referenced by follow(), and get_action().

int Actor::frame_time [protected]

Definition at line 112 of file actors.h.

Referenced by get_frame_time(), is_moving(), and set_frame_time().

int Actor::step_index [protected]

Definition at line 114 of file actors.h.

Referenced by get_step_index().

Npc_timer_list* Actor::timers [protected]

Definition at line 115 of file actors.h.

Rectangle Actor::weapon_rect [protected]

Definition at line 116 of file actors.h.

long Actor::rest_time [protected]

Definition at line 117 of file actors.h.

Referenced by clear_rest_time(), and resting().


The documentation for this class was generated from the following files:
Generated on Mon Jul 9 14:46:29 2007 for ExultEngine by  doxygen 1.5.1