diff options
author | Matthew Hoops | 2011-04-26 17:12:25 -0400 |
---|---|---|
committer | Matthew Hoops | 2011-04-26 17:13:35 -0400 |
commit | 78725365c50805b06fe627a7d23be70e26518c78 (patch) | |
tree | 196793cfd460344bee8af6d56a7cdaf08a8ea79b /engines/scumm/he/logic_he.h | |
parent | 14865cbf9c2ffd56a450f941bcecee43dfd70d93 (diff) | |
download | scummvm-rg350-78725365c50805b06fe627a7d23be70e26518c78.tar.gz scummvm-rg350-78725365c50805b06fe627a7d23be70e26518c78.tar.bz2 scummvm-rg350-78725365c50805b06fe627a7d23be70e26518c78.zip |
SCUMM: Begin work on the soccer u32 code
Players no longer appear in the upper-left corner of the screen and play can actually hault now (ie. the ball can go out of play). The players/ball do not move from their positions yet, but it's a start.
Diffstat (limited to 'engines/scumm/he/logic_he.h')
-rw-r--r-- | engines/scumm/he/logic_he.h | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/engines/scumm/he/logic_he.h b/engines/scumm/he/logic_he.h index ab952abd5e..c2ea2b8ec6 100644 --- a/engines/scumm/he/logic_he.h +++ b/engines/scumm/he/logic_he.h @@ -41,9 +41,9 @@ public: int getFromArray(int arg0, int idx2, int idx1); void putInArray(int arg0, int idx2, int idx1, int val); - void beforeBootScript() {} - void initOnce() {} - void startOfFrame() {} + virtual void beforeBootScript() {} + virtual void initOnce() {} + virtual int startOfFrame() { return 1; } void endOfFrame() {} void processKeyStroke(int keyPressed) {} @@ -111,25 +111,39 @@ private: class LogicHEsoccer : public LogicHE { private: + byte *_userData; double *_userDataD; public: LogicHEsoccer(ScummEngine_v90he *vm); + ~LogicHEsoccer(); int versionID(); int32 dispatch(int op, int numArgs, int32 *args); + void beforeBootScript(); + void initOnce(); + int startOfFrame(); + private: int op_1001(int32 *args); int op_1002(int32 *args); int op_1003(int32 *args); int op_1004(int32 *args); - int op_1006(int32 *args); + // op_1006 can be called from other opcodes! + int op_1006(int32 a1, int32 a2, int32 a3, int32 a4); int op_1007(int32 *args); int op_1008(int32 *args); + // op_1011 can be called from other opcodes! + int op_1011(int32 a1, int32 a2, int32 a3, int32 a4, int32 a5); + void op_1011_sub(int32 a1, int32 a2, int32 a3, int32 a4); int op_1012(int32 *args); + // op_1013 can be called from other opcodes! + int op_1013(int32 a1, int32 a2, int32 a3); int op_1014(int32 *args); int op_1019(int32 *args); + // op_1020 can be called from other opcodes! + int op_1020(); int op_1021(int32 *args); }; |