[Scummvm-git-logs] scummvm master -> 253498ae229b797cb746083179cee903e9a200ef
dreammaster
noreply at scummvm.org
Thu Jan 19 03:51:30 UTC 2023
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
253498ae22 XEEN: Fix for GateMaster monster in map 78
Commit: 253498ae229b797cb746083179cee903e9a200ef
https://github.com/scummvm/scummvm/commit/253498ae229b797cb746083179cee903e9a200ef
Author: Paul Gilbert (dreammaster at scummvm.org)
Date: 2023-01-18T19:49:33-08:00
Commit Message:
XEEN: Fix for GateMaster monster in map 78
I've done a fix in code rather than regenerating xeen.ccs
with the missing monster entry, since in the near term
the combined Might & Magic engine will be merged. Which
replaces xeen.ccs. So this temporary fix avoids redundancy
Changed paths:
devtools/create_xeen/swords.cpp
engines/xeen/map.cpp
diff --git a/devtools/create_xeen/swords.cpp b/devtools/create_xeen/swords.cpp
index 00098fb48d4..f679880a4de 100644
--- a/devtools/create_xeen/swords.cpp
+++ b/devtools/create_xeen/swords.cpp
@@ -30,7 +30,7 @@
void writeSwordsData(CCArchive &cc, const char *swordsDatName) {
Common::File f;
Common::MemFile monsters;
- const int size = MONSTERS_COUNT * 60;
+ const int size = MONSTERS_COUNT * 61;
const int32 offset = 0x44200;
byte buffer[size];
diff --git a/engines/xeen/map.cpp b/engines/xeen/map.cpp
index 2f520ad2bbb..0e536165253 100644
--- a/engines/xeen/map.cpp
+++ b/engines/xeen/map.cpp
@@ -694,6 +694,42 @@ void Map::load(int mapId) {
_animationInfo.load("dark.dat");
_monsterData.load((_vm->getGameID() == GType_Swords) ? "monsters.swd" : "dark.mon");
_wallPicSprites.load("darkpic.dat");
+
+ // FIXME: Temporary fix for last monster in code to avoid regenerating xeen.ccs
+ if (_vm->getGameID() == GType_Swords) {
+ MonsterStruct &m = _monsterData[150];
+ m._name = "GateMaster";
+ m._experience = 200000;
+ m._hp = 1900;
+ m._armorClass = 0x32;
+ m._speed = 0x42;
+ m._numberOfAttacks = 1;
+ m._hatesClass = (CharacterClass)0xf;
+ m._strikes = 15;
+ m._dmgPerStrike = 0x82;
+ m._attackType = (DamageType)4;
+ m._specialAttack = (SpecialAttack)0x14;
+ m._hitChance = 0;
+ m._rangeAttack = 1;
+ m._monsterType = (MonsterType)0;
+ m._fireResistence = 100;
+ m._electricityResistence = 40;
+ m._coldResistence = 40;
+ m._poisonResistence = 40;
+ m._energyResistence = 40;
+ m._magicResistence = 40;
+ m._phsyicalResistence = 30;
+ m._field29 = 0;
+ m._gold = 0;
+ m._gems = 0;
+ m._itemDrop = 0;
+ m._flying = 1;
+ m._imageNumber = 31;
+ m._loopAnimation = 0;
+ m._animationEffect = 0;
+ m._fx = 100;
+ }
+
} else if (_vm->getGameID() == GType_Clouds) {
_animationInfo.load("animinfo.cld");
_monsterData.load("monsters.cld");
More information about the Scummvm-git-logs
mailing list