aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/lol.h
diff options
context:
space:
mode:
authorFlorian Kagerer2009-05-21 22:29:49 +0000
committerFlorian Kagerer2009-05-21 22:29:49 +0000
commit5076b06bb654abe9eecf98c6fe60ef8a378acf2f (patch)
tree8e1d224850a093af5759c3d009846922246324f8 /engines/kyra/lol.h
parentb8749923090d60e2e73a602a6f0d62ea1361bde6 (diff)
downloadscummvm-rg350-5076b06bb654abe9eecf98c6fe60ef8a378acf2f.tar.gz
scummvm-rg350-5076b06bb654abe9eecf98c6fe60ef8a378acf2f.tar.bz2
scummvm-rg350-5076b06bb654abe9eecf98c6fe60ef8a378acf2f.zip
LOL: - implemented Lightning Spell
svn-id: r40776
Diffstat (limited to 'engines/kyra/lol.h')
-rw-r--r--engines/kyra/lol.h18
1 files changed, 15 insertions, 3 deletions
diff --git a/engines/kyra/lol.h b/engines/kyra/lol.h
index fa1d58fac4..f3b89758eb 100644
--- a/engines/kyra/lol.h
+++ b/engines/kyra/lol.h
@@ -260,6 +260,12 @@ struct MapLegendData {
uint16 stringId;
};
+struct LightningProperty {
+ uint8 lastFrame;
+ uint8 frameDiv;
+ int16 sfxId;
+};
+
class LoLEngine : public KyraEngine_v1 {
friend class GUI_LoL;
friend class TextDisplayer_LoL;
@@ -689,7 +695,7 @@ private:
int olol_countSpecificMonsters(EMCState *script);
int olol_updateBlockAnimations2(EMCState *script);
int olol_checkPartyForItemType(EMCState *script);
- int olol_setUnkDoorVar(EMCState *script);
+ int olol_blockDoor(EMCState *script);
int olol_resetTimDialogueState(EMCState *script);
int olol_getItemOnPos(EMCState *script);
int olol_removeLevelItem(EMCState *script);
@@ -955,7 +961,7 @@ private:
int smoothScrollDrawSpecialShape(int pageNum);
OpenDoorState _openDoorState[3];
- int _emcDoorState;
+ int _blockDoor;
uint32 _smoothScrollTimer;
int _smoothScrollModeNormal;
@@ -1263,6 +1269,7 @@ private:
void processMagicGuardian(int charNum, int spellLevel);
void callbackProcessMagicSwarm(WSAMovie_v2 *mov, int x, int y);
+ void callbackProcessMagicLightning(WSAMovie_v2 *mov, int x, int y);
void addSpellToScroll(int spell, int charNum);
void transferSpellToScollAnimation(int charNum, int spell, int slot);
@@ -1273,7 +1280,6 @@ private:
void inflictMagicalDamage(int target, int attacker, int damage, int index, int hitType);
void inflictMagicalDamageForBlock(int block, int attacker, int damage, int index);
-
ActiveSpell _activeSpell;
int8 _availableSpells[7];
int _selectedSpell;
@@ -1281,6 +1287,12 @@ private:
int _spellPropertiesSize;
int _subMenuIndex;
+ LightningProperty *_lightningProps;
+ int16 _lightningCurSfx;
+ int16 _lightningDiv;
+ int16 _lightningFirstSfx;
+ int16 _lightningSfxFrame;
+
uint8 *_healOverlay;
uint8 _swarmSpellStatus;