233 Commits

Author SHA1 Message Date
Einar Johan Trøan Sømåen
109dbdb5b7
GRIM: Initialize Costume::_components in Costume::load
Presumably the indata always defines the parents before
the children, but nevertheless doesn't hurt to fix this,
if nothing else to make tools like Coverity happy.

Fixes COVERITY: 1470594
2022-10-02 00:50:42 +02:00
Paweł Kołodziejski
06902574b4
GRIM: Janitorial 2022-06-08 01:12:00 +02:00
Paweł Kołodziejski
20cb0ae228
ALL: Cleanup ResidualVM -> ScummVM 2021-12-26 21:19:38 +01:00
Eugene Sandulenko
abea37c9bb
ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Vincent Pelletier
6519558046 GRIM,EMI: Drop Grim::Component::setupTexture
This method is never implemented, so drop its declaration and callers.
2016-07-05 23:13:11 +00:00
Joseph Jezak
99fa91053c MATH: Rename XYZ Rotation Functions to Euler to better describe the function. 2014-09-11 13:38:28 -04:00
Joni Vähämäki
3adbd1fdcf EMI: Implement head tracking. 2014-07-02 22:43:50 +03:00
Joel Teichroeb
b5070bb790 GRIM: Remove _matrix from Component
Mesh is the only component that actually usees _matrix, and it
has it's own local _matrix variable. This remove the confusion over
which _matrix variable is actually used and removes saving _matrix
for all the components that don't use it.
2014-06-25 17:39:10 -07:00
Joseph Jezak
76d36f676b MATH: Add a selectable Euler Order to Rotation3D. 2014-06-23 09:04:25 -04:00
Joel Teichroeb
f106e23a21 GRIM/EMI: Do not check if _chores is null as it does not matter 2014-06-20 11:00:49 -07:00
Joni Vähämäki
b5cdd1240f EMI: Only draw models for actors inside the view frustum.
This adds math classes for doing frustum culling in software. These could be used for optimizing performance in many other places as well. For example, if an actor is outside the view frustum, it may not be necessary to do expensive keyframe animation and vertex skinning calculations for that actor.
2014-06-16 15:42:18 +03:00
Joni Vähämäki
de3c68d89c GRIM: If ActorLookAt is called with an actor as the target, look towards the actor's head instead of their origin. Fixes #887 2014-05-31 15:59:55 +03:00
Joel Teichroeb
0f3da43694 GRIM: Change NULL to nullptr. 2014-05-30 17:43:08 -07:00
Joni Vähämäki
3e322b67ba Revert "EMI: Fix missing hold chores"
This reverts commit 863b33e803f17503d5983a9f99cdd8dd71ec7543.

Conflicts:
	engines/grim/actor.cpp
	engines/grim/actor.h
	engines/grim/costume.cpp
	engines/grim/costume.h
	engines/grim/costume/chore.h
	engines/grim/emi/costumeemi.cpp
	engines/grim/emi/costumeemi.h
2014-05-31 03:05:30 +03:00
Joni Vähämäki
a180b3b562 EMI: Chore fading fixes.
Fading out chores remain in playing state until they have completely faded out. Also using StopChore on a fading out chore will actually stop the chore, unlike in Grim where the chore will keep fading out.
2014-05-31 03:05:17 +03:00
Pawel Kolodziejski
8759900b6a ALL: synced with ScummVM 2014-04-05 18:18:42 +02:00
Joel Teichroeb
7390c8974b GRIM: Make sure that we have a valid chore when setting the type. Fixes #843 2014-03-09 14:03:36 -07:00
Christian Krause
b35bdd2ddf EMI: Don't stop looping chores in StopAllChores
Some chores need to stay active even after a call to
StopAllChores(). E.g. the hold chores should stay active
even after changing the set (which calls StopAllChores()).

It looks like that the previously unknown boolean paramter
of StopAllChores() controls that behavior. If set to TRUE,
stop only the non-looping chores.

This patch fixes:
- hold chore was lost when switching sets
- blue painting did not show the ultimate insult when opening
the inventory
2014-02-21 20:13:11 +01:00
Christian Krause
863b33e803 EMI: Fix missing hold chores
The hold chore was always lost after e.g. turning left or right.
Although that chore was still in _playingChores, it was not shown.

The patch uses the following order for drawing the chores:
- wear chores
- rest chores
- walk/turn chores
- other chores (in order of the playChore calls)
2014-02-21 20:13:05 +01:00
Einar Johan Trøan Sømåen
20809707ab GRIM: Initialize more members in Costume's constructor, and move _fname initialization to initalizer list. 2014-01-07 12:36:16 +01:00
sietschie
d06762ec52 EMI: removed unnecessary comments, made getBoundingBox const 2013-12-12 14:46:53 +01:00
sietschie
98e9b41010 EMI: Implement GetBoundingPos for EMIModel
Added the ability to compute the bounding boxes of models so that the
text can be correctly placed near the actors.
2013-12-10 17:19:07 +01:00
Ingo van Lil
8a9a24c527 EMI: Allow resetting actor turn chores
EMI scripts use nil in SetActorTurnChores() to reset the turn chores,
e.g. when Guybrush picks up the hot coal in wed.lua.
2013-12-01 00:36:36 +01:00
Ingo van Lil
81e65b0c70 EMI: Save/restore state of costumes
EMICostume overrides the parent class's saveState/restoreState methods with
NOP functions, causing a great number of graphical glitches after restoring
a savegame. EMI costumes do not seem to have any additional dynamic state,
so the parent save and restore methods work just fine.
2013-11-26 20:37:31 +01:00
Joel Teichroeb
4e6378be14 GRIM: Do not need to check if a pointer is NULL before deleting it as nothing will happen if it is NULL 2013-07-07 21:11:34 -07:00
Giulio Camuffo
920875909d GRIM: Make TextSplitter tell the file name on error 2013-02-04 21:36:38 +01:00
Giulio Camuffo
aabd36493d GRIMDEMO: New AnimComponent for 'anim' components instead of using BitmapComponent. 2013-01-09 00:14:41 +01:00
Giulio Camuffo
dd8c779a24 Revert "GRIM: New Component::stop function, used by some components instead of reset()."
This reverts commit cbf454d4d88dd9a558298e2b2c95e4bd26b524c0.
2013-01-07 17:18:32 +01:00
Giulio Camuffo
b7394cad1f Revert "GRIM: Don't reset the components when stopping all the chores."
This reverts commit 7525b67087029ea0719daf7dcadb795a9c52ecc3.
2013-01-07 17:18:32 +01:00
Giulio Camuffo
bc47b5fdc8 Revert "GRIM: Don't animate hidden models."
This reverts commit f694563d1c9edce97f3e7cf181fd877f61d0e751.
2012-12-23 23:30:01 +01:00
Giulio Camuffo
cbf454d4d8 GRIM: New Component::stop function, used by some components instead of reset(). 2012-12-20 18:29:18 +01:00
Giulio Camuffo
f694563d1c GRIM: Don't animate hidden models. 2012-12-20 15:31:13 +01:00
Giulio Camuffo
7525b67087 GRIM: Don't reset the components when stopping all the chores.
Fix Glottis head disappearing when singing rusty anchor and some other
similar cases.
2012-12-20 14:56:53 +01:00
Paweł Kołodziejski
175620b62a ALL: change license headers from LGPL to GPL, and few updates 2012-12-19 23:15:43 +01:00
Dries Harnie
b9fc80b5ee EMI: Support looping chores 2012-07-12 19:58:55 +02:00
Joel Teichroeb
e92d894691 EMI: Remove useage of dynamic_cast 2012-05-02 20:10:34 -07:00
Joel Teichroeb
62136ea1ff GRIM: Add isComponentType to Component to provide cleaner tag checking 2012-05-02 18:13:58 -07:00
Joel Teichroeb
68b21782c8 GRIM: Only fix the endianness of a components tag once. 2012-05-02 18:07:56 -07:00
Joel Teichroeb
6e4add8ab8 GRIM: Remove usage of dynamic_cast 2012-04-30 22:36:46 -07:00
Joel Teichroeb
083d1b4ff5 GRIM: Clean up chore somewhat 2012-04-28 14:17:08 -07:00
Joel Teichroeb
3e2cb21d30 EMI: Partially implement AdvanceChore 2012-04-28 11:47:24 -07:00
Joel Teichroeb
b306a1c52a GRIM: Fix indentation 2012-04-28 11:13:21 -07:00
Joel Teichroeb
0dcfaf8fb1 GRIM: Do not include unneeded headers 2012-04-04 16:11:05 -07:00
Joel Teichroeb
63938ba499 GRIM: Clean up unneeded includes and fix some trailing whitespace 2012-03-26 20:12:00 -07:00
Dries Harnie
f21f2867fb EMI: Support strings as walk/rest/mumble/turn chores 2012-03-04 22:52:49 +01:00
Joel Teichroeb
7ff91c5817 GRIM: Various cleanups to code 2012-02-04 18:07:24 -08:00
Joel Teichroeb
1226e45ac3 EMI: Initial work on getting costumes to draw animations.
Also, an initial split-off for EMI from the costume-class,
now uses it as a base class. (somaen)
2012-02-02 22:01:09 +01:00
Einar Johan T. Sømåen
27d82c192e EMI: Add a component for the animations in emi. 2012-01-30 22:24:09 +01:00
Einar Johan T. Sømåen
24ac27d1ad EMI: Move the emi-costumes into the EMI-subfolder 2012-01-29 16:43:17 +01:00
Giulio Camuffo
9771492e6c GRIM: Push savegame version to 21. 2012-01-28 10:03:27 +01:00