22 #ifndef SHERLOCK_PEOPLE_H 23 #define SHERLOCK_PEOPLE_H 25 #include "common/scummsys.h" 26 #include "common/queue.h" 27 #include "sherlock/objects.h" 28 #include "sherlock/saveload.h" 39 MAP_UP = 1, MAP_UPRIGHT = 2, MAP_RIGHT = 1, MAP_DOWNRIGHT = 4,
40 MAP_DOWN = 5, MAP_DOWNLEFT = 6, MAP_LEFT = 2, MAP_UPLEFT = 8
43 #define NUM_IN_WALK_LIB 10 44 extern const char *
const WALK_LIB_NAMES[10];
46 #define MAX_CHARACTERS (IS_SERRATED_SCALPEL ? 1 : 6) 50 const char *_portrait;
51 const byte *_stillSequences;
52 const byte *_talkSequences;
54 PersonData(
const char *name,
const char *portrait,
const byte *stillSequences,
const byte *talkSequences) :
55 _name(name), _portrait(portrait), _stillSequences(stillSequences), _talkSequences(talkSequences) {}
66 int _srcZone, _destZone;
88 virtual void walkToCoords(
const Point32 &destPos,
int destDir) = 0;
109 bool _portraitLoaded;
112 bool _clearingThePortrait;
113 bool _allowWalkAbort;
118 bool _forceWalkReload;
126 Person &operator[](PeopleId
id) {
return *_data[id]; }
127 Person &operator[](
int idx) {
return *_data[idx]; }
147 virtual int findSpeaker(
int speaker);
157 virtual void setTalkSequence(
int speaker,
int sequenceNum = 1) = 0;
162 virtual bool loadWalk() = 0;
178 virtual void setListenSequence(
int speaker,
int sequenceNum = 1) = 0;
Definition: objects.h:120
Definition: animation.h:29
Definition: serializer.h:79
virtual void centerScreenOnPerson()
Definition: people.h:93
Definition: sherlock.h:76
Definition: objects.h:363
Definition: image_file.h:78
Definition: objects.h:101
Definition: objects.h:280