aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2018-05-27 19:56:41 -0400
committerPaul Gilbert2018-05-27 19:56:41 -0400
commit23f3f171df73fc996f3825680e545d44e34f7692 (patch)
tree937d060e4ed8a59521e9c5a3c0620eba80a5600a
parent881c94636162fc56ea9f409bce6390e959bbd6a1 (diff)
downloadscummvm-rg350-23f3f171df73fc996f3825680e545d44e34f7692.tar.gz
scummvm-rg350-23f3f171df73fc996f3825680e545d44e34f7692.tar.bz2
scummvm-rg350-23f3f171df73fc996f3825680e545d44e34f7692.zip
XEEN: Fix close-up objects placement, incorrect skill text in Create Char dialog
-rw-r--r--devtools/create_xeen/constants.cpp4
-rw-r--r--dists/engine-data/xeen.ccsbin55550 -> 55594 bytes
-rw-r--r--engines/xeen/dialogs/dialogs_create_char.cpp3
-rw-r--r--engines/xeen/resources.cpp1
-rw-r--r--engines/xeen/resources.h1
5 files changed, 7 insertions, 2 deletions
diff --git a/devtools/create_xeen/constants.cpp b/devtools/create_xeen/constants.cpp
index 92e0d1f82d..7210759908 100644
--- a/devtools/create_xeen/constants.cpp
+++ b/devtools/create_xeen/constants.cpp
@@ -627,7 +627,7 @@ const int MONSTER_GRID_BITMASK[12] = {
};
const int INDOOR_OBJECT_X[2][12] = {
- { 5, -7, -112, 98, -8, -65, 49, -9, -34, 16, -58, 40 },
+ { -5, -7, -112, 98, -8, -65, 49, -9, -34, 16, -58, 40 },
{ -35, -35, -142, 68, -35, -95, 19, -35, -62, -14, -98, 16 }
};
@@ -1694,6 +1694,7 @@ const char *const SELECT_CLASS_BEFORE_SAVING =
const char *const EXCHANGE_ATTR_WITH = "Exchange %s with...";
const int NEW_CHAR_SKILLS[10] = { 1, 5, -1, -1, 4, 0, 0, -1, 6, 11 };
+const int NEW_CHAR_SKILLS_OFFSET[10] = { 0, 0, 0, 5, 0, 0, 0, 0, 0, 0 };
const int NEW_CHAR_SKILLS_LEN[10] = { 11, 8, 0, 0, 12, 8, 8, 0, 9, 11 };
const int NEW_CHAR_RACE_SKILLS[10] = { 14, -1, 17, 16, -1, 0, 0, 0, 0, 0 };
@@ -2255,6 +2256,7 @@ void writeConstants(CCArchive &cc) {
file.syncString(SELECT_CLASS_BEFORE_SAVING);
file.syncString(EXCHANGE_ATTR_WITH);
file.syncNumbers((const int *)NEW_CHAR_SKILLS, 10);
+ file.syncNumbers((const int *)NEW_CHAR_SKILLS_OFFSET, 10);
file.syncNumbers((const int *)NEW_CHAR_SKILLS_LEN, 10);
file.syncNumbers((const int *)NEW_CHAR_RACE_SKILLS, 10);
file.syncNumbers((const int *)RACE_MAGIC_RESISTENCES, 5);
diff --git a/dists/engine-data/xeen.ccs b/dists/engine-data/xeen.ccs
index d4c6dd68a8..88671fb669 100644
--- a/dists/engine-data/xeen.ccs
+++ b/dists/engine-data/xeen.ccs
Binary files differ
diff --git a/engines/xeen/dialogs/dialogs_create_char.cpp b/engines/xeen/dialogs/dialogs_create_char.cpp
index 9f3e2a51f1..ab86c4939a 100644
--- a/engines/xeen/dialogs/dialogs_create_char.cpp
+++ b/engines/xeen/dialogs/dialogs_create_char.cpp
@@ -389,7 +389,8 @@ int CreateCharacterDialog::newCharDetails(Race race, Sex sex, int classId,
// Set up default skill for the race, if any
if (Res.NEW_CHAR_RACE_SKILLS[race] != -1) {
- raceSkillStr = Res.SKILL_NAMES[Res.NEW_CHAR_RACE_SKILLS[race]];
+ const char *skillP = Res.SKILL_NAMES[Res.NEW_CHAR_RACE_SKILLS[race]];
+ raceSkillStr = Common::String(skillP + Res.NEW_CHAR_SKILLS_OFFSET[race]);
}
// Set up color to use for each skill string to be displayed, based
diff --git a/engines/xeen/resources.cpp b/engines/xeen/resources.cpp
index 58f2926e9c..160c60a7a9 100644
--- a/engines/xeen/resources.cpp
+++ b/engines/xeen/resources.cpp
@@ -340,6 +340,7 @@ void Resources::loadData() {
file.syncString(SELECT_CLASS_BEFORE_SAVING);
file.syncString(EXCHANGE_ATTR_WITH);
file.syncNumbers((int *)NEW_CHAR_SKILLS, 10);
+ file.syncNumbers((int *)NEW_CHAR_SKILLS_OFFSET, 10);
file.syncNumbers((int *)NEW_CHAR_SKILLS_LEN, 10);
file.syncNumbers((int *)NEW_CHAR_RACE_SKILLS, 10);
file.syncNumbers((int *)RACE_MAGIC_RESISTENCES, 5);
diff --git a/engines/xeen/resources.h b/engines/xeen/resources.h
index f141a2eb75..55f0ed3413 100644
--- a/engines/xeen/resources.h
+++ b/engines/xeen/resources.h
@@ -395,6 +395,7 @@ public:
const char *SELECT_CLASS_BEFORE_SAVING;
const char *EXCHANGE_ATTR_WITH;
int NEW_CHAR_SKILLS[10];
+ int NEW_CHAR_SKILLS_OFFSET[10];
int NEW_CHAR_SKILLS_LEN[10];
int NEW_CHAR_RACE_SKILLS[10];
int RACE_MAGIC_RESISTENCES[5];