Commit Graph

445 Commits

Author SHA1 Message Date
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
Torbjörn Andersson
8c708cce8e A few subtitle-related changes:
* Added speechCoords to the SpeechData structure so that talking actors
  don't drag their speech subtitles with them just because they're moving
  and talking at the same time. (Could this also be useful for non-actor
  speech?) If the actor has multiple strings, the coordinates are updated
  for each new string.

* Made speechColor and outlineCoor arrays so that simultaneous speech (i.e.
  where several actors are talking at the same time) multi-coloured. This
  is completely untested, though.

* Used getBlack() to get the black colour for the text outline. The
  original uses a constant, but we could always make getBlack() return
  that constant, if we want to.

svn-id: r16550
2005-01-13 07:47:04 +00:00
Torbjörn Andersson
1e499f47f2 Slight adjustment to previous commit.
svn-id: r16549
2005-01-12 12:51:56 +00:00
Torbjörn Andersson
3f211bdc32 There was a slight but noticeable pause in linked animations at the moment
it changes to the link. I'm guessing that the last frame in the animation
is identical to the first frame in the link.

The original calls SetAlarm(&deltaAlarm[i], delta->timer) between each
frame, but amends itself by calling SetAlarm(&deltaAlarm[i], 0) when the
link happens. I'm trying to simulate that effect by using 0 as frame time
instead of anim->frame_time. I think that's the right thing to do.

svn-id: r16548
2005-01-12 11:07:56 +00:00
Andrew Kurushin
89e6030c58 remove game.h & image.h
svn-id: r16546
2005-01-11 21:19:53 +00:00
Andrew Kurushin
244b227b19 - remove game.h & image.h
- all display information of current game goes to SagaEngine
- remove GameFontIds
- hide SagaEngine _gameId,_gameType & etc with methods getGameId(), getGameType()

svn-id: r16545
2005-01-11 21:10:36 +00:00
Torbjörn Andersson
d429502d29 Make voicess.res the first IHNM voice file, since that's the one that's
used in the intro. That way, if the IHNM demo plays an intro we'll use the
first voice file both for the demo and the full game.

Eventually we'll need to implement switching between different voice files,
of course, but that can wait.

svn-id: r16542
2005-01-11 19:40:17 +00:00
Torbjörn Andersson
4dda4eb31b On Fingolfin's suggestion I put back the inclusion of util.h into Rect, for
MIN() and MAX(). I then removed util.h from a bunch of files which I don't
think need it any more. (Please let me know if I got too blood-thirsty!)

This reverts some of the changes I made this morning.

svn-id: r16541
2005-01-11 13:25:02 +00:00
Torbjörn Andersson
c5e83de099 Use Fingolfin's new WAV code.
svn-id: r16540
2005-01-11 08:32:10 +00:00
Eugene Sandulenko
133ff34cb4 o All fonts were mapped. Introduced new FONT_DONTMAP flag
o Implemented and tested converse drawing. Still some features like
  arrows and hardcoded values are present, and it is not used in scripts

svn-id: r16536
2005-01-11 00:51:58 +00:00
Eugene Sandulenko
df7f9eb182 Untested converse. Drawing isn't possible due to lack of needed information
in ITE_interface structure.

svn-id: r16533
2005-01-10 22:51:01 +00:00
Max Horn
5c48717dd2 Remove some more header dependencies
svn-id: r16530
2005-01-10 22:35:43 +00:00
Max Horn
cffd917165 system.h was being included in tons of places, without any good reason; reduced this (total dependencies on system.h went down from 193 to 85 files)
svn-id: r16527
2005-01-10 22:06:49 +00:00
Eugene Sandulenko
6cfe0f7968 German retail IHNM patch.re_ md5 is confirmed
svn-id: r16519
2005-01-10 14:25:27 +00:00
Torbjörn Andersson
9f3593df80 Better sync between music and intro.
svn-id: r16516
2005-01-10 07:56:23 +00:00
Torbjörn Andersson
055231181e Removed unused variable.
svn-id: r16515
2005-01-10 07:42:43 +00:00