mirror of
https://github.com/jummy0/sb2-decomp
synced 2025-03-15 04:24:48 +01:00
buh
This commit is contained in:
parent
9acb6fca58
commit
6648415acd
@ -1,4 +1,4 @@
|
||||
# Speedy Eggbert 2 Source Code Decomp
|
||||
WIP Source Tree for Speedy Eggbert (Blupi) 2
|
||||
|
||||
As of now (5/17/24), there hasn't been any source code found for SE2. So we are using the released (original) source code from Planet Blupi to compare code and help us with the proccess.
|
||||
As of now (5/17/24), the source code of Speedy Eggbert 2 has not been published. We are using the released (original) source code from Planet Blupi to compare code and help us with the proccess.
|
||||
|
489
blupi-d.rc
Normal file
489
blupi-d.rc
Normal file
@ -0,0 +1,489 @@
|
||||
//Microsoft Developer Studio generated resource script.
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include "afxres.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// French (Switzerland) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRS)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_FRENCH, SUBLANG_FRENCH_SWISS
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Icon
|
||||
//
|
||||
|
||||
// Icon with lowest ID value placed first to ensure application icon
|
||||
// remains consistent on all systems.
|
||||
IDR_MAINFRAME ICON DISCARDABLE "blupi.ico"
|
||||
|
||||
#ifndef _MAC
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Version
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 0,4,0,0
|
||||
PRODUCTVERSION 0,4,0,0
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS 0x40004L
|
||||
FILETYPE 0x1L
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "100c04b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "EPSITEC\0"
|
||||
VALUE "FileDescription", "Blupi\0"
|
||||
VALUE "FileVersion", "0, 4, 0, 0\0"
|
||||
VALUE "InternalName", "Planet Blupi\0"
|
||||
VALUE "LegalCopyright", "Copyright © 1997\0"
|
||||
VALUE "OriginalFilename", "Blupi.exe\0"
|
||||
VALUE "ProductName", "EPSITEC Planet Blupi\0"
|
||||
VALUE "ProductVersion", "0, 4, 0, 0\0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x100c, 1200
|
||||
END
|
||||
END
|
||||
|
||||
#endif // !_MAC
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Cursor
|
||||
//
|
||||
|
||||
IDC_POINTER CURSOR DISCARDABLE "cursor1.cur"
|
||||
IDC_MAP CURSOR DISCARDABLE "map.cur"
|
||||
IDC_ARROWU CURSOR DISCARDABLE "arrowup.cur"
|
||||
IDC_ARROWD CURSOR DISCARDABLE "arrowdow.cur"
|
||||
IDC_ARROWL CURSOR DISCARDABLE "arrowlef.cur"
|
||||
IDC_ARROWR CURSOR DISCARDABLE "arrowrig.cur"
|
||||
IDC_ARROWUL CURSOR DISCARDABLE "arrowul.cur"
|
||||
IDC_ARROWUR CURSOR DISCARDABLE "arrowur.cur"
|
||||
IDC_ARROWDR CURSOR DISCARDABLE "arrowdr.cur"
|
||||
IDC_ARROWDL CURSOR DISCARDABLE "arrowdl.cur"
|
||||
IDC_WAIT CURSOR DISCARDABLE "wait.cur"
|
||||
IDC_EMPTY CURSOR DISCARDABLE "empty.cur"
|
||||
IDC_FILL CURSOR DISCARDABLE "fill.cur"
|
||||
IDC_ARROW CURSOR DISCARDABLE "arrow.cur"
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#include ""afxres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// String Table
|
||||
//
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ACTION_GO "Gehen"
|
||||
TX_ACTION_STOP "Halt"
|
||||
TX_ACTION_MANGE "Essen"
|
||||
TX_ACTION_CARRY "Nehmen"
|
||||
TX_ACTION_DEPOSE "Hinlegen"
|
||||
TX_ACTION_ABAT "Baum fällen"
|
||||
TX_ACTION_ROC "Stein bearbeiten"
|
||||
TX_ACTION_CULTIVE "Garten anlegen"
|
||||
TX_ACTION_BUILD1 "Gartenhäuschen"
|
||||
TX_ACTION_BUILD2 "Brutplatz"
|
||||
TX_ACTION_BUILD3 "Labor"
|
||||
TX_ACTION_BUILD4 "Bergwerk"
|
||||
TX_ACTION_BUILD5 "Werkstatt"
|
||||
TX_ACTION_BUILD6 "Beamgerät"
|
||||
TX_ACTION_MUR "Mauer"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ACTION_PALIS "Palisade"
|
||||
TX_ACTION_ABATn "Bäume fällen"
|
||||
TX_ACTION_ROCn "Steine bearbeiten"
|
||||
TX_ACTION_PONT "Brücke"
|
||||
TX_ACTION_TOUR "Wachturm"
|
||||
TX_ACTION_BOIT "Trinken"
|
||||
TX_ACTION_LABO "Verarbeiten"
|
||||
TX_ACTION_FLEUR "Blumenstrauss machen"
|
||||
TX_ACTION_FLEURn "Blumensträusse machen"
|
||||
TX_ACTION_DYNAMITE "Zünden"
|
||||
TX_ACTION_BATEAU "Boot"
|
||||
TX_ACTION_DJEEP "Aussteigen"
|
||||
TX_ACTION_DRAPEAU "Eisen suchen"
|
||||
TX_ACTION_EXTRAIT "Eisen abbauen"
|
||||
TX_ACTION_FABJEEP "Jeep bauen"
|
||||
TX_ACTION_FABMINE "Zeitbombe bauen"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ERROR_MISC "Hier nicht möglich"
|
||||
TX_ERROR_GROUND "Untergrund nicht geeignet"
|
||||
TX_ERROR_FREE "Untergrund schon besetzt"
|
||||
TX_ERROR_PONTOP "Anderes Ufer nicht OK"
|
||||
TX_ERROR_PONTTERM "Brücke schon fertig"
|
||||
TX_ERROR_TOURISOL "(Alleinstehender Wachturm)"
|
||||
TX_ERROR_TOUREAU "Zu nahe am Wasser"
|
||||
TX_ERROR_TELE2 "Es gibt schon 2 Beammaschinen"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_IONAMEEX "Training %d, Zeit %d"
|
||||
TX_IOFREE "frei"
|
||||
TX_TERMMIN "Verloren sobald weniger als %d Blupis"
|
||||
TX_TERMMAX "Gewinnen unmöglich wenn weniger als %d Blupis"
|
||||
TX_BUTTON_JOUER "Missionen"
|
||||
TX_BUTTON_APPRENDRE "Training"
|
||||
TX_BUTTON_QUITTER "BLUPI beenden"
|
||||
TX_BUTTON_PREVP "Vorhergehende Mission"
|
||||
TX_BUTTON_NEXTP "Nächste Mission"
|
||||
TX_BUTTON_PLAYP "Diese Mission spielen"
|
||||
TX_BUTTON_BUILDP "Diese Mission konstruieren"
|
||||
TX_BUTTON_TERM "Beenden"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_READP "Gespeicherte Mission öffnen"
|
||||
TX_BUTTON_WRITEP "Mission speichern"
|
||||
TX_BUTTON_CANCELP "Mission aufgeben"
|
||||
TX_BUTTON_CONTP "Mission weiterspielen"
|
||||
TX_BUTTON_REPEAT "Neu Anfangen"
|
||||
TX_BUTTON_BUTTON "Zur Verfügung stehende Knöpfe"
|
||||
TX_BUTTON_CTERM "Bedingungen für Ende der Mission"
|
||||
TX_BUTTON_TERMC "Konstruktion beenden"
|
||||
TX_BUTTON_TERMHBLUPI "Blupi auf gestreiften Quadraten"
|
||||
TX_BUTTON_TERMHPLANCHE "Bretter auf gestreiften Quadraten"
|
||||
TX_BUTTON_TERMFIRE "Feuer ausgegangen"
|
||||
TX_BUTTON_TERMDEC "(-)"
|
||||
TX_BUTTON_TERMINC "(+)"
|
||||
TX_PAUSE "Pause"
|
||||
TX_JAUGE1 "Blupis Energie"
|
||||
TX_JAUGE2 "Arbeitsfortschritt"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_SETUP "Einstellungen"
|
||||
TX_BUTTON_MUSIC "Auswahl der Musik"
|
||||
TX_BUTTON_SETUP1 "Langsamer"
|
||||
TX_BUTTON_SETUP2 "Schneller"
|
||||
TX_BUTTON_SETUP3 "Leiser"
|
||||
TX_BUTTON_SETUP4 "Lauter"
|
||||
TX_BUTTON_MUSIC1 "Keine Musik"
|
||||
TX_BUTTON_MUSIC2 "Musik Nummer 1"
|
||||
TX_BUTTON_MUSIC3 "Musik Nummer 2"
|
||||
TX_BUTTON_MUSIC4 "Musik Nummer 3"
|
||||
TX_BUTTON_MUSIC5 "Musik Nummer 4"
|
||||
TX_BUTTON_MUSIC6 "Musik Nummer 5"
|
||||
TX_BUTTON_MUSIC7 "Musik Nummer 6"
|
||||
TX_BUTTON_MUSIC8 "Musik Nummer 7"
|
||||
TX_BUTTON_MUSIC9 "Musik Nummer 8"
|
||||
TX_BUTTON_MUSIC10 "Musik Nummer 9"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_REGION "Auswahl der Umgebung"
|
||||
TX_BUTTON_TERMMBLUPI "Blupi im Haus"
|
||||
TX_BUTTON_TERMKILL "Keine Feinde mehr"
|
||||
TX_TERM "Bedingungen für\ndas Ende der Mission"
|
||||
TX_BUTTON "Zur Verfügung\nstehende Knöpfe"
|
||||
TX_MUSIC "Auswahl der Musik"
|
||||
TX_SCHOOL "Training Nummer"
|
||||
TX_MISSION "Mission Nummer"
|
||||
TX_IONAMEMI "Mission %d, Zeit %d"
|
||||
TX_BUTTON_TERMHTOMATE "Tomaten auf gestreiften Quadraten"
|
||||
TX_BUTTON_SETUP5 "Leiser"
|
||||
TX_BUTTON_SETUP6 "Lauter"
|
||||
TX_BUTTON_SETUP7 "Keine Videosequenzen"
|
||||
TX_BUTTON_SETUP8 "Zeigt die Videosequenzen"
|
||||
TX_OUI "Ja"
|
||||
TX_NON "Nein"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_BLUPIm "Kranker Blupi"
|
||||
TX_OBJ_BLUPIf "Erschöpfter Blupi"
|
||||
TX_OBJ_BLUPI "Blupi"
|
||||
TX_OBJ_BATEAU "Boot"
|
||||
TX_OBJ_JEEP "Jeep"
|
||||
TX_OBJ_PIEGE "Klebefalle"
|
||||
TX_OBJ_POISON "Gift"
|
||||
TX_OBJ_DYNAMITE "Dynamitstangen"
|
||||
TX_OBJ_MINE "Zeitbombe"
|
||||
TX_OBJ_TOMATE "Tomaten"
|
||||
TX_OBJ_POTION "Medikament"
|
||||
TX_OBJ_PLANCHE "Bretter"
|
||||
TX_OBJ_PIERRE "Steine"
|
||||
TX_OBJ_DRAPEAU "Wimpel"
|
||||
TX_OBJ_FER "Eisenerz"
|
||||
TX_OBJ_FLEUR1 "Blumen"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_FLEUR2 "Blumen"
|
||||
TX_OBJ_FLEUR3 "Blumen"
|
||||
TX_OBJ_CABANE "Gartenhäuschen"
|
||||
TX_OBJ_LABO "Labor"
|
||||
TX_OBJ_MINEFER "Bergwerk"
|
||||
TX_OBJ_USINE "Werkstatt"
|
||||
TX_OBJ_TOUR "Wachturm"
|
||||
TX_OBJ_FEU "Feuer"
|
||||
TX_OBJ_ROBOT "Roboterchef"
|
||||
TX_OBJ_TRACKS "Planierraupe"
|
||||
TX_OBJ_BOMBE "Springende Bombe"
|
||||
TX_OBJ_ARAIGNEE "Spinne"
|
||||
TX_OBJ_VIRUS "Virus"
|
||||
TX_OBJ_ELECTRO "Elektrisiermaschine"
|
||||
TX_OBJ_ARBRE "Bäume"
|
||||
TX_OBJ_MUR "Mauer"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_ARBREb "Baumstämme"
|
||||
TX_OBJ_ROC "Felsen"
|
||||
TX_OBJ_OEUF "Eier"
|
||||
TX_OBJ_PALISSADE "Palisade"
|
||||
TX_OBJ_ENNEMIp "Verklebter Feind"
|
||||
TX_OBJ_ENNEMI "Feindliche Einrichtung"
|
||||
TX_OBJ_HERBE "Normaler Untergrund"
|
||||
TX_OBJ_MOUSSE "Brennbarer Untergrund"
|
||||
TX_OBJ_TERRE "Karger Untergrund"
|
||||
TX_OBJ_EAU "Wasser"
|
||||
TX_OBJ_RIVE "Ufer"
|
||||
TX_OBJ_MIXTE "Gemischter Untergrund"
|
||||
TX_OBJ_PONT "Brücke"
|
||||
TX_OBJ_COUVEUSE "Brutplatz"
|
||||
TX_OBJ_GLACE "Eis"
|
||||
TX_OBJ_MAISON "Blupis Haus"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_HACHURE "Gestreifte Quadrate"
|
||||
TX_OBJ_MOUSSEb "Verbrannter Untergrund"
|
||||
TX_OBJ_BOUQUET1 "Blumenstrauss"
|
||||
TX_OBJ_BOUQUET2 "Blumenstrauss"
|
||||
TX_OBJ_BOUQUET3 "Blumenstrauss"
|
||||
TX_OBJ_DALLE "Platten"
|
||||
TX_OBJ_ENNEMIs "Feindesgrund"
|
||||
TX_OBJ_DISCIPLE "Hilfsroboter"
|
||||
TX_OBJ_METAL "Platinium"
|
||||
TX_OBJ_FUSEE "Feindliche Rakete"
|
||||
TX_OBJ_TELEPORTE "Beammaschine"
|
||||
TX_OBJ_ARMURE "Rüstung"
|
||||
TX_OBJ_DALLESPEC "Spezialplatten"
|
||||
TX_OBJ_COUVTELE "Brutplatz oder Beammaschine"
|
||||
TX_OBJ_BATIMENT "Gebäude"
|
||||
TX_OBJ_BATENNEMIS "Feindliches Gebäude"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_WIN1 "Toll, Du hast es geschafft"
|
||||
TX_WIN2 "Ja, super"
|
||||
TX_WIN3 "Sehr gut"
|
||||
TX_WIN4 "Ausgezeichnet"
|
||||
TX_WIN5 "Auftrag erfüllt"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_LOST1 "Das war nichts, probier es noch einmal !"
|
||||
TX_LOST2 "Nein, so geht das leider nicht !"
|
||||
TX_LOST3 "Das war mal wieder nichts !"
|
||||
TX_LOST4 "Das war leider nicht die richtige Lösung !"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_LOST5 "Aber nein, doch nicht so..."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_LASTWIN1 "Du kannst jetzt mit den Missionen beginnen."
|
||||
TX_LASTWIN2 "Bravo, das Spiel ist beendet !"
|
||||
TX_LASTWIN3 "Letzte konstruierte Mission beendet."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_SETUP9 "Langsamer"
|
||||
TX_BUTTON_SETUP10 "Schneller"
|
||||
TX_INFO_SETUP1 "Globale\nGeschwindigkeit\ndes Spiels"
|
||||
TX_INFO_SETUP2 "Lautstärke der\nGeräuscheffekte"
|
||||
TX_INFO_SETUP3 "Lautstärke\nder Musik"
|
||||
TX_INFO_SETUP4 "Videosequenzen"
|
||||
TX_INFO_SETUP5 "Geschwindigkeit\nder Bildschirm-\nverschiebungen\nmit der Maus"
|
||||
TX_INFO_NOSCROLL "Keine"
|
||||
TX_BUTTON_REGION1 "Wiese"
|
||||
TX_BUTTON_REGION2 "Wüste"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_REGION3 "Verschneiter Wald"
|
||||
TX_BUTTON_REGION4 "Wald"
|
||||
TX_REGION "Auswahl\nder Umgebung"
|
||||
TX_BUTTON_PLAY_STOP "Halt"
|
||||
TX_BUTTON_PLAY_SETUP "Einstellungen"
|
||||
TX_BUTTON_PLAY_WRITE "Speichern"
|
||||
TX_INSERT "Füge die Planet Blupi CD-Rom in das Laufwerk ein und warte einige Sekunden ..."
|
||||
TX_BUTTON_PREVH "Vorhergehende Seite"
|
||||
TX_BUTTON_NEXTH "Nächste Seite"
|
||||
TX_BUTTON_TERMHMETAL "Platinium auf gestreiften Quadraten"
|
||||
TX_BUTTON_HELP "Hilfe"
|
||||
TX_HELP "Hilfe Nummer"
|
||||
TX_BUTTON_PRIVE "Konstruktion"
|
||||
TX_PRIVATE "Konstruktion Nummer"
|
||||
TX_IONAMEPR "Konstruktion %d, Zeit %d"
|
||||
TX_PRIVATE_HACHBLUPI "1|Auf die gestreiften Quadrate gehen."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ACTION_FABDISC "Roboter bauen"
|
||||
TX_ACTION_REPEAT "Wiederholen"
|
||||
TX_ACTION_QARMURE "Aussteigen"
|
||||
TX_ACTION_FABARMURE "Rüstung bauen"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_PRIVATE_HACHPLANCHE "1|Bretter auf die\n1|gestreiften Quadrate legen."
|
||||
TX_PRIVATE_HACHTOMATE "1|Tomaten auf die\n1|gestreiften Quadrate legen."
|
||||
TX_PRIVATE_HACHMETAL "1|Platinium auf die\n1|gestreiften Quadrate legen."
|
||||
TX_PRIVATE_STOPFIRE "1|Solange überleben bis\n1|das Feuer ausgegangen ist."
|
||||
TX_PRIVATE_HOMEBLUPI "1|Jeder Blupi\n1|in seinem Haus."
|
||||
TX_PRIVATE_KILLROBOTS "1|Alle Feinde\n1|zerstören !"
|
||||
TX_BUTTON_UNDO "Letzten Befehl rückgängig machen"
|
||||
TX_DEMO_END1 "Sie haben soeben mit der DEMO Version von Planet Blupi gespielt."
|
||||
TX_DEMO_END2 "Hoffentlich hatten Sie genau soviel Spass beim Spielen wie wir beim herstellen des Spiels !"
|
||||
TX_DEMO_END3 "Dieses Spiel wurde entwickelt von Epsitec SA, CH-1092 Belmont"
|
||||
TX_DEMO_END4 "http://www.blupi.com blupi@epsitec.ch"
|
||||
TX_FULL_END1 "Sie haben soeben mit PLANET BLUPI gespielt."
|
||||
TX_FULL_END2 "Hoffentlich hatten Sie genau soviel Spass beim Spielen wie wir beim herstellen des Spiels !"
|
||||
TX_FULL_END3 "Herausgegeben von WG Verlag & Lizenzen AG"
|
||||
TX_FULL_END4 "Entwickelt von EPSITEC SA"
|
||||
TX_PRIVATE_OBJECTIF "1|Ziel :"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_PRIVATE_NBBLUPI "1|Die Blupibevölkerung muss mindestens %d Blupi(s) betragen."
|
||||
TX_BUTTON_SKILL "Schwierigkeitsgrad"
|
||||
TX_SKILL1 "Leicht"
|
||||
TX_SKILL2 "Schwer"
|
||||
TX_BUTTON_DEMO "Demo"
|
||||
TX_DEMOREC "REC"
|
||||
TX_DEMOPLAY "Demo"
|
||||
TX_BUTTON_TERMHROBOT "Roboter auf gestreiften Quadraten"
|
||||
TX_PRIVATE_HACHROBOT "1|Der Roboter muss die\n1|gestreiften Quadrate erreichen."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_REPEAT_CULTIVE "1: Tomaten anbauen...\n2: Essen"
|
||||
TX_REPEAT_FLEUR "1: Blumenstrauss binden\n2: Verarbeiten"
|
||||
TX_REPEAT_FLEURQ "1: Nehmen\n2: Verarbeiten"
|
||||
TX_REPEAT_FABMINE "1: Eisen abbauen\n2: Zeitbombe bauen"
|
||||
TX_REPEAT_FABJEEP "1: Eisen abbauen\n2: Jeep bauen"
|
||||
TX_REPEAT_PALIS "1: Baum fällen\n2: Palissade bauen"
|
||||
TX_REPEAT_PALISQ "1: Nehmen\n2: Palissade bauen"
|
||||
TX_REPEAT_PONT "1: Baum fällen\n2: Brücke bauen"
|
||||
TX_REPEAT_PONTQ "1: Nehmen\n2: Brücke bauen"
|
||||
TX_REPEAT_BATEAU "1: Baum fällen\n2: Boot bauen"
|
||||
TX_REPEAT_BATEAUQ "1: Bretter nehmen\n2: Boot bauen"
|
||||
TX_REPEAT_FABARMURE "1: Eisen abbauen\n2: Rüstung bauen"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_MURPAL "Mauer oder Palissade"
|
||||
TX_OBJ_OBJET "Gegenstände"
|
||||
TX_OBJ_ARME "Waffen"
|
||||
TX_OBJ_VEHICULE "Transportmittel"
|
||||
TX_OBJ_STARTFEU "Feuer"
|
||||
TX_OBJ_DELOBJ "Gegenstand löschen"
|
||||
TX_OBJ_DELPERSO "Figur löschen"
|
||||
TX_OBJ_DELFEU "Feuer löschen"
|
||||
TX_OBJ_PLANTE "Pflanzen"
|
||||
TX_OBJ_BARENNEMIS "Feindlicher Zaun"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_DIRECT_N "N"
|
||||
TX_DIRECT_S "S"
|
||||
TX_DIRECT_E "O"
|
||||
TX_DIRECT_O "W"
|
||||
END
|
||||
|
||||
#endif // French (Switzerland) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
|
489
blupi-e.rc
Normal file
489
blupi-e.rc
Normal file
@ -0,0 +1,489 @@
|
||||
//Microsoft Developer Studio generated resource script.
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include "afxres.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// French (Switzerland) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRS)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_FRENCH, SUBLANG_FRENCH_SWISS
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Icon
|
||||
//
|
||||
|
||||
// Icon with lowest ID value placed first to ensure application icon
|
||||
// remains consistent on all systems.
|
||||
IDR_MAINFRAME ICON DISCARDABLE "blupi.ico"
|
||||
|
||||
#ifndef _MAC
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Version
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 0,4,0,0
|
||||
PRODUCTVERSION 0,4,0,0
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS 0x40004L
|
||||
FILETYPE 0x1L
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "100c04b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "EPSITEC\0"
|
||||
VALUE "FileDescription", "Blupi\0"
|
||||
VALUE "FileVersion", "0, 4, 0, 0\0"
|
||||
VALUE "InternalName", "Planet Blupi\0"
|
||||
VALUE "LegalCopyright", "Copyright © 1997\0"
|
||||
VALUE "OriginalFilename", "Blupi.exe\0"
|
||||
VALUE "ProductName", "EPSITEC Planet Blupi\0"
|
||||
VALUE "ProductVersion", "0, 4, 0, 0\0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x100c, 1200
|
||||
END
|
||||
END
|
||||
|
||||
#endif // !_MAC
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Cursor
|
||||
//
|
||||
|
||||
IDC_POINTER CURSOR DISCARDABLE "cursor1.cur"
|
||||
IDC_MAP CURSOR DISCARDABLE "map.cur"
|
||||
IDC_ARROWU CURSOR DISCARDABLE "arrowup.cur"
|
||||
IDC_ARROWD CURSOR DISCARDABLE "arrowdow.cur"
|
||||
IDC_ARROWL CURSOR DISCARDABLE "arrowlef.cur"
|
||||
IDC_ARROWR CURSOR DISCARDABLE "arrowrig.cur"
|
||||
IDC_ARROWUL CURSOR DISCARDABLE "arrowul.cur"
|
||||
IDC_ARROWUR CURSOR DISCARDABLE "arrowur.cur"
|
||||
IDC_ARROWDR CURSOR DISCARDABLE "arrowdr.cur"
|
||||
IDC_ARROWDL CURSOR DISCARDABLE "arrowdl.cur"
|
||||
IDC_WAIT CURSOR DISCARDABLE "wait.cur"
|
||||
IDC_EMPTY CURSOR DISCARDABLE "empty.cur"
|
||||
IDC_FILL CURSOR DISCARDABLE "fill.cur"
|
||||
IDC_ARROW CURSOR DISCARDABLE "arrow.cur"
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#include ""afxres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// String Table
|
||||
//
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ACTION_GO "Go"
|
||||
TX_ACTION_STOP "Stop"
|
||||
TX_ACTION_MANGE "Eat"
|
||||
TX_ACTION_CARRY "Take"
|
||||
TX_ACTION_DEPOSE "Drop"
|
||||
TX_ACTION_ABAT "Cut down a tree"
|
||||
TX_ACTION_ROC "Carve a rock"
|
||||
TX_ACTION_CULTIVE "Grow tomatoes"
|
||||
TX_ACTION_BUILD1 "Garden shed"
|
||||
TX_ACTION_BUILD2 "Incubator"
|
||||
TX_ACTION_BUILD3 "Laboratory"
|
||||
TX_ACTION_BUILD4 "Mine"
|
||||
TX_ACTION_BUILD5 "Workshop"
|
||||
TX_ACTION_BUILD6 "Teleporter"
|
||||
TX_ACTION_MUR "Wall"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ACTION_PALIS "Palisade"
|
||||
TX_ACTION_ABATn "Cut down trees"
|
||||
TX_ACTION_ROCn "Carve rocks"
|
||||
TX_ACTION_PONT "Bridge"
|
||||
TX_ACTION_TOUR "Protection tower"
|
||||
TX_ACTION_BOIT "Drink"
|
||||
TX_ACTION_LABO "Transform"
|
||||
TX_ACTION_FLEUR "Make bunch of flowers"
|
||||
TX_ACTION_FLEURn "Make bunches of flowers"
|
||||
TX_ACTION_DYNAMITE "Blow up"
|
||||
TX_ACTION_BATEAU "Boat"
|
||||
TX_ACTION_DJEEP "Leave Jeep"
|
||||
TX_ACTION_DRAPEAU "Prospect for iron"
|
||||
TX_ACTION_EXTRAIT "Extract iron"
|
||||
TX_ACTION_FABJEEP "Make a Jeep"
|
||||
TX_ACTION_FABMINE "Make a time bomb"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ERROR_MISC "Impossible"
|
||||
TX_ERROR_GROUND "Inadequate ground"
|
||||
TX_ERROR_FREE "Occupied ground"
|
||||
TX_ERROR_PONTOP "Opposite bank no good"
|
||||
TX_ERROR_PONTTERM "Bridge finished"
|
||||
TX_ERROR_TOURISOL "(isolated tower)"
|
||||
TX_ERROR_TOUREAU "Too close to water"
|
||||
TX_ERROR_TELE2 "Already two teleporters"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_IONAMEEX "training %d, time %d"
|
||||
TX_IOFREE "free slot"
|
||||
TX_TERMMIN "Lost if less than %d Blupis"
|
||||
TX_TERMMAX "Impossible to win if less than %d Blupis"
|
||||
TX_BUTTON_JOUER "Missions"
|
||||
TX_BUTTON_APPRENDRE "Training"
|
||||
TX_BUTTON_QUITTER "Quit BLUPI"
|
||||
TX_BUTTON_PREVP "Previous game"
|
||||
TX_BUTTON_NEXTP "Next game"
|
||||
TX_BUTTON_PLAYP "Play this game"
|
||||
TX_BUTTON_BUILDP "Construct this game"
|
||||
TX_BUTTON_TERM "Finish"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_READP "Open another game "
|
||||
TX_BUTTON_WRITEP "Save this game"
|
||||
TX_BUTTON_CANCELP "Quit this game"
|
||||
TX_BUTTON_CONTP "Continue this game"
|
||||
TX_BUTTON_REPEAT "Restart this game"
|
||||
TX_BUTTON_BUTTON "Available buttons"
|
||||
TX_BUTTON_CTERM "Ending conditions"
|
||||
TX_BUTTON_TERMC "Quit construction"
|
||||
TX_BUTTON_TERMHBLUPI "Blupi on striped paving stones"
|
||||
TX_BUTTON_TERMHPLANCHE "Planks on striped paving stones"
|
||||
TX_BUTTON_TERMFIRE "Fire out"
|
||||
TX_BUTTON_TERMDEC "(-)"
|
||||
TX_BUTTON_TERMINC "(+)"
|
||||
TX_PAUSE "Game paused"
|
||||
TX_JAUGE1 "Blupi's energy"
|
||||
TX_JAUGE2 "Work done"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_SETUP "Settings"
|
||||
TX_BUTTON_MUSIC "Music choice"
|
||||
TX_BUTTON_SETUP1 "Slower"
|
||||
TX_BUTTON_SETUP2 "Faster"
|
||||
TX_BUTTON_SETUP3 "Reduce volume"
|
||||
TX_BUTTON_SETUP4 "Increase volume"
|
||||
TX_BUTTON_MUSIC1 "No music"
|
||||
TX_BUTTON_MUSIC2 "Music number 1"
|
||||
TX_BUTTON_MUSIC3 "Music number 2"
|
||||
TX_BUTTON_MUSIC4 "Music number 3"
|
||||
TX_BUTTON_MUSIC5 "Music number 4"
|
||||
TX_BUTTON_MUSIC6 "Music number 5"
|
||||
TX_BUTTON_MUSIC7 "Music number 6"
|
||||
TX_BUTTON_MUSIC8 "Music number 7"
|
||||
TX_BUTTON_MUSIC9 "Music number 8"
|
||||
TX_BUTTON_MUSIC10 "Music number 9"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_REGION "Scenery choice"
|
||||
TX_BUTTON_TERMMBLUPI "Blupi in house"
|
||||
TX_BUTTON_TERMKILL "No more enemies"
|
||||
TX_TERM "Ending conditions"
|
||||
TX_BUTTON "Available buttons"
|
||||
TX_MUSIC "Music choice"
|
||||
TX_SCHOOL "Training number"
|
||||
TX_MISSION "Mission number"
|
||||
TX_IONAMEMI "mission %d, time %d"
|
||||
TX_BUTTON_TERMHTOMATE "Tomatoes on striped paving stones"
|
||||
TX_BUTTON_SETUP5 "Reduce volume"
|
||||
TX_BUTTON_SETUP6 "Increase volume"
|
||||
TX_BUTTON_SETUP7 "No video"
|
||||
TX_BUTTON_SETUP8 "Show videos"
|
||||
TX_OUI "Yes"
|
||||
TX_NON "No"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_BLUPIm "Sick Blupi"
|
||||
TX_OBJ_BLUPIf "Tired Blupi"
|
||||
TX_OBJ_BLUPI "Blupi"
|
||||
TX_OBJ_BATEAU "Boat"
|
||||
TX_OBJ_JEEP "Jeep"
|
||||
TX_OBJ_PIEGE "Sticky trap"
|
||||
TX_OBJ_POISON "Poison"
|
||||
TX_OBJ_DYNAMITE "Dynamite"
|
||||
TX_OBJ_MINE "Time bomb"
|
||||
TX_OBJ_TOMATE "Tomatoes"
|
||||
TX_OBJ_POTION "Medical potion"
|
||||
TX_OBJ_PLANCHE "Planks"
|
||||
TX_OBJ_PIERRE "Stones"
|
||||
TX_OBJ_DRAPEAU "Flag"
|
||||
TX_OBJ_FER "Iron"
|
||||
TX_OBJ_FLEUR1 "Flowers"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_FLEUR2 "Flowers"
|
||||
TX_OBJ_FLEUR3 "Flowers"
|
||||
TX_OBJ_CABANE "Garden shed"
|
||||
TX_OBJ_LABO "Laboratory"
|
||||
TX_OBJ_MINEFER "Mine"
|
||||
TX_OBJ_USINE "Workshop"
|
||||
TX_OBJ_TOUR "Protection tower"
|
||||
TX_OBJ_FEU "Fire"
|
||||
TX_OBJ_ROBOT "Master robot"
|
||||
TX_OBJ_TRACKS "Bulldozer"
|
||||
TX_OBJ_BOMBE "Bouncing bomb"
|
||||
TX_OBJ_ARAIGNEE "Spider"
|
||||
TX_OBJ_VIRUS "Virus"
|
||||
TX_OBJ_ELECTRO "Electrocutor"
|
||||
TX_OBJ_ARBRE "Tree"
|
||||
TX_OBJ_MUR "Wall"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_ARBREb "Tree trunks"
|
||||
TX_OBJ_ROC "Rocks"
|
||||
TX_OBJ_OEUF "Eggs"
|
||||
TX_OBJ_PALISSADE "Palisade"
|
||||
TX_OBJ_ENNEMIp "Trapped enemy"
|
||||
TX_OBJ_ENNEMI "Enemy construction"
|
||||
TX_OBJ_HERBE "Normal ground"
|
||||
TX_OBJ_MOUSSE "Inflammable ground"
|
||||
TX_OBJ_TERRE "Sterile ground"
|
||||
TX_OBJ_EAU "Water"
|
||||
TX_OBJ_RIVE "Bank"
|
||||
TX_OBJ_MIXTE "Miscellaneous ground"
|
||||
TX_OBJ_PONT "Bridge"
|
||||
TX_OBJ_COUVEUSE "Incubator"
|
||||
TX_OBJ_GLACE "Ice"
|
||||
TX_OBJ_MAISON "Blupi's house"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_HACHURE "Striped paving stones"
|
||||
TX_OBJ_MOUSSEb "Burnt ground"
|
||||
TX_OBJ_BOUQUET1 "Bunch of flowers"
|
||||
TX_OBJ_BOUQUET2 "Bunch of flowers"
|
||||
TX_OBJ_BOUQUET3 "Bunch of flowers"
|
||||
TX_OBJ_DALLE "Paving stones"
|
||||
TX_OBJ_ENNEMIs "Enemy ground "
|
||||
TX_OBJ_DISCIPLE "Helper robot"
|
||||
TX_OBJ_METAL "Platinium"
|
||||
TX_OBJ_FUSEE "Enemy rocket"
|
||||
TX_OBJ_TELEPORTE "Teleporter"
|
||||
TX_OBJ_ARMURE "Armour"
|
||||
TX_OBJ_DALLESPEC "Special pavings"
|
||||
TX_OBJ_COUVTELE "Incubator or teleporter"
|
||||
TX_OBJ_BATIMENT "Buildings"
|
||||
TX_OBJ_BATENNEMIS "Enemy buildings"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_WIN1 "Well done !"
|
||||
TX_WIN2 "Yes, great ..."
|
||||
TX_WIN3 "Very good."
|
||||
TX_WIN4 "Excellent..."
|
||||
TX_WIN5 "Mission over..."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_LOST1 "You have failed, try again..."
|
||||
TX_LOST2 "No, wrong way ..."
|
||||
TX_LOST3 "Bang, failed again !"
|
||||
TX_LOST4 "Another mistake..."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_LOST5 "No, not that way !"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_LASTWIN1 "Now go on mission."
|
||||
TX_LASTWIN2 "Very good, success on all missions !"
|
||||
TX_LASTWIN3 "Last construction resolved !"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_SETUP9 "Slower"
|
||||
TX_BUTTON_SETUP10 "Faster"
|
||||
TX_INFO_SETUP1 "Global game\nspeed"
|
||||
TX_INFO_SETUP2 "Sound effect\nvolume"
|
||||
TX_INFO_SETUP3 "Music\nvolume"
|
||||
TX_INFO_SETUP4 "Video\nsequences"
|
||||
TX_INFO_SETUP5 "Scroll speed\nwith mouse"
|
||||
TX_INFO_NOSCROLL "None"
|
||||
TX_BUTTON_REGION1 "Prairie"
|
||||
TX_BUTTON_REGION2 "Desert"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_REGION3 "Forest under snow"
|
||||
TX_BUTTON_REGION4 "Forest"
|
||||
TX_REGION "Scenery choice"
|
||||
TX_BUTTON_PLAY_STOP "Interrupt"
|
||||
TX_BUTTON_PLAY_SETUP "Settings"
|
||||
TX_BUTTON_PLAY_WRITE "Save"
|
||||
TX_INSERT "Insert CD-Rom Planet Blupi and wait a few seconds..."
|
||||
TX_BUTTON_PREVH "Previous page"
|
||||
TX_BUTTON_NEXTH "Next page"
|
||||
TX_BUTTON_TERMHMETAL "Platinium on striped paving stones"
|
||||
TX_BUTTON_HELP "Help"
|
||||
TX_HELP "Help number"
|
||||
TX_BUTTON_PRIVE "Construction"
|
||||
TX_PRIVATE "Construction number"
|
||||
TX_IONAMEPR "Construction %d, time %d"
|
||||
TX_PRIVATE_HACHBLUPI "1|Go on striped\n1| paving stones."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ACTION_FABDISC "Make a helper robot"
|
||||
TX_ACTION_REPEAT "Repeat"
|
||||
TX_ACTION_QARMURE "Quit"
|
||||
TX_ACTION_FABARMURE "Make armour"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_PRIVATE_HACHPLANCHE "1|Drop planks on striped \n1|paving stones."
|
||||
TX_PRIVATE_HACHTOMATE "1|Drop tomatoes on striped \n1|paving stones."
|
||||
TX_PRIVATE_HACHMETAL "1|Drop platinium on striped \n1|paving stones."
|
||||
TX_PRIVATE_STOPFIRE "1|Resist until\n1|fire extinction ..."
|
||||
TX_PRIVATE_HOMEBLUPI "1|Each Blupi in\n1|his house."
|
||||
TX_PRIVATE_KILLROBOTS "1|Kill all\n1|enemies !"
|
||||
TX_BUTTON_UNDO "Cancel last operation"
|
||||
TX_DEMO_END1 "You have played the DEMO version of Planet Blupi."
|
||||
TX_DEMO_END2 "We hope you have had as much fun playing the game as we had making it !"
|
||||
TX_DEMO_END3 "This game is an original creation of EPSITEC SA, CH-1092 Belmont"
|
||||
TX_DEMO_END4 "http://www.blupi.com blupi@epsitec.ch"
|
||||
TX_FULL_END1 "You have played Planet Blupi."
|
||||
TX_FULL_END2 "We hope you have had as much fun playing the game as we had making it !"
|
||||
TX_FULL_END3 "This game is an original creation of EPSITEC SA, CH-1092 Belmont"
|
||||
TX_FULL_END4 "http://www.blupi.com blupi@epsitec.ch"
|
||||
TX_PRIVATE_OBJECTIF "1|Goal :"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_PRIVATE_NBBLUPI "1|The Blupi population must \n1|be of at least %d Blupis."
|
||||
TX_BUTTON_SKILL "Skill level"
|
||||
TX_SKILL1 "Easy"
|
||||
TX_SKILL2 "Difficult"
|
||||
TX_BUTTON_DEMO "Demo"
|
||||
TX_DEMOREC "REC"
|
||||
TX_DEMOPLAY "Demo"
|
||||
TX_BUTTON_TERMHROBOT "Robot on striped paving stones"
|
||||
TX_PRIVATE_HACHROBOT "1|The robot must reach\n1|the striped paving stones."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_REPEAT_CULTIVE "1: Grow tomatoes\n2: Eat"
|
||||
TX_REPEAT_FLEUR "1: Make a bunch\n2: Transform"
|
||||
TX_REPEAT_FLEURQ "1: Take\n2: Transform"
|
||||
TX_REPEAT_FABMINE "1: Extract iron\n2: Make a bomb"
|
||||
TX_REPEAT_FABJEEP "1: Extract iron\n2: Make a Jeep"
|
||||
TX_REPEAT_PALIS "1: Cut down a tree \n2: Make a palisade"
|
||||
TX_REPEAT_PALISQ "1: Take\n2: Build palisade"
|
||||
TX_REPEAT_PONT "1: Cut down a tree \n2: Build a bridge"
|
||||
TX_REPEAT_PONTQ "1: Take\n2: Build a bridge"
|
||||
TX_REPEAT_BATEAU "1: Cut down a tree \n2: Make a boat"
|
||||
TX_REPEAT_BATEAUQ "1: Take\n2: Make a boat"
|
||||
TX_REPEAT_FABARMURE "1: Extract iron\n2: Make an armour"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_MURPAL "Wall or palisade"
|
||||
TX_OBJ_OBJET "Items"
|
||||
TX_OBJ_ARME "Weapons"
|
||||
TX_OBJ_VEHICULE "Transport"
|
||||
TX_OBJ_STARTFEU "Starting fire"
|
||||
TX_OBJ_DELOBJ "Delete item"
|
||||
TX_OBJ_DELPERSO "Delete figure"
|
||||
TX_OBJ_DELFEU "Delete fire"
|
||||
TX_OBJ_PLANTE "Decorative plants"
|
||||
TX_OBJ_BARENNEMIS "Enemy barrier"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_DIRECT_N "N"
|
||||
TX_DIRECT_S "S"
|
||||
TX_DIRECT_E "E"
|
||||
TX_DIRECT_O "W"
|
||||
END
|
||||
|
||||
#endif // French (Switzerland) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
|
489
blupi-f.rc
Normal file
489
blupi-f.rc
Normal file
@ -0,0 +1,489 @@
|
||||
//Microsoft Developer Studio generated resource script.
|
||||
//
|
||||
#include "resource.h"
|
||||
|
||||
#define APSTUDIO_READONLY_SYMBOLS
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 2 resource.
|
||||
//
|
||||
#include "afxres.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#undef APSTUDIO_READONLY_SYMBOLS
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// French (Switzerland) resources
|
||||
|
||||
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_FRS)
|
||||
#ifdef _WIN32
|
||||
LANGUAGE LANG_FRENCH, SUBLANG_FRENCH_SWISS
|
||||
#pragma code_page(1252)
|
||||
#endif //_WIN32
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Icon
|
||||
//
|
||||
|
||||
// Icon with lowest ID value placed first to ensure application icon
|
||||
// remains consistent on all systems.
|
||||
IDR_MAINFRAME ICON DISCARDABLE "blupi.ico"
|
||||
|
||||
#ifndef _MAC
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Version
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 0,4,0,0
|
||||
PRODUCTVERSION 0,4,0,0
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS 0x40004L
|
||||
FILETYPE 0x1L
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "100c04b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "EPSITEC\0"
|
||||
VALUE "FileDescription", "Blupi\0"
|
||||
VALUE "FileVersion", "0, 4, 0, 0\0"
|
||||
VALUE "InternalName", "Planet Blupi\0"
|
||||
VALUE "LegalCopyright", "Copyright © 1997\0"
|
||||
VALUE "OriginalFilename", "Blupi.exe\0"
|
||||
VALUE "ProductName", "EPSITEC Planet Blupi\0"
|
||||
VALUE "ProductVersion", "0, 4, 0, 0\0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x100c, 1200
|
||||
END
|
||||
END
|
||||
|
||||
#endif // !_MAC
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Cursor
|
||||
//
|
||||
|
||||
IDC_POINTER CURSOR DISCARDABLE "cursor1.cur"
|
||||
IDC_MAP CURSOR DISCARDABLE "map.cur"
|
||||
IDC_ARROWU CURSOR DISCARDABLE "arrowup.cur"
|
||||
IDC_ARROWD CURSOR DISCARDABLE "arrowdow.cur"
|
||||
IDC_ARROWL CURSOR DISCARDABLE "arrowlef.cur"
|
||||
IDC_ARROWR CURSOR DISCARDABLE "arrowrig.cur"
|
||||
IDC_ARROWUL CURSOR DISCARDABLE "arrowul.cur"
|
||||
IDC_ARROWUR CURSOR DISCARDABLE "arrowur.cur"
|
||||
IDC_ARROWDR CURSOR DISCARDABLE "arrowdr.cur"
|
||||
IDC_ARROWDL CURSOR DISCARDABLE "arrowdl.cur"
|
||||
IDC_WAIT CURSOR DISCARDABLE "wait.cur"
|
||||
IDC_EMPTY CURSOR DISCARDABLE "empty.cur"
|
||||
IDC_FILL CURSOR DISCARDABLE "fill.cur"
|
||||
IDC_ARROW CURSOR DISCARDABLE "arrow.cur"
|
||||
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// TEXTINCLUDE
|
||||
//
|
||||
|
||||
1 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"resource.h\0"
|
||||
END
|
||||
|
||||
2 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"#include ""afxres.h""\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
3 TEXTINCLUDE DISCARDABLE
|
||||
BEGIN
|
||||
"\r\n"
|
||||
"\0"
|
||||
END
|
||||
|
||||
#endif // APSTUDIO_INVOKED
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// String Table
|
||||
//
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ACTION_GO "Va"
|
||||
TX_ACTION_STOP "Stoppe"
|
||||
TX_ACTION_MANGE "Mange"
|
||||
TX_ACTION_CARRY "Prend"
|
||||
TX_ACTION_DEPOSE "Dépose"
|
||||
TX_ACTION_ABAT "Abat un arbre"
|
||||
TX_ACTION_ROC "Taille un rocher"
|
||||
TX_ACTION_CULTIVE "Cultive un jardin"
|
||||
TX_ACTION_BUILD1 "Cabane de jardin"
|
||||
TX_ACTION_BUILD2 "Couveuse"
|
||||
TX_ACTION_BUILD3 "Laboratoire"
|
||||
TX_ACTION_BUILD4 "Mine de fer"
|
||||
TX_ACTION_BUILD5 "Usine"
|
||||
TX_ACTION_BUILD6 "Téléporteur"
|
||||
TX_ACTION_MUR "Mur anti-feu"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ACTION_PALIS "Palissade"
|
||||
TX_ACTION_ABATn "Abat des arbres"
|
||||
TX_ACTION_ROCn "Taille des rochers"
|
||||
TX_ACTION_PONT "Pont"
|
||||
TX_ACTION_TOUR "Tour de protection"
|
||||
TX_ACTION_BOIT "Boit"
|
||||
TX_ACTION_LABO "Transforme"
|
||||
TX_ACTION_FLEUR "Fait un bouquet"
|
||||
TX_ACTION_FLEURn "Fait des bouquets"
|
||||
TX_ACTION_DYNAMITE "Explose"
|
||||
TX_ACTION_BATEAU "Bateau"
|
||||
TX_ACTION_DJEEP "Descend"
|
||||
TX_ACTION_DRAPEAU "Cherche du fer"
|
||||
TX_ACTION_EXTRAIT "Extrait du fer"
|
||||
TX_ACTION_FABJEEP "Farbique une jeep"
|
||||
TX_ACTION_FABMINE "Fabrique une bombe"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ERROR_MISC "Impossible ici"
|
||||
TX_ERROR_GROUND "Terrain pas adapté"
|
||||
TX_ERROR_FREE "Terrain occupé"
|
||||
TX_ERROR_PONTOP "Autre rive pas ok"
|
||||
TX_ERROR_PONTTERM "Pont terminé"
|
||||
TX_ERROR_TOURISOL "(tour isolée)"
|
||||
TX_ERROR_TOUREAU "Trop près de l'eau"
|
||||
TX_ERROR_TELE2 "Déjà 2 téléporteurs"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_IONAMEEX "entraînement %d, temps %d"
|
||||
TX_IOFREE "libre"
|
||||
TX_TERMMIN "Perdu si moins de %d blupi"
|
||||
TX_TERMMAX "Impossible de gagner si moins de %d blupi"
|
||||
TX_BUTTON_JOUER "Missions"
|
||||
TX_BUTTON_APPRENDRE "Entraînement"
|
||||
TX_BUTTON_QUITTER "Quitter BLUPI"
|
||||
TX_BUTTON_PREVP "Partie précédente"
|
||||
TX_BUTTON_NEXTP "Partie suivante"
|
||||
TX_BUTTON_PLAYP "Jouer cette partie"
|
||||
TX_BUTTON_BUILDP "Construire cette partie"
|
||||
TX_BUTTON_TERM "Terminer"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_READP "Ouvrir une autre partie"
|
||||
TX_BUTTON_WRITEP "Enregistrer la partie en cours"
|
||||
TX_BUTTON_CANCELP "Abandonner la partie"
|
||||
TX_BUTTON_CONTP "Continuer la partie"
|
||||
TX_BUTTON_REPEAT "Recommencer"
|
||||
TX_BUTTON_BUTTON "Boutons disponibles"
|
||||
TX_BUTTON_CTERM "Conditions de fin"
|
||||
TX_BUTTON_TERMC "Terminer la construction"
|
||||
TX_BUTTON_TERMHBLUPI "Blupi sur dalles hachurées"
|
||||
TX_BUTTON_TERMHPLANCHE "Planches sur dalles hachurées"
|
||||
TX_BUTTON_TERMFIRE "Feu stoppé"
|
||||
TX_BUTTON_TERMDEC "(-)"
|
||||
TX_BUTTON_TERMINC "(+)"
|
||||
TX_PAUSE "Partie interrompue"
|
||||
TX_JAUGE1 "Energie de Blupi"
|
||||
TX_JAUGE2 "Travail en cours"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_SETUP "Réglages"
|
||||
TX_BUTTON_MUSIC "Choix de la musique"
|
||||
TX_BUTTON_SETUP1 "Diminue la vitesse"
|
||||
TX_BUTTON_SETUP2 "Augmente la vitesse"
|
||||
TX_BUTTON_SETUP3 "Diminue le volume"
|
||||
TX_BUTTON_SETUP4 "Augmente le volume"
|
||||
TX_BUTTON_MUSIC1 "Pas de musique"
|
||||
TX_BUTTON_MUSIC2 "Musique numéro 1"
|
||||
TX_BUTTON_MUSIC3 "Musique numéro 2"
|
||||
TX_BUTTON_MUSIC4 "Musique numéro 3"
|
||||
TX_BUTTON_MUSIC5 "Musique numéro 4"
|
||||
TX_BUTTON_MUSIC6 "Musique numéro 5"
|
||||
TX_BUTTON_MUSIC7 "Musique numéro 6"
|
||||
TX_BUTTON_MUSIC8 "Musique numéro 7"
|
||||
TX_BUTTON_MUSIC9 "Musique numéro 8"
|
||||
TX_BUTTON_MUSIC10 "Musique numéro 9"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_REGION "Choix des décors"
|
||||
TX_BUTTON_TERMMBLUPI "Blupi dans sa maison"
|
||||
TX_BUTTON_TERMKILL "Plus d'ennemis"
|
||||
TX_TERM "Conditions de fin"
|
||||
TX_BUTTON "Boutons disponibles"
|
||||
TX_MUSIC "Choix des musiques"
|
||||
TX_SCHOOL "Entraînement numéro"
|
||||
TX_MISSION "Mission numéro"
|
||||
TX_IONAMEMI "mission %d, temps %d"
|
||||
TX_BUTTON_TERMHTOMATE "Tomates sur dalles hachurées"
|
||||
TX_BUTTON_SETUP5 "Diminue le volume"
|
||||
TX_BUTTON_SETUP6 "Augmente le volume"
|
||||
TX_BUTTON_SETUP7 "Pas de vidéo"
|
||||
TX_BUTTON_SETUP8 "Montre les vidéos"
|
||||
TX_OUI "Oui"
|
||||
TX_NON "Non"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_BLUPIm "Blupi malade"
|
||||
TX_OBJ_BLUPIf "Blupi fatigué"
|
||||
TX_OBJ_BLUPI "Blupi"
|
||||
TX_OBJ_BATEAU "Bateau"
|
||||
TX_OBJ_JEEP "Jeep"
|
||||
TX_OBJ_PIEGE "Piège à glu"
|
||||
TX_OBJ_POISON "Poison"
|
||||
TX_OBJ_DYNAMITE "Dynamite"
|
||||
TX_OBJ_MINE "Bombe à retardement"
|
||||
TX_OBJ_TOMATE "Tomates"
|
||||
TX_OBJ_POTION "Potion"
|
||||
TX_OBJ_PLANCHE "Planches"
|
||||
TX_OBJ_PIERRE "Pierres"
|
||||
TX_OBJ_DRAPEAU "Drapeau"
|
||||
TX_OBJ_FER "Minerai de fer"
|
||||
TX_OBJ_FLEUR1 "Fleurs"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_FLEUR2 "Fleurs"
|
||||
TX_OBJ_FLEUR3 "Fleurs"
|
||||
TX_OBJ_CABANE "Cabane de jardin"
|
||||
TX_OBJ_LABO "Laboratoire"
|
||||
TX_OBJ_MINEFER "Mine de fer"
|
||||
TX_OBJ_USINE "Usine"
|
||||
TX_OBJ_TOUR "Tour de protection"
|
||||
TX_OBJ_FEU "Feu"
|
||||
TX_OBJ_ROBOT "Robot-maître"
|
||||
TX_OBJ_TRACKS "Bulldozer"
|
||||
TX_OBJ_BOMBE "Bombe sauteuse"
|
||||
TX_OBJ_ARAIGNEE "Araignée"
|
||||
TX_OBJ_VIRUS "Virus"
|
||||
TX_OBJ_ELECTRO "Electrocuteur"
|
||||
TX_OBJ_ARBRE "Arbres"
|
||||
TX_OBJ_MUR "Mur anti-feu"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_ARBREb "Troncs"
|
||||
TX_OBJ_ROC "Rochers"
|
||||
TX_OBJ_OEUF "Oeufs"
|
||||
TX_OBJ_PALISSADE "Palissade"
|
||||
TX_OBJ_ENNEMIp "Ennemi piégé"
|
||||
TX_OBJ_ENNEMI "Construction ennemie"
|
||||
TX_OBJ_HERBE "Sol normal"
|
||||
TX_OBJ_MOUSSE "Sol inflammable"
|
||||
TX_OBJ_TERRE "Sol improductif"
|
||||
TX_OBJ_EAU "Eau"
|
||||
TX_OBJ_RIVE "Rive"
|
||||
TX_OBJ_MIXTE "Sol mixte"
|
||||
TX_OBJ_PONT "Pont"
|
||||
TX_OBJ_COUVEUSE "Couveuse"
|
||||
TX_OBJ_GLACE "Glace"
|
||||
TX_OBJ_MAISON "Maison de blupi"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_HACHURE "Dalles hachurées"
|
||||
TX_OBJ_MOUSSEb "Mousse brûlée"
|
||||
TX_OBJ_BOUQUET1 "Bouquet de fleurs"
|
||||
TX_OBJ_BOUQUET2 "Bouquet de fleurs"
|
||||
TX_OBJ_BOUQUET3 "Bouquet de fleurs"
|
||||
TX_OBJ_DALLE "Dalles"
|
||||
TX_OBJ_ENNEMIs "Sol ennemi"
|
||||
TX_OBJ_DISCIPLE "Robot-aide"
|
||||
TX_OBJ_METAL "Platinium"
|
||||
TX_OBJ_FUSEE "Fusée ennemie"
|
||||
TX_OBJ_TELEPORTE "Téléporteur"
|
||||
TX_OBJ_ARMURE "Armure"
|
||||
TX_OBJ_DALLESPEC "Dalles spéciales"
|
||||
TX_OBJ_COUVTELE "Couveuse ou téléporteur"
|
||||
TX_OBJ_BATIMENT "Bâtiments"
|
||||
TX_OBJ_BATENNEMIS "Bâtiments ennemis"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_WIN1 "Bravo, c'est réussi !"
|
||||
TX_WIN2 "Oui, super ..."
|
||||
TX_WIN3 "Très bien."
|
||||
TX_WIN4 "Magnifique, excellent ..."
|
||||
TX_WIN5 "Mission accomplie."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_LOST1 "C'est raté, essaie encore une fois"
|
||||
TX_LOST2 "Et non, ce n'est pas ça ..."
|
||||
TX_LOST3 "Paf, c'est raté !"
|
||||
TX_LOST4 "Caramba, encore raté ..."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_LOST5 "Mais non, pas comme ça !"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_LASTWIN1 "Passe maintenant aux missions."
|
||||
TX_LASTWIN2 "Magnifique, le jeu est terminé !"
|
||||
TX_LASTWIN3 "Dernière construction résolue !"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_SETUP9 "Diminue la vitesse"
|
||||
TX_BUTTON_SETUP10 "Augmente la vitesse"
|
||||
TX_INFO_SETUP1 "Vitesse globale\ndu jeu"
|
||||
TX_INFO_SETUP2 "Volume\ndes bruitages"
|
||||
TX_INFO_SETUP3 "Volume\ndes musiques"
|
||||
TX_INFO_SETUP4 "Séquences\nvidéo"
|
||||
TX_INFO_SETUP5 "Vitesse\ndes décalages\navec la souris"
|
||||
TX_INFO_NOSCROLL "Aucun"
|
||||
TX_BUTTON_REGION1 "Prairie"
|
||||
TX_BUTTON_REGION2 "Désert"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_BUTTON_REGION3 "Forêt enneigée"
|
||||
TX_BUTTON_REGION4 "Forêt"
|
||||
TX_REGION "Choix de la région"
|
||||
TX_BUTTON_PLAY_STOP "Interrompre"
|
||||
TX_BUTTON_PLAY_SETUP "Réglages"
|
||||
TX_BUTTON_PLAY_WRITE "Enregistrer"
|
||||
TX_INSERT "Veuillez insérer le CD-Rom Planète Blupi, puis attendre quelques secondes ..."
|
||||
TX_BUTTON_PREVH "Page précédente"
|
||||
TX_BUTTON_NEXTH "Page suivante"
|
||||
TX_BUTTON_TERMHMETAL "Platinium sur dalles hachurées"
|
||||
TX_BUTTON_HELP "Aide"
|
||||
TX_HELP "Aide numéro"
|
||||
TX_BUTTON_PRIVE "Construction"
|
||||
TX_PRIVATE "Construction numéro"
|
||||
TX_IONAMEPR "construction %d, temps %d"
|
||||
TX_PRIVATE_HACHBLUPI "1|Aller sur les dalles\n1|hachurées."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_ACTION_FABDISC "Fabrique un robot"
|
||||
TX_ACTION_REPEAT "Répète"
|
||||
TX_ACTION_QARMURE "Quitte"
|
||||
TX_ACTION_FABARMURE "Fabrique une armure"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_PRIVATE_HACHPLANCHE "1|Déposer des planches\n1|sur les dalles hachurées."
|
||||
TX_PRIVATE_HACHTOMATE "1|Déposer des tomates\n1|sur les dalles hachurées."
|
||||
TX_PRIVATE_HACHMETAL "1|Déposer du platinium\n1|sur les dalles hachurées."
|
||||
TX_PRIVATE_STOPFIRE "1|Résister jusqu'à\n1|l'extinction du feu ..."
|
||||
TX_PRIVATE_HOMEBLUPI "1|Chaque Blupi dans\n1|sa maison."
|
||||
TX_PRIVATE_KILLROBOTS "1|Supprimer tous les\n1|ennemis !"
|
||||
TX_BUTTON_UNDO "Annuler la dernière opération"
|
||||
TX_DEMO_END1 "Vous avez joué à la version DEMO de Planète Blupi."
|
||||
TX_DEMO_END2 "Nous espérons que vous avez eu autant de plaisir à y jouer que nous à le réaliser !"
|
||||
TX_DEMO_END3 "Ce jeu est une création originale d'EPSITEC SA, CH-1092 Belmont"
|
||||
TX_DEMO_END4 "http://www.blupi.com blupi@epsitec.ch"
|
||||
TX_FULL_END1 "Vous avez joué à Planète Blupi."
|
||||
TX_FULL_END2 "Nous espérons que vous avez eu autant de plaisir à y jouer que nous à le réaliser !"
|
||||
TX_FULL_END3 "Ce jeu est une création originale d'EPSITEC SA, CH-1092 Belmont"
|
||||
TX_FULL_END4 "http://www.blupi.com blupi@epsitec.ch"
|
||||
TX_PRIVATE_OBJECTIF "1|Objectif :"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_PRIVATE_NBBLUPI "1|La population doit être\n1|d'au moins %d Blupi."
|
||||
TX_BUTTON_SKILL "Niveau de difficulté"
|
||||
TX_SKILL1 "Facile"
|
||||
TX_SKILL2 "Difficile"
|
||||
TX_BUTTON_DEMO "Démo"
|
||||
TX_DEMOREC "REC"
|
||||
TX_DEMOPLAY "Démo"
|
||||
TX_BUTTON_TERMHROBOT "Robot sur dalles hachurées"
|
||||
TX_PRIVATE_HACHROBOT "1|Le robot doit atteindre\n1|les dalles hachurées."
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_REPEAT_CULTIVE "1: Cultive ...\n2: Mange"
|
||||
TX_REPEAT_FLEUR "1: Fait un bouquet\n2: Transforme"
|
||||
TX_REPEAT_FLEURQ "1: Prend\n2: Transforme"
|
||||
TX_REPEAT_FABMINE "1: Extrait du fer\n2: Fabrique bombe"
|
||||
TX_REPEAT_FABJEEP "1: Extrait du fer\n2: Fabrique jeep"
|
||||
TX_REPEAT_PALIS "1: Abat un arbre\n2: Construit palissade"
|
||||
TX_REPEAT_PALISQ "1: Prend\n2: Construit palissade"
|
||||
TX_REPEAT_PONT "1: Abat un arbre\n2: Construit pont"
|
||||
TX_REPEAT_PONTQ "1: Prend\n2: Construit pont"
|
||||
TX_REPEAT_BATEAU "1: Abat un arbre\n2: Construit bateau"
|
||||
TX_REPEAT_BATEAUQ "1: Prend\n2: Construit bateau"
|
||||
TX_REPEAT_FABARMURE "1: Extrait du fer\n2: Fabrique armure"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_OBJ_MURPAL "Mur ou palissade"
|
||||
TX_OBJ_OBJET "Objets"
|
||||
TX_OBJ_ARME "Armes"
|
||||
TX_OBJ_VEHICULE "Moyens de transport"
|
||||
TX_OBJ_STARTFEU "Début d'incendie"
|
||||
TX_OBJ_DELOBJ "Supprime objet"
|
||||
TX_OBJ_DELPERSO "Supprime personnage"
|
||||
TX_OBJ_DELFEU "Supprime feu"
|
||||
TX_OBJ_PLANTE "Plantes ornementales"
|
||||
TX_OBJ_BARENNEMIS "Barrière ennemie"
|
||||
END
|
||||
|
||||
STRINGTABLE DISCARDABLE
|
||||
BEGIN
|
||||
TX_DIRECT_N "N"
|
||||
TX_DIRECT_S "S"
|
||||
TX_DIRECT_E "E"
|
||||
TX_DIRECT_O "O"
|
||||
END
|
||||
|
||||
#endif // French (Switzerland) resources
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifndef APSTUDIO_INVOKED
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
//
|
||||
// Generated from the TEXTINCLUDE 3 resource.
|
||||
//
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
#endif // not APSTUDIO_INVOKED
|
||||
|
461
def.h
Normal file
461
def.h
Normal file
@ -0,0 +1,461 @@
|
||||
// Def.h
|
||||
//
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <Windows.h>
|
||||
|
||||
#define _DEMO FALSE // TRUE=demo, FALSE=complet
|
||||
#define _INTRO FALSE // TRUE si images d'introduction
|
||||
#define _EGAMES FALSE // TRUE version pour eGames
|
||||
#define _SE FALSE // TRUE eGames Special Edition
|
||||
|
||||
|
||||
#define LXIMAGE 640 // dimensions de la fenêtre de jeu
|
||||
#define LYIMAGE 480
|
||||
|
||||
#define MAXCELX 100 // nb max de cellules d'un monde
|
||||
#define MAXCELY 100
|
||||
|
||||
//#define DIMCELX 60 // dimensions d'une cellule (décor)
|
||||
//#define DIMCELY 30
|
||||
|
||||
//#define DIMOBJX 120 // dimensions d'un objet
|
||||
//#define DIMOBJY 120
|
||||
|
||||
//#define DIMBLUPIX 60 // dimensions de blupi
|
||||
//#define DIMBLUPIY 60
|
||||
//#define SHIFTBLUPIY 5 // petit décalage vers le haut
|
||||
|
||||
#define DIMBUTTONX 40 // dimensions d'un button
|
||||
#define DIMBUTTONY 40
|
||||
|
||||
#define DIMJAUGEX 124 // dimensions de la jauge
|
||||
#define DIMJAUGEY 22
|
||||
|
||||
#define DIMTEXTX 16 // dimensions max d'un caractère
|
||||
#define DIMTEXTY 16
|
||||
|
||||
#define DIMLITTLEX 16 // dimensions max d'un petit caractère
|
||||
#define DIMLITTLEY 12
|
||||
|
||||
#define CHBACK 0
|
||||
#define CHOBJECT 1
|
||||
#define CHBLUPI 2
|
||||
#define CHDECOR 3
|
||||
#define CHHILI 5
|
||||
#define CHFOG 6
|
||||
#define CHMASK1 7
|
||||
#define CHMAP 8
|
||||
#define CHEXPLO 9
|
||||
#define CHELEMENT 10
|
||||
#define CHBLUPI001 11
|
||||
#define CHBLUPI002 12
|
||||
#define CHBLUPI003 13
|
||||
#define CHTEMP 14
|
||||
|
||||
|
||||
// Directions :
|
||||
|
||||
#define DIRECT_LEFT 1
|
||||
#define DIRECT_RIGHT 2
|
||||
|
||||
|
||||
// Actions :
|
||||
|
||||
#define ACTION_STOP 0 // arrêt
|
||||
#define ACTION_STOPf 1 // arrêt fatigué
|
||||
#define ACTION_MARCHE 2 // marche
|
||||
#define ACTION_MARCHEf 3 // marche fatigué
|
||||
#define ACTION_BUILD 4 // construit
|
||||
#define ACTION_PIOCHE 5 // pioche
|
||||
#define ACTION_ENERGY 6 // prend de l'énergie
|
||||
#define ACTION_TAKE 8 // fait sauter un objet sur la tête (est)
|
||||
#define ACTION_DEPOSE 9 // repose l'objet sur la tête (est)
|
||||
#define ACTION_SCIE 10 // scie du bois
|
||||
#define ACTION_BRULE 11 // blupi crame !
|
||||
#define ACTION_TCHAO 12 // blupi disparait !
|
||||
#define ACTION_MANGE 13 // blupi mange
|
||||
#define ACTION_NAISSANCE 14 // naissance
|
||||
#define ACTION_SAUTE2 15 // saute par-dessus un obstacle
|
||||
#define ACTION_SAUTE3 16 // saute par-dessus un obstacle
|
||||
#define ACTION_SAUTE4 17 // saute par-dessus un obstacle
|
||||
#define ACTION_SAUTE5 18 // saute par-dessus un obstacle
|
||||
#define ACTION_PONT 19 // pousse un pont
|
||||
#define ACTION_MISC1 20 // divers 1 (hausse les épaules)
|
||||
#define ACTION_MISC2 21 // divers 2 (grat-grat)
|
||||
#define ACTION_MISC3 22 // divers 3 (yoyo)
|
||||
#define ACTION_MISC1f 23 // divers 1 fatigué (bof-bof)
|
||||
#define ACTION_GLISSE 24 // glisse en marchant
|
||||
#define ACTION_BOIT 25 // blupi boit
|
||||
#define ACTION_LABO 26 // blupi travaille dans son laboratoire
|
||||
#define ACTION_DYNAMITE 27 // blupi fait péter la dynamite
|
||||
#define ACTION_DELAY 28 // blupi attend un frame
|
||||
#define ACTION_CUEILLE1 29 // blupi cueille des fleurs
|
||||
#define ACTION_CUEILLE2 30 // blupi cueille des fleurs
|
||||
#define ACTION_MECHE 31 // blupi se bouche les oreilles
|
||||
#define ACTION_STOPb 32 // arrêt en bateau
|
||||
#define ACTION_MARCHEb 33 // avance en bateau
|
||||
#define ACTION_STOPj 34 // arrêt en jeep
|
||||
#define ACTION_MARCHEj 35 // avance en jeep
|
||||
#define ACTION_ELECTRO 36 // blupi électrocuté
|
||||
#define ACTION_GRILLE1 37 // blupi grille (phase 1)
|
||||
#define ACTION_GRILLE2 38 // blupi grille (phase 2)
|
||||
#define ACTION_GRILLE3 39 // blupi grille (phase 3)
|
||||
#define ACTION_MISC4 40 // divers 4 (ferme les yeux)
|
||||
#define ACTION_CONTENT 41 // blupi est content
|
||||
#define ACTION_ARROSE 42 // blupi arrose
|
||||
#define ACTION_BECHE 43 // blupi bèche
|
||||
#define ACTION_CUEILLE3 44 // blupi cueille des fleurs
|
||||
#define ACTION_BUILDBREF 45 // construit
|
||||
#define ACTION_BUILDSEC 46 // construit
|
||||
#define ACTION_BUILDSOURD 47 // construit
|
||||
#define ACTION_BUILDPIERRE 48 // construit
|
||||
#define ACTION_PIOCHEPIERRE 49 // pioche
|
||||
#define ACTION_PIOCHESOURD 50 // pioche
|
||||
#define ACTION_MISC5 51 // divers 5 (ohé)
|
||||
#define ACTION_TELEPORTE1 52 // téléporte
|
||||
#define ACTION_TELEPORTE2 53 // téléporte
|
||||
#define ACTION_TELEPORTE3 54 // téléporte
|
||||
#define ACTION_STOPa 55 // arrêt armure
|
||||
#define ACTION_MARCHEa 56 // marche armure
|
||||
#define ACTION_ARMUREOPEN 57 // ouvre armure
|
||||
#define ACTION_ARMURECLOSE 58 // ferme armure
|
||||
#define ACTION_SAUTE1 59 // saute dans la jeep
|
||||
#define ACTION_MISC6 60 // divers 6 (diabolo)
|
||||
|
||||
#define ACTION_A_STOP 100 // araignée: arrêt
|
||||
#define ACTION_A_MARCHE 101 // araignée: marche
|
||||
#define ACTION_A_SAUT 102 // araignée: saute
|
||||
#define ACTION_A_GRILLE 103 // araignée: grille dans rayon
|
||||
#define ACTION_A_POISON 105 // araignée: empoisonée
|
||||
#define ACTION_A_MORT1 106 // araignée: meurt
|
||||
#define ACTION_A_MORT2 107 // araignée: meurt
|
||||
#define ACTION_A_MORT3 108 // araignée: meurt
|
||||
|
||||
#define ACTION_V_STOP 200 // virus: arrêt
|
||||
#define ACTION_V_MARCHE 201 // virus: marche
|
||||
#define ACTION_V_GRILLE 202 // virus: grille dans rayon
|
||||
|
||||
#define ACTION_T_STOP 300 // tracks: arrêt
|
||||
#define ACTION_T_MARCHE 301 // tracks: marche
|
||||
#define ACTION_T_ECRASE 302 // tracks: écrase un objet
|
||||
|
||||
#define ACTION_R_STOP 400 // robot: arrêt
|
||||
#define ACTION_R_MARCHE 401 // robot: marche
|
||||
#define ACTION_R_APLAT 402 // robot: applatit
|
||||
#define ACTION_R_BUILD 403 // robot: construit
|
||||
#define ACTION_R_DELAY 404 // robot: construit
|
||||
#define ACTION_R_CHARGE 405 // robot: recharge
|
||||
#define ACTION_R_ECRASE 406 // robot: écrase un objet
|
||||
|
||||
#define ACTION_B_STOP 500 // bombe: arrêt
|
||||
#define ACTION_B_MARCHE 501 // bombe: marche
|
||||
|
||||
#define ACTION_D_DELAY 600 // détonnateur: attend
|
||||
|
||||
#define ACTION_E_STOP 700 // électro: arrêt
|
||||
#define ACTION_E_MARCHE 701 // électro: marche
|
||||
#define ACTION_E_DEBUT 702 // électro: débute
|
||||
#define ACTION_E_RAYON 703 // électro: rayonne
|
||||
|
||||
#define ACTION_D_STOP 800 // disciple: arrêt
|
||||
#define ACTION_D_MARCHE 801 // disciple: marche
|
||||
#define ACTION_D_BUILD 802 // disciple: construit
|
||||
#define ACTION_D_PIOCHE 803 // disciple: pioche
|
||||
#define ACTION_D_SCIE 804 // disciple: scie du bois
|
||||
#define ACTION_D_TCHAO 805 // disciple: disparait !
|
||||
#define ACTION_D_CUEILLE1 806 // disciple: cueille des fleurs
|
||||
#define ACTION_D_CUEILLE2 807 // disciple: cueille des fleurs
|
||||
#define ACTION_D_MECHE 808 // disciple: se bouche les oreilles
|
||||
#define ACTION_D_ARROSE 809 // disciple: arrose
|
||||
#define ACTION_D_BECHE 810 // disciple: bèche
|
||||
|
||||
|
||||
// Sons :
|
||||
|
||||
#define SOUND_CLICK 0
|
||||
#define SOUND_JUMP_MEDIUM 1
|
||||
#define SOUND_JUMP_HIGH 2
|
||||
#define SOUND_STEP 3
|
||||
#define SOUND_BONK 4
|
||||
#define SOUND_TURN 5
|
||||
#define SOUND_WHOOPS 6
|
||||
#define SOUND_CROUCH 7
|
||||
#define SOUND_WAH 8
|
||||
#define SOUND_RESPAWN 9
|
||||
#define SOUND_EXPLODE 10
|
||||
#define SOUND_CHEST 11
|
||||
#define SOUND_EGG 12
|
||||
#define SOUND_NOT_ENOUGH 13
|
||||
#define SOUND_WIN 14
|
||||
#define SOUND_HELI_START 15
|
||||
#define SOUND_HELI_MOVE 16
|
||||
#define SOUND_HELI_STOP 17
|
||||
#define SOUND_HELI_IDLE 18
|
||||
#define SOUND_CHEST_LAST 19
|
||||
#define SOUND_CROUCH_END 20
|
||||
#define SOUND_LOOK_UP 21
|
||||
#define SOUND_JUMP_LOW 22
|
||||
#define SOUND_SPLASH_BIG 23
|
||||
#define SOUND_BUBBLES 24
|
||||
#define SOUND_GASP 25
|
||||
#define SOUND_DROWN 26
|
||||
#define SOUND_CANT_USE 27
|
||||
#define SOUND_JEEP_START 28
|
||||
#define SOUND_JEEP_MOVE 29
|
||||
#define SOUND_JEEP_STOP 30
|
||||
#define SOUND_JEEP_IDLE 31
|
||||
#define SOUND_LEVEL_START 32
|
||||
#define SOUND_DOOR_OPEN 33
|
||||
#define SOUND_BAR_GRAB 34
|
||||
#define SOUND_BAR_PULLUP 35
|
||||
#define SOUND_MONKEY 36
|
||||
#define SOUND_FOOT_TAP 37
|
||||
#define SOUND_CASE_PUSH 38
|
||||
#define SOUND_CASE_PULL 39
|
||||
#define SOUND_HURT_HEAD 40
|
||||
#define SOUND_DOINK 41
|
||||
#define SOUND_SHIELD_START 42
|
||||
#define SOUND_SHIELD_END 43
|
||||
#define SOUND_LOLLY_START 44
|
||||
#define SOUND_LOLLY_END 45
|
||||
#define SOUND_PHEW 46
|
||||
#define SOUND_EXHILARATED 47
|
||||
#define SOUND_EFFORT 48
|
||||
#define SOUND_FRIGHTEN 49
|
||||
#define SOUND_LOLLY_EAT 50
|
||||
#define SOUND_GLUE_HIT 51
|
||||
#define SOUND_GLUE_FIRE 52
|
||||
#define SOUND_NO_ITEMS 53
|
||||
#define SOUND_GLUE_GET 54
|
||||
#define SOUND_POWER_START 55
|
||||
#define SOUND_POWER_END 56
|
||||
#define SOUND_DRINK 57
|
||||
#define SOUND_POWER_GET 58
|
||||
#define SOUND_POWER_HIT 59
|
||||
#define SOUND_BOMB_GET 60
|
||||
#define SOUND_BOMB_USE 61
|
||||
#define SOUND_INVIS_START 62
|
||||
#define SOUND_INVIS_END 63
|
||||
#define SOUND_SPLASH_SMALL 64
|
||||
#define SOUND_TAUNT 65
|
||||
|
||||
// Speedy Blupi 2
|
||||
#define SOUND_INVERT_START 66
|
||||
#define SOUND_INVERT_END 67
|
||||
#define SOUND_SPRING 68 // where is this used ?
|
||||
#define SOUND_LIGHTNING 69
|
||||
#define SOUND_CRUSH_START 70
|
||||
#define SOUND_TELEPORT 71
|
||||
#define SOUND_BRIDGE_BREAK 72
|
||||
#define SOUND_BRIDGE_APPEAR 73
|
||||
#define SOUND_DIE 74
|
||||
#define SOUND_SAW_HIT 75
|
||||
#define SOUND_SAW_STOP 76
|
||||
#define SOUND_SAW_START 77
|
||||
#define SOUND_STEP_WOOD 78
|
||||
#define SOUND_BONK_WOOD 79
|
||||
#define SOUND_STEP_METAL 80
|
||||
#define SOUND_BONK_METAL 81
|
||||
#define SOUND_STEP_CAVE 82
|
||||
#define SOUND_BONK_CAVE 83
|
||||
#define SOUND_STEP_SLIME 84
|
||||
#define SOUND_BONK_SLIME 85
|
||||
#define SOUND_STEP_PLASTIC 86
|
||||
#define SOUND_BONK_PLASTIC 87
|
||||
#define SOUND_STEP_CHEESE 88
|
||||
#define SOUND_BONK_CHEESE 89
|
||||
#define SOUND_STEP_GRASS 90
|
||||
#define SOUND_BONK_GRASS 91
|
||||
#define SOUND_HOMING_BOMB 92
|
||||
|
||||
#define SOUND_MOVIE 99
|
||||
|
||||
|
||||
// Boutons (play) :
|
||||
|
||||
#define MAXBUTTON 40
|
||||
|
||||
/* ?
|
||||
#define BUTTON_GO 0
|
||||
#define BUTTON_STOP 1
|
||||
#define BUTTON_MANGE 2
|
||||
#define BUTTON_CARRY 3
|
||||
#define BUTTON_DEPOSE 4
|
||||
#define BUTTON_ABAT 5
|
||||
#define BUTTON_ROC 6
|
||||
#define BUTTON_CULTIVE 7
|
||||
#define BUTTON_BUILD1 8
|
||||
#define BUTTON_BUILD2 9
|
||||
#define BUTTON_BUILD3 10
|
||||
#define BUTTON_BUILD4 11
|
||||
#define BUTTON_BUILD5 12
|
||||
#define BUTTON_BUILD6 13
|
||||
#define BUTTON_MUR 14
|
||||
#define BUTTON_PALIS 15
|
||||
#define BUTTON_ABATn 16
|
||||
#define BUTTON_ROCn 17
|
||||
#define BUTTON_PONT 18
|
||||
#define BUTTON_TOUR 19
|
||||
#define BUTTON_BOIT 20
|
||||
#define BUTTON_LABO 21
|
||||
#define BUTTON_FLEUR 22
|
||||
#define BUTTON_FLEURn 23
|
||||
#define BUTTON_DYNAMITE 24
|
||||
#define BUTTON_BATEAU 25
|
||||
#define BUTTON_DJEEP 26
|
||||
#define BUTTON_DRAPEAU 27
|
||||
#define BUTTON_EXTRAIT 28
|
||||
#define BUTTON_FABJEEP 29
|
||||
#define BUTTON_FABMINE 30
|
||||
#define BUTTON_FABDISC 31
|
||||
#define BUTTON_REPEAT 32
|
||||
#define BUTTON_DARMURE 33
|
||||
#define BUTTON_FABARMURE 34
|
||||
*/
|
||||
|
||||
// Lutins pour la souris
|
||||
|
||||
#define SPRITE_ARROW 1
|
||||
#define SPRITE_POINTER 2
|
||||
#define SPRITE_MAP 3
|
||||
#define SPRITE_ARROWU 4
|
||||
#define SPRITE_ARROWD 5
|
||||
#define SPRITE_ARROWL 6
|
||||
#define SPRITE_ARROWR 7
|
||||
#define SPRITE_ARROWUL 8
|
||||
#define SPRITE_ARROWUR 9
|
||||
#define SPRITE_ARROWDL 10
|
||||
#define SPRITE_ARROWDR 11
|
||||
#define SPRITE_WAIT 12
|
||||
#define SPRITE_EMPTY 13
|
||||
#define SPRITE_FILL 14
|
||||
|
||||
|
||||
// User define message
|
||||
|
||||
#define WM_UPDATE (WM_USER+1)
|
||||
|
||||
#define WM_DECOR1 (WM_USER+20)
|
||||
#define WM_DECOR2 (WM_USER+21)
|
||||
#define WM_DECOR3 (WM_USER+22)
|
||||
#define WM_DECOR4 (WM_USER+23)
|
||||
#define WM_DECOR5 (WM_USER+24)
|
||||
|
||||
#define WM_BUTTON0 (WM_USER+200)
|
||||
#define WM_BUTTON1 (WM_USER+201)
|
||||
#define WM_BUTTON2 (WM_USER+202)
|
||||
#define WM_BUTTON3 (WM_USER+203)
|
||||
#define WM_BUTTON4 (WM_USER+204)
|
||||
#define WM_BUTTON5 (WM_USER+205)
|
||||
#define WM_BUTTON6 (WM_USER+206)
|
||||
#define WM_BUTTON7 (WM_USER+207)
|
||||
#define WM_BUTTON8 (WM_USER+208)
|
||||
#define WM_BUTTON9 (WM_USER+209)
|
||||
#define WM_BUTTON10 (WM_USER+210)
|
||||
#define WM_BUTTON11 (WM_USER+211)
|
||||
#define WM_BUTTON12 (WM_USER+212)
|
||||
#define WM_BUTTON13 (WM_USER+213)
|
||||
#define WM_BUTTON14 (WM_USER+214)
|
||||
#define WM_BUTTON15 (WM_USER+215)
|
||||
#define WM_BUTTON16 (WM_USER+216)
|
||||
#define WM_BUTTON17 (WM_USER+217)
|
||||
#define WM_BUTTON18 (WM_USER+218)
|
||||
#define WM_BUTTON19 (WM_USER+219)
|
||||
#define WM_BUTTON20 (WM_USER+220)
|
||||
#define WM_BUTTON21 (WM_USER+221)
|
||||
#define WM_BUTTON22 (WM_USER+222)
|
||||
#define WM_BUTTON23 (WM_USER+223)
|
||||
#define WM_BUTTON24 (WM_USER+224)
|
||||
#define WM_BUTTON25 (WM_USER+225)
|
||||
#define WM_BUTTON26 (WM_USER+226)
|
||||
#define WM_BUTTON27 (WM_USER+227)
|
||||
#define WM_BUTTON28 (WM_USER+228)
|
||||
#define WM_BUTTON29 (WM_USER+229)
|
||||
#define WM_BUTTON30 (WM_USER+230)
|
||||
#define WM_BUTTON31 (WM_USER+231)
|
||||
#define WM_BUTTON32 (WM_USER+232)
|
||||
#define WM_BUTTON33 (WM_USER+233)
|
||||
#define WM_BUTTON34 (WM_USER+234)
|
||||
#define WM_BUTTON35 (WM_USER+235)
|
||||
#define WM_BUTTON36 (WM_USER+236)
|
||||
#define WM_BUTTON37 (WM_USER+237)
|
||||
#define WM_BUTTON38 (WM_USER+238)
|
||||
#define WM_BUTTON39 (WM_USER+239)
|
||||
|
||||
#define WM_READ0 (WM_USER+300)
|
||||
#define WM_READ1 (WM_USER+301)
|
||||
#define WM_READ2 (WM_USER+302)
|
||||
#define WM_READ3 (WM_USER+303)
|
||||
#define WM_READ4 (WM_USER+304)
|
||||
#define WM_READ5 (WM_USER+305)
|
||||
#define WM_READ6 (WM_USER+306)
|
||||
#define WM_READ7 (WM_USER+307)
|
||||
#define WM_READ8 (WM_USER+308)
|
||||
#define WM_READ9 (WM_USER+309)
|
||||
|
||||
#define WM_WRITE0 (WM_USER+310)
|
||||
#define WM_WRITE1 (WM_USER+311)
|
||||
#define WM_WRITE2 (WM_USER+312)
|
||||
#define WM_WRITE3 (WM_USER+313)
|
||||
#define WM_WRITE4 (WM_USER+314)
|
||||
#define WM_WRITE5 (WM_USER+315)
|
||||
#define WM_WRITE6 (WM_USER+316)
|
||||
#define WM_WRITE7 (WM_USER+317)
|
||||
#define WM_WRITE8 (WM_USER+318)
|
||||
#define WM_WRITE9 (WM_USER+319)
|
||||
|
||||
|
||||
#define WM_PHASE_INIT (WM_USER+500) //0x5F4
|
||||
#define WM_PHASE_PLAY (WM_USER+501)
|
||||
#define WM_PHASE_BUILD (WM_USER+502)
|
||||
//#define WM_PHASE_READ (WM_USER+503)
|
||||
//#define WM_PHASE_WRITE (WM_USER+504)
|
||||
//#define WM_PHASE_INFO (WM_USER+505)
|
||||
//#define WM_PHASE_BUTTON (WM_USER+506)
|
||||
//#define WM_PHASE_TERM (WM_USER+507)
|
||||
//#define WM_PHASE_WIN (WM_USER+508)
|
||||
//#define WM_PHASE_LOST (WM_USER+509)
|
||||
//#define WM_PHASE_STOP (WM_USER+510)
|
||||
//#define WM_PHASE_SETUP (WM_USER+511)
|
||||
//#define WM_PHASE_MUSIC (WM_USER+512) // 0x600
|
||||
//#define WM_PHASE_PLAYMOVIE (WM_USER+513)
|
||||
//#define WM_PHASE_WINMOVIE (WM_USER+514)
|
||||
//#define WM_PHASE_SCHOOL (WM_USER+515)
|
||||
//#define WM_PHASE_MISSION (WM_USER+516)
|
||||
//#define WM_PHASE_LASTWIN (WM_USER+517)
|
||||
//#define WM_PHASE_WRITEp (WM_USER+518)
|
||||
//#define WM_PHASE_SETUPp (WM_USER+519)
|
||||
//#define WM_PHASE_REGION (WM_USER+520)
|
||||
//#define WM_PHASE_INSERT (WM_USER+521)
|
||||
//#define WM_PHASE_HISTORY0 (WM_USER+522)
|
||||
//#define WM_PHASE_HISTORY1 (WM_USER+523)
|
||||
//#define WM_PHASE_HELP (WM_USER+524)
|
||||
//#define WM_PHASE_H0MOVIE (WM_USER+525)
|
||||
//#define WM_PHASE_H1MOVIE (WM_USER+526)
|
||||
//#define WM_PHASE_H2MOVIE (WM_USER+527)
|
||||
#define WM_PHASE_TESTCD (WM_USER+528) // 0x610
|
||||
#define WM_PHASE_MANUEL (WM_USER+529)
|
||||
//#define WM_PHASE_PRIVATE (WM_USER+530)
|
||||
//#define WM_PHASE_UNDO (WM_USER+531)
|
||||
#define WM_PHASE_BYE (WM_USER+532)
|
||||
//#define WM_PHASE_SKILL1 (WM_USER+533)
|
||||
//#define WM_PHASE_SKILL2 (WM_USER+534)
|
||||
#define WM_PHASE_DEMO (WM_USER+535)
|
||||
#define WM_PHASE_INTRO1 (WM_USER+536)
|
||||
#define WM_PHASE_INTRO2 (WM_USER+537)
|
||||
|
||||
#define WM_PREV (WM_USER+600)
|
||||
#define WM_NEXT (WM_USER+601)
|
||||
#define WM_MOVIE (WM_USER+602)
|
||||
|
||||
|
||||
|
||||
|
||||
// Types de gestion de la souris.
|
||||
|
||||
#define MOUSETYPEGRA 1
|
||||
#define MOUSETYPEWIN 2
|
||||
#define MOUSETYPEWINPOS 3
|
||||
*/
|
66
event.cpp
Normal file
66
event.cpp
Normal file
@ -0,0 +1,66 @@
|
||||
// Event.cpp
|
||||
//
|
||||
|
||||
#include <windows.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <ddraw.h>
|
||||
#include "def.h"
|
||||
#include "resource.h"
|
||||
#include "pixmap.h"
|
||||
#include "sound.h"
|
||||
#include "decor.h"
|
||||
#include "movie.h"
|
||||
#include "button.h"
|
||||
#include "menu.h"
|
||||
#include "jauge.h"
|
||||
#include "event.h"
|
||||
#include "action.h"
|
||||
#include "text.h"
|
||||
#include "misc.h"
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
static Phase table[] =
|
||||
{
|
||||
{
|
||||
WM_PHASE_TESTCD,
|
||||
"init.blp",
|
||||
FALSE,
|
||||
{
|
||||
{
|
||||
0
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
WM_PHASE_INIT,
|
||||
"init.blp",
|
||||
FALSE,
|
||||
{
|
||||
{
|
||||
WM_PHASE_GAMER,
|
||||
0, {1, 0x30},
|
||||
86, 410,
|
||||
{1, TX_BUTTON_PLAY}
|
||||
},
|
||||
{
|
||||
WM_PHASE_DEMO,
|
||||
0, {1, 0x54},
|
||||
128, 410,
|
||||
{1, TX_BUTTON_DEMO}
|
||||
},
|
||||
{
|
||||
#if _EGAMES
|
||||
WM_CLOSE,
|
||||
#else
|
||||
WM_PHASE_BYE,
|
||||
#endif
|
||||
0, {1, 6},
|
||||
520, 410,
|
||||
{1, TX_BUTTON_QUIT}
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
439
menu.cpp
Normal file
439
menu.cpp
Normal file
@ -0,0 +1,439 @@
|
||||
// Menu.cpp
|
||||
//
|
||||
|
||||
#include <windows.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <ddraw.h>
|
||||
#include "def.h"
|
||||
#include "resource.h"
|
||||
#include "pixmap.h"
|
||||
#include "sound.h"
|
||||
#include "decor.h"
|
||||
#include "button.h"
|
||||
#include "menu.h"
|
||||
#include "text.h"
|
||||
#include "misc.h"
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
#define MARGMENU 0
|
||||
|
||||
|
||||
static short table_button_icon[] =
|
||||
{
|
||||
24, // go
|
||||
40, // stop
|
||||
32, // mange
|
||||
30, // carry
|
||||
31, // depose
|
||||
22, // abat
|
||||
27, // roc
|
||||
28, // cultive
|
||||
19, // build1 (cabane)
|
||||
25, // build2 (couveuse)
|
||||
35, // build3 (laboratoire)
|
||||
61, // build4 (mine)
|
||||
59, // build5 (usine)
|
||||
101, // build6 (téléporteur)
|
||||
20, // mur
|
||||
26, // palis
|
||||
42, // abat n
|
||||
43, // roc n
|
||||
23, // pont
|
||||
33, // tour
|
||||
34, // boit
|
||||
39, // labo
|
||||
54, // fleur
|
||||
55, // fleur n
|
||||
41, // dynamite
|
||||
58, // bateau
|
||||
60, // djeep
|
||||
64, // drapeau
|
||||
62, // extrait du fer
|
||||
65, // fabrique jeep
|
||||
63, // fabrique mine
|
||||
83, // fabrique disciple
|
||||
100, // repeat
|
||||
107, // qarmure
|
||||
106, // fabarmure
|
||||
};
|
||||
|
||||
void GetText(int rank, char *pBuffer, int lgBuffer)
|
||||
{
|
||||
LoadString(TX_ACTION_GO+rank, pBuffer, lgBuffer);
|
||||
}
|
||||
|
||||
void GetErr(int rank, char *pBuffer, int lgBuffer)
|
||||
{
|
||||
LoadString(TX_ERROR_MISC+rank, pBuffer, lgBuffer);
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// Constructeur.
|
||||
|
||||
CMenu::CMenu()
|
||||
{
|
||||
m_nbButtons = 0;
|
||||
m_selRank = -1;
|
||||
}
|
||||
|
||||
// Destructeur.
|
||||
|
||||
CMenu::~CMenu()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
// Crée un nouveau bouton.
|
||||
|
||||
BOOL CMenu::Create(HWND hWnd, CPixmap *pPixmap, CSound *pSound,
|
||||
POINT pos, int nb, int *pButtons, int *pErrors,
|
||||
int perso)
|
||||
{
|
||||
pos.x -= DIMBUTTONX/2;
|
||||
pos.y -= DIMBUTTONY/2;
|
||||
|
||||
m_hWnd = hWnd;
|
||||
m_pPixmap = pPixmap;
|
||||
m_pSound = pSound;
|
||||
m_nbButtons = nb;
|
||||
m_pos = pos;
|
||||
m_perso = perso;
|
||||
|
||||
Update(nb, pButtons, pErrors);
|
||||
|
||||
if ( m_pos.x < POSDRAWX ) m_pos.x = POSDRAWX;
|
||||
if ( m_pos.y < POSDRAWY ) m_pos.y = POSDRAWY;
|
||||
|
||||
if ( m_pos.x > POSDRAWX+DIMDRAWX-2-m_dim.x ) m_pos.x = POSDRAWX+DIMDRAWX-2-m_dim.x;
|
||||
if ( m_pos.y > POSDRAWY+DIMDRAWY-2-m_dim.y ) m_pos.y = POSDRAWY+DIMDRAWY-2-m_dim.y;
|
||||
|
||||
if ( m_pos.x != pos.x || m_pos.y != pos.y )
|
||||
{
|
||||
pos = m_pos;
|
||||
pos.x += DIMBUTTONX/2;
|
||||
pos.y += DIMBUTTONY/2;
|
||||
ClientToScreen(m_hWnd, &pos);
|
||||
SetCursorPos(pos.x, pos.y);
|
||||
}
|
||||
|
||||
m_selRank = Detect(pos);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
// Met à jour le menu.
|
||||
|
||||
void CMenu::Update(int nb, int *pButtons, int *pErrors)
|
||||
{
|
||||
int i;
|
||||
|
||||
m_nbButtons = nb;
|
||||
|
||||
if ( nb < 5 ) m_nbCel.x = 1;
|
||||
else m_nbCel.x = 2;
|
||||
|
||||
m_nbCel.y = (nb+m_nbCel.x-1)/m_nbCel.x;
|
||||
|
||||
m_dim.x = (DIMBUTTONX+MARGMENU)*m_nbCel.x;
|
||||
m_dim.y = (DIMBUTTONY+MARGMENU)*m_nbCel.y;
|
||||
|
||||
for ( i=0 ; i<nb ; i++ )
|
||||
{
|
||||
m_buttons[i] = pButtons[i];
|
||||
m_errors[i] = pErrors[i];
|
||||
}
|
||||
}
|
||||
|
||||
// Détruit le menu.
|
||||
|
||||
void CMenu::Delete()
|
||||
{
|
||||
m_nbButtons = 0;
|
||||
m_selRank = -1;
|
||||
}
|
||||
|
||||
// Dessine un bouton dans son état.
|
||||
|
||||
void CMenu::Draw()
|
||||
{
|
||||
int i, state, icon;
|
||||
POINT pos;
|
||||
RECT oldClip, clipRect;
|
||||
BOOL bLeft = TRUE;
|
||||
BOOL bRight = TRUE;
|
||||
char text[50];
|
||||
char* pText;
|
||||
|
||||
if ( m_nbButtons == 0 ) return;
|
||||
|
||||
oldClip = m_pPixmap->GetClipping();
|
||||
clipRect.left = POSDRAWX;
|
||||
clipRect.top = POSDRAWY;
|
||||
clipRect.right = POSDRAWX+DIMDRAWX;
|
||||
clipRect.bottom = POSDRAWY+DIMDRAWY;
|
||||
m_pPixmap->SetClipping(clipRect);
|
||||
|
||||
if ( m_pos.x-150 < POSDRAWX ) bLeft = FALSE;
|
||||
if ( m_pos.x+m_dim.x+150 > POSDRAWX+DIMDRAWX ) bRight = FALSE;
|
||||
|
||||
for ( i=0 ; i<m_nbButtons ; i++ )
|
||||
{
|
||||
pos.x = m_pos.x+((i/m_nbCel.y)*(DIMBUTTONX+MARGMENU));
|
||||
pos.y = m_pos.y+((i%m_nbCel.y)*(DIMBUTTONY+MARGMENU));
|
||||
|
||||
if ( i == m_selRank ) state = 2; // hilite
|
||||
else state = 0; // release
|
||||
if ( m_errors[i] != 0 &&
|
||||
m_errors[i] != ERROR_TOURISOL &&
|
||||
m_errors[i] < 100 )
|
||||
{
|
||||
state = 4; // disable
|
||||
}
|
||||
m_pPixmap->DrawIcon(-1, CHBUTTON, state, pos);
|
||||
|
||||
icon = table_button_icon[m_buttons[i]];
|
||||
if ( m_perso == 8 ) // disciple ?
|
||||
{
|
||||
if ( icon == 30 ) icon = 88; // prend
|
||||
if ( icon == 31 ) icon = 89; // dépose
|
||||
}
|
||||
m_pPixmap->DrawIcon(-1, CHBUTTON, icon+6, pos);
|
||||
}
|
||||
|
||||
// Affiche le texte d'aide.
|
||||
if ( m_selRank != -1 )
|
||||
{
|
||||
i = m_selRank;
|
||||
pos.y = m_pos.y+((i%m_nbCel.y)*(DIMBUTTONY+MARGMENU));
|
||||
|
||||
if ( m_errors[i] == 0 )
|
||||
{
|
||||
pos.y += (DIMBUTTONY-DIMTEXTY)/2;
|
||||
}
|
||||
else
|
||||
{
|
||||
pos.y += (DIMBUTTONY-DIMTEXTY*2)/2;
|
||||
}
|
||||
|
||||
if ( m_errors[i] >= 100 ) // no ressource au lieu erreur ?
|
||||
{
|
||||
LoadString(m_errors[i], text, 50);
|
||||
pText = strchr(text, '\n');
|
||||
if ( pText != NULL ) *pText = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
GetText(m_buttons[i], text, 50);
|
||||
}
|
||||
|
||||
if ( m_nbCel.x > 1 && i < m_nbCel.y )
|
||||
{
|
||||
// if ( bLeft )
|
||||
// {
|
||||
pos.x = m_pos.x-4-GetTextWidth(text); // texte à gauche
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// pos.x = m_pos.x+((i/m_nbCel.y)+1)+(DIMBUTTONX+MARGMENU)+4;
|
||||
// }
|
||||
}
|
||||
else
|
||||
{
|
||||
// if ( bRight )
|
||||
// {
|
||||
pos.x = m_pos.x+m_dim.x+4; // texte à droite
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// pos.x = m_pos.x+(i/m_nbCel.y)*(DIMBUTTONX+MARGMENU)-4-GetTextWidth(text);
|
||||
// }
|
||||
}
|
||||
|
||||
DrawText(m_pPixmap, pos, text, FONTWHITE);
|
||||
|
||||
if ( m_errors[i] != 0 )
|
||||
{
|
||||
if ( m_errors[i] >= 100 ) // no ressource au lieu erreur ?
|
||||
{
|
||||
LoadString(m_errors[i], text, 50);
|
||||
pText = strchr(text, '\n');
|
||||
if ( pText != NULL ) strcpy(text, pText+1);
|
||||
}
|
||||
else
|
||||
{
|
||||
GetErr(m_errors[i]-1, text, 50); // impossible ici
|
||||
}
|
||||
|
||||
if ( m_nbCel.x > 1 && i < m_nbCel.y )
|
||||
{
|
||||
// if ( bLeft )
|
||||
// {
|
||||
pos.x = m_pos.x-4-GetTextWidth(text); // texte à gauche
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// pos.x = m_pos.x+((i/m_nbCel.y)+1)+(DIMBUTTONX+MARGMENU)+4;
|
||||
// }
|
||||
}
|
||||
else
|
||||
{
|
||||
// if ( bRight )
|
||||
// {
|
||||
pos.x = m_pos.x+m_dim.x+4; // texte à droite
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// pos.x = m_pos.x+(i/m_nbCel.y)*(DIMBUTTONX+MARGMENU)-4-GetTextWidth(text);
|
||||
// }
|
||||
}
|
||||
|
||||
pos.y += DIMTEXTY;
|
||||
if ( m_errors[i] >= 100 ) // no ressource au lieu erreur ?
|
||||
{
|
||||
DrawText(m_pPixmap, pos, text, FONTWHITE);
|
||||
}
|
||||
else
|
||||
{
|
||||
DrawText(m_pPixmap, pos, text, FONTRED);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
m_pPixmap->SetClipping(oldClip);
|
||||
}
|
||||
|
||||
// Retourne le bouton sélectionné.
|
||||
|
||||
int CMenu::GetSel()
|
||||
{
|
||||
if ( m_selRank == -1 ) return -1;
|
||||
|
||||
return m_buttons[m_selRank];
|
||||
}
|
||||
|
||||
// Retourne le rang sélectionné.
|
||||
|
||||
int CMenu::GetRank()
|
||||
{
|
||||
return m_selRank;
|
||||
}
|
||||
|
||||
// Retourne TRUE si le bouton sélectionné a une erreur.
|
||||
|
||||
BOOL CMenu::IsError()
|
||||
{
|
||||
if ( m_selRank == -1 ) return TRUE;
|
||||
|
||||
if ( m_errors[m_selRank] != 0 &&
|
||||
m_errors[m_selRank] < 100 ) return TRUE;
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
// Indique si le menu existe.
|
||||
|
||||
BOOL CMenu::IsExist()
|
||||
{
|
||||
return ( m_nbButtons == 0 ) ? FALSE:TRUE;
|
||||
}
|
||||
|
||||
|
||||
// Traitement d'un événement.
|
||||
|
||||
BOOL CMenu::TreatEvent(UINT message, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
POINT pos;
|
||||
|
||||
if ( m_nbButtons == 0 ) return FALSE;
|
||||
|
||||
pos = ConvLongToPos(lParam);
|
||||
|
||||
switch( message )
|
||||
{
|
||||
case WM_LBUTTONDOWN:
|
||||
case WM_RBUTTONDOWN:
|
||||
if ( MouseDown(pos) ) return TRUE;
|
||||
break;
|
||||
|
||||
case WM_MOUSEMOVE:
|
||||
if ( MouseMove(pos) ) return TRUE;
|
||||
break;
|
||||
|
||||
case WM_LBUTTONUP:
|
||||
case WM_RBUTTONUP:
|
||||
if ( MouseUp(pos) ) return TRUE;
|
||||
break;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Détecte dans quel bouton est la souris.
|
||||
|
||||
int CMenu::Detect(POINT pos)
|
||||
{
|
||||
int rank;
|
||||
|
||||
if ( pos.x < m_pos.x || pos.x > m_pos.x+m_dim.x ||
|
||||
pos.y < m_pos.y || pos.y > m_pos.y+m_dim.y ) return -1;
|
||||
|
||||
rank = (pos.y-m_pos.y)/(DIMBUTTONY+MARGMENU);
|
||||
rank += ((pos.x-m_pos.x)/(DIMBUTTONX+MARGMENU))*m_nbCel.y;
|
||||
|
||||
if ( rank >= m_nbButtons ) return -1;
|
||||
return rank;
|
||||
}
|
||||
|
||||
// Bouton de la souris pressé.
|
||||
|
||||
BOOL CMenu::MouseDown(POINT pos)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Souris déplacés.
|
||||
|
||||
BOOL CMenu::MouseMove(POINT pos)
|
||||
{
|
||||
m_mousePos = pos;
|
||||
m_selRank = Detect(pos);
|
||||
|
||||
if ( pos.x < m_pos.x-(DIMBUTTONX+MARGMENU) ||
|
||||
pos.x > m_pos.x+m_dim.x+(DIMBUTTONX+MARGMENU) ||
|
||||
pos.y < m_pos.y-(DIMBUTTONY+MARGMENU) ||
|
||||
pos.y > m_pos.y+m_dim.y+(DIMBUTTONY+MARGMENU) )
|
||||
{
|
||||
Delete(); // enlève le menu si souris trop loin !
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Bouton de la souris relâché.
|
||||
|
||||
BOOL CMenu::MouseUp(POINT pos)
|
||||
{
|
||||
m_mousePos = pos;
|
||||
m_selRank = Detect(pos);
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Envoie le message.
|
||||
|
||||
void CMenu::Message()
|
||||
{
|
||||
if ( m_selRank != -1 )
|
||||
{
|
||||
PostMessage(m_hWnd, WM_BUTTON0+m_selRank, 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
|
398
misc.cpp
Normal file
398
misc.cpp
Normal file
@ -0,0 +1,398 @@
|
||||
// misc.cpp
|
||||
//
|
||||
|
||||
|
||||
#include <dsound.h>
|
||||
#include <ddraw.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include "def.h"
|
||||
|
||||
|
||||
// Variables globales
|
||||
|
||||
HINSTANCE g_hInstance;
|
||||
int g_lastSprite = 0;
|
||||
extern BOOL g_bFullScreen; // FALSE si mode de test
|
||||
extern int g_mouseType;
|
||||
extern char g_CDPath[MAX_PATH];
|
||||
|
||||
|
||||
|
||||
// Initialise HInstance.
|
||||
|
||||
void InitHInstance(HINSTANCE hInstance)
|
||||
{
|
||||
g_hInstance = hInstance;
|
||||
}
|
||||
|
||||
|
||||
// Affiche un message de debug.
|
||||
|
||||
void OutputDebug(char *pMessage)
|
||||
{
|
||||
#ifdef _DEBUG
|
||||
OutputDebugString(pMessage);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
// Charge un texte dans une ressource.
|
||||
|
||||
void LoadString(UINT nID, char *pBuffer, int lgBuffer)
|
||||
{
|
||||
LoadString(g_hInstance, nID, pBuffer, lgBuffer);
|
||||
}
|
||||
|
||||
// Change le lutin de la souris.
|
||||
|
||||
void ChangeSprite(int sprite)
|
||||
{
|
||||
HCURSOR hCursor = nullptr;
|
||||
|
||||
if ( g_mouseType == MOUSETYPEGRA ) return;
|
||||
if ( g_lastSprite == sprite ) return;
|
||||
|
||||
if ( sprite == SPRITE_ARROW ) hCursor = LoadCursor(g_hInstance, "IDC_ARROW");
|
||||
if ( sprite == SPRITE_POINTER ) hCursor = LoadCursor(g_hInstance, "IDC_POINTER");
|
||||
if ( sprite == SPRITE_MAP ) hCursor = LoadCursor(g_hInstance, "IDC_MAP");
|
||||
if ( sprite == SPRITE_ARROWU ) hCursor = LoadCursor(g_hInstance, "IDC_ARROWU");
|
||||
if ( sprite == SPRITE_ARROWD ) hCursor = LoadCursor(g_hInstance, "IDC_ARROWD");
|
||||
if ( sprite == SPRITE_ARROWL ) hCursor = LoadCursor(g_hInstance, "IDC_ARROWL");
|
||||
if ( sprite == SPRITE_ARROWR ) hCursor = LoadCursor(g_hInstance, "IDC_ARROWR");
|
||||
if ( sprite == SPRITE_ARROWUL ) hCursor = LoadCursor(g_hInstance, "IDC_ARROWUL");
|
||||
if ( sprite == SPRITE_ARROWUR ) hCursor = LoadCursor(g_hInstance, "IDC_ARROWUR");
|
||||
if ( sprite == SPRITE_ARROWDL ) hCursor = LoadCursor(g_hInstance, "IDC_ARROWDL");
|
||||
if ( sprite == SPRITE_ARROWDR ) hCursor = LoadCursor(g_hInstance, "IDC_ARROWDR");
|
||||
if ( sprite == SPRITE_WAIT ) hCursor = LoadCursor(g_hInstance, "IDC_WAIT");
|
||||
if ( sprite == SPRITE_EMPTY ) hCursor = LoadCursor(g_hInstance, "IDC_EMPTY");
|
||||
if ( sprite == SPRITE_FILL ) hCursor = LoadCursor(g_hInstance, "IDC_FILL");
|
||||
SetCursor(hCursor);
|
||||
|
||||
g_lastSprite = sprite;
|
||||
}
|
||||
|
||||
|
||||
// Conversion de la position de la souris.
|
||||
|
||||
POINT ConvLongToPos(LPARAM lParam)
|
||||
{
|
||||
POINT pos;
|
||||
|
||||
pos.x = LOWORD(lParam); // horizontal position of cursor
|
||||
pos.y = HIWORD(lParam); // vertical position of cursor
|
||||
|
||||
// if ( !g_bFullScreen )
|
||||
// {
|
||||
// pos.y -= GetSystemMetrics(SM_CYCAPTION);
|
||||
// }
|
||||
|
||||
return pos;
|
||||
}
|
||||
|
||||
|
||||
// Réinitialise le générateur aléatoire.
|
||||
|
||||
void InitRandom()
|
||||
{
|
||||
srand(1);
|
||||
}
|
||||
|
||||
// Retourne un nombre aléatoire compris entre
|
||||
// deux bornes (inclues).
|
||||
|
||||
int Random(int min, int max)
|
||||
{
|
||||
long n;
|
||||
|
||||
n = rand();
|
||||
n = min+(n%(max-min+1));
|
||||
|
||||
return (int)n;
|
||||
}
|
||||
|
||||
|
||||
// Retourne le nom de dossier en cours.
|
||||
|
||||
void GetCurrentDir(char *pName, int lg)
|
||||
{
|
||||
int i;
|
||||
|
||||
strncpy(pName, _pgmptr, lg-1);
|
||||
pName[lg-1] = 0;
|
||||
|
||||
lg = strlen(pName);
|
||||
if ( lg == 0 ) return;
|
||||
|
||||
for ( i=0 ; i<lg ; i++ )
|
||||
{
|
||||
pName[i] = tolower(pName[i]);
|
||||
}
|
||||
|
||||
while ( lg > 0 )
|
||||
{
|
||||
lg --;
|
||||
if ( pName[lg] == '\\' )
|
||||
{
|
||||
pName[lg+1] = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ( lg > 6 && strcmp(pName+lg-6, "\\debug\\") == 0 )
|
||||
{
|
||||
pName[lg-5] = 0; // ignore le dossier \debug !
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Ajoute le chemin permettant de lire un fichier
|
||||
// sur le CD-Rom.
|
||||
|
||||
void AddCDPath(char *pFilename)
|
||||
{
|
||||
char temp[MAX_PATH];
|
||||
int lg;
|
||||
BOOL bDaniel = FALSE;
|
||||
|
||||
if ( g_CDPath[0] == 0 ) return;
|
||||
|
||||
lg = strlen(g_CDPath);
|
||||
if ( lg > 14 && strstr(g_CDPath+lg-14, "\\daniel\\blupi\\") )
|
||||
{
|
||||
bDaniel = TRUE;
|
||||
}
|
||||
|
||||
#if _DEMO
|
||||
strcpy(temp, g_CDPath);
|
||||
strcat(temp, pFilename);
|
||||
#else
|
||||
if ( !bDaniel &&
|
||||
(strstr(pFilename, "image\\") == pFilename ||
|
||||
strstr(pFilename, "movie\\") == pFilename) )
|
||||
{
|
||||
strcpy(temp, g_CDPath);
|
||||
strcat(temp, "..\\");
|
||||
strcat(temp, pFilename);
|
||||
}
|
||||
else
|
||||
{
|
||||
strcpy(temp, g_CDPath);
|
||||
strcat(temp, pFilename);
|
||||
}
|
||||
#endif
|
||||
|
||||
strcpy(pFilename, temp);
|
||||
}
|
||||
|
||||
// Ajoute le chemin permettant de lire un fichier
|
||||
// utilisateur.
|
||||
|
||||
void AddUserPath(char *pFilename)
|
||||
{
|
||||
char temp[MAX_PATH];
|
||||
char* pText;
|
||||
int pos;
|
||||
char last;
|
||||
SECURITY_ATTRIBUTES att;
|
||||
|
||||
if ( g_CDPath[0] != 0 ) return;
|
||||
|
||||
#if _EGAMES
|
||||
strcpy(temp, "c:\\Planet Blupi Full\\");
|
||||
#if _DEMO
|
||||
strcpy(temp, "c:\\Planet Blupi Demo\\");
|
||||
#endif
|
||||
#if _SE
|
||||
strcpy(temp, "c:\\Planet Blupi SE\\");
|
||||
#endif
|
||||
#else
|
||||
strcpy(temp, "c:\\Planète Blupi\\");
|
||||
#endif
|
||||
|
||||
att.nLength = sizeof(SECURITY_ATTRIBUTES);
|
||||
att.lpSecurityDescriptor = NULL;
|
||||
att.bInheritHandle = FALSE;
|
||||
CreateDirectory(temp, &att);
|
||||
|
||||
pText = strstr(pFilename, "\\");
|
||||
if ( pText != NULL )
|
||||
{
|
||||
pos = strlen(temp)+(pText-pFilename)+1;
|
||||
strcat(temp, pFilename);
|
||||
last = temp[pos];
|
||||
temp[pos] = 0;
|
||||
CreateDirectory(temp, &att);
|
||||
temp[pos] = last;
|
||||
}
|
||||
else
|
||||
{
|
||||
strcat(temp, pFilename);
|
||||
}
|
||||
|
||||
strcpy(pFilename, temp);
|
||||
}
|
||||
|
||||
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
//
|
||||
// Function : TraceErrorDD()
|
||||
//
|
||||
// Purpose : Traces an error (DirectDraw)
|
||||
//
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
void TraceErrorDD(HRESULT hErr, char *sFile, int nLine)
|
||||
{
|
||||
char dderr[256];
|
||||
char err[1024];
|
||||
|
||||
switch (hErr)
|
||||
{
|
||||
case DD_OK : sprintf(dderr, "DD_OK"); break;
|
||||
case DDERR_ALREADYINITIALIZED : sprintf(dderr, "DDERR_ALREADYINITIALIZED"); break;
|
||||
case DDERR_CANNOTATTACHSURFACE : sprintf(dderr, "DDERR_CANNOTATTACHSURFACE"); break;
|
||||
case DDERR_CANNOTDETACHSURFACE : sprintf(dderr, "DDERR_CANNOTDETACHSURFACE"); break;
|
||||
case DDERR_CURRENTLYNOTAVAIL : sprintf(dderr, "DDERR_CURRENTLYNOTAVAIL"); break;
|
||||
case DDERR_EXCEPTION : sprintf(dderr, "DDERR_EXCEPTION"); break;
|
||||
case DDERR_GENERIC : sprintf(dderr, "DDERR_GENERIC"); break;
|
||||
case DDERR_HEIGHTALIGN : sprintf(dderr, "DDERR_HEIGHTALIGN"); break;
|
||||
case DDERR_INCOMPATIBLEPRIMARY : sprintf(dderr, "DDERR_INCOMPATIBLEPRIMARY"); break;
|
||||
case DDERR_INVALIDCAPS : sprintf(dderr, "DDERR_INVALIDCAPS"); break;
|
||||
case DDERR_INVALIDCLIPLIST : sprintf(dderr, "DDERR_INVALIDCLIPLIST"); break;
|
||||
case DDERR_INVALIDMODE : sprintf(dderr, "DDERR_INVALIDMODE"); break;
|
||||
case DDERR_INVALIDOBJECT : sprintf(dderr, "DDERR_INVALIDOBJECT"); break;
|
||||
case DDERR_INVALIDPARAMS : sprintf(dderr, "DDERR_INVALIDPARAMS"); break;
|
||||
case DDERR_INVALIDPIXELFORMAT : sprintf(dderr, "DDERR_INVALIDPIXELFORMAT"); break;
|
||||
case DDERR_INVALIDRECT : sprintf(dderr, "DDERR_INVALIDRECT"); break;
|
||||
case DDERR_LOCKEDSURFACES : sprintf(dderr, "DDERR_LOCKEDSURFACES"); break;
|
||||
case DDERR_NO3D : sprintf(dderr, "DDERR_NO3D"); break;
|
||||
case DDERR_NOALPHAHW : sprintf(dderr, "DDERR_NOALPHAHW"); break;
|
||||
case DDERR_NOCLIPLIST : sprintf(dderr, "DDERR_NOCLIPLIST"); break;
|
||||
case DDERR_NOCOLORCONVHW : sprintf(dderr, "DDERR_NOCOLORCONVHW"); break;
|
||||
case DDERR_NOCOOPERATIVELEVELSET : sprintf(dderr, "DDERR_NOCOOPERATIVELEVELSET"); break;
|
||||
case DDERR_NOCOLORKEY : sprintf(dderr, "DDERR_NOCOLORKEY"); break;
|
||||
case DDERR_NOCOLORKEYHW : sprintf(dderr, "DDERR_NOCOLORKEYHW"); break;
|
||||
case DDERR_NODIRECTDRAWSUPPORT : sprintf(dderr, "DDERR_NODIRECTDRAWSUPPORT"); break;
|
||||
case DDERR_NOEXCLUSIVEMODE : sprintf(dderr, "DDERR_NOEXCLUSIVEMODE"); break;
|
||||
case DDERR_NOFLIPHW : sprintf(dderr, "DDERR_NOFLIPHW"); break;
|
||||
case DDERR_NOGDI : sprintf(dderr, "DDERR_NOGDI"); break;
|
||||
case DDERR_NOMIRRORHW : sprintf(dderr, "DDERR_NOMIRRORHW"); break;
|
||||
case DDERR_NOTFOUND : sprintf(dderr, "DDERR_NOTFOUND"); break;
|
||||
case DDERR_NOOVERLAYHW : sprintf(dderr, "DDERR_NOOVERLAYHW"); break;
|
||||
case DDERR_NORASTEROPHW : sprintf(dderr, "DDERR_NORASTEROPHW"); break;
|
||||
case DDERR_NOROTATIONHW : sprintf(dderr, "DDERR_NOROTATIONHW"); break;
|
||||
case DDERR_NOSTRETCHHW : sprintf(dderr, "DDERR_NOSTRETCHHW"); break;
|
||||
case DDERR_NOT4BITCOLOR : sprintf(dderr, "DDERR_NOT4BITCOLOR"); break;
|
||||
case DDERR_NOT4BITCOLORINDEX : sprintf(dderr, "DDERR_NOT4BITCOLORINDEX"); break;
|
||||
case DDERR_NOT8BITCOLOR : sprintf(dderr, "DDERR_NOT8BITCOLOR"); break;
|
||||
case DDERR_NOTEXTUREHW : sprintf(dderr, "DDERR_NOTEXTUREHW"); break;
|
||||
case DDERR_NOVSYNCHW : sprintf(dderr, "DDERR_NOVSYNCHW"); break;
|
||||
case DDERR_NOZBUFFERHW : sprintf(dderr, "DDERR_NOZBUFFERHW"); break;
|
||||
case DDERR_NOZOVERLAYHW : sprintf(dderr, "DDERR_NOZOVERLAYHW"); break;
|
||||
case DDERR_OUTOFCAPS : sprintf(dderr, "DDERR_OUTOFCAPS"); break;
|
||||
case DDERR_OUTOFMEMORY : sprintf(dderr, "DDERR_OUTOFMEMORY"); break;
|
||||
case DDERR_OUTOFVIDEOMEMORY : sprintf(dderr, "DDERR_OUTOFVIDEOMEMORY"); break;
|
||||
case DDERR_OVERLAYCANTCLIP : sprintf(dderr, "DDERR_OVERLAYCANTCLIP"); break;
|
||||
case DDERR_OVERLAYCOLORKEYONLYONEACTIVE : sprintf(dderr, "DDERR_OVERLAYCOLORKEYONLYONEACTIVE"); break;
|
||||
case DDERR_PALETTEBUSY : sprintf(dderr, "DDERR_PALETTEBUSY"); break;
|
||||
case DDERR_COLORKEYNOTSET : sprintf(dderr, "DDERR_COLORKEYNOTSET"); break;
|
||||
case DDERR_SURFACEALREADYATTACHED : sprintf(dderr, "DDERR_SURFACEALREADYATTACHED"); break;
|
||||
case DDERR_SURFACEALREADYDEPENDENT : sprintf(dderr, "DDERR_SURFACEALREADYDEPENDENT"); break;
|
||||
case DDERR_SURFACEBUSY : sprintf(dderr, "DDERR_SURFACEBUSY"); break;
|
||||
case DDERR_CANTLOCKSURFACE : sprintf(dderr, "DDERR_CANTLOCKSURFACE"); break;
|
||||
case DDERR_SURFACEISOBSCURED : sprintf(dderr, "DDERR_SURFACEISOBSCURED"); break;
|
||||
case DDERR_SURFACELOST : sprintf(dderr, "DDERR_SURFACELOST"); break;
|
||||
case DDERR_SURFACENOTATTACHED : sprintf(dderr, "DDERR_SURFACENOTATTACHED"); break;
|
||||
case DDERR_TOOBIGHEIGHT : sprintf(dderr, "DDERR_TOOBIGHEIGHT"); break;
|
||||
case DDERR_TOOBIGSIZE : sprintf(dderr, "DDERR_TOOBIGSIZE"); break;
|
||||
case DDERR_TOOBIGWIDTH : sprintf(dderr, "DDERR_TOOBIGWIDTH"); break;
|
||||
case DDERR_UNSUPPORTED : sprintf(dderr, "DDERR_UNSUPPORTED"); break;
|
||||
case DDERR_UNSUPPORTEDFORMAT : sprintf(dderr, "DDERR_UNSUPPORTEDFORMAT"); break;
|
||||
case DDERR_UNSUPPORTEDMASK : sprintf(dderr, "DDERR_UNSUPPORTEDMASK"); break;
|
||||
case DDERR_VERTICALBLANKINPROGRESS : sprintf(dderr, "DDERR_VERTICALBLANKINPROGRESS"); break;
|
||||
case DDERR_WASSTILLDRAWING : sprintf(dderr, "DDERR_WASSTILLDRAWING"); break;
|
||||
case DDERR_XALIGN : sprintf(dderr, "DDERR_XALIGN"); break;
|
||||
case DDERR_INVALIDDIRECTDRAWGUID : sprintf(dderr, "DDERR_INVALIDDIRECTDRAWGUID"); break;
|
||||
case DDERR_DIRECTDRAWALREADYCREATED : sprintf(dderr, "DDERR_DIRECTDRAWALREADYCREATED"); break;
|
||||
case DDERR_NODIRECTDRAWHW : sprintf(dderr, "DDERR_NODIRECTDRAWHW"); break;
|
||||
case DDERR_PRIMARYSURFACEALREADYEXISTS : sprintf(dderr, "DDERR_PRIMARYSURFACEALREADYEXISTS"); break;
|
||||
case DDERR_NOEMULATION : sprintf(dderr, "DDERR_NOEMULATION"); break;
|
||||
case DDERR_REGIONTOOSMALL : sprintf(dderr, "DDERR_REGIONTOOSMALL"); break;
|
||||
case DDERR_CLIPPERISUSINGHWND : sprintf(dderr, "DDERR_CLIPPERISUSINGHWND"); break;
|
||||
case DDERR_NOCLIPPERATTACHED : sprintf(dderr, "DDERR_NOCLIPPERATTACHED"); break;
|
||||
case DDERR_NOHWND : sprintf(dderr, "DDERR_NOHWND"); break;
|
||||
case DDERR_HWNDSUBCLASSED : sprintf(dderr, "DDERR_HWNDSUBCLASSED"); break;
|
||||
case DDERR_HWNDALREADYSET : sprintf(dderr, "DDERR_HWNDALREADYSET"); break;
|
||||
case DDERR_NOPALETTEATTACHED : sprintf(dderr, "DDERR_NOPALETTEATTACHED"); break;
|
||||
case DDERR_NOPALETTEHW : sprintf(dderr, "DDERR_NOPALETTEHW"); break;
|
||||
case DDERR_BLTFASTCANTCLIP : sprintf(dderr, "DDERR_BLTFASTCANTCLIP"); break;
|
||||
case DDERR_NOBLTHW : sprintf(dderr, "DDERR_NOBLTHW"); break;
|
||||
case DDERR_NODDROPSHW : sprintf(dderr, "DDERR_NODDROPSHW"); break;
|
||||
case DDERR_OVERLAYNOTVISIBLE : sprintf(dderr, "DDERR_OVERLAYNOTVISIBLE"); break;
|
||||
case DDERR_NOOVERLAYDEST : sprintf(dderr, "DDERR_NOOVERLAYDEST"); break;
|
||||
case DDERR_INVALIDPOSITION : sprintf(dderr, "DDERR_INVALIDPOSITION"); break;
|
||||
case DDERR_NOTAOVERLAYSURFACE : sprintf(dderr, "DDERR_NOTAOVERLAYSURFACE"); break;
|
||||
case DDERR_EXCLUSIVEMODEALREADYSET : sprintf(dderr, "DDERR_EXCLUSIVEMODEALREADYSET"); break;
|
||||
case DDERR_NOTFLIPPABLE : sprintf(dderr, "DDERR_NOTFLIPPABLE"); break;
|
||||
case DDERR_CANTDUPLICATE : sprintf(dderr, "DDERR_CANTDUPLICATE"); break;
|
||||
case DDERR_NOTLOCKED : sprintf(dderr, "DDERR_NOTLOCKED"); break;
|
||||
case DDERR_CANTCREATEDC : sprintf(dderr, "DDERR_CANTCREATEDC"); break;
|
||||
case DDERR_NODC : sprintf(dderr, "DDERR_NODC"); break;
|
||||
case DDERR_WRONGMODE : sprintf(dderr, "DDERR_WRONGMODE"); break;
|
||||
case DDERR_IMPLICITLYCREATED : sprintf(dderr, "DDERR_IMPLICITLYCREATED"); break;
|
||||
case DDERR_NOTPALETTIZED : sprintf(dderr, "DDERR_NOTPALETTIZED"); break;
|
||||
case DDERR_UNSUPPORTEDMODE : sprintf(dderr, "DDERR_UNSUPPORTEDMODE"); break;
|
||||
case DDERR_NOMIPMAPHW : sprintf(dderr, "DDERR_NOMIPMAPHW"); break;
|
||||
case DDERR_INVALIDSURFACETYPE : sprintf(dderr, "DDERR_INVALIDSURFACETYPE"); break;
|
||||
case DDERR_DCALREADYCREATED : sprintf(dderr, "DDERR_DCALREADYCREATED"); break;
|
||||
case DDERR_CANTPAGELOCK : sprintf(dderr, "DDERR_CANTPAGELOCK"); break;
|
||||
case DDERR_CANTPAGEUNLOCK : sprintf(dderr, "DDERR_CANTPAGEUNLOCK"); break;
|
||||
case DDERR_NOTPAGELOCKED : sprintf(dderr, "DDERR_NOTPAGELOCKED"); break;
|
||||
case DDERR_NOTINITIALIZED : sprintf(dderr, "DDERR_NOTINITIALIZED"); break;
|
||||
|
||||
default : sprintf(dderr, "Unknown Error"); break;
|
||||
}
|
||||
sprintf(err, "DirectDraw Error %s in file %s at line %d\n", dderr, sFile, nLine);
|
||||
OutputDebug(err);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
//
|
||||
// Function : TraceErrorDS()
|
||||
//
|
||||
// Purpose : Traces an error (DirectSound)
|
||||
//
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
void TraceErrorDS(HRESULT hErr, char *sFile, int nLine)
|
||||
{
|
||||
char dserr[256];
|
||||
char err[1024];
|
||||
|
||||
switch (hErr)
|
||||
{
|
||||
case DS_OK : sprintf(dserr, "DD_OK"); break;
|
||||
case DSERR_ALLOCATED : sprintf(dserr, "DSERR_ALLOCATED"); break;
|
||||
case DSERR_CONTROLUNAVAIL : sprintf(dserr, "DSERR_CONTROLUNAVAIL"); break;
|
||||
case DSERR_INVALIDPARAM : sprintf(dserr, "DSERR_INVALIDPARAM"); break;
|
||||
case DSERR_INVALIDCALL : sprintf(dserr, "DSERR_INVALIDCALL"); break;
|
||||
case DSERR_GENERIC : sprintf(dserr, "DSERR_GENERIC"); break;
|
||||
case DSERR_PRIOLEVELNEEDED : sprintf(dserr, "DSERR_PRIOLEVELNEEDED"); break;
|
||||
case DSERR_OUTOFMEMORY : sprintf(dserr, "DSERR_OUTOFMEMORY"); break;
|
||||
case DSERR_BADFORMAT : sprintf(dserr, "DSERR_BADFORMAT"); break;
|
||||
case DSERR_UNSUPPORTED : sprintf(dserr, "DSERR_UNSUPPORTED"); break;
|
||||
case DSERR_NODRIVER : sprintf(dserr, "DSERR_NODRIVER"); break;
|
||||
case DSERR_ALREADYINITIALIZED : sprintf(dserr, "DSERR_ALREADYINITIALIZED"); break;
|
||||
case DSERR_NOAGGREGATION : sprintf(dserr, "DSERR_NOAGGREGATION"); break;
|
||||
case DSERR_BUFFERLOST : sprintf(dserr, "DSERR_BUFFERLOST"); break;
|
||||
case DSERR_OTHERAPPHASPRIO : sprintf(dserr, "DSERR_OTHERAPPHASPRIO"); break;
|
||||
case DSERR_UNINITIALIZED : sprintf(dserr, "DSERR_UNINITIALIZED"); break;
|
||||
|
||||
default : sprintf(dserr, "Unknown Error"); break;
|
||||
}
|
||||
sprintf(err, "DirectSound Error %s in file %s at line %d\n", dserr, sFile, nLine);
|
||||
OutputDebug(err);
|
||||
}
|
||||
|
0
network.cpp
Normal file
0
network.cpp
Normal file
343
resource.h
Normal file
343
resource.h
Normal file
@ -0,0 +1,343 @@
|
||||
|
||||
#define TX_IONAMEEX 100
|
||||
#define TX_IOFREE 101
|
||||
#define IDR_MENU 102 // ?
|
||||
#define TX_OWNLEVEL 102
|
||||
#define TX_BUTTON_TESTTHISLEVEL 103
|
||||
#define TX_BUTTON_LEVELS 104
|
||||
#define TX_BUTTON_TRAINING 105
|
||||
#define TX_BUTTON_QUITBLUPI 106
|
||||
#define TX_BUTTON_PREVIOUSLEVEL 107
|
||||
#define TX_BUTTON_NEXTLEVEL 108
|
||||
#define TX_BUTTON_PLAY 109 //init, info
|
||||
#define TX_BUTTON_DESIGNLEVEL 110
|
||||
#define TX_BUTTON_FINISH 111
|
||||
|
||||
#define TX_BUTTON_OPENLEVEL 112
|
||||
#define TX_BUTTON_SAVELEVEL 113
|
||||
#define TX_BUTTON_QUITLEVEL 114
|
||||
#define TX_BUTTON_CONTINUELEVEL 115
|
||||
#define TX_BUTTON_RESTARTLEVEL 116
|
||||
#define TX_BUTTON_CHOOSEPLAYER 117
|
||||
#define TX_BUTTON_PLAYERNAME 118
|
||||
#define TX_BUTTON_QUITDESIGN 119
|
||||
#define TX_BUTTON_CHOOSESIZE 120
|
||||
#define TX_BUTTON_SCROLL_BOTH 121
|
||||
#define TX_BUTTON_SCROLL_HORIZONTAL 122
|
||||
#define TX_BUTTON_SCROLL_VERTICAL 123
|
||||
#define TX_BUTTON_TESTTHELEVEL 124
|
||||
#define TX_PAUSE 125
|
||||
#define TX_BUTTON_SCROLL_TINY 126
|
||||
#define TX_BUTTON_CLEARPLAYER 127
|
||||
|
||||
#define TX_BUTTON_SETTINGS 128
|
||||
#define TX_BUTTON_CHOOSEMUSIC 129
|
||||
#define TX_BUTTON_SOUNDVOLUMEDOWN 130
|
||||
#define TX_BUTTON_SOUNDVOLUMEUP 131
|
||||
#define TX_BUTTON_MUSICVOLUMEDOWN 132
|
||||
#define TX_BUTTON_MUSICVOLUMEUP 133
|
||||
#define TX_BUTTON_NOMUSIC 134
|
||||
#define TX_BUTTON_MUSIC1 135
|
||||
#define TX_BUTTON_MUSIC2 136
|
||||
#define TX_BUTTON_MUSIC3 137
|
||||
#define TX_BUTTON_MUSIC4 138
|
||||
#define TX_BUTTON_MUSIC5 139
|
||||
#define TX_BUTTON_MUSIC6 140
|
||||
#define TX_BUTTON_MUSIC7 141
|
||||
#define TX_BUTTON_MUSIC8 142
|
||||
#define TX_BUTTON_MUSIC9 143
|
||||
|
||||
#define TX_BUTTON_CHOOSEBACKGROUND 144
|
||||
#define TX_DISCARDGAME 145
|
||||
#define TX_BLUPI 146
|
||||
#define TX_DESIGNLEVELS 147
|
||||
#define TX_INFO_CHOOSEPLAYER 148
|
||||
#define TX_CHOOSEMUSIC 149
|
||||
#define TX_TRAININGNUMBER 150
|
||||
#define TX_LEVELNUMBER 151
|
||||
#define TX_IONAMEMI 152
|
||||
#define TX_CHOOSESIZE 153
|
||||
#define TX_BUTTON_256COLOR_BACKGROUND 154
|
||||
#define TX_BUTTON_65000COLOR_BACKGROUND 155
|
||||
#define TX_BUTTON_KEYBOARD 156
|
||||
#define TX_BUTTON_JOYSTICK 157
|
||||
#define TX_YES 158
|
||||
#define TX_NO 159
|
||||
|
||||
#define TX_SETTINGS 160
|
||||
#define TX_INFO_WRITELEVEL 161
|
||||
#define TX_INFO_SOUNDVOLUME 162
|
||||
#define TX_INFO_MUSICVOLUME 163
|
||||
#define TX_INFO_COLORDEPTH 164
|
||||
#define TX_INFO_INPUTDEVICE 165
|
||||
#define TX_INFO_READLEVEL 166
|
||||
#define TX_INFO_PLAYERNUMBER 167
|
||||
#define TX_INFO_PLAYERFREE 168
|
||||
#define TX_INFO_DOOROPEN 169
|
||||
#define TX_INFO_DOORSOPEN 170
|
||||
#define TX_INFO_MUSIC10 171
|
||||
#define TX_INFO_PLAYERNAME 172
|
||||
#define TX_INFO_NOSCROLL 173
|
||||
#define TX_BUTTON_OKAY 174
|
||||
#define TX_BUTTON_CANCEL 175
|
||||
|
||||
#define TX_BUTTON_YES 176
|
||||
#define TX_BUTTON_NO 177
|
||||
#define TX_CHOOSEBACKGROUND 178
|
||||
#define TX_BUTTON_PLAY_SUSPEND 179
|
||||
#define TX_BUTTON_PLAY_SETTINGS 180
|
||||
#define TX_BUTTON_PLAY_SAVE 181
|
||||
#define TX_INSERT 182
|
||||
#define TX_BUTTON_DELETELEVEL 183
|
||||
#define TX_DELETELEVEL 184
|
||||
#define TX_BUTTON_NAMELEVEL 185
|
||||
#define TX_NAMELEVEL 186
|
||||
#define TX_NONAME 187
|
||||
#define TX_BUTTON_DESIGN 188
|
||||
#define TX_DESIGNNUMBER 189
|
||||
#define TX_IONAMEPR 190
|
||||
#define TX_FILENAME_WRITELEVEL 191
|
||||
|
||||
#define TX_NEXTFILES 192
|
||||
#define TX_PREVIOUSFILES 193
|
||||
#define TX_FOLDERCONTENT 194
|
||||
#define TX_BUTTON_SINGLEPLAYER 195
|
||||
#define TX_BUTTON_MULTIPLAYER 196
|
||||
#define TX_GAMEPAUSED 197 //stop
|
||||
#define TX_BUTTON_UNDO 198
|
||||
#define TX_DEMO_END1 199
|
||||
#define TX_DEMO_END2 200
|
||||
#define TX_DEMO_END3 201
|
||||
#define TX_DEMO_END4 202
|
||||
#define TX_FULL_END1 203
|
||||
#define TX_FULL_END2 204
|
||||
#define TX_FULL_END3 205
|
||||
#define TX_FULL_END4 206
|
||||
#define TX_BUTTON_CHOOSECOLOR 207
|
||||
|
||||
#define TX_BUTTON_READY 208
|
||||
#define TX_BUTTON_SKILL 209
|
||||
#define TX_SKILL1 210
|
||||
#define TX_SKILL2 211
|
||||
#define TX_BUTTON_DEMO 212
|
||||
#define TX_DEMOREC 213
|
||||
#define TX_DEMOPLAY 214
|
||||
#define TX_BACK_TECHNICAL 215
|
||||
#define TX_BACK_REDLAVA 216
|
||||
#define TX_BACK_STONES 217
|
||||
#define TX_BACK_WOOD 218
|
||||
#define TX_BACK_SLIME2 219
|
||||
#define TX_BACK_CIRCUIT 220
|
||||
#define TX_BACK_SOIL 221
|
||||
#define TX_BACK_STARRYSKY 222
|
||||
#define TX_BACK_GREENERY 223
|
||||
|
||||
#define TX_BACK_CHEESE 224
|
||||
#define TX_BACK_HEX 225
|
||||
#define TX_BACK_DARKSKY 226
|
||||
#define TX_BACK_COLORSPOTS 227
|
||||
#define TX_BACK_PINKMECH 228
|
||||
#define TX_BACK_BLUEMECH 229
|
||||
#define TX_BACK_GREYSKY 230
|
||||
#define TX_BACK_HEAVYCLOUD 231
|
||||
#define TX_BACK_LIGHTCLOUD 232
|
||||
#define TX_BACK_BLUEBARK 233
|
||||
#define TX_BACK_BROWNMARBLE 234
|
||||
#define TX_BACK_REDMARBLE 235
|
||||
#define TX_BACK_VOLCANO 236
|
||||
#define TX_BACK_STRIPESPOTS 237
|
||||
#define TX_BACK_MOSAIC2 238
|
||||
#define TX_MULTIPLAYER 239 //service
|
||||
#define TX_CONNECTIONTYPE 240
|
||||
|
||||
#define TX_MULTIPLAYER2 243 //session
|
||||
#define TX_AVAILABLEGAMES 244
|
||||
|
||||
#define TX_BUTTON_NEWGAME 248
|
||||
#define TX_BUTTON_UPDATELIST 249
|
||||
#define TX_NEWMULTIPLAYERGAME 250
|
||||
#define TX_GAMENAME 251
|
||||
|
||||
#define TX_SETTINGSWITHPLAYERS 253
|
||||
|
||||
#define TX_LEVELNUMBER_MULTIPLAYER 255
|
||||
#define TX_CHATZONE
|
||||
|
||||
#define TX_BUTTON_SAVECURRENTGAME 263
|
||||
#define TX_BUTTON_OPENGAME 264
|
||||
#define TX_BUTTON_CONTINUEGAME 265
|
||||
#define TX_BUTTON_QUITGAME 266
|
||||
#define TX_BUTTON_HELP 267
|
||||
#define TX_AVAILABLECOMMANDS 268 //help
|
||||
#define TX_OPENGAME 269
|
||||
#define TX_SAVECURRENTGAME 270
|
||||
#define TX_LISTOFSAVEDGAMES 271
|
||||
#define TX_SAVE_FREE 272
|
||||
|
||||
#define TX_READY 286
|
||||
|
||||
#define TX_BUTTON_256COLOR_SCENERY 305
|
||||
#define TX_BUTTON_65000COLOR_SCENERY 306
|
||||
|
||||
#define TX_REPEAT_CULTIVE 500
|
||||
#define TX_REPEAT_FLEUR 501
|
||||
#define TX_REPEAT_FLEURQ 502
|
||||
#define TX_REPEAT_FABMINE 503
|
||||
#define TX_REPEAT_FABJEEP 504
|
||||
#define TX_REPEAT_PALIS 505
|
||||
#define TX_REPEAT_PALISQ 506
|
||||
#define TX_REPEAT_PONT 507
|
||||
#define TX_REPEAT_PONTQ 508
|
||||
#define TX_REPEAT_BATEAU 509
|
||||
#define TX_REPEAT_BATEAUQ 510
|
||||
#define TX_REPEAT_FABARMURE 511
|
||||
|
||||
#define TX_DIRECT_N 512
|
||||
#define TX_DIRECT_S 513
|
||||
#define TX_DIRECT_E 514
|
||||
#define TX_DIRECT_O 515
|
||||
|
||||
#define TX_HELP_WALKk 600 // keyboard key
|
||||
#define TX_HELP_WALKj 601 // joystick button
|
||||
#define TX_HELP_WALK 602 // description
|
||||
#define TX_HELP_JUMPk 603
|
||||
#define TX_HELP_JUMPj 604
|
||||
#define TX_HELP_JUMP 605
|
||||
#define TX_HELP_JUMPHIGHk 606
|
||||
#define TX_HELP_JUMPHIGHj 607
|
||||
#define TX_HELP_JUMPHIGH 608
|
||||
#define TX_HELP_JUMPLOWk 609
|
||||
#define TX_HELP_JUMPLOWj 610
|
||||
#define TX_HELP_JUMPLOW 611
|
||||
#define TX_HELP_LOOKUPk 612
|
||||
#define TX_HELP_LOOKUPj 613
|
||||
#define TX_HELP_LOOKUP 614
|
||||
#define TX_HELP_LOOKDOWNk 615
|
||||
#define TX_HELP_LOOKDOWNj 616
|
||||
#define TX_HELP_LOOKDOWN 617
|
||||
#define TX_HELP_FIREk 618
|
||||
#define TX_HELP_FIREj 619
|
||||
#define TX_HELP_FIRE 620
|
||||
#define TX_HELP_RESERVEk 621
|
||||
#define TX_HELP_RESERVEj 622
|
||||
#define TX_HELP_RESERVE 623
|
||||
|
||||
#define IDR_WAVE_BOING 1000
|
||||
#define TX_ERROR_MISC 1000
|
||||
#define IDR_WAVE_BLOW 1001
|
||||
#define TX_ERROR_GROUND 1001
|
||||
#define TX_ERROR_FREE 1002
|
||||
#define TX_ERROR_PONTOP 1003
|
||||
#define TX_ERROR_PONTTERM 1004
|
||||
#define TX_ERROR_TOURISOL 1005
|
||||
#define TX_ERROR_TOUREAU 1006
|
||||
#define TX_ERROR_TELE2 1007
|
||||
|
||||
#define TX_OBJ_BLUPIm 2000
|
||||
#define TX_OBJ_BLUPIf 2001
|
||||
#define TX_OBJ_BLUPI 2002
|
||||
#define TX_OBJ_BATEAU 2003
|
||||
#define TX_OBJ_JEEP 2004
|
||||
#define TX_OBJ_PIEGE 2005
|
||||
#define TX_OBJ_POISON 2006
|
||||
#define TX_OBJ_DYNAMITE 2007
|
||||
#define TX_OBJ_MINE 2008
|
||||
#define TX_OBJ_TOMATE 2009
|
||||
#define TX_OBJ_POTION 2010
|
||||
#define TX_OBJ_PLANCHE 2011
|
||||
#define TX_OBJ_PIERRE 2012
|
||||
#define TX_OBJ_DRAPEAU 2013
|
||||
#define TX_OBJ_FER 2014
|
||||
#define TX_OBJ_FLEUR1 2015
|
||||
|
||||
#define TX_OBJ_FLEUR2 2016
|
||||
#define TX_OBJ_FLEUR3 2017
|
||||
#define TX_OBJ_CABANE 2018
|
||||
#define TX_OBJ_LABO 2019
|
||||
#define TX_OBJ_MINEFER 2020
|
||||
#define TX_OBJ_USINE 2021
|
||||
#define TX_OBJ_TOUR 2022
|
||||
#define TX_OBJ_FEU 2023
|
||||
#define TX_OBJ_ROBOT 2024
|
||||
#define TX_OBJ_TRACKS 2025
|
||||
#define TX_OBJ_BOMBE 2026
|
||||
#define TX_OBJ_ARAIGNEE 2027
|
||||
#define TX_OBJ_VIRUS 2028
|
||||
#define TX_OBJ_ELECTRO 2029
|
||||
#define TX_OBJ_ARBRE 2030
|
||||
#define TX_OBJ_MUR 2031
|
||||
|
||||
#define TX_OBJ_ARBREb 2032
|
||||
#define TX_OBJ_ROC 2033
|
||||
#define TX_OBJ_OEUF 2034
|
||||
#define TX_OBJ_PALISSADE 2035
|
||||
#define TX_OBJ_ENNEMIp 2036
|
||||
#define TX_OBJ_ENNEMI 2037
|
||||
#define TX_OBJ_HERBE 2038
|
||||
#define TX_OBJ_MOUSSE 2039
|
||||
#define TX_OBJ_TERRE 2040
|
||||
#define TX_OBJ_EAU 2041
|
||||
#define TX_OBJ_RIVE 2042
|
||||
#define TX_OBJ_MIXTE 2043
|
||||
#define TX_OBJ_PONT 2044
|
||||
#define TX_OBJ_COUVEUSE 2045
|
||||
#define TX_OBJ_GLACE 2046
|
||||
#define TX_OBJ_MAISON 2047
|
||||
|
||||
#define TX_OBJ_HACHURE 2048
|
||||
#define TX_OBJ_MOUSSEb 2049
|
||||
#define TX_OBJ_BOUQUET1 2050
|
||||
#define TX_OBJ_BOUQUET2 2051
|
||||
#define TX_OBJ_BOUQUET3 2052
|
||||
#define TX_OBJ_DALLE 2053
|
||||
#define TX_OBJ_ENNEMIs 2054
|
||||
#define TX_OBJ_DISCIPLE 2055
|
||||
#define TX_OBJ_METAL 2056
|
||||
#define TX_OBJ_FUSEE 2057
|
||||
#define TX_OBJ_TELEPORTE 2058
|
||||
#define TX_OBJ_ARMURE 2059
|
||||
#define TX_OBJ_DALLESPEC 2060
|
||||
#define TX_OBJ_COUVTELE 2061
|
||||
#define TX_OBJ_BATIMENT 2062
|
||||
#define TX_OBJ_BATENNEMIS 2063
|
||||
|
||||
#define TX_OBJ_MURPAL 2064
|
||||
#define TX_OBJ_OBJET 2065
|
||||
#define TX_OBJ_ARME 2066
|
||||
#define TX_OBJ_VEHICULE 2067
|
||||
#define TX_OBJ_STARTFEU 2068
|
||||
#define TX_OBJ_DELOBJ 2069
|
||||
#define TX_OBJ_DELPERSO 2070
|
||||
#define TX_OBJ_DELFEU 2071
|
||||
#define TX_OBJ_PLANTE 2072
|
||||
#define TX_OBJ_BARENNEMIS 2073
|
||||
|
||||
#define TX_WIN1 3000
|
||||
#define TX_WIN2 3001
|
||||
#define TX_WIN3 3002
|
||||
#define TX_WIN4 3003
|
||||
#define TX_WIN5 3004
|
||||
|
||||
#define TX_LOST1 3100
|
||||
#define TX_LOST2 3101
|
||||
#define TX_LOST3 3102
|
||||
#define TX_LOST4 3103
|
||||
|
||||
#define TX_LOST5 3104
|
||||
|
||||
#define TX_LASTWIN1 3200
|
||||
#define TX_LASTWIN2 3201
|
||||
#define TX_LASTWIN3 3202
|
||||
|
||||
#define IDM_EXIT 40001
|
||||
|
||||
// Next default values for new objects
|
||||
//
|
||||
#ifdef APSTUDIO_INVOKED
|
||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||
#define _APS_NEXT_RESOURCE_VALUE 109
|
||||
#define _APS_NEXT_COMMAND_VALUE 40001
|
||||
#define _APS_NEXT_CONTROL_VALUE 1000
|
||||
#define _APS_NEXT_SYMED_VALUE 101
|
||||
#endif
|
||||
#endif
|
Loading…
x
Reference in New Issue
Block a user