ScummVM API documentation
Scumm::Actor Class Reference
Inheritance diagram for Scumm::Actor:
Common::Serializable Scumm::Actor_v3 Scumm::Actor_v7 Scumm::ActorHE Scumm::Actor_v2 Scumm::Actor_v0

Classes

struct  ActorWalkData
 

Public Member Functions

 Actor (ScummEngine *scumm, int id)
 
virtual void hideActor ()
 
void showActor ()
 
virtual void initActor (int mode)
 
void putActor ()
 
void putActor (int room)
 
void putActor (int x, int y)
 
void putActor (int x, int y, int room)
 
void setActorWalkSpeed (uint newSpeedX, uint newSpeedY)
 
void adjustActorPos ()
 
virtual AdjustBoxResult adjustXYToBeInBox (int dstX, int dstY)
 
virtual void setDirection (int direction)
 
void faceToObject (int obj)
 
virtual void turnToDirection (int newdir)
 
virtual void walkActor ()
 
void drawActorCostume (bool hitTestMode=false)
 
virtual void prepareDrawActorCostume (BaseCostumeRenderer *bcr)
 
virtual void animateCostume ()
 
virtual void setActorCostume (int c)
 
void animateLimb (int limb, int f)
 
bool actorHitTest (int x, int y)
 
const byte * getActorName ()
 
void startWalkActor (int x, int y, int dir)
 
void stopActorMoving ()
 
void runActorTalkScript (int f)
 
virtual void startAnimActor (int frame)
 
void remapActorPalette (int r_fact, int g_fact, int b_fact, int threshold)
 
void remapActorPaletteColor (int slot, int color)
 
void animateActor (int anim)
 
bool isInCurrentRoom () const
 
Common::Point getPos () const
 
const Common::PointgetRealPos () const
 
int getRoom () const
 
int getFacing () const
 
void setFacing (int newFacing)
 
int getAnimVar (byte var) const
 
void setAnimVar (byte var, int value)
 
void setAnimSpeed (byte newAnimSpeed)
 
int getAnimSpeed () const
 
int getAnimProgress () const
 
int getElevation () const
 
void setElevation (int newElevation)
 
void setPalette (int idx, int val)
 
void setScale (int sx, int sy)
 
void classChanged (int cls, bool value)
 
void saveLoadWithSerializer (Common::Serializer &ser) override
 

Public Attributes

int _top = 0
 
int _bottom = 0
 
uint _width = 0
 
byte _number = 0
 
uint16 _costume = 0
 
byte _room = 0
 
byte _talkColor = 0
 
int _talkFrequency = 0
 
byte _talkPan = 0
 
byte _talkVolume = 0
 
uint16 _boxscale = 0
 
byte _scalex = 0
 
byte _scaley = 0
 
byte _charset = 0
 
byte _moving = 0
 
bool _ignoreBoxes = false
 
byte _forceClip = 0
 
uint16 _lastValidX = 0
 
uint16 _lastValidY = 0
 
byte _initFrame = 0
 
byte _walkFrame = 0
 
byte _standFrame = 0
 
byte _talkStartFrame = 0
 
byte _talkStopFrame = 0
 
bool _needRedraw = false
 
bool _needBgReset = false
 
bool _visible = false
 
byte _shadowMode = 0
 
bool _flip = false
 
byte _frame = 0
 
byte _walkbox = 0
 
int16 _talkPosX = 0
 
int16 _talkPosY = 0
 
uint16 _talkScript = 0
 
uint16 _walkScript = 0
 
bool _ignoreTurns = false
 
bool _drawToBackBuf = false
 
int32 _layer = 0
 
uint16 _sound [32] = {}
 
CostumeData _cost
 
int _heOffsX = 0
 
int _heOffsY = 0
 
bool _heSkipLimbs = false
 
uint32 _heCondMask = 0
 
uint32 _hePaletteNum = 0
 
uint32 _heShadow = 0
 

Static Public Attributes

static byte kInvalidBox
 

Protected Member Functions

virtual int calcMovementFactor (const Common::Point &next)
 
virtual int actorWalkStep ()
 
virtual int remapDirection (int dir, bool is_walking)
 
virtual void setupActorScale ()
 
void setBox (int box)
 
int updateActorDirection (bool is_walking)
 
void startWalkAnim (int cmd, int angle)
 
bool isInClass (int cls)
 
virtual bool isPlayer ()
 
bool findPathTowards (byte box, byte box2, byte box3, Common::Point &foundPath)
 

Protected Attributes

ScummEngine_vm
 
Common::Point _pos
 
uint16 _palette [256] = {}
 
int _elevation = 0
 
uint16 _facing = 0
 
uint16 _targetFacing = 0
 
uint _speedx = 0
 
uint _speedy = 0
 
byte _animProgress = 0
 
byte _animSpeed = 0
 
bool _costumeNeedsInit = false
 
ActorWalkData _walkdata
 
int16 _animVariable [27] = {}
 

Member Data Documentation

◆ _pos

Common::Point Scumm::Actor::_pos
protected

The position of the actor inside the virtual screen.


The documentation for this class was generated from the following file: