SAGA: Move ITE credits together with the other ITE static data

This commit is contained in:
Filippos Karapetis
2014-07-20 17:10:56 +03:00
parent e5b10aba57
commit 7c19effd36
4 changed files with 126 additions and 128 deletions
+20 -120
View File
@@ -38,11 +38,6 @@
namespace Saga {
using Common::UNK_LANG;
using Common::EN_ANY;
using Common::DE_DEU;
using Common::IT_ITA;
#define INTRO_FRAMETIME 90
#define INTRO_CAPTION_Y 170
#define INTRO_DE_CAPTION_Y 160
@@ -174,20 +169,6 @@ EventColumns *Scene::ITEQueueDialogue(EventColumns *eventColumns, int n_dialogue
return eventColumns;
}
enum {
kCHeader,
kCText
};
enum {
kITEPC = (1 << 0),
kITEPCCD = (1 << 1),
kITEMac = (1 << 2),
kITEWyrmKeep = (1 << 3),
kITEAny = 0xffff,
kITENotWyrmKeep = kITEAny & ~kITEWyrmKeep
};
// Queue a page of credits text. The original interpreter did word-wrapping
// automatically. We currently don't.
@@ -203,13 +184,13 @@ EventColumns *Scene::ITEQueueCredits(int delta_time, int duration, int n_credits
lang = _vm->getLanguage();
if (hasWyrmkeepCredits)
game = kITEWyrmKeep;
game = kITECreditsWyrmKeep;
else if (_vm->getPlatform() == Common::kPlatformMacintosh)
game = kITEMac;
game = kITECreditsMac;
else if (_vm->getFeatures() & GF_EXTRA_ITE_CREDITS)
game = kITEPCCD;
game = kITECreditsPCCD;
else
game = kITEPC;
game = kITECreditsPC;
int line_spacing = 0;
int paragraph_spacing;
@@ -220,7 +201,7 @@ EventColumns *Scene::ITEQueueCredits(int delta_time, int duration, int n_credits
int credits_height = 0;
for (i = 0; i < n_credits; i++) {
if (credits[i].lang != lang && credits[i].lang != UNK_LANG) {
if (credits[i].lang != lang && credits[i].lang != Common::UNK_LANG) {
continue;
}
@@ -229,12 +210,12 @@ EventColumns *Scene::ITEQueueCredits(int delta_time, int duration, int n_credits
}
switch (credits[i].type) {
case kCHeader:
case kITECreditsHeader:
font = kKnownFontSmall;
line_spacing = 4;
n_paragraphs++;
break;
case kCText:
case kITECreditsText:
font = kKnownFontMedium;
line_spacing = 2;
break;
@@ -261,7 +242,7 @@ EventColumns *Scene::ITEQueueCredits(int delta_time, int duration, int n_credits
textEntry.point.x = 160;
for (i = 0; i < n_credits; i++) {
if (credits[i].lang != lang && credits[i].lang != UNK_LANG) {
if (credits[i].lang != lang && credits[i].lang != Common::UNK_LANG) {
continue;
}
@@ -270,12 +251,12 @@ EventColumns *Scene::ITEQueueCredits(int delta_time, int duration, int n_credits
}
switch (credits[i].type) {
case kCHeader:
case kITECreditsHeader:
font = kKnownFontSmall;
line_spacing = 4;
y += paragraph_spacing;
break;
case kCText:
case kITECreditsText:
font = kKnownFontMedium;
line_spacing = 2;
break;
@@ -601,23 +582,7 @@ int Scene::ITEIntroValleyProc(int param) {
Event event;
EventColumns *eventColumns;
static const IntroCredit credits[] = {
{EN_ANY, kITEAny, kCHeader, "Producer"},
{DE_DEU, kITEAny, kCHeader, "Produzent"},
{IT_ITA, kITEAny, kCHeader, "Produttore"},
{UNK_LANG, kITEAny, kCText, "Walter Hochbrueckner"},
{EN_ANY, kITEAny, kCHeader, "Executive Producer"},
{DE_DEU, kITEAny, kCHeader, "Ausf\201hrender Produzent"},
{IT_ITA, kITEAny, kCHeader, "Produttore Esecutivo"},
{UNK_LANG, kITEAny, kCText, "Robert McNally"},
{UNK_LANG, kITEWyrmKeep, kCHeader, "2nd Executive Producer"},
{EN_ANY, kITENotWyrmKeep, kCHeader, "Publisher"},
{DE_DEU, kITENotWyrmKeep, kCHeader, "Herausgeber"},
{IT_ITA, kITENotWyrmKeep, kCHeader, "Editore"},
{UNK_LANG, kITEAny, kCText, "Jon Van Caneghem"}
};
int n_credits = ARRAYSIZE(credits);
int n_credits = ARRAYSIZE(creditsValley);
switch (param) {
case SCENE_BEGIN:
@@ -669,7 +634,7 @@ int Scene::ITEIntroValleyProc(int param) {
_vm->_events->chain(eventColumns, event);
// Queue game credits list
eventColumns = ITEQueueCredits(9000, CREDIT_DURATION1, n_credits, credits);
eventColumns = ITEQueueCredits(9000, CREDIT_DURATION1, n_credits, creditsValley);
// End scene after credit display
event.type = kEvTOneshot;
@@ -698,47 +663,8 @@ int Scene::ITEIntroTreeHouseProc(int param) {
Event event;
EventColumns *eventColumns;
static const IntroCredit credits1[] = {
{EN_ANY, kITEAny, kCHeader, "Game Design"},
{DE_DEU, kITEAny, kCHeader, "Spielentwurf"},
{IT_ITA, kITEAny, kCHeader, "Progetto"},
{UNK_LANG, kITEAny, kCText, "Talin, Joe Pearce, Robert McNally"},
{EN_ANY, kITEAny, kCText, "and Carolly Hauksdottir"},
{DE_DEU, kITEAny, kCText, "und Carolly Hauksdottir"},
{IT_ITA, kITEAny, kCText, "e Carolly Hauksdottir"},
{EN_ANY, kITEAny, kCHeader, "Screenplay and Dialog"},
{EN_ANY, kITEAny, kCText, "Robert Leh, Len Wein, and Bill Rotsler"},
{DE_DEU, kITEAny, kCHeader, "Geschichte und Dialoge"},
{DE_DEU, kITEAny, kCText, "Robert Leh, Len Wein und Bill Rotsler"},
{IT_ITA, kITEAny, kCHeader, "Sceneggiatura e Dialoghi"},
{IT_ITA, kITEAny, kCText, "Robert Leh, Len Wein e Bill Rotsler"}
};
int n_credits1 = ARRAYSIZE(credits1);
static const IntroCredit credits2[] = {
{UNK_LANG, kITEWyrmKeep, kCHeader, "Art Direction"},
{UNK_LANG, kITEWyrmKeep, kCText, "Allison Hershey"},
{EN_ANY, kITEAny, kCHeader, "Art"},
{DE_DEU, kITEAny, kCHeader, "Grafiken"},
{IT_ITA, kITEAny, kCHeader, "Grafica"},
{UNK_LANG, kITEWyrmKeep, kCText, "Ed Lacabanne, Glenn Price, April Lee,"},
{UNK_LANG, kITENotWyrmKeep, kCText, "Edward Lacabanne, Glenn Price, April Lee,"},
{UNK_LANG, kITEWyrmKeep, kCText, "Lisa Sample, Brian Dowrick, Reed Waller,"},
{EN_ANY, kITEWyrmKeep, kCText, "Allison Hershey and Talin"},
{DE_DEU, kITEWyrmKeep, kCText, "Allison Hershey und Talin"},
{IT_ITA, kITEWyrmKeep, kCText, "Allison Hershey e Talin"},
{EN_ANY, kITENotWyrmKeep, kCText, "Lisa Iennaco, Brian Dowrick, Reed"},
{EN_ANY, kITENotWyrmKeep, kCText, "Waller, Allison Hershey and Talin"},
{DE_DEU, kITEAny, kCText, "Waller, Allison Hershey und Talin"},
{IT_ITA, kITEAny, kCText, "Waller, Allison Hershey e Talin"},
{EN_ANY, kITENotWyrmKeep, kCHeader, "Art Direction"},
{DE_DEU, kITENotWyrmKeep, kCHeader, "Grafische Leitung"},
{IT_ITA, kITENotWyrmKeep, kCHeader, "Direzione Grafica"},
{UNK_LANG, kITENotWyrmKeep, kCText, "Allison Hershey"}
};
int n_credits2 = ARRAYSIZE(credits2);
int n_credits1 = ARRAYSIZE(creditsTreeHouse1);
int n_credits2 = ARRAYSIZE(creditsTreeHouse2);
switch (param) {
case SCENE_BEGIN:
@@ -763,8 +689,8 @@ int Scene::ITEIntroTreeHouseProc(int param) {
}
// Queue game credits list
ITEQueueCredits(DISSOLVE_DURATION + 2000, CREDIT_DURATION1, n_credits1, credits1);
eventColumns = ITEQueueCredits(DISSOLVE_DURATION + 7000, CREDIT_DURATION1, n_credits2, credits2);
ITEQueueCredits(DISSOLVE_DURATION + 2000, CREDIT_DURATION1, n_credits1, creditsTreeHouse1);
eventColumns = ITEQueueCredits(DISSOLVE_DURATION + 7000, CREDIT_DURATION1, n_credits2, creditsTreeHouse2);
// End scene after credit display
event.type = kEvTOneshot;
@@ -793,34 +719,8 @@ int Scene::ITEIntroFairePathProc(int param) {
Event event;
EventColumns *eventColumns;
static const IntroCredit credits1[] = {
{EN_ANY, kITEAny, kCHeader, "Programming"},
{DE_DEU, kITEAny, kCHeader, "Programmiert von"},
{IT_ITA, kITEAny, kCHeader, "Programmazione"},
{UNK_LANG, kITEAny, kCText, "Talin, Walter Hochbrueckner,"},
{EN_ANY, kITEAny, kCText, "Joe Burks and Robert Wiggins"},
{DE_DEU, kITEAny, kCText, "Joe Burks und Robert Wiggins"},
{IT_ITA, kITEAny, kCText, "Joe Burks e Robert Wiggins"},
{EN_ANY, kITEPCCD | kITEWyrmKeep, kCHeader, "Additional Programming"},
{EN_ANY, kITEPCCD | kITEWyrmKeep, kCText, "John Bolton"},
{UNK_LANG, kITEMac, kCHeader, "Macintosh Version"},
{UNK_LANG, kITEMac, kCText, "Michael McNally and Robert McNally"},
{EN_ANY, kITEAny, kCHeader, "Music and Sound"},
{DE_DEU, kITEAny, kCHeader, "Musik und Sound"},
{IT_ITA, kITEAny, kCHeader, "Musica e Sonoro"},
{UNK_LANG, kITEAny, kCText, "Matt Nathan"}
};
int n_credits1 = ARRAYSIZE(credits1);
static const IntroCredit credits2[] = {
{EN_ANY, kITEAny, kCHeader, "Directed by"},
{DE_DEU, kITEAny, kCHeader, "Regie"},
{IT_ITA, kITEAny, kCHeader, "Regia"},
{UNK_LANG, kITEAny, kCText, "Talin"}
};
int n_credits2 = ARRAYSIZE(credits2);
int n_credits1 = ARRAYSIZE(creditsFairePath1);
int n_credits2 = ARRAYSIZE(creditsFairePath2);
switch (param) {
case SCENE_BEGIN:
@@ -843,8 +743,8 @@ int Scene::ITEIntroFairePathProc(int param) {
_vm->_events->chain(eventColumns, event);
// Queue game credits list
ITEQueueCredits(DISSOLVE_DURATION + 2000, CREDIT_DURATION1, n_credits1, credits1);
eventColumns = ITEQueueCredits(DISSOLVE_DURATION + 7000, CREDIT_DURATION1, n_credits2, credits2);
ITEQueueCredits(DISSOLVE_DURATION + 2000, CREDIT_DURATION1, n_credits1, creditsFairePath1);
eventColumns = ITEQueueCredits(DISSOLVE_DURATION + 7000, CREDIT_DURATION1, n_credits2, creditsFairePath2);
// End scene after credit display
event.type = kEvTOneshot;
+79
View File
@@ -798,4 +798,83 @@ const IntroDialogue introDialogueCave4[][4] = {
} }
};
const IntroCredit creditsValley[] = {
{Common::EN_ANY, kITECreditsAny, kITECreditsHeader, "Producer"},
{Common::DE_DEU, kITECreditsAny, kITECreditsHeader, "Produzent"},
{Common::IT_ITA, kITECreditsAny, kITECreditsHeader, "Produttore"},
{Common::UNK_LANG, kITECreditsAny, kITECreditsText, "Walter Hochbrueckner"},
{Common::EN_ANY, kITECreditsAny, kITECreditsHeader, "Executive Producer"},
{Common::DE_DEU, kITECreditsAny, kITECreditsHeader, "Ausf\201hrender Produzent"},
{Common::IT_ITA, kITECreditsAny, kITECreditsHeader, "Produttore Esecutivo"},
{Common::UNK_LANG, kITECreditsAny, kITECreditsText, "Robert McNally"},
{Common::UNK_LANG, kITECreditsWyrmKeep, kITECreditsHeader, "2nd Executive Producer"},
{Common::EN_ANY, kITECreditsNotWyrmKeep, kITECreditsHeader, "Publisher"},
{Common::DE_DEU, kITECreditsNotWyrmKeep, kITECreditsHeader, "Herausgeber"},
{Common::IT_ITA, kITECreditsNotWyrmKeep, kITECreditsHeader, "Editore"},
{Common::UNK_LANG, kITECreditsAny, kITECreditsText, "Jon Van Caneghem"}
};
const IntroCredit creditsTreeHouse1[] = {
{Common::EN_ANY, kITECreditsAny, kITECreditsHeader, "Game Design"},
{Common::DE_DEU, kITECreditsAny, kITECreditsHeader, "Spielentwurf"},
{Common::IT_ITA, kITECreditsAny, kITECreditsHeader, "Progetto"},
{Common::UNK_LANG, kITECreditsAny, kITECreditsText, "Talin, Joe Pearce, Robert McNally"},
{Common::EN_ANY, kITECreditsAny, kITECreditsText, "and Carolly Hauksdottir"},
{Common::DE_DEU, kITECreditsAny, kITECreditsText, "und Carolly Hauksdottir"},
{Common::IT_ITA, kITECreditsAny, kITECreditsText, "e Carolly Hauksdottir"},
{Common::EN_ANY, kITECreditsAny, kITECreditsHeader, "Screenplay and Dialog"},
{Common::EN_ANY, kITECreditsAny, kITECreditsText, "Robert Leh, Len Wein, and Bill Rotsler"},
{Common::DE_DEU, kITECreditsAny, kITECreditsHeader, "Geschichte und Dialoge"},
{Common::DE_DEU, kITECreditsAny, kITECreditsText, "Robert Leh, Len Wein und Bill Rotsler"},
{Common::IT_ITA, kITECreditsAny, kITECreditsHeader, "Sceneggiatura e Dialoghi"},
{Common::IT_ITA, kITECreditsAny, kITECreditsText, "Robert Leh, Len Wein e Bill Rotsler"}
};
const IntroCredit creditsTreeHouse2[] = {
{Common::UNK_LANG, kITECreditsWyrmKeep, kITECreditsHeader, "Art Direction"},
{Common::UNK_LANG, kITECreditsWyrmKeep, kITECreditsText, "Allison Hershey"},
{Common::EN_ANY, kITECreditsAny, kITECreditsHeader, "Art"},
{Common::DE_DEU, kITECreditsAny, kITECreditsHeader, "Grafiken"},
{Common::IT_ITA, kITECreditsAny, kITECreditsHeader, "Grafica"},
{Common::UNK_LANG, kITECreditsWyrmKeep, kITECreditsText, "Ed Lacabanne, Glenn Price, April Lee,"},
{Common::UNK_LANG, kITECreditsNotWyrmKeep, kITECreditsText, "Edward Lacabanne, Glenn Price, April Lee,"},
{Common::UNK_LANG, kITECreditsWyrmKeep, kITECreditsText, "Lisa Sample, Brian Dowrick, Reed Waller,"},
{Common::EN_ANY, kITECreditsWyrmKeep, kITECreditsText, "Allison Hershey and Talin"},
{Common::DE_DEU, kITECreditsWyrmKeep, kITECreditsText, "Allison Hershey und Talin"},
{Common::IT_ITA, kITECreditsWyrmKeep, kITECreditsText, "Allison Hershey e Talin"},
{Common::EN_ANY, kITECreditsNotWyrmKeep, kITECreditsText, "Lisa Iennaco, Brian Dowrick, Reed"},
{Common::EN_ANY, kITECreditsNotWyrmKeep, kITECreditsText, "Waller, Allison Hershey and Talin"},
{Common::DE_DEU, kITECreditsAny, kITECreditsText, "Waller, Allison Hershey und Talin"},
{Common::IT_ITA, kITECreditsAny, kITECreditsText, "Waller, Allison Hershey e Talin"},
{Common::EN_ANY, kITECreditsNotWyrmKeep, kITECreditsHeader, "Art Direction"},
{Common::DE_DEU, kITECreditsNotWyrmKeep, kITECreditsHeader, "Grafische Leitung"},
{Common::IT_ITA, kITECreditsNotWyrmKeep, kITECreditsHeader, "Direzione Grafica"},
{Common::UNK_LANG, kITECreditsNotWyrmKeep, kITECreditsText, "Allison Hershey"}
};
const IntroCredit creditsFairePath1[] = {
{Common::EN_ANY, kITECreditsAny, kITECreditsHeader, "Programming"},
{Common::DE_DEU, kITECreditsAny, kITECreditsHeader, "Programmiert von"},
{Common::IT_ITA, kITECreditsAny, kITECreditsHeader, "Programmazione"},
{Common::UNK_LANG, kITECreditsAny, kITECreditsText, "Talin, Walter Hochbrueckner,"},
{Common::EN_ANY, kITECreditsAny, kITECreditsText, "Joe Burks and Robert Wiggins"},
{Common::DE_DEU, kITECreditsAny, kITECreditsText, "Joe Burks und Robert Wiggins"},
{Common::IT_ITA, kITECreditsAny, kITECreditsText, "Joe Burks e Robert Wiggins"},
{Common::EN_ANY, kITECreditsPCCD | kITECreditsWyrmKeep, kITECreditsHeader, "Additional Programming"},
{Common::EN_ANY, kITECreditsPCCD | kITECreditsWyrmKeep, kITECreditsText, "John Bolton"},
{Common::UNK_LANG, kITECreditsMac, kITECreditsHeader, "Macintosh Version"},
{Common::UNK_LANG, kITECreditsMac, kITECreditsText, "Michael McNally and Robert McNally"},
{Common::EN_ANY, kITECreditsAny, kITECreditsHeader, "Music and Sound"},
{Common::DE_DEU, kITECreditsAny, kITECreditsHeader, "Musik und Sound"},
{Common::IT_ITA, kITECreditsAny, kITECreditsHeader, "Musica e Sonoro"},
{Common::UNK_LANG, kITECreditsAny, kITECreditsText, "Matt Nathan"}
};
const IntroCredit creditsFairePath2[] = {
{Common::EN_ANY, kITECreditsAny, kITECreditsHeader, "Directed by"},
{Common::DE_DEU, kITECreditsAny, kITECreditsHeader, "Regie"},
{Common::IT_ITA, kITECreditsAny, kITECreditsHeader, "Regia"},
{Common::UNK_LANG, kITECreditsAny, kITECreditsText, "Talin"}
};
} // End of namespace Saga
+27
View File
@@ -84,6 +84,27 @@ struct IntroDialogue {
const char *i_str;
};
struct IntroCredit {
Common::Language lang;
int game;
int type;
const char *string;
};
enum {
kITECreditsHeader,
kITECreditsText
};
enum {
kITECreditsPC = (1 << 0),
kITECreditsPCCD = (1 << 1),
kITECreditsMac = (1 << 2),
kITECreditsWyrmKeep = (1 << 3),
kITECreditsAny = 0xffff,
kITECreditsNotWyrmKeep = kITECreditsAny & ~kITECreditsWyrmKeep
};
#define ITE_OBJECTCOUNT 39
#define ITE_SFXCOUNT 63
@@ -116,6 +137,12 @@ extern const IntroDialogue introDialogueCave2[][3];
extern const IntroDialogue introDialogueCave3[][3];
extern const IntroDialogue introDialogueCave4[][4];
extern const IntroCredit creditsValley[13];
extern const IntroCredit creditsTreeHouse1[13];
extern const IntroCredit creditsTreeHouse2[19];
extern const IntroCredit creditsFairePath1[15];
extern const IntroCredit creditsFairePath2[4];
} // End of namespace Saga
#endif
-8
View File
@@ -184,14 +184,6 @@ typedef Common::List<LoadSceneParams> SceneQueueList;
#define CREDIT_DURATION1 4000
struct IntroCredit {
Common::Language lang;
int game;
int type;
const char *string;
};
class Scene {
public:
Scene(SagaEngine *vm);