| 1 |
|
| 2 |
#include "params.h" |
| 3 |
#include "floppy_description.h" |
| 4 |
#include "game_enums.h" |
| 5 |
|
| 6 |
.text |
| 7 |
|
| 8 |
_StartGameTextData |
| 9 |
|
| 10 |
#ifdef LANGUAGE_FR |
| 11 |
#pragma osdk replace_characters : é:{ è:} ê:| à:@ î:i |
| 12 |
#endif |
| 13 |
|
| 14 |
// Small feedback messages and prompts |
| 15 |
_StartMessagesAndPrompts |
| 16 |
#ifdef LANGUAGE_FR |
| 17 |
_gTextAskInput .byt "Quels sont vos instructions ?",0 |
| 18 |
_gTextNothingHere .byt "Il n'y a rien d'important ici",0 |
| 19 |
_gTextCanSee .byt "Je vois ",0 |
| 20 |
_gTextScore .byt "Score:",0 |
| 21 |
_gTextHighScoreAskForName .byt "Nouveau top score ! Votre name SVP ?",0 |
| 22 |
_gTextCarryInWhat .byt "Transporte dans quoi ?",0 |
| 23 |
_gTextPetrolEvaporates .byt "Le pétrole s'évapore",0 |
| 24 |
_gTextWaterDrainsAways .byt "L'eau s'écoule",0 |
| 25 |
_gTextClimbUpLadder .byt "Vous grimpez l'échelle",0 |
| 26 |
_gTextClimbDownLadder .byt "Vous descendez l'échelle",0 |
| 27 |
_gTextPositionLadder .byt "Vous mettez l'échelle en place",0 |
| 28 |
_gTextClimbUpRope .byt "Vous grimpez la corde",0 |
| 29 |
_gTextClimbDownRope .byt "Vous descendez la corde",0 |
| 30 |
_gTextAttachRopeToTree .byt "Vous attachez la corde à l'arbre",0 |
| 31 |
_gTextDeadDog .byt "un chien mort",0 |
| 32 |
_gTextDeadThug .byt "un malfaiteur mort",0 |
| 33 |
_gTextFoundSomething .byt "Vous avez trouvé quelque chose",0 |
| 34 |
_gTextDogGrowlingAtYou .byt "un alsacien menacant",0 |
| 35 |
_gTextThugAsleepOnBed .byt "un malfaiteur assoupi sur le lit",0 |
| 36 |
_gTextNotDead .byt "Pas mort",0 // Debugging text |
| 37 |
_gTextDogJumpingAtMe .byt "un chien qui me saute dessus",0 |
| 38 |
_gTextThugShootingAtMe .byt "un malfaiteur qui me tire dessus",0 |
| 39 |
_gTextAGenericWhiteBag .byt "Juste un sac blanc normal",0 |
| 40 |
_gTextThickBookBookmarks .byt "Un livre épais avec des marques",0 |
| 41 |
#else |
| 42 |
_gTextAskInput .byt "What are you going to do now?",0 |
| 43 |
_gTextNothingHere .byt "There is nothing of interest here",0 |
| 44 |
_gTextCanSee .byt "I can see ",0 |
| 45 |
_gTextScore .byt "Score:",0 |
| 46 |
_gTextHighScoreAskForName .byt "New highscore! Your name please?",0 |
| 47 |
_gTextCarryInWhat .byt "Carry it in what?",0 |
| 48 |
_gTextPetrolEvaporates .byt "The petrol evaporates",0 |
| 49 |
_gTextWaterDrainsAways .byt "The water drains away",0 |
| 50 |
_gTextClimbUpLadder .byt "You climb up the ladder",0 |
| 51 |
_gTextClimbDownLadder .byt "You climb down the ladder",0 |
| 52 |
_gTextPositionLadder .byt "You position the ladder properly",0 |
| 53 |
_gTextClimbUpRope .byt "You climb up the rope",0 |
| 54 |
_gTextClimbDownRope .byt "You climb down the rope",0 |
| 55 |
_gTextAttachRopeToTree .byt "You attach the rope to the tree",0 |
| 56 |
_gTextDeadDog .byt "a dead dog",0 |
| 57 |
_gTextDeadThug .byt "a dead thug",0 |
| 58 |
_gTextFoundSomething .byt "You found something interesting",0 |
| 59 |
_gTextDogGrowlingAtYou .byt "an alsatian growling at you",0 |
| 60 |
_gTextThugAsleepOnBed .byt "a thug asleep on the bed",0 |
| 61 |
_gTextNotDead .byt "Not dead",0 // Debugging text |
| 62 |
_gTextDogJumpingAtMe .byt "a dog jumping at me",0 |
| 63 |
_gTextThugShootingAtMe .byt "a thug shooting at me",0 |
| 64 |
_gTextAGenericWhiteBag .byt "It's just a white generic bag",0 |
| 65 |
_gTextThickBookBookmarks .byt "A thick book with some boomarks",0 |
| 66 |
#endif |
| 67 |
_EndMessagesAndPrompts |
| 68 |
|
| 69 |
// Error messages |
| 70 |
_StartErrorMessages |
| 71 |
#ifdef LANGUAGE_FR |
| 72 |
_gTextErrorInvalidDirection .byt "Impossible d'aller par la",0 |
| 73 |
_gTextErrorCantTakeNoSee .byt "Je ne vois pas ca ici",0 |
| 74 |
_gTextErrorAlreadyHaveItem .byt "Vous avez déjà cet objet",0 |
| 75 |
_gTextErrorTooHeavy .byt "C'est trop lourd",0 |
| 76 |
_gTextErrorRidiculous .byt "Ne soyez pas ridicule",0 |
| 77 |
_gTextErrorAlreadyFull .byt "Désolé, c'est déja plein",0 |
| 78 |
_gTextErrorMissingContainer .byt "Vous n'avez pas ce contenant",0 |
| 79 |
_gTextErrorDropNotHave .byt "Impossible, vous ne l'avez pas",0 |
| 80 |
_gTextErrorUnknownItem .byt "Je ne connais pas cet objet",0 |
| 81 |
_gTextErrorItemNotPresent .byt "Cet objet n'est pas présent",0 |
| 82 |
_gTextErrorCannotRead .byt "Je ne peux pas lire ca",0 |
| 83 |
_gTextErrorCannotUseHere .byt "Pas utilisable ici",0 |
| 84 |
_gTextErrorDontKnowUsage .byt "Je ne sais pas l'utiliser",0 |
| 85 |
_gTextErrorCannotAttachRope .byt "Impossible de l'attacher",0 |
| 86 |
_gTextErrorLadderInHole .byt "L'échelle est déja dans le trou",0 |
| 87 |
_gTextErrorCantClimbThat .byt "Je ne sais pas grimper ca",0 |
| 88 |
_gTextErrorNeedPositionned .byt "Ca doit d'abort être en place",0 |
| 89 |
_gTextErrorItsNotHere .byt "Ca n'est pas là",0 |
| 90 |
_gTextErrorAlreadyDead .byt "Déjà mort",0 |
| 91 |
_gTextErrorShouldSaveGirl .byt "Vous êtes censé la sauver",0 |
| 92 |
_gTextErrorShouldSubdue .byt "Il faut d'abord le maitriser",0 |
| 93 |
_gTextErrorAlreadySearched .byt "Vous l'avez déjà fouillé",0 |
| 94 |
_gTextErrorInappropriate .byt "Probablement inapproprié",0 |
| 95 |
_gTextErrorDeadDontMove .byt "Les morts ne bougent pas",0 |
| 96 |
_gTextErrorNothingSpecial .byt "Rien de spécial",0 |
| 97 |
#else |
| 98 |
_gTextErrorInvalidDirection .byt "Impossible to move in that direction",0 |
| 99 |
_gTextErrorCantTakeNoSee .byt "You can only take something you see",0 |
| 100 |
_gTextErrorAlreadyHaveItem .byt "You already have this item",0 |
| 101 |
_gTextErrorTooHeavy .byt "This is too heavy",0 |
| 102 |
_gTextErrorRidiculous .byt "Don't be ridiculous",0 |
| 103 |
_gTextErrorAlreadyFull .byt "Sorry, that's full already",0 |
| 104 |
_gTextErrorMissingContainer .byt "You don't have this container",0 |
| 105 |
_gTextErrorDropNotHave .byt "You can only drop something you have",0 |
| 106 |
_gTextErrorUnknownItem .byt "I do not know what this item is",0 |
| 107 |
_gTextErrorItemNotPresent .byt "This item does not seem to be present",0 |
| 108 |
_gTextErrorCannotRead .byt "I can't read that",0 |
| 109 |
_gTextErrorCannotUseHere .byt "I can't use it here",0 |
| 110 |
_gTextErrorDontKnowUsage .byt "I don't know how to use that",0 |
| 111 |
_gTextErrorCannotAttachRope .byt "You can't attach the rope",0 |
| 112 |
_gTextErrorLadderInHole .byt "The ladder is already in the hole",0 |
| 113 |
_gTextErrorCantClimbThat .byt "I don't know how to climb that",0 |
| 114 |
_gTextErrorNeedPositionned .byt "It needs to be positionned first",0 |
| 115 |
_gTextErrorItsNotHere .byt "It's not here",0 |
| 116 |
_gTextErrorAlreadyDead .byt "Already dead",0 |
| 117 |
_gTextErrorShouldSaveGirl .byt "You are supposed to save her",0 |
| 118 |
_gTextErrorShouldSubdue .byt "I should subdue him first",0 |
| 119 |
_gTextErrorAlreadySearched .byt "You've already frisked him",0 |
| 120 |
_gTextErrorInappropriate .byt "Probably inappropriate",0 |
| 121 |
_gTextErrorDeadDontMove .byt "Dead don't move",0 |
| 122 |
_gTextErrorNothingSpecial .byt "Nothing special",0 |
| 123 |
#endif |
| 124 |
_EndErrorMessages |
| 125 |
|
| 126 |
|
| 127 |
// Places |
| 128 |
_StartLocationNames |
| 129 |
#ifdef LANGUAGE_FR |
| 130 |
// 0 1 2 3 |
| 131 |
// 0123456789012345678901234567890123456789 |
| 132 |
_gTextLocationMarketPlace .byt "Vous êtes sur la place du marché",0 |
| 133 |
_gTextLocationDarkAlley .byt "Vous êtes dans une allée sombre",0 |
| 134 |
_gTextLocationRoad .byt "Une longue route s'étend devant vous",0 |
| 135 |
|
| 136 |
_gTextLocationDarkTunel .byt "Vous êtes dans un tunnel humide",0 |
| 137 |
_gTextLocationMainStreet .byt "Vous êtes dans la rue principale",0 |
| 138 |
_gTextLocationNarrowPath .byt "Vous êtes sur un chemin étroit",0 |
| 139 |
|
| 140 |
_gTextLocationInThePit .byt "Vous êtes au fond d'un trou",0 |
| 141 |
_gTextLocationOldWell .byt "Vous êtes prês d'un vieux puit",0 |
| 142 |
_gTextLocationWoodedAvenue .byt "Vous êtes dans une allée arbroisée",0 |
| 143 |
|
| 144 |
_gTextLocationGravelDrive .byt "Vous êtes sur un passage gravilloné",0 |
| 145 |
_gTextLocationTarmacArea .byt "Vous êtes sur une zone asphaltée",0 |
| 146 |
_gTextLocationZenGarden .byt "Vous êtes dans un jarding zen relaxant",0 |
| 147 |
|
| 148 |
_gTextLocationFrontLawn .byt "Vous êtes sur une large pelouse",0 |
| 149 |
_gTextLocationGreenHouse .byt "Vous êtes dans une petite serre",0 |
| 150 |
_gTextLocationTennisCourt .byt "Vous êtes sur un cours de tennis",0 |
| 151 |
|
| 152 |
_gTextLocationVegetableGarden .byt "Vous êtes dans un jardin potagé",0 |
| 153 |
_gTextLocationFishPond .byt "Vous êtes près d'un bac a poisson",0 |
| 154 |
_gTextLocationTiledPatio .byt "Vous êtes sur un patio carellé",0 |
| 155 |
|
| 156 |
_gTextLocationAppleOrchard .byt "Vous êtes dans une pommeraie",0 |
| 157 |
_gTextLocationDarkerCellar .byt "Cette pièce est encore plus sombre",0 |
| 158 |
_gTextLocationCellar .byt "Une cave frigide et humide",0 |
| 159 |
|
| 160 |
_gTextLocationNarrowStaircase .byt "Vous êtes dans un escalier étroit",0 |
| 161 |
_gTextLocationEntranceLounge .byt "Vous êtes dans un salon",0 |
| 162 |
_gTextLocationEntranceHall .byt "Vous êtes dans un hall imposant",0 |
| 163 |
|
| 164 |
_gTextLocationLibrary .byt "Probablement une bibliothèque",0 |
| 165 |
_gTextLocationDiningRoom .byt "Apparement une salle a manger",0 |
| 166 |
_gTextLocationStaircase .byt "Vous êtes dans un large escalier",0 |
| 167 |
|
| 168 |
_gTextLocationGamesRoom .byt "La salle de jeux",0 |
| 169 |
_gTextLocationSunLounge .byt "Le solarium",0 |
| 170 |
_gTextLocationKitchen .byt "Visiblement la cuisine",0 |
| 171 |
|
| 172 |
_gTextLocationNarrowPassage .byt "Vous êtes dans un passage étroit",0 |
| 173 |
_gTextLocationGuestBedroom .byt "Une chambre d'amis",0 |
| 174 |
_gTextLocationChildBedroom .byt "La chambre d'un enfant",0 |
| 175 |
|
| 176 |
_gTextLocationMasterBedRoom .byt "La chambre principale",0 |
| 177 |
_gTextLocationShowerRoom .byt "Une salle de bain carellée",0 |
| 178 |
_gTextLocationTinyToilet .byt "Des petites toilettes",0 |
| 179 |
|
| 180 |
_gTextLocationEastGallery .byt "La gallerie est",0 |
| 181 |
_gTextLocationBoxRoom .byt "Une petite loge",0 |
| 182 |
_gTextLocationPadlockedRoom .byt "Une porte blindée cadenassée",0 |
| 183 |
|
| 184 |
_gTextLocationClassyBathRoom .byt "Une salle de bain luxieuse",0 |
| 185 |
_gTextLocationWestGallery .byt "La gallerie ouest",0 |
| 186 |
_gTextLocationMainLanding .byt "Vous êtes sur le palier principal",0 |
| 187 |
|
| 188 |
_gTextLocationOutsidePit .byt "En dehors d'un trou profond",0 |
| 189 |
|
| 190 |
_gTextLocationGirlRoomOpenned .byt "La pièce avec la fille (ouverte)",0 |
| 191 |
#else |
| 192 |
_gTextLocationMarketPlace .byt "You are in a deserted market square",0 |
| 193 |
_gTextLocationDarkAlley .byt "You are in a dark, seedy alley",0 |
| 194 |
_gTextLocationRoad .byt "A long road stretches ahead of you",0 |
| 195 |
|
| 196 |
_gTextLocationDarkTunel .byt "You are in a dark, damp tunnel",0 |
| 197 |
_gTextLocationMainStreet .byt "You are on the main street",0 |
| 198 |
_gTextLocationNarrowPath .byt "You are on a narrow path",0 |
| 199 |
|
| 200 |
_gTextLocationInThePit .byt "You are insided a deep pit",0 |
| 201 |
_gTextLocationOldWell .byt "You are near to an old-fashioned well",0 |
| 202 |
_gTextLocationWoodedAvenue .byt "You are in a wooded avenue",0 |
| 203 |
|
| 204 |
_gTextLocationGravelDrive .byt "You are on a wide gravel drive",0 |
| 205 |
_gTextLocationTarmacArea .byt "You are in an open area of tarmac",0 |
| 206 |
_gTextLocationZenGarden .byt "You are in a relaxing zen garden",0 |
| 207 |
|
| 208 |
_gTextLocationFrontLawn .byt "You are on a huge area of lawn",0 |
| 209 |
_gTextLocationGreenHouse .byt "You are in a small greenhouse",0 |
| 210 |
_gTextLocationTennisCourt .byt "You are on a lawn tennis court",0 |
| 211 |
|
| 212 |
_gTextLocationVegetableGarden .byt "You are in a vegetable plot",0 |
| 213 |
_gTextLocationFishPond .byt "You are standing by a fish pond",0 |
| 214 |
_gTextLocationTiledPatio .byt "You are on a tiled patio",0 |
| 215 |
|
| 216 |
_gTextLocationAppleOrchard .byt "You are in an apple orchard",0 |
| 217 |
_gTextLocationDarkerCellar .byt "This room is even darker than the last",0 |
| 218 |
_gTextLocationCellar .byt "This is a cold, damp cellar",0 |
| 219 |
|
| 220 |
_gTextLocationNarrowStaircase .byt "You are on some gloomy, narrow steps",0 |
| 221 |
_gTextLocationEntranceLounge .byt "You are in the lounge",0 |
| 222 |
_gTextLocationEntranceHall .byt "You are in an imposing entrance hall",0 |
| 223 |
|
| 224 |
_gTextLocationLibrary .byt "This looks like a library",0 |
| 225 |
_gTextLocationDiningRoom .byt "A dining room, or so it appears",0 |
| 226 |
_gTextLocationStaircase .byt "You are on a sweeping staircase",0 |
| 227 |
|
| 228 |
_gTextLocationGamesRoom .byt "This looks like a games room",0 |
| 229 |
_gTextLocationSunLounge .byt "You find yourself in a sun-lounge",0 |
| 230 |
_gTextLocationKitchen .byt "This is obviously the kitchen",0 |
| 231 |
|
| 232 |
_gTextLocationNarrowPassage .byt "You are in a narrow passage",0 |
| 233 |
_gTextLocationGuestBedroom .byt "This seems to be a guest bedroom",0 |
| 234 |
_gTextLocationChildBedroom .byt "This is a child's bedroom",0 |
| 235 |
|
| 236 |
_gTextLocationMasterBedRoom .byt "This must be the master bedroom",0 |
| 237 |
_gTextLocationShowerRoom .byt "You are in a tiled shower-room",0 |
| 238 |
_gTextLocationTinyToilet .byt "This is a tiny toilet",0 |
| 239 |
|
| 240 |
_gTextLocationEastGallery .byt "You have found the east gallery",0 |
| 241 |
_gTextLocationBoxRoom .byt "This is a small box-room",0 |
| 242 |
_gTextLocationPadlockedRoom .byt "You see a padlocked steel-plated door",0 |
| 243 |
|
| 244 |
_gTextLocationClassyBathRoom .byt "You are in an ornate bathroom",0 |
| 245 |
_gTextLocationWestGallery .byt "This is the west gallery",0 |
| 246 |
_gTextLocationMainLanding .byt "You are on the main landing",0 |
| 247 |
|
| 248 |
_gTextLocationOutsidePit .byt "Outside a deep pit",0 |
| 249 |
|
| 250 |
_gTextLocationGirlRoomOpenned .byt "The girl room (openned lock)",0 |
| 251 |
#endif |
| 252 |
_EndLocationNames |
| 253 |
|
| 254 |
// Items |
| 255 |
_StartItemNames |
| 256 |
#ifdef LANGUAGE_FR |
| 257 |
// Containers |
| 258 |
_gTextItemTobaccoTin .byt "une tabatière vide",0 |
| 259 |
_gTextItemBucket .byt "un seau en bois",0 |
| 260 |
_gTextItemCardboardBox .byt "une boite en carton",0 |
| 261 |
_gTextItemFishingNet .byt "un filet de pêche",0 |
| 262 |
_gTextItemPlasticBag .byt "un sac en plastique",0 |
| 263 |
_gTextItemSmallBottle .byt "une petite bouteille",0 |
| 264 |
// Items requiring containers |
| 265 |
_gTextItemBlackDust .byt "de la poudre noire",0 |
| 266 |
_gTextItemYellowPowder .byt "poudre jaune granuleuse",0 |
| 267 |
_gTextItemPetrol .byt "du pétrole",0 |
| 268 |
_gTextItemWater .byt "de l'eau",0 |
| 269 |
// Normal items |
| 270 |
_gTextItemLockedPanel .byt "un paneau mural verouillé",0 |
| 271 |
_gTextItemOpenPanel .byt "un paneau mural ouvert",0 |
| 272 |
_gTextItemSmallHoleInDoor .byt "un petit trou dans la porte",0 |
| 273 |
_gTextItemBrokenWindow .byt "une vitre brisée",0 |
| 274 |
_gTextItemLargeDove .byt "une grosse colombe",0 |
| 275 |
_gTextItemTwine .byt "un peu de ficelle",0 |
| 276 |
_gTextItemSilverKnife .byt "un coueau en argent",0 |
| 277 |
_gTextItemLadder .byt "une échelle",0 |
| 278 |
_gTextItemAbandonedCar .byt "une voiture abandonnée",0 |
| 279 |
_gTextItemAlsatianDog .byt "un alsacien qui grogne",0 |
| 280 |
_gTextItemMeat .byt "un morceau de viande",0 |
| 281 |
_gTextItemBread .byt "du pain complet",0 |
| 282 |
_gTextItemRollOfTape .byt "un rouleau de bande adhésive",0 |
| 283 |
_gTextItemChemistryBook .byt "un livre de chimie",0 |
| 284 |
_gTextItemBoxOfMatches .byt "une boite d'allumettes",0 |
| 285 |
_gTextItemSnookerCue .byt "une queue de billard",0 |
| 286 |
_gTextItemThug .byt "un voyou endormi sur le lit",0 |
| 287 |
_gTextItemHeavySafe .byt "un gros coffre fort",0 |
| 288 |
_gTextItemHandWrittenNote .byt "une note manuscripte",0 |
| 289 |
_gTextItemRope .byt "une longueur de corde",0 |
| 290 |
_gTextItemRopeHangingFromWindow .byt "une core qui pend de la fenêtre",0 |
| 291 |
_gTextItemRollOfToiletPaper .byt "un rouleau de papier toilette",0 |
| 292 |
_gTextItemHosePipe .byt "un tuyau d'arrosage",0 |
| 293 |
_gTextItemOpenSafe .byt "un coffre fort ouvert",0 |
| 294 |
_gTextItemBrokenGlass .byt "des morceaux de glace",0 |
| 295 |
_gTextItemAcidBurn .byt "une brulure d'acide",0 |
| 296 |
_gTextItemYoungGirl .byt "une jeune fille",0 |
| 297 |
_gTextItemFuse .byt "un fusible",0 |
| 298 |
_gTextItemGunPowder .byt "de la poudre à cannon",0 |
| 299 |
_gTextItemKeys .byt "un jeu de clefs",0 |
| 300 |
_gTextItemNewspaper .byt "un journal",0 |
| 301 |
_gTextItemBomb .byt "une bombe",0 |
| 302 |
_gTextItemPistol .byt "un pistolet",0 |
| 303 |
_gTextItemBullets .byt "trois balles de calibre .38",0 |
| 304 |
_gTextItemYoungGirlOnFloor .byt "une jeunne fille attachée au sol",0 |
| 305 |
_gTextItemChemistryRecipes .byt "des formules de chimie",0 |
| 306 |
_gTextItemUnitedKingdomMap .byt "une carte du royaume uni",0 |
| 307 |
_gTextItemLadderInTheHole .byt "une échelle dans un trou",0 |
| 308 |
_gTextItemeRopeAttachedToATree .byt "une corde attachée à un arbre",0 |
| 309 |
#else |
| 310 |
// Containers |
| 311 |
_gTextItemTobaccoTin .byt "an empty tobacco tin",0 |
| 312 |
_gTextItemBucket .byt "a wooden bucket",0 |
| 313 |
_gTextItemCardboardBox .byt "a cardboard box",0 |
| 314 |
_gTextItemFishingNet .byt "a fishing net",0 |
| 315 |
_gTextItemPlasticBag .byt "a plastic bag",0 |
| 316 |
_gTextItemSmallBottle .byt "a small bottle",0 |
| 317 |
// Items requiring containers |
| 318 |
_gTextItemBlackDust .byt "black dust",0 |
| 319 |
_gTextItemYellowPowder .byt "gritty yellow powder",0 |
| 320 |
_gTextItemPetrol .byt "some petrol",0 |
| 321 |
_gTextItemWater .byt "some water",0 |
| 322 |
// Normal items |
| 323 |
_gTextItemLockedPanel .byt "a locked panel on the wall",0 |
| 324 |
_gTextItemOpenPanel .byt "an open panel on wall",0 |
| 325 |
_gTextItemSmallHoleInDoor .byt "a small hole in the door",0 |
| 326 |
_gTextItemBrokenWindow .byt "the window is broken",0 |
| 327 |
_gTextItemLargeDove .byt "a large dove",0 |
| 328 |
_gTextItemTwine .byt "some twine",0 |
| 329 |
_gTextItemSilverKnife .byt "a silver knife",0 |
| 330 |
_gTextItemLadder .byt "a ladder",0 |
| 331 |
_gTextItemAbandonedCar .byt "an abandoned car",0 |
| 332 |
_gTextItemAlsatianDog .byt "an alsatian growling at you",0 |
| 333 |
_gTextItemMeat .byt "a joint of meat",0 |
| 334 |
_gTextItemBread .byt "some brown bread",0 |
| 335 |
_gTextItemRollOfTape .byt "a roll of sticky tape",0 |
| 336 |
_gTextItemChemistryBook .byt "a chemistry book",0 |
| 337 |
_gTextItemBoxOfMatches .byt "a box of matches",0 |
| 338 |
_gTextItemSnookerCue .byt "a snooker cue",0 |
| 339 |
_gTextItemThug .byt "a thug asleep on the bed",0 |
| 340 |
_gTextItemHeavySafe .byt "a heavy safe",0 |
| 341 |
_gTextItemHandWrittenNote .byt "a hand written note",0 |
| 342 |
_gTextItemRope .byt "a length of rope",0 |
| 343 |
_gTextItemRopeHangingFromWindow .byt "a rope hangs from the window",0 |
| 344 |
_gTextItemRollOfToiletPaper .byt "a roll of toilet tissue",0 |
| 345 |
_gTextItemHosePipe .byt "a hose-pipe",0 |
| 346 |
_gTextItemOpenSafe .byt "an open safe",0 |
| 347 |
_gTextItemBrokenGlass .byt "broken glass",0 |
| 348 |
_gTextItemAcidBurn .byt "an acid burn",0 |
| 349 |
_gTextItemYoungGirl .byt "a young girl",0 |
| 350 |
_gTextItemFuse .byt "a fuse",0 |
| 351 |
_gTextItemGunPowder .byt "some gunpowder",0 |
| 352 |
_gTextItemKeys .byt "a set of keys",0 |
| 353 |
_gTextItemNewspaper .byt "a newspaper",0 |
| 354 |
_gTextItemBomb .byt "a bomb",0 |
| 355 |
_gTextItemPistol .byt "a pistol",0 |
| 356 |
_gTextItemBullets .byt "three .38 bullets",0 |
| 357 |
_gTextItemYoungGirlOnFloor .byt "a young girl tied up on the floor",0 |
| 358 |
_gTextItemChemistryRecipes .byt "a couple chemistry recipes",0 |
| 359 |
_gTextItemUnitedKingdomMap .byt "a map of the United Kingdom",0 |
| 360 |
_gTextItemLadderInTheHole .byt "a ladder in a hole",0 |
| 361 |
_gTextItemeRopeAttachedToATree .byt "a rope attached to a tree",0 |
| 362 |
#endif |
| 363 |
_EndItemNames |
| 364 |
|
| 365 |
|
| 366 |
|
| 367 |
// Scene descriptions |
| 368 |
_StartSceneScripts |
| 369 |
_gDescriptionTeenagerRoom .byt "Teenager room?",0 |
| 370 |
|
| 371 |
_gDescriptionNone |
| 372 |
END |
| 373 |
|
| 374 |
_gDescriptionDarkTunel |
| 375 |
WAIT(DELAY_FIRST_BUBBLE) |
| 376 |
.byt COMMAND_BUBBLE,2,64 |
| 377 |
.byt 4,4,0,"Like most tunnels: dark, damp,",0 |
| 378 |
.byt 4,13,1,"and somewhat scary.",0 |
| 379 |
END |
| 380 |
|
| 381 |
_gDescriptionMarketPlace |
| 382 |
#if 1 // Debugging/testing code |
| 383 |
WAIT(1) |
| 384 |
.byt COMMAND_FILL_RECTANGLE,10,10,50,50,127 |
| 385 |
.byt COMMAND_FILL_RECTANGLE,20,20,20,20,0 |
| 386 |
.byt COMMAND_TEXT,10,10,64,"TEST!",0 |
| 387 |
;.byt COMMAND_STOP_BREAKPOINT |
| 388 |
WAIT(255) |
| 389 |
#endif |
| 390 |
WAIT(DELAY_FIRST_BUBBLE) |
| 391 |
.byt COMMAND_BUBBLE,2,64 |
| 392 |
#ifdef LANGUAGE_FR |
| 393 |
.byt 4,100,0,"La place du marché",0 |
| 394 |
.byt 4,106,4,"est désertée",0 |
| 395 |
#else |
| 396 |
.byt 4,100,0,"The market place",0 |
| 397 |
.byt 4,106,4,"is deserted",0 |
| 398 |
#endif |
| 399 |
END |
| 400 |
|
| 401 |
|
| 402 |
_gDescriptionDarkAlley |
| 403 |
WAIT(DELAY_FIRST_BUBBLE) |
| 404 |
.byt COMMAND_BUBBLE,2,64 |
| 405 |
#ifdef LANGUAGE_FR |
| 406 |
.byt 153,85,0,"Rats, graffittis,",0 |
| 407 |
.byt 136,98,0,"et seringues.",0 |
| 408 |
#else |
| 409 |
.byt 153,85,0,"Rats, graffitti,",0 |
| 410 |
.byt 136,98,0,"and used syringes.",0 |
| 411 |
#endif |
| 412 |
END |
| 413 |
|
| 414 |
_gDescriptionRoad |
| 415 |
WAIT(DELAY_FIRST_BUBBLE) |
| 416 |
.byt COMMAND_BUBBLE,2,64 |
| 417 |
.byt 4,100,0,"All roads lead...",0 |
| 418 |
.byt 4,106,4,"...somewhere?",0 |
| 419 |
END |
| 420 |
|
| 421 |
_gDescriptionMainStreet |
| 422 |
WAIT(DELAY_FIRST_BUBBLE) |
| 423 |
.byt COMMAND_BUBBLE,2,64 |
| 424 |
.byt 4,4,0,"A good old",0 |
| 425 |
.byt 4,16,0,"medieval church",0 |
| 426 |
END |
| 427 |
|
| 428 |
_gDescriptionNarrowPath |
| 429 |
WAIT(DELAY_FIRST_BUBBLE) |
| 430 |
.byt COMMAND_BUBBLE,2,64 |
| 431 |
.byt 130,5,0,"Are these the open",0 |
| 432 |
.byt 109,17,0,"flood gates of heaven?",0 |
| 433 |
END |
| 434 |
|
| 435 |
_gDescriptionInThePit |
| 436 |
.( |
| 437 |
JUMP_IF_TRUE(has_ladder,CHECK_ITEM_LOCATION(e_ITEM_Ladder,e_LOCATION_INVENTORY)) |
| 438 |
JUMP_IF_TRUE(draw_ladder,CHECK_ITEM_LOCATION(e_ITEM_Ladder,e_LOCATION_INSIDEHOLE)) |
| 439 |
JUMP_IF_TRUE(rope_attached_to_tree,CHECK_ITEM_LOCATION(e_ITEM_RopeAttachedToATree,e_LOCATION_OUTSIDE_PIT)) |
| 440 |
JUMP(cannot_escape_pit); ; The player has no way to escape the pit |
| 441 |
|
| 442 |
draw_ladder |
| 443 |
DRAW_BITMAP(LOADER_SPRITE_ITEMS,BLOCK_SIZE(4,50),40,_SecondImageBuffer+36,_ImageBuffer+(40*40)+19) ; Draw the ladder |
| 444 |
has_ladder |
| 445 |
END |
| 446 |
|
| 447 |
rope_attached_to_tree |
| 448 |
DRAW_BITMAP(LOADER_SPRITE_ITEMS,BLOCK_SIZE(3,52),40,_SecondImageBuffer+(40*37)+51,_ImageBuffer+(40*39)+19) ; Draw the rope |
| 449 |
END |
| 450 |
|
| 451 |
cannot_escape_pit |
| 452 |
WAIT(50*2) |
| 453 |
.byt COMMAND_BUBBLE,1,127 |
| 454 |
.byt 6,8,0,"It did not look",0 |
| 455 |
WAIT(50) |
| 456 |
.byt COMMAND_BUBBLE,1,127 |
| 457 |
.byt 176,42,0,"that deep",0 |
| 458 |
WAIT(50) |
| 459 |
.byt COMMAND_BUBBLE,1,127 |
| 460 |
.byt 82,94,0,"from outside",0 |
| 461 |
|
| 462 |
WAIT(50*2) ; Wait a couple seconds for dramatic effect |
| 463 |
|
| 464 |
JUMP(_gDescriptionGameOverLost); ; Draw the 'The End' logo |
| 465 |
.) |
| 466 |
|
| 467 |
|
| 468 |
_gDescriptionOutsidePit |
| 469 |
.( |
| 470 |
JUMP_IF_TRUE(ladder_in_hole,CHECK_ITEM_LOCATION(e_ITEM_Ladder,e_LOCATION_INSIDEHOLE)) |
| 471 |
JUMP_IF_TRUE(rope_attached_to_tree,CHECK_ITEM_LOCATION(e_ITEM_RopeAttachedToATree,e_LOCATION_OUTSIDE_PIT)) |
| 472 |
JUMP(digging_for_gold); ; Generic message if the ladder or rope are not present |
| 473 |
|
| 474 |
ladder_in_hole |
| 475 |
DRAW_BITMAP(LOADER_SPRITE_ITEMS,BLOCK_SIZE(4,34),40,_SecondImageBuffer+25,_ImageBuffer+(40*53)+20) ; Draw the ladder |
| 476 |
END |
| 477 |
|
| 478 |
rope_attached_to_tree |
| 479 |
DRAW_BITMAP(LOADER_SPRITE_ITEMS,BLOCK_SIZE(5,49),40,_SecondImageBuffer+30,_ImageBuffer+(40*38)+21) ; Draw the rope |
| 480 |
END |
| 481 |
|
| 482 |
digging_for_gold |
| 483 |
WAIT(DELAY_FIRST_BUBBLE) |
| 484 |
.byt COMMAND_BUBBLE,2,64 |
| 485 |
.byt 5,94,0,"Are they digging",0 |
| 486 |
.byt 5,103,4,"for gold?",0 |
| 487 |
END |
| 488 |
.) |
| 489 |
|
| 490 |
_gDescriptionTarmacArea |
| 491 |
WAIT(DELAY_FIRST_BUBBLE) |
| 492 |
.byt COMMAND_BUBBLE,2,64 |
| 493 |
.byt 149,5,0,"Ashes to Ashes",0 |
| 494 |
.byt 152,15,0,"Rust to Rust...",0 |
| 495 |
END |
| 496 |
|
| 497 |
_gDescriptionOldWell |
| 498 |
; Is the Bucket near the Well? |
| 499 |
JUMP_IF_FALSE(no_bucket,CHECK_ITEM_LOCATION(e_ITEM_Bucket,e_LOCATION_WELL)) |
| 500 |
DRAW_BITMAP(LOADER_SPRITE_ITEMS,BLOCK_SIZE(6,35),40,_SecondImageBuffer,_ImageBuffer+(40*86)+24) ; Draw the Bucket |
| 501 |
no_bucket |
| 502 |
|
| 503 |
; Is the Rope near the Well? |
| 504 |
JUMP_IF_FALSE(no_rope,CHECK_ITEM_LOCATION(e_ITEM_Rope,e_LOCATION_WELL)) |
| 505 |
DRAW_BITMAP(LOADER_SPRITE_ITEMS,BLOCK_SIZE(7,44),40,_SecondImageBuffer+7,_ImageBuffer+(40*35)+26) ; Draw the Rope |
| 506 |
no_rope |
| 507 |
|
| 508 |
; Then show the messages |
| 509 |
WAIT(DELAY_FIRST_BUBBLE) |
| 510 |
.byt COMMAND_BUBBLE,2,64 |
| 511 |
.byt 111,5,0,"This well looks as old",0 |
| 512 |
.byt 158,16,0,"as the church",0 |
| 513 |
END |
| 514 |
|
| 515 |
_gDescriptionWoodedAvenue |
| 516 |
WAIT(DELAY_FIRST_BUBBLE) |
| 517 |
.byt COMMAND_BUBBLE,2,64 |
| 518 |
.byt 4,4,0,"These trees have probably",0 |
| 519 |
.byt 4,14,1,"witnessed many things",0 |
| 520 |
END |
| 521 |
|
| 522 |
_gDescriptionGravelDrive |
| 523 |
WAIT(DELAY_FIRST_BUBBLE) |
| 524 |
.byt COMMAND_BUBBLE,3,64 |
| 525 |
.byt 127,86,0,"Kind of impressive",0 |
| 526 |
.byt 143,97,0,"when seen from",0 |
| 527 |
.byt 182,107,0,"far away",0 |
| 528 |
END |
| 529 |
|
| 530 |
_gDescriptionZenGarden |
| 531 |
WAIT(DELAY_FIRST_BUBBLE) |
| 532 |
.byt COMMAND_BUBBLE,2,64 |
| 533 |
.byt 4,4,0,"A Japanese Zen Garden?",0 |
| 534 |
.byt 4,15,1,"In England?",0 |
| 535 |
END |
| 536 |
|
| 537 |
_gDescriptionFrontLawn |
| 538 |
WAIT(DELAY_FIRST_BUBBLE) |
| 539 |
.byt COMMAND_BUBBLE,2,64 |
| 540 |
.byt 5,5,0,"The perfect home",0 |
| 541 |
.byt 5,15,1,"for egomaniacs",0 |
| 542 |
END |
| 543 |
|
| 544 |
_gDescriptionGreenHouse |
| 545 |
WAIT(DELAY_FIRST_BUBBLE) |
| 546 |
.byt COMMAND_BUBBLE,2,64 |
| 547 |
.byt 4,96,0,"Obviously for",0 |
| 548 |
.byt 4,107,1,"Therapeutic use",34,0 |
| 549 |
END |
| 550 |
|
| 551 |
_gDescriptionTennisCourt |
| 552 |
WAIT(DELAY_FIRST_BUBBLE) |
| 553 |
.byt COMMAND_BUBBLE,2,64 |
| 554 |
.byt 4,4,0,"That's more like it:",0 |
| 555 |
.byt 4,15,0,"a proper lawn tennis court",0 |
| 556 |
END |
| 557 |
|
| 558 |
_gDescriptionVegetableGarden |
| 559 |
WAIT(DELAY_FIRST_BUBBLE) |
| 560 |
.byt COMMAND_BUBBLE,2,64 |
| 561 |
.byt 134,5,0,"Not the best spot",0 |
| 562 |
.byt 136,15,1,"to grow tomatoes",0 |
| 563 |
END |
| 564 |
|
| 565 |
_gDescriptionFishPond |
| 566 |
WAIT(DELAY_FIRST_BUBBLE) |
| 567 |
.byt COMMAND_BUBBLE,2,64 |
| 568 |
.byt 5,5,0,"Some of these fishes",0 |
| 569 |
.byt 5,17,0,"are surprinsingly big",0 |
| 570 |
END |
| 571 |
|
| 572 |
_gDescriptionTiledPatio |
| 573 |
WAIT(DELAY_FIRST_BUBBLE) |
| 574 |
.byt COMMAND_BUBBLE,2,64 |
| 575 |
.byt 93,5,0,"The house's back entrance",0 |
| 576 |
.byt 110,15,0,"is accessible from here",0 |
| 577 |
END |
| 578 |
|
| 579 |
_gDescriptionAppleOrchard |
| 580 |
WAIT(DELAY_FIRST_BUBBLE) |
| 581 |
.byt COMMAND_BUBBLE,2,64 |
| 582 |
.byt 5,5,0,"The best kind of apples:",0 |
| 583 |
.byt 5,17,0,"sweet, crunchy and juicy",0 |
| 584 |
END |
| 585 |
|
| 586 |
_gDescriptionEntranceHall |
| 587 |
; Is there a dog in the entrance |
| 588 |
JUMP_IF_FALSE(end_dog,CHECK_ITEM_LOCATION(e_ITEM_AlsatianDog,e_LOCATION_ENTRANCEHALL)) |
| 589 |
|
| 590 |
; Is the dog dead? |
| 591 |
JUMP_IF_FALSE(dog_alive,CHECK_ITEM_FLAG(e_ITEM_AlsatianDog,ITEM_FLAG_DEAD)) |
| 592 |
; Draw the dead dog |
| 593 |
DRAW_BITMAP(LOADER_SPRITE_DOG,BLOCK_SIZE(12,27),40,_SecondImageBuffer,_ImageBuffer+(40*90)+27) |
| 594 |
; Text describing the dead dog |
| 595 |
WAIT(DELAY_FIRST_BUBBLE) |
| 596 |
.byt COMMAND_BUBBLE,2,64 |
| 597 |
.byt 5,5,0,"Let's call that a ",0 |
| 598 |
.byt 5,17,0,"Collateral Damage",34,0 |
| 599 |
END |
| 600 |
|
| 601 |
dog_alive |
| 602 |
; Draw the Growling dog |
| 603 |
DRAW_BITMAP(LOADER_SPRITE_DOG,BLOCK_SIZE(13,66),40,_SecondImageBuffer+(40*61)+0,_ImageBuffer+(40*56)+26) |
| 604 |
; Text describing the growling dog |
| 605 |
WAIT(DELAY_FIRST_BUBBLE) |
| 606 |
.byt COMMAND_BUBBLE,2,64 |
| 607 |
.byt 5,5,0,"Of course there is a dog.",0 |
| 608 |
.byt 5,19,0,"There's always a dog.",0 |
| 609 |
END |
| 610 |
|
| 611 |
end_dog |
| 612 |
; Some generic message in case the dog is not there (probably not displayed right now) |
| 613 |
WAIT(DELAY_FIRST_BUBBLE) |
| 614 |
.byt COMMAND_BUBBLE,2,64 |
| 615 |
.byt 124,5,0,"Quite an impressive",0 |
| 616 |
.byt 187,17,0,"staircase",0 |
| 617 |
END |
| 618 |
|
| 619 |
_gDescriptionDogAttacking |
| 620 |
DRAW_BITMAP(LOADER_SPRITE_DOG,BLOCK_SIZE(21,128),40,_SecondImageBuffer+14,_ImageBuffer+(40*0)+10) ; Draw the attacking dog |
| 621 |
; |
| 622 |
WAIT(DELAY_FIRST_BUBBLE) |
| 623 |
.byt COMMAND_BUBBLE,1,64 |
| 624 |
.byt 5,108,0,"Oops...",0 |
| 625 |
WAIT(50*2) ; Wait a couple seconds |
| 626 |
JUMP(_gDescriptionGameOverLost) ; Game Over |
| 627 |
|
| 628 |
|
| 629 |
|
| 630 |
_gDescriptionLibrary |
| 631 |
WAIT(DELAY_FIRST_BUBBLE) |
| 632 |
.byt COMMAND_BUBBLE,2,64 |
| 633 |
.byt 5,86,0,"Books, fireplace, and",0 |
| 634 |
.byt 5,97,0,"a comfortable chair",0 |
| 635 |
END |
| 636 |
|
| 637 |
_gDescriptionNarrowPassage |
| 638 |
WAIT(DELAY_FIRST_BUBBLE) |
| 639 |
.byt COMMAND_BUBBLE,3,127 |
| 640 |
.byt 5,48,0,"Either they love dark",0 |
| 641 |
.byt 12,68,0,"or they forgot to",0 |
| 642 |
.byt 37,90,0,"pay their",0 |
| 643 |
|
| 644 |
.byt COMMAND_BUBBLE,1,64 |
| 645 |
.byt 75,110,0,"bills",0 |
| 646 |
END |
| 647 |
|
| 648 |
_gDescriptionEntranceLounge |
| 649 |
WAIT(DELAY_FIRST_BUBBLE) |
| 650 |
.byt COMMAND_BUBBLE,2,64 |
| 651 |
.byt 5,5,0,"Looks like someone",0 |
| 652 |
.byt 5,15,0,"had fun",0 |
| 653 |
END |
| 654 |
|
| 655 |
_gDescriptionDiningRoom |
| 656 |
WAIT(DELAY_FIRST_BUBBLE) |
| 657 |
.byt COMMAND_BUBBLE,2,64 |
| 658 |
.byt 5,95,0,"Two plates...",0 |
| 659 |
.byt 5,107,0,"...good to know",0 |
| 660 |
END |
| 661 |
|
| 662 |
_gDescriptionGamesRoom |
| 663 |
WAIT(DELAY_FIRST_BUBBLE) |
| 664 |
.byt COMMAND_BUBBLE,2,64 |
| 665 |
.byt 142,5,0,"Top of the range",0 |
| 666 |
.byt 164,16,0,"video system",0 |
| 667 |
|
| 668 |
WAIT(50) |
| 669 |
|
| 670 |
.byt COMMAND_BUBBLE,1,64 |
| 671 |
.byt 175,40,0,"Impressive",0 |
| 672 |
END |
| 673 |
|
| 674 |
_gDescriptionSunLounge |
| 675 |
WAIT(DELAY_FIRST_BUBBLE) |
| 676 |
.byt COMMAND_BUBBLE,1,64 |
| 677 |
.byt 112,5,0,"No rest for the weary",0 |
| 678 |
END |
| 679 |
|
| 680 |
_gDescriptionKitchen |
| 681 |
WAIT(DELAY_FIRST_BUBBLE) |
| 682 |
.byt COMMAND_BUBBLE,2,64 |
| 683 |
.byt 5,5,0,"A very basic",0 |
| 684 |
.byt 5,16,0,"kitchen",0 |
| 685 |
END |
| 686 |
|
| 687 |
_gDescriptionNarrowStaircase |
| 688 |
WAIT(DELAY_FIRST_BUBBLE) |
| 689 |
.byt COMMAND_BUBBLE,1,127 |
| 690 |
.byt 5,5,0,"Watch your step",0 |
| 691 |
END |
| 692 |
|
| 693 |
_gDescriptionCellar |
| 694 |
WAIT(DELAY_FIRST_BUBBLE) |
| 695 |
.byt COMMAND_BUBBLE,2,127 |
| 696 |
.byt 75,15,0,"Is that a Franz",0 |
| 697 |
.byt 80,25,0,"Jager safe?",0 |
| 698 |
END |
| 699 |
|
| 700 |
_gDescriptionDarkerCellar |
| 701 |
WAIT(DELAY_FIRST_BUBBLE) |
| 702 |
.byt COMMAND_BUBBLE,2,127 |
| 703 |
.byt 5,99,0,"The window seems",0 |
| 704 |
.byt 5,109,0,"to be occulted",0 |
| 705 |
END |
| 706 |
|
| 707 |
_gDescriptionStaircase |
| 708 |
WAIT(DELAY_FIRST_BUBBLE) |
| 709 |
.byt COMMAND_BUBBLE,3,64 |
| 710 |
.byt 16,8,0,"Left?",0 |
| 711 |
.byt 179,8,0,"Right?",0 |
| 712 |
.byt 60,72,0,"does it really matter?",0 |
| 713 |
END |
| 714 |
|
| 715 |
_gDescriptionMainLanding |
| 716 |
WAIT(DELAY_FIRST_BUBBLE) |
| 717 |
.byt COMMAND_BUBBLE,1,64 |
| 718 |
.byt 47,70,0,"Nice view from up there",0 |
| 719 |
END |
| 720 |
|
| 721 |
_gDescriptionEastGallery |
| 722 |
WAIT(DELAY_FIRST_BUBBLE) |
| 723 |
.byt COMMAND_BUBBLE,2,64 |
| 724 |
.byt 5,5,0,"Boring corridor:",0 |
| 725 |
.byt 20,17,0,"Check",0 |
| 726 |
END |
| 727 |
|
| 728 |
_gDescriptionChildBedroom |
| 729 |
WAIT(DELAY_FIRST_BUBBLE) |
| 730 |
.byt COMMAND_BUBBLE,2,64 |
| 731 |
.byt 5,96,0,"Let me guess:",0 |
| 732 |
.byt 5,107,0,"Teenager room?",0 |
| 733 |
END |
| 734 |
|
| 735 |
_gDescriptionGuestBedroom |
| 736 |
WAIT(DELAY_FIRST_BUBBLE) |
| 737 |
.byt COMMAND_BUBBLE,2,64 |
| 738 |
.byt 5,6,0,"Simple and fresh",0 |
| 739 |
.byt 5,17,0,"for a change",0 |
| 740 |
END |
| 741 |
|
| 742 |
_gDescriptionShowerRoom |
| 743 |
WAIT(DELAY_FIRST_BUBBLE) |
| 744 |
.byt COMMAND_BUBBLE,2,64 |
| 745 |
.byt 149,5,0,"I will need one",0 |
| 746 |
.byt 152,16,0,"when I'm done",0 |
| 747 |
END |
| 748 |
|
| 749 |
_gDescriptionWestGallery |
| 750 |
WAIT(DELAY_FIRST_BUBBLE) |
| 751 |
.byt COMMAND_BUBBLE,2,127 |
| 752 |
.byt 85,81,0,"Is that Steel",0 |
| 753 |
.byt 60,92,0,"behind the Curtain?",0 |
| 754 |
END |
| 755 |
|
| 756 |
_gDescriptionBoxRoom |
| 757 |
WAIT(DELAY_FIRST_BUBBLE) |
| 758 |
.byt COMMAND_BUBBLE,2,64 |
| 759 |
.byt 5,5,0,"A practical",0 |
| 760 |
.byt 5,16,0,"little room",0 |
| 761 |
END |
| 762 |
|
| 763 |
_gDescriptionClassyBathRoom |
| 764 |
WAIT(DELAY_FIRST_BUBBLE) |
| 765 |
.byt COMMAND_BUBBLE,1,64 |
| 766 |
.byt 132,5,0,"Looks comfortable",0 |
| 767 |
END |
| 768 |
|
| 769 |
_gDescriptionTinyToilet |
| 770 |
WAIT(DELAY_FIRST_BUBBLE) |
| 771 |
.byt COMMAND_BUBBLE,1,64 |
| 772 |
.byt 137,5,0,"Sparklingly clean",0 |
| 773 |
END |
| 774 |
|
| 775 |
_gDescriptionMasterBedRoom |
| 776 |
; Is there a thug in the master bedroom |
| 777 |
JUMP_IF_FALSE(end_thug,CHECK_ITEM_LOCATION(e_ITEM_Thug,e_LOCATION_MASTERBEDROOM)) |
| 778 |
|
| 779 |
; Draw the shoes at the bottom of the bed |
| 780 |
DRAW_BITMAP(LOADER_SPRITE_THUG,BLOCK_SIZE(7,15),40,_SecondImageBuffer+40*73+14,_ImageBuffer+40*112+3) ; Shoes |
| 781 |
|
| 782 |
; Is the thug alive? |
| 783 |
JUMP_IF_FALSE(thug_alive,CHECK_ITEM_FLAG(e_ITEM_Thug,ITEM_FLAG_DEAD)) |
| 784 |
; Draw the dead thug |
| 785 |
DRAW_BITMAP(LOADER_SPRITE_THUG,BLOCK_SIZE(23,24),40,_SecondImageBuffer+0,_ImageBuffer+40*66+12) ; Dead thug |
| 786 |
DRAW_BITMAP(LOADER_SPRITE_THUG,BLOCK_SIZE(2,27),40,_SecondImageBuffer+40*24+17,_ImageBuffer+40*90+29) ; Arm |
| 787 |
DRAW_BITMAP(LOADER_SPRITE_THUG,BLOCK_SIZE(6,17),40,_SecondImageBuffer+40*0+24,_ImageBuffer+40*109+33) ; Pillow on the floor |
| 788 |
; Text describing the dead thug |
| 789 |
WAIT(DELAY_FIRST_BUBBLE) |
| 790 |
.byt COMMAND_BUBBLE,2,64 |
| 791 |
.byt 5,5,0,"Let's call that a ",0 |
| 792 |
.byt 5,17,0,"Collateral Damage",34,0 |
| 793 |
END |
| 794 |
|
| 795 |
thug_alive |
| 796 |
; Draw the thug Sleeping |
| 797 |
DRAW_BITMAP(LOADER_SPRITE_THUG,BLOCK_SIZE(18,37),40,_SecondImageBuffer+40*91,_ImageBuffer+40*52+17) ; Thug sleeping |
| 798 |
DRAW_BITMAP(LOADER_SPRITE_THUG,BLOCK_SIZE(8,23),40,_SecondImageBuffer+32,_ImageBuffer+40*33+30) ; Zzzz over the head |
| 799 |
; Draw the message |
| 800 |
WAIT(DELAY_FIRST_BUBBLE) |
| 801 |
.byt COMMAND_BUBBLE,2,64 |
| 802 |
.byt 5,5,0,"This will make things",0 |
| 803 |
.byt 5,16,0,"notably easier...",0 |
| 804 |
; Should probably have a "game over" command |
| 805 |
END |
| 806 |
|
| 807 |
end_thug |
| 808 |
; Draw the message |
| 809 |
WAIT(DELAY_FIRST_BUBBLE) |
| 810 |
.byt COMMAND_BUBBLE,2,64 |
| 811 |
.byt 5,5,0,"This was make things",0 |
| 812 |
.byt 5,16,0,"notably easier...",0 |
| 813 |
; Should probably have a "game over" command |
| 814 |
.byt COMMAND_FADE_BUFFER |
| 815 |
END |
| 816 |
|
| 817 |
_gDescriptionThugAttacking |
| 818 |
DRAW_BITMAP(LOADER_SPRITE_THUG,BLOCK_SIZE(18,105),40,_SecondImageBuffer+40*23+22,_ImageBuffer+(40*21)+13) ; Draw the attacking thug |
| 819 |
DRAW_BITMAP(LOADER_SPRITE_THUG,BLOCK_SIZE(14,56),40,_SecondImageBuffer+40*34+0,_ImageBuffer+(40*1)+23) ; Now You Die! |
| 820 |
; Draw the message |
| 821 |
WAIT(50*2) ; Wait a couple seconds |
| 822 |
.byt COMMAND_BUBBLE,2,64 |
| 823 |
.byt 5,5,0,"This was a mistake:",0 |
| 824 |
.byt 60,16,0,"My last one",0 |
| 825 |
WAIT(50*2) ; Wait a couple seconds |
| 826 |
JUMP(_gDescriptionGameOverLost) ; Game Over |
| 827 |
|
| 828 |
|
| 829 |
_gDescriptionPadlockedRoom |
| 830 |
WAIT(DELAY_FIRST_BUBBLE) |
| 831 |
.byt COMMAND_BUBBLE,4,64 |
| 832 |
.byt 5,5,0,"Damn...",0 |
| 833 |
.byt 125,16,0,"I will never be able",0 |
| 834 |
.byt 131,53,0,"to pick these locks",0 |
| 835 |
.byt 140,90,0,"fast enough!",0 |
| 836 |
END |
| 837 |
|
| 838 |
|
| 839 |
_gDescriptionGameOverLost |
| 840 |
; Draw the 'The End' logo |
| 841 |
DRAW_BITMAP(LOADER_SPRITE_THE_END,BLOCK_SIZE(20,95),20,_SecondImageBuffer,_ImageBuffer+(40*16)+10) |
| 842 |
; Should probably have a "game over" command |
| 843 |
.byt COMMAND_FADE_BUFFER |
| 844 |
END |
| 845 |
_EndSceneScripts |
| 846 |
|
| 847 |
|
| 848 |
// Scene actions |
| 849 |
_StartSceneActions |
| 850 |
|
| 851 |
_gSceneActionReadNewsPaper |
| 852 |
.byt COMMAND_FULLSCREEN_ITEM,LOADER_PICTURE_NEWSPAPER,"The Daily Telegraph, September 29th",0 |
| 853 |
.byt COMMAND_INFO_MESSAGE,"I have to find her fast...",0 |
| 854 |
WAIT(50*2) |
| 855 |
.byt COMMAND_INFO_MESSAGE,"...I hope she is fine!",0 |
| 856 |
WAIT(50*2) |
| 857 |
END |
| 858 |
|
| 859 |
_gSceneActionReadHandWrittenNote |
| 860 |
.byt COMMAND_FULLSCREEN_ITEM,LOADER_PICTURE_HANDWRITTEN_NOTE,"A hand written note",0 |
| 861 |
WAIT(50*2) |
| 862 |
#ifdef LANGUAGE_FR |
| 863 |
.byt COMMAND_INFO_MESSAGE,"Ca pourrait être utile...",0 |
| 864 |
WAIT(50*2) |
| 865 |
.byt COMMAND_INFO_MESSAGE,"...si je peux y accéder !",0 |
| 866 |
#else |
| 867 |
.byt COMMAND_INFO_MESSAGE,"That could be useful...",0 |
| 868 |
WAIT(50*2) |
| 869 |
.byt COMMAND_INFO_MESSAGE,"...if I can access it!",0 |
| 870 |
#endif |
| 871 |
WAIT(50*2) |
| 872 |
END |
| 873 |
|
| 874 |
_gSceneActionReadChemistryRecipes |
| 875 |
.byt COMMAND_FULLSCREEN_ITEM,LOADER_PICTURE_CHEMISTRY_RECIPES,"A few useful recipes",0 |
| 876 |
WAIT(50*2) |
| 877 |
.byt COMMAND_INFO_MESSAGE,"I can definitely use these...",0 |
| 878 |
WAIT(50*2) |
| 879 |
.byt COMMAND_INFO_MESSAGE,"...just need to find the materials.",0 |
| 880 |
WAIT(50*2) |
| 881 |
END |
| 882 |
|
| 883 |
_gSceneActionReadChemistryBook |
| 884 |
.byt COMMAND_FULLSCREEN_ITEM,LOADER_PICTURE_SCIENCE_BOOK,"A science book",0 |
| 885 |
WAIT(50*2) |
| 886 |
.byt COMMAND_INFO_MESSAGE,"I don't understand much...",0 |
| 887 |
WAIT(50*2) |
| 888 |
.byt COMMAND_INFO_MESSAGE,"...but looks like someone took notes.",0 |
| 889 |
WAIT(50*2) |
| 890 |
END |
| 891 |
|
| 892 |
_gSceneActionInspectMap |
| 893 |
.byt COMMAND_FULLSCREEN_ITEM,LOADER_PICTURE_UK_MAP,"A map of the United Kingdom",0 |
| 894 |
.byt COMMAND_INFO_MESSAGE,"It shows Ireland, Wales and England",0 |
| 895 |
WAIT(50*2) |
| 896 |
END |
| 897 |
|
| 898 |
_EndSceneActions |
| 899 |
|
| 900 |
|
| 901 |
_EndGameTextData |
| 902 |
|
| 903 |
; |
| 904 |
; Print statistics about the size of things |
| 905 |
; |
| 906 |
#print Total size of game text content = (_EndGameTextData - _StartGameTextData) |
| 907 |
#print - Messages and prompts = (_EndMessagesAndPrompts - _StartMessagesAndPrompts) |
| 908 |
#print - Error messages = (_EndErrorMessages - _StartErrorMessages) |
| 909 |
#print - Location names = (_EndLocationNames - _StartLocationNames) |
| 910 |
#print - Item names = (_EndItemNames - _StartItemNames) |
| 911 |
#print - Scene scripts = (_EndSceneScripts - _StartSceneScripts) |
| 912 |
#print - Scene actions = (_EndSceneActions - _StartSceneActions) |
| 913 |
|
| 914 |
|