mirror of
https://github.com/libretro/scummvm.git
synced 2025-03-03 16:58:26 +00:00
Add opcode for Spy Fox 2 mini game.
svn-id: r17026
This commit is contained in:
parent
8cc18e6797
commit
214742783e
@ -1038,6 +1038,7 @@ protected:
|
||||
void o90_getPolygonOverlap();
|
||||
void o90_cond();
|
||||
void o90_dim2dim2Array();
|
||||
void o90_redim2dimArray();
|
||||
void o90_sortArray();
|
||||
void o90_getObjectData();
|
||||
void o90_getPaletteData();
|
||||
|
@ -111,7 +111,7 @@ void ScummEngine_v90he::setupOpcodes() {
|
||||
OPCODE(o90_cond),
|
||||
OPCODE(o90_dim2dim2Array),
|
||||
/* 38 */
|
||||
OPCODE(o6_invalid),
|
||||
OPCODE(o90_redim2dimArray),
|
||||
OPCODE(o6_invalid),
|
||||
OPCODE(o90_sortArray),
|
||||
OPCODE(o6_invalid),
|
||||
@ -1821,6 +1821,30 @@ void ScummEngine_v90he::o90_dim2dim2Array() {
|
||||
defineArray(fetchScriptWord(), data, dim2start, dim2end, dim1start, dim1end);
|
||||
}
|
||||
|
||||
void ScummEngine_v90he::o90_redim2dimArray() {
|
||||
int a, b, c, d;
|
||||
d = pop();
|
||||
c = pop();
|
||||
b = pop();
|
||||
a = pop();
|
||||
|
||||
byte subOp = fetchScriptByte();
|
||||
|
||||
switch (subOp) {
|
||||
case 4:
|
||||
redimArray(fetchScriptWord(), a, b, c, d, kByteArray);
|
||||
break;
|
||||
case 5:
|
||||
redimArray(fetchScriptWord(), a, b, c, d, kIntArray);
|
||||
break;
|
||||
case 6:
|
||||
redimArray(fetchScriptWord(), a, b, c, d, kDwordArray);
|
||||
break;
|
||||
default:
|
||||
error("o90_redim2dimArray: default type %d", subOp);
|
||||
}
|
||||
}
|
||||
|
||||
void ScummEngine_v90he::o90_sortArray() {
|
||||
// Sorts array via qsort
|
||||
byte subOp = fetchScriptByte();
|
||||
|
Loading…
x
Reference in New Issue
Block a user