runHook -> runInventoryScript, VAR_HOOK_SCRIPT -> VAR_INVENTORY_SCRIPT

svn-id: r8468
This commit is contained in:
Max Horn 2003-06-14 12:23:30 +00:00
parent aa83d4fd31
commit f4a31da513
10 changed files with 26 additions and 27 deletions

View file

@ -106,7 +106,7 @@ void Scumm::setCameraFollows(Actor *a) {
if (_actors[i].isInCurrentRoom()) if (_actors[i].isInCurrentRoom())
_actors[i].needRedraw = true; _actors[i].needRedraw = true;
} }
runHook(0); runInventoryScript(0);
} }
void Scumm_v7::setCameraFollows(Actor *a) { void Scumm_v7::setCameraFollows(Actor *a) {
@ -129,7 +129,7 @@ void Scumm_v7::setCameraFollows(Actor *a) {
} }
if (a->number != oldfollow) if (a->number != oldfollow)
runHook(0); runInventoryScript(0);
} }
@ -365,7 +365,7 @@ void Scumm::actorFollowCamera(int act) {
old = camera._follows; old = camera._follows;
setCameraFollows(derefActor(act, "actorFollowCamera")); setCameraFollows(derefActor(act, "actorFollowCamera"));
if (camera._follows != old) if (camera._follows != old)
runHook(0); runInventoryScript(0);
camera._movingToActor = false; camera._movingToActor = false;
} }

View file

@ -620,7 +620,7 @@ bool ScummDebugger::Cmd_Object(int argc, const char **argv) {
for (i = 1; i < _s->_maxInventoryItems; i++) { for (i = 1; i < _s->_maxInventoryItems; i++) {
if (_s->_inventory[i] == (uint16)obj) { if (_s->_inventory[i] == (uint16)obj) {
_s->putOwner(obj, _s->VAR(_s->VAR_EGO)); _s->putOwner(obj, _s->VAR(_s->VAR_EGO));
_s->runHook(obj); _s->runInventoryScript(obj);
return true; return true;
} }
} }
@ -635,7 +635,7 @@ bool ScummDebugger::Cmd_Object(int argc, const char **argv) {
_s->putState(obj, 1); _s->putState(obj, 1);
_s->removeObjectFromRoom(obj); _s->removeObjectFromRoom(obj);
_s->clearDrawObjectQueue(); _s->clearDrawObjectQueue();
_s->runHook(obj); _s->runInventoryScript(obj);
} else { } else {
Debug_Printf("Unknown object command '%s'\nRight now the only command is pickup", argv[2]); //change when adding commands Debug_Printf("Unknown object command '%s'\nRight now the only command is pickup", argv[2]); //change when adding commands
} }

View file

@ -1171,7 +1171,7 @@ void Scumm::setOwnerOf(int obj, int owner) {
ss = &vm.slot[_currentScript]; ss = &vm.slot[_currentScript];
if (ss->where == WIO_INVENTORY && _inventory[ss->number] == obj) { if (ss->where == WIO_INVENTORY && _inventory[ss->number] == obj) {
putOwner(obj, 0); putOwner(obj, 0);
runHook(0); runInventoryScript(0);
stopObjectCode(); stopObjectCode();
return; return;
} }
@ -1180,7 +1180,7 @@ void Scumm::setOwnerOf(int obj, int owner) {
SamInventoryHack(obj); SamInventoryHack(obj);
putOwner(obj, owner); putOwner(obj, owner);
runHook(0); runInventoryScript(0);
} }
int Scumm::getObjX(int obj) { int Scumm::getObjX(int obj) {

View file

@ -647,14 +647,14 @@ void Scumm::stopObjectCode() {
_currentScript = 0xFF; _currentScript = 0xFF;
} }
void Scumm::runHook(int i) { void Scumm::runInventoryScript(int i) {
if (_version <= 2) { if (_version <= 2) {
// FIXME - TODO redrawV2Inventory();
} else { } else {
int tmp[16]; int tmp[16];
tmp[0] = i; tmp[0] = i;
if (VAR(VAR_HOOK_SCRIPT)) { if (VAR(VAR_INVENTORY_SCRIPT)) {
runScript(VAR(VAR_HOOK_SCRIPT), 0, 0, tmp); runScript(VAR(VAR_INVENTORY_SCRIPT), 0, 0, tmp);
} }
} }
} }

View file

@ -1153,7 +1153,6 @@ void Scumm_v2::o2_setOwnerOf() {
owner = getVarOrDirectByte(0x40); owner = getVarOrDirectByte(0x40);
setOwnerOf(obj, owner); setOwnerOf(obj, owner);
redrawV2Inventory();
} }
void Scumm_v2::o2_delay() { void Scumm_v2::o2_delay() {
@ -1296,7 +1295,7 @@ void Scumm_v2::o2_pickupObject() {
putState(obj, getState(obj) | 0xA); putState(obj, getState(obj) | 0xA);
clearDrawObjectQueue(); clearDrawObjectQueue();
redrawV2Inventory(); runInventoryScript(1);
} }
void Scumm_v2::o2_setObjectName() { void Scumm_v2::o2_setObjectName() {
@ -1344,7 +1343,7 @@ void Scumm_v2::o2_setObjectName() {
work[i-1] = 0; work[i-1] = 0;
memcpy(name, work, i); memcpy(name, work, i);
redrawV2Inventory(); runInventoryScript(0);
} }
void Scumm_v2::o2_cursorCommand() { // TODO: Define the magic numbers void Scumm_v2::o2_cursorCommand() { // TODO: Define the magic numbers
@ -1357,7 +1356,7 @@ void Scumm_v2::o2_cursorCommand() { // TODO: Define the magic numbers
if (a2 & 4) { // Userface if (a2 & 4) { // Userface
_userState = a2 & (32 | 64 | 128); _userState = a2 & (32 | 64 | 128);
redrawV2Inventory(); runInventoryScript(0);
} }
if (a2 & 1) { // Freeze if (a2 & 1) { // Freeze

View file

@ -1415,7 +1415,7 @@ void Scumm_v5::o5_pickupObject() {
putState(obj, 1); putState(obj, 1);
removeObjectFromRoom(obj); removeObjectFromRoom(obj);
clearDrawObjectQueue(); clearDrawObjectQueue();
runHook(1); runInventoryScript(1);
} }
void Scumm_v5::o5_print() { void Scumm_v5::o5_print() {
@ -1984,7 +1984,7 @@ void Scumm_v5::o5_setObjectName() {
} }
memcpy(name, work, i+1); memcpy(name, work, i+1);
runHook(0); runInventoryScript(0);
} }
void Scumm_v5::o5_setOwnerOf() { void Scumm_v5::o5_setOwnerOf() {
@ -2681,5 +2681,5 @@ void Scumm_v5::o5_pickupObjectOld() {
putClass(obj, kObjectClassUntouchable, 1); putClass(obj, kObjectClassUntouchable, 1);
putState(obj, 1); putState(obj, 1);
clearDrawObjectQueue(); clearDrawObjectQueue();
runHook(1); runInventoryScript(1);
} }

View file

@ -1121,7 +1121,7 @@ void Scumm_v6::o6_pickupObject() {
for (i = 1; i < _maxInventoryItems; i++) { for (i = 1; i < _maxInventoryItems; i++) {
if (_inventory[i] == (uint16)obj) { if (_inventory[i] == (uint16)obj) {
putOwner(obj, VAR(VAR_EGO)); putOwner(obj, VAR(VAR_EGO));
runHook(obj); runInventoryScript(obj);
return; return;
} }
} }
@ -1132,7 +1132,7 @@ void Scumm_v6::o6_pickupObject() {
putState(obj, 1); putState(obj, 1);
removeObjectFromRoom(obj); removeObjectFromRoom(obj);
clearDrawObjectQueue(); clearDrawObjectQueue();
runHook(obj); /* Difference */ runInventoryScript(obj); /* Difference */
} }
void Scumm_v6::o6_loadRoomWithEgo() { void Scumm_v6::o6_loadRoomWithEgo() {
@ -1336,7 +1336,7 @@ void Scumm_v6::o6_setObjectName() {
if (_newNames[i] == 0) { if (_newNames[i] == 0) {
loadPtrToResource(rtObjectName, i, NULL); loadPtrToResource(rtObjectName, i, NULL);
_newNames[i] = obj; _newNames[i] = obj;
runHook(0); runInventoryScript(0);
return; return;
} }
} }

View file

@ -524,7 +524,7 @@ protected:
void runScriptNested(int script); void runScriptNested(int script);
void executeScript(); void executeScript();
void updateScriptPtr(); void updateScriptPtr();
void runHook(int i); void runInventoryScript(int i);
void checkAndRunSentenceScript(); void checkAndRunSentenceScript();
void runExitScript(); void runExitScript();
void runEntryScript(); void runEntryScript();
@ -1123,7 +1123,7 @@ public:
byte VAR_EXIT_SCRIPT2; byte VAR_EXIT_SCRIPT2;
byte VAR_VERB_SCRIPT; byte VAR_VERB_SCRIPT;
byte VAR_SENTENCE_SCRIPT; byte VAR_SENTENCE_SCRIPT;
byte VAR_HOOK_SCRIPT; byte VAR_INVENTORY_SCRIPT;
byte VAR_CUTSCENE_START_SCRIPT; byte VAR_CUTSCENE_START_SCRIPT;
byte VAR_CUTSCENE_END_SCRIPT; byte VAR_CUTSCENE_END_SCRIPT;
byte VAR_CHARINC; byte VAR_CHARINC;

View file

@ -452,7 +452,7 @@ Scumm::Scumm (GameDetector *detector, OSystem *syst)
VAR_EXIT_SCRIPT2 = 0xFF; VAR_EXIT_SCRIPT2 = 0xFF;
VAR_VERB_SCRIPT = 0xFF; VAR_VERB_SCRIPT = 0xFF;
VAR_SENTENCE_SCRIPT = 0xFF; VAR_SENTENCE_SCRIPT = 0xFF;
VAR_HOOK_SCRIPT = 0xFF; VAR_INVENTORY_SCRIPT = 0xFF;
VAR_CUTSCENE_START_SCRIPT = 0xFF; VAR_CUTSCENE_START_SCRIPT = 0xFF;
VAR_CUTSCENE_END_SCRIPT = 0xFF; VAR_CUTSCENE_END_SCRIPT = 0xFF;
VAR_CHARINC = 0xFF; VAR_CHARINC = 0xFF;

View file

@ -60,7 +60,7 @@ void Scumm::setupScummVars() {
VAR_EXIT_SCRIPT2 = 31; VAR_EXIT_SCRIPT2 = 31;
VAR_VERB_SCRIPT = 32; VAR_VERB_SCRIPT = 32;
VAR_SENTENCE_SCRIPT = 33; VAR_SENTENCE_SCRIPT = 33;
VAR_HOOK_SCRIPT = 34; VAR_INVENTORY_SCRIPT = 34;
VAR_CUTSCENE_START_SCRIPT = 35; VAR_CUTSCENE_START_SCRIPT = 35;
VAR_CUTSCENE_END_SCRIPT = 36; VAR_CUTSCENE_END_SCRIPT = 36;
VAR_CHARINC = 37; VAR_CHARINC = 37;
@ -194,7 +194,7 @@ void Scumm_v7::setupScummVars() {
VAR_EXIT_SCRIPT2 = 54; VAR_EXIT_SCRIPT2 = 54;
VAR_VERB_SCRIPT = 55; VAR_VERB_SCRIPT = 55;
VAR_SENTENCE_SCRIPT = 56; VAR_SENTENCE_SCRIPT = 56;
VAR_HOOK_SCRIPT = 57; VAR_INVENTORY_SCRIPT = 57;
VAR_CUTSCENE_START_SCRIPT = 58; VAR_CUTSCENE_START_SCRIPT = 58;
VAR_CUTSCENE_END_SCRIPT = 59; VAR_CUTSCENE_END_SCRIPT = 59;
VAR_SAVELOAD_SCRIPT = 60; VAR_SAVELOAD_SCRIPT = 60;
@ -285,7 +285,7 @@ void Scumm_v8::setupScummVars() {
VAR_EXIT_SCRIPT2 = 54; VAR_EXIT_SCRIPT2 = 54;
VAR_VERB_SCRIPT = 55; VAR_VERB_SCRIPT = 55;
VAR_SENTENCE_SCRIPT = 56; VAR_SENTENCE_SCRIPT = 56;
VAR_HOOK_SCRIPT = 57; VAR_INVENTORY_SCRIPT = 57;
VAR_CUTSCENE_START_SCRIPT = 58; VAR_CUTSCENE_START_SCRIPT = 58;
VAR_CUTSCENE_END_SCRIPT = 59; VAR_CUTSCENE_END_SCRIPT = 59;