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())
_actors[i].needRedraw = true;
}
runHook(0);
runInventoryScript(0);
}
void Scumm_v7::setCameraFollows(Actor *a) {
@ -129,7 +129,7 @@ void Scumm_v7::setCameraFollows(Actor *a) {
}
if (a->number != oldfollow)
runHook(0);
runInventoryScript(0);
}
@ -365,7 +365,7 @@ void Scumm::actorFollowCamera(int act) {
old = camera._follows;
setCameraFollows(derefActor(act, "actorFollowCamera"));
if (camera._follows != old)
runHook(0);
runInventoryScript(0);
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++) {
if (_s->_inventory[i] == (uint16)obj) {
_s->putOwner(obj, _s->VAR(_s->VAR_EGO));
_s->runHook(obj);
_s->runInventoryScript(obj);
return true;
}
}
@ -635,7 +635,7 @@ bool ScummDebugger::Cmd_Object(int argc, const char **argv) {
_s->putState(obj, 1);
_s->removeObjectFromRoom(obj);
_s->clearDrawObjectQueue();
_s->runHook(obj);
_s->runInventoryScript(obj);
} else {
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];
if (ss->where == WIO_INVENTORY && _inventory[ss->number] == obj) {
putOwner(obj, 0);
runHook(0);
runInventoryScript(0);
stopObjectCode();
return;
}
@ -1180,7 +1180,7 @@ void Scumm::setOwnerOf(int obj, int owner) {
SamInventoryHack(obj);
putOwner(obj, owner);
runHook(0);
runInventoryScript(0);
}
int Scumm::getObjX(int obj) {

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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