Commit Graph

460 Commits

Author SHA1 Message Date
Torbjörn Andersson
8bfbc143a8 The sfRand() script function was slightly wrong
Old behaviour:     0 <= random number <= param
Correct behaviour: 0 <= random number < param

svn-id: r16636
2005-01-25 18:16:02 +00:00
Eugene Sandulenko
212306044d Picky indentation. Main reason is to make version 1.100 :P.
svn-id: r16626
2005-01-23 21:55:13 +00:00
Eugene Sandulenko
86dc6a3d85 Another spot of kReplyOnce usage. Thanks to proper memory addressing now
it is possible to implement.

svn-id: r16625
2005-01-23 21:52:43 +00:00
Eugene Sandulenko
b646d63dad Reenable stub for latter demos in sfScriptGotoScene()
svn-id: r16623
2005-01-23 17:06:15 +00:00
Max Horn
8f51510dec Fix warnings
svn-id: r16622
2005-01-23 14:30:59 +00:00
Andrew Kurushin
4f68706f3c implemented sfWaitWalk scriptFunction
svn-id: r16619
2005-01-22 21:40:54 +00:00
Andrew Kurushin
01a863414e - removed returning value from scriptFunctions
- implement some scriptFunctions

svn-id: r16618
2005-01-22 19:21:38 +00:00
Andrew Kurushin
8543306e56 all opcodes revisited
all ITE opcodes supported (now we should go through scriptFunctions)

svn-id: r16617
2005-01-22 16:32:30 +00:00
Andrew Kurushin
0030e821fe another 19 opcodes
svn-id: r16616
2005-01-22 15:28:24 +00:00
Andrew Kurushin
4e7d58c843 rewritten 15 opcodes
svn-id: r16615
2005-01-22 14:43:49 +00:00
Torbjörn Andersson
f3b62a9ed7 Whitespace and indentation.
svn-id: r16614
2005-01-22 14:16:00 +00:00
Torbjörn Andersson
cde69caf63 Fixed warning.
svn-id: r16613
2005-01-22 14:10:14 +00:00
Andrew Kurushin
93a64d3ebd some opcode fixes:
opReturnV

svn-id: r16609
2005-01-21 23:44:34 +00:00
Eugene Sandulenko
1e07013f7f Fix portability
svn-id: r16608
2005-01-21 23:35:33 +00:00
Andrew Kurushin
899e476f01 now you can try to:
- talk to someone
 - look at something

svn-id: r16607
2005-01-21 23:25:54 +00:00
Eugene Sandulenko
e488ddc7c2 Fix cursor shape.
svn-id: r16606
2005-01-21 23:18:32 +00:00
Eugene Sandulenko
ebe40f024e Fix compilation
svn-id: r16605
2005-01-21 23:16:38 +00:00
Andrew Kurushin
58ec0f0aad problems solved:
- Allow more than one script work at once
- Proper implementation of address methods

some opcodes may be broken - cause work in progress
todo: rewrite opcodes with new address functionality

svn-id: r16604
2005-01-21 21:55:54 +00:00
Torbjörn Andersson
0228f1645f Use the kITEColor constants for the ITE mouse cursor. Ironically, this is
one case where the original didn't use its own colour constants, so I had
to add a new one, kITEColorLightGrey, for colour 4.

svn-id: r16603
2005-01-20 13:59:12 +00:00
Eugene Sandulenko
6f565c0ad8 Fix type with BrightWhite color
svn-id: r16599
2005-01-19 20:43:12 +00:00
Eugene Sandulenko
001bb7c74e o Made ITEColors enum public in interface.h. Please use them. These colors
stay in each scene except intro and fade-in/fade-outs.
o Implemented status text coloring during work of auxiliary scripts.

svn-id: r16598
2005-01-19 11:29:29 +00:00
Andrew Kurushin
1b5e5981a6 fixed default verb issue
svn-id: r16597
2005-01-19 00:02:25 +00:00
Andrew Kurushin
9353d54f95 implemented Sprite::hitTest
Actors & Objects can be hited

svn-id: r16596
2005-01-18 23:15:41 +00:00
Andrew Kurushin
0ccf59faee partly implemented game objects
svn-id: r16595
2005-01-18 21:13:44 +00:00
Andrew Kurushin
b4b2e52df7 another step in verb implementation:
- objectMap responds to mouse move  (but respond script not run well ?)

loadStrings add some special count check
- so all other LUT based resource should implement this technique

svn-id: r16594
2005-01-18 15:01:21 +00:00
Andrew Kurushin
c1ce30b0bf - remove ActionMap.h & ActionMap.cpp
svn-id: r16593
2005-01-18 11:59:09 +00:00
Andrew Kurushin
0b4fd4adbf - merged ActionMap and ObjectMap
- remove ActionMap.h & ActionMap.cpp
- ObjectMap names move to Scene::_sceneStrings as in original engine
- fix wrong StringsTable::stringsCount calculation

svn-id: r16592
2005-01-18 11:55:31 +00:00
Eugene Sandulenko
c9d0d4c840 Initialize converse properly.
svn-id: r16591
2005-01-18 10:45:36 +00:00
Eugene Sandulenko
a5c87d3620 Now it is possible to lead a conversation with use of keys (1-4).
Things which are missing:
  (a) mouse support due to incomplete interface implementation
  (b) arrows do not pop up by same reason mentioned above
  (c) scrolling does not work
  (d) kReplyOnce flag is missing due to wrong threads memory implementation

svn-id: r16589
2005-01-17 23:11:31 +00:00
Eugene Sandulenko
dab894fdd4 First batch of converse implementation in scripts. To see it type
'scene_change 33' in debugger.

svn-id: r16588
2005-01-17 20:17:06 +00:00
Eugene Sandulenko
5200b8f1fa o Proper implementation of sfPlaySound() which knows about CD<->floppy
difference
o Fix regression in Mac titles where scene LUT wasn't conversed
o Fix sound types in many games. Old Win demo is still wrong.

svn-id: r16586
2005-01-17 18:49:00 +00:00
Torbjörn Andersson
3211739728 Whitespace changes
svn-id: r16585
2005-01-17 14:57:28 +00:00
Torbjörn Andersson
8e93b45efe If the game tries to start a piece of music that happens to be playing
already, let it continue playing rather than restarting it. (I've been
meaning to make this change for some time, but now it appeared on the TODO
list as well. :-)

svn-id: r16583
2005-01-17 14:19:17 +00:00
Torbjörn Andersson
f8865304bd Initialize a few variables to fix Valgrind warnings. (I'm hoping they were
the reason the ITE intro crashed for me.) I still get read warnings in
Sprite::decodeRLEBuffer() though.

Also added a couple of hacks to keep the IHNM intro alive. Once we support
IHNM actors, we'll be able to remove them.

svn-id: r16579
2005-01-17 07:21:08 +00:00
Andrew Kurushin
9d1f2b670e -small pathfind fix
-pathfind speedup

svn-id: r16576
2005-01-16 20:30:57 +00:00
Andrew Kurushin
a230f60694 - some fix to previous
svn-id: r16575
2005-01-16 19:43:28 +00:00
Andrew Kurushin
f9b4b2cd99 actors entry list implemented
test: in ITE type "scene_change 130" at console

svn-id: r16574
2005-01-16 19:06:04 +00:00
Torbjörn Andersson
bf827cde1d Some more untested opcode fixes. (By the way, I was wrong the other day:
The first IHNM script does not use random branching after all.)

svn-id: r16573
2005-01-16 17:07:27 +00:00
Torbjörn Andersson
eb2bffd185 sfPlayMusic() takes two parameters in IHNM. Since our current
implementation is only right for ITE, disable it for IHNM for now.

svn-id: r16572
2005-01-16 17:06:40 +00:00
Torbjörn Andersson
34565795e8 Slowed down actor movement a bit.
svn-id: r16571
2005-01-16 16:10:06 +00:00
Andrew Kurushin
fe424ed5ae - added partial scene change by actor's walking (todo:entrance should be supported)
svn-id: r16568
2005-01-15 23:46:43 +00:00
Andrew Kurushin
2f20dd57c2 some work in progress on verb stuff:
- many structers and fields renamed to proper names
- added missing functions

svn-id: r16562
2005-01-15 20:12:49 +00:00
Torbjörn Andersson
139f57a29d Use the same hard-coded cursor image and colours as the original ITE
interpreter. Supposedly these colours will stay fairly constant throughout
the game, in which case we no longer need to repaint it with the "best
white" colour every time the palette changes.

svn-id: r16561
2005-01-15 13:41:57 +00:00
Torbjörn Andersson
96d5a1c88d I've changed getTextString() slightly so that if the translated string is
NULL it'll use the English string instead. It seems unnecessary to store
the same string twice, even if it's possible that the compiler is smart
enough to eliminate the duplicates.

Either way it doesn't make much difference now, but we may want to add the
intro strings to the getTextString() mechanism eventually. In that case
most of the credits would be duplicates, for instance.

svn-id: r16560
2005-01-14 11:22:45 +00:00
Torbjörn Andersson
b56f4fd2f6 Removed the unused i_cvar_name field from INTRO_DIALOGUE.
svn-id: r16559
2005-01-14 11:05:12 +00:00
Torbjörn Andersson
e38b689078 Fixed the "random branch" opcode, I hope. I haven't tested it. The first
IHNM script seems to use it, but doesn't get that far because it terminates
on an unknown script function.

svn-id: r16558
2005-01-14 10:10:23 +00:00
Torbjörn Andersson
4870ab61f2 Added helper function to queue the ITE intro dialogue.
svn-id: r16557
2005-01-14 08:02:17 +00:00
Eugene Sandulenko
ccacf6f82e o Added support for German ITE. There are also Puzzle-related messages
hardcoded, but I'll save that for later :)
o Eliminated all leftovers of previous language loader. If you'll spot another
  one, just remove it silently.

svn-id: r16556
2005-01-14 01:17:34 +00:00
Andrew Kurushin
326dd0c255 - introduced SagaEngine::getTextString (for i18n it should route to corresponding string array)
- first step in verb implementation: proper button draw, keyboard respond 'w','l' &etc
- added comments and some fields to GameDisplayInfo

svn-id: r16554
2005-01-13 22:42:49 +00:00
Torbjörn Andersson
e97c689f8b Removed unused stuff.
svn-id: r16553
2005-01-13 18:00:47 +00:00