Constant Story "FILAMENTS^^"; Constant MAX_CARRIED = 2; global plot_depth; global vtalk; global ratp; global dalert; global randodia; global various=0; global elymentrance=0; global evenement=0; global nuit=0; global couloir=4; global direc=1; global shining=0; Attribute fil; Attribute leger; Include "Parser"; Include "VerbLib"; ! --------------------------------------------------------------------------- ! routines diverses ! --------------------------------------------------------------------------- [ ChooseObjects obj code; if (code<2) { if (obj has scenery) return 2; rfalse; } if (action_to_be==##Eat && obj has edible) return 3; if (obj hasnt scenery) return 2; return 1; ]; [ attend notNeeded; @read_char 1 notNeeded; rtrue; ]; ! ---------------------------------------------------------------------------- ! Les Pieces & Objets ! ---------------------------------------------------------------------------- Object walkman "walkman" selfobj with name 'walkman', description "Votre bon vieux walkman de toujours, avec lequel vous avez pass@'e les plus beaux instants de votre vie. L'avoir avec vous rassure. ", before [;Listen: if (self has on) {print "^Vous entendez "; musiquecool();print ". ";} if (self hasnt on) {print "^...Silence.... ";} Disrobe,Remove : print "Non, vous gardez votre walkman avec vous ! ";return 2;], has worn static leger clothing switchable; Object elem1 "trucs" with name 'arbres' 'arbre' 'trottoir' 'trottoirs' 'voitures' 'voiture' 'touriste' 'touristes' 'mur' 'murs' 'batiments' 'maisons' 'immeubles' 'immeuble' 'rue' 'place' 'gens' 'jeunes' 'pantheon' 'platane' 'platanes' 'distributeur' 'boissons' 'fontaine' 'restaurant' 'restaurants' 'lions' 'pierre', found_in mystreet school contrescarpe epsilon potdefer jardinplantes belleville randostreet anvers marches sacrecoeur butte tertre devantem halles intohalles rerstation notredame marais goldenberg ecouffes frontm sides siden sidew syndicat, description [i;i=random(20);switch(i) { 0 : print "D'enfer. "; 1 : print "D'enfer. "; 2 : print "Trop cool. "; 3 : print "G@'enial. "; 4 : print "A chier. "; 5 : print "Boaf. "; 6 : print "Tip-top. "; 7 : print "Mouais. "; 8 : print "Rien de particulier. "; 9 : print "Rien de remarquable. "; 10 : print "A gerber. "; 11 : print "Trop top. "; 12 : print "C'est le genre de chose qui vous laisse totalement indiff@'erente. "; 13 : print "Ouaaaa... "; 14 : print "C'est Nul. "; 15 : print "Quoi? Ces trucs? Cherche pas. Oublie. "; 16 : print "*baillement* rien de particulier. "; 17 : print "Super cool. "; 18 : print "Ultra N.U.L. "; 19 : print "Bof bof. "; 20 : print "Bof bof. "; }], article "ces", before [;Take : print "Non. Fais moi confiance. Oublie ca. T'en as pas besoin pour le moment. ";return 2;], has scenery static; Object elem2 "trucs" with name 'pave' 'route' 'chinois' 'mais' 'vendeur' 'echoppe' 'plastification' 'documents' 'eglise' 'escalier' 'marches' 'train' 'parc' 'jardin' 'pigeons' 'pigeon', found_in mystreet school contrescarpe epsilon potdefer jardinplantes belleville randostreet anvers marches sacrecoeur butte tertre devantem halles intohalles rerstation notredame marais goldenberg ecouffes frontm sides siden sidew syndicat, description [i;i=random(20);switch(i) { 0 : print "D'enfer. "; 1 : print "D'enfer. "; 2 : print "Trop cool. "; 3 : print "G@'enial. "; 4 : print "A chier. "; 5 : print "Boaf. "; 6 : print "Tip-top. "; 7 : print "Mouais. "; 8 : print "Rien de particulier. "; 9 : print "Rien de remarquable. "; 10 : print "A gerber. "; 11 : print "Trop top. "; 12 : print "C'est le genre de chose qui vous laisse totalement indiff@'erente. "; 13 : print "Ouaaaa... "; 14 : print "C'est Nul. "; 15 : print "Quoi? Ces trucs? Cherche pas. Oublie. "; 16 : print "*baillement* rien de particulier. "; 17 : print "Super cool. "; 18 : print "Ultra N.U.L. "; 19 : print "Bof bof. "; 20 : print "Bof bof. "; }], article "ces", before [;Take : print "Non. Fais moi confiance. Oublie ca. T'en as pas besoin pour le moment. ";return 2;], has scenery static; Object elem3 "trucs" with name 'arbres' 'arbre' 'murs' 'livres' 'champs' 'haie' 'maisons' 'maison' 'escalier' 'marches' 'ble' 'moutons' 'soleil' 'ciel' 'route' 'mouton' 'dalles' 'marbre' 'aiguilles' 'tissus' 'nid' 'glacier', found_in seaside sentierjardin courbiblio hiddenpath hallbiblio biblio lacheden champs village church perdu snow1 snow2 snow3 intersection tunnel, description [i;i=random(20);switch(i) { 0 : print "D'enfer. "; 1 : print "D'enfer. "; 2 : print "Trop cool. "; 3 : print "G@'enial. "; 4 : print "A chier. "; 5 : print "Boaf. "; 6 : print "Tip-top. "; 7 : print "Mouais. "; 8 : print "Rien de particulier. "; 9 : print "Rien de remarquable. "; 10 : print "A gerber. "; 11 : print "Trop top. "; 12 : print "C'est le genre de chose qui vous laisse totalement indiff@'erente. "; 13 : print "Ouaaaa... "; 14 : print "C'est Nul. "; 15 : print "Quoi? Ces trucs? Cherche pas. Oublie. "; 16 : print "*baillement* rien de particulier. "; 17 : print "Super cool. "; 18 : print "Ultra N.U.L. "; 19 : print "Bof bof. "; 20 : print "Bof bof. "; }], article "ces", before [;Take : print "Non. Fais moi confiance. Oublie ca. T'en as pas besoin pour le moment. ";return 2;], has scenery static; Object chambrehome "Chambre de Margot" with description [; if (plot_depth==14) {print "Jonas saisit le feuillet.^^~C'est quoi cette arnaque? C'est une mauvaise plaisanterie ou quoi?~^^Vous restez dans le silence. Il est vrai que cette feuille vous appelle par votre pr@'enom, et qu'il s'agit de tout sauf d'une coincidence. "; attend(); print "^~Et maintenant on fait quoi?~ demande Jonas.^~Nous attendons, @'evidemment.~^^Et vous attendez. Les heures passent lentement jusqu'@`a ce que le soir s'approche, @`a glander devant MTV et @`a discuter de tout et de rien. Jonas se montre assez interressant si on fait abstraction de sa personnalit@'e excentrique.^^Et puis lentement, le soir s'approche alors, et il est temps de vous mettre en route.^^";plot_depth=plot_depth+1;nuit=1;} "Pas vraiment la chambre de petite fille mod@`ele. C'est une petite pi@`ece carr@'ee dont le parquet est recouvert de v@^etements sales. D'autres vetements semblent vouloir s'@'echapper d'une penderie en chaos. Un rai de lumi@`ere s'@'echappant de la latte cass@'ee du store vient illuminer l'Autel : une chaine hi-fi surmont@'ee d'une montagne de CDs. Sur les murs, une mosaique de posters recouvrent la tapisserie en faux cr@'epis blanc.^Ouaip, pas vraiment une chambre de petite fille, bien qu'aucun gars n'y ait jamais mis les pieds. ";], out_to home, n_to home, s_to home, d_to home, e_to home, w_to home, has scenery; Object sacmargot "sac" chambrehome with name 'sac' 'cartable', article "votre", description "C'est votre sac de tous les jours, noir, avec un tag ~No Fx~ fait @`a la bombe dessus. Il vous rend cool. ", before [;Receive : if (noun hasnt leger) {print "Ca tiendra pas dans ton sac, Margot ! ";return 2;}], has container openable clothing; Object hifi "chaine" chambrehome with name "chaine" "hifi" "platine" "lecteur" "radio" "hi-fi" "hi" "fi", before [; Examine: print "C'est votre bonne vieille chaine hi-fi. L'ampli TELEFUNKEN a @'et@'e achet@'e en 1975 par vos parents, et vous lui avez ajout@'e un lecteur de 33 tours, une radio et un lecteur CD de marque HITACHI.^Question esthetique, c'est pas l'extase, mais le son est bon, du moins pour faire vibrer les 9 petits m@`etres carr@'es de la pi@'ece. Un autocollant ~OUI FM~ est coll@'e en travers sur le cot@'e. "; if (self has on) {print "^La chaine passe en ce moment "; musiquecool();print ". ";} Listen: if (self has on) {print "^La chaine passe en ce moment "; musiquecool();print ". ";} if (self hasnt on) {print "^La chaine ne bronche pas. ";} "";], after [; SwitchOn: "^Une musique plut@^ot sympa envahit doucement la pi@`ece... "; Receive : if (noun==cd) "La machine avale le CD... "; ], has container switchable female static open; Object bed "lit" chambrehome with name "lit" "pieu" "drap" "draps" "oreiller", description "C'est ton pieu. Ouuch. Oui, @`a l'odeur, c'est bien le tien !" , before [; Take : "Ouaiiiis. Ok. Une autre id@'ee peut @^etre? "; Smell : "Dis moi, ca fait combien de temps que t'as pas chang@'e les draps? Je veux dire, tu les as bien chang@'e au moins une fois, non?"; Sleep : "C'est pas le moment, Margot, t'as bien mieux @`a faire, crois moi. "; ], has scenery; Object cds "CDs" chambrehome with name "cd" "disques" "disque" "cds" "enregistrements" "chansons" "chanson" "tas" "pile", description "Pffiou...une collec' de 10 ans maintenant, et que des originaux s'il vous pla@^it. Sur les vinyls poussi@`ereux de Black Sabbath et Pink Floyd, on retrace l'histoire du rock depuis l'invention du C.D.. Parmi les plus utilis@'es, il y a vos amours tendres : PJ Harvey, The Muse, et Radiohead. ^Rien que de voir ces petites pochettes qui vous ont apport@'e tant de bonheur fait na@^itre une sensation chaude dans votre coeur. ", before [ ; Take: if (cd.cd_picked) "Vous avez d@'ej@`a pris un CD de votre collection pour le mettre ~quelque part~. Vous n'avez aucune envie d'@'eparpiller toute votre collec', non?. "; move cd to player;cd.cd_picked=true; "Vous prenez un CD dans l'@'enorme pile. "; ], has scenery pluralname static; Object cd "CD de ta collection personnelle" with name "cd" "compact disk" "disque" "CD", description "C'est une compil super chouette faite @`a partir de Mp3 que ton pote Jonas a rendu 'lisibles' pour ta chaine hi-fi par un processus myst@'erieux. Toi et les ordis, ca fait deux.^Y a quoi dessus @`a propos?", cd_picked, has leger; Object vetements "vetements" chambrehome with name "vetement" "vetements" "jean" "tas", description "On dira que tu fais pas dans la tendance jamaicaine : quand c'est pas noir, c'est gris, et quand c'est pas d'une de ces deux couleurs, ca a train@'e tellement longtemps sur le sol que ca tend vers celles-ci. C'est principalement ce tas de loques qui donne son odeur si caract@'eristique @`a ton doux chez toi. ^Pour l'instant le tas n'est pas suffisamment gros pour que ta maman se ram@`ene avec une pelle de d@'eblayage pour la lessive. ", before [ ; Take: "C'est bon, on va dire que t'es d@'ej@`a fringu@'ee. Parce que d'une part, par terre y a grosso modo ce que t'as en ce moment sur le dos, @`a part que ca a pas l'air tout frais, et que d'autre part, t'es pas du genre @`a passer des heures @`a fouiller dans tes vetements. "; Smell : "Vous reniflez sans enthousiasme la pile @'eparpill@'ee. Glups. "; ], has static pluralname; Object poster "Poster" chambrehome with name "posters" "poster" "murs" "mur" "tapisserie" "mosaique", description "Ca fait longtemps qu'on voit plus la tapisserie. Punais@'es, scotch@'es, coll@'es par de diverses substances, on trouve principalement : une photo de Craig Armstrong (au dessus de ton lit), une super poster de Nick Cave et de PJ Harvey (en face de ton lit), la pochette vinyl de ~Dark Side Of The Moon~, mais aussi un poster num@'erot@'e de ce fameux concert des Doors et de Led Zeppelin o@`u personne d'encore vivant se souvient d'y avoir @'et@'e, et finalement quelques classiques comme Jim Morrisson ou les Beatles, principalement positionn@'es pour masquer les espaces vides." , before [; Take : "Il te faudrait une bonne raison pour cela... "; ], has scenery static; Object fenetre "Fenetre Obstru@'ee" chambrehome with name "fenetre" "dehors" "store" "latte" "cass@'ee" "rideau", description "Logiquement, elle doit donner sur la cour de l'immeuble, vers le Nord. Mais ca fait un bail que t'as tout cloisonné en clouant un store de bois noir sur le mur. ^La bonne @'epoque. ^Les vieux trips death metal dans le noir autour d'un b@^aton d'encens. L'@'epoque o@`u l'amour (et notamment le sexe) ne venaient pas troubler ta paisible existence. Non pas qu'ils la troublent aujourd'hui - en fait, ils la troublent surtout par leur absence. Bref. ", before [ ; Open: "C'est ferm@'e, clou@'e, et de toute facon cherche pas la p@'enombre va tr@'es bien avec le reste de la d@'eco. "; ], has scenery female static; Object home "Chez Moi" with description [; if (plot_depth==31) {Fin(4);return 2;} if (plot_depth==32) {Fin(4);return 2;} if (plot_depth==28 && home.correc~=1) {print "Votre maman vous accueuille les poings sur les hanches : ~C'est maintenant que tu te l@`eves? Tu arrives trop tard, il est parti !~^^~De qui parles-tu,~demandez vous d'une voix ensommeill@'ee.^^~Et bien de ce charmant jeune homme...~^^~Xavier est venu ce matin?~^^~Non, Jonas. Il avait l'air plut@^ot...soucieux. Il a des ennuis, tu penses?~^^~Pas que je sache~^^Vous vous @'etirez afin de compl@`etement vous reveiller, et votre maman ajoute : ~Il a dit qu'il allait faire un tour ~voir les baleines~. Ca veut dire quoi, c'est un code entre vous? Rejoins-le, ca te fera du bien de marcher un peu.~^^Vous soupirez. ";style underline;print " Jonas soucieux?";style roman;print " D'aussi loin que vous l'avez connu, vous ne l'avez jamais vu soucieux. Et @'etrangement aussi, au del@`a de tout ce @`a quoi d'autre vous auriez pu penser, cela vous pr@'eoccupe. Xavier pourrait attendre pour l'instant. ";home.correc=1;} if (plot_depth==23) {print "Votre m@`ere vous interpelle s@'ev@`erement :^^-~Tu es rentr@'ee bien tard, hier soir !~^Vous n'avez pas vraiment de souvenirs de votre fin de soir@'ee et vous expliquez :^-~Et bien en fait...~^-~Cela suffit, j'esp@`ere que c'est la derni@`ere fois que tu rentres aussi tard sans me pr@'evenir, j'@'etais morte d'inqui@`etude ! Et tu remercieras Jonas encore de ma part, qui t'a si gentiment raccompagn@'e.~^-~Jonas? Et comment...~^-~Il est tr@'es gentil ce Jonas...il a un style tr@'es particulier. Que penses tu de ce jeune homme?~^-~Loser? Ah mon Dieu. Tu veux dire, ce que j'en pense @`a part que c'est un gros nul? Et bien je pense qu'une douche de temps en temps lui ferait pas de mal.~^-~Ne parle pas de lui comme cela, menace votre m@`ere s@'ev@`erement. C'est un jeune homme de valeur sur lequel il serait temps que ouvres un peu les yeux. Et un jour, tu regretteras ce que tu viens de dire.~^^Vous mimez un vomissement et vous donnez un coup de pied dans un meuble pour la forme.^^";plot_depth=plot_depth+1;} if (plot_depth==14) {print "Jonas saisit le feuillet.^^~C'est quoi c'te vieille arnaque? C'est une mauvaise plaisanterie ou quoi?~^^Vous restez dans le silence. Il est vrai que cette feuille vous appelle par votre pr@'enom, et qu'il s'agit de tout sauf d'une coincidence. "; attend(); print "^~Et maintenant que fait-on?~ demande Jonas.^~Nous attendons, @'evidemment.~^^Et vous attendez. Les heures passent lentement jusqu'@`a ce que le soir s'approche, @`a glander devant MTV et @`a discuter de tout et de rien. Jonas se montre assez interressant si on fait abstraction de sa personnalit@'e excentrique.^^Et puis lentement, le soir s'approche alors, et il est temps de vous mettre en route.^^";plot_depth=plot_depth+1;nuit=1;} "Un appart plut@^ot sympa, au deuxi@`eme @'etage d'un immeuble ancien, avec une grande salle de s@'ejour.^C'est chez toi d'aussi longtemps que tu te souviennes.^ L'ensemble de l'appartement est recouvert de moquette beige, et une petite porte ouvrant sur un escalier montant m@`ene @`a ta chambre. Les meubles sont modernes, les fauteuils super confortables, la t@'el@'e immense, c'est plut@^ot la classe en fait. ";], correc, u_to chambrehome, out_to mystreet, s_to mystreet, n_to chambrehome, has scenery; Object tv "t@'el@'e" home with name "tv" "t@'el@'e" "t@'el@'evision" "poste" "television" "tele", before [; Examine: print "C'est une grande t@'el@'evision, le deuxi@`eme objet @`a vous avoir apport@'e le plus de bonheur dans cet endroit. "; if (self has on) {print "^La t@'el@'e passe un vieux truc sans inter@^et. ";} ], after [; SwitchOn: "^La t@'el@'e s'allume sur un vieux programme sans inter@^et. De toutes facons, tant que c'est pas MTV... "; ], has switchable female static open; Object maman "Maman" home with name "m@`ere" "maman" "femme", description "Votre maman. Est il besoin de la d@'ecrire? En fait, vous vous connaissez depuis si longtemps que vous ne la reconna@^itriez pas @`a sa description. Des liens de complicit@'es tr@'es forts qui ont su surpasser les difficult@'es de votre adolescence vous lient toujours. ", initial [i; i=random(10); switch(i){ 1 : print "Ta maman est dans la pi@`ece, pench@'ee sur des mots crois@'es. "; 2 : print "Maman-Margot lit le dernier num@'ero de ~Femme Actuelle~ avec attention"; 3 : print "Ta maman se l@`eve pour pr@'eparer un repas, allant des placards au frigo, de la cuisini@`ere au plan de travail. "; 4 : print "Maman-Margot cherche la t@'el@'ecommande de la t@'el@'e. "; 5 : print "Ta maman prend des notes sur un agenda. "; 6 : print "Ta maman regarde par la fen@^etre. "; 7 : print "Ta maman plonge une cuill@`ere dans un pot de confiture. "; 8 : print "Ta maman nettoie ses lunettes. "; 9 : print "Ta maman raccroche le t@'el@'ephone (et en profite pour le nettoyer)"; 10 : print "Ta maman d@'ecroche le t@'el@'ephone, mais semble oublier qui elle devait appeler, et h@'esite. "; } ], life [; Answer: DialogueMaman();""; Ask: DialogueMaman();""; Tell: DialogueMaman();""; Attack : "Hey ! Ca va pas? C'est ta maman, quand m@^eme !"; Kiss: "Votre m@`ere vous rend un petit bisou et vous souhaite une bonne journ@'ee. "; ThrowAt: move noun to location; <>; Show, Give: if (noun == cd) {"Tu devrais ranger cela ma ch@'erie. ";} "Ravissant. "; ], has animate female proper; Object mystreet "Rue Lhomond" with description [; if (ratp==1) {actionmetro();ratp=0; print "La Rue Lhomond est @`a un jet de pierre du Panth@'eon, engonc@'ee entre des @'etablissements aux noms aussi prestigieux que l'Ecole Normale Sup@'erieure, Polytechnique ou Chimie Paris.^Vous @^etes devant chez vous. ^ A l'ouest, c'est le M@'etro, @`a l'est, c'est la Place Contrescarpe, et si vous longez la rue, vers le Sud, vous arriverez dans votre @'ecole. ";} else {print "La Rue Lhomond est @`a un jet de pierre du Panth@'eon, engonc@'ee entre des @'etablissements aux noms aussi prestigieux que l'Ecole Normale Sup@'erieure, Polytechnique ou Chimie Paris.^Vous @^etes devant chez vous. ^ A l'ouest, c'est le M@'etro, @`a l'est, c'est la Place Contrescarpe, et si vous longez la rue, vers le Sud, vous arriverez dans votre @'ecole. ";} if (plot_depth==31) {style underline;print "Une figure grande et sombre vous attend devant votre seuil. La pluie d@'egoutte de son chapeau noir @`a larges bords, glisse le long de son imperm@'eable noir, noir comme ses yeux et brillants qui vous d@'evisagent en silence.^^Douglas.^";style roman;attend();plot_depth=plot_depth+1;move clothos2 to mystreet;direc=0;}], before [; Go : if (plot_depth==0 || plot_depth==24) {if (noun~=s_obj) {print "Margot, l'@'ecole c'est pas par l@`a. Non pas que vous ayiez sp@'ecialement envie d'y aller, mais bon, vous aurez moins d'ennuis si vous le supportez encore quelques derni@`eres heures. ";return 2;}} if (noun==w_obj) {metro(0);"";} ], n_to home, in_to home, e_to contrescarpe, s_to school, has scenery; Object clothos2 "Douglas" with name "homme" "Douglas" "d" "D" "douglas" "clothos" "chapeau" "noir" "sombre" "impermeable", description "C'est un homme au petit visage rond, sans vraiment d'@^age pr@'ecis, peut-@^etre la trentaine, peut-@^etre plus. Il est v@^etu d'un costume sobre mais de grande classe, d'un brun sombre. Ses cheveux sont liss@'es et plaqu@'es dans une raie sur le cot@'e sage, et une fine moustache tr@'es bien entretenue prend naissance sur sa l@`evre sup@'erieure. Son regard est transper@@cant. Sous la pluie battante, il porte un chapeau noir @`a larges bords, ainsi qu'un imperm@'eable noir. ", initial "Douglas vous observe glacialement de ses yeux noirs. ", life [; Answer,Ask,Tell: if (direc==0) {Laius(0);return 2;} else {print "^~Il est temps, Mademoiselle, de savoir ce que vous voulez vraiment, et du prix de ce voeu. Il va falloir faire un";style underline;print " choix. ";style roman;return 2;} Attack : "Il est beaucoup trop impressionnant, et vous n'avez pas toutes les cartes en main. "; Kiss: "NON. "; Show, Give: "L'homme m@'eprise souverainement ",(the) noun," d@'etournant le regard imm@'ediatement. "; ], has animate proper; Object billet "billet d'avion" with name "billet" "d" "avion" "ticket" "carte", description "C'est un billet d'avion pour une destination @'ecrite avec de myst@'erieuses lettres que vous ne parvenez @`a d@'echiffrer. Le vol par tr@'es bient@^ot, depuis Orly. ", initial [;if (plot_depth==32) {print "La main gant@'ee de cuir noir de Douglas vous tend un ticket. ";} else {print "Le billet d'avion brille doucement. ";}], before [;Take : if (plot_depth==46) {PrendreBillet();return 2;} else if (plot_depth==34) {print "Douglas pose rapidement la main dessus et son sourire fait place @`a une expression de s@'ev@'erit@'e insoup@@conn@'ee. ~En temps et heure, Mademoiselle. Honorez votre part du contrat, d'abord.~^^";return 2;} else {if (plot_depth<34) {if (direc==1) {Laius(1);return 2;} else if (direc==2) {Laius(2);return 2;} else if (direc==3) {Laius(3);return 2;}}}], has leger; Object school "Petit Lyc@'ee Henri IV" with description [; if (plot_depth==0) {ecole();} if (plot_depth==24) {Lendemain();}; if (plot_depth==1) "La cour de votre @'etablissement se vide lentement. C'est un espace goudronn@'e et bord@'e de platanes qui cachent des murs @'elev@'es de cr@'epis jaune. Il reste encore quelques jeunes qui discutent pr@`es du distributeur de boissons. La pluie s'est arret@'ee, il fait gris, mais quelques rayons de soleil percent au travers des nuages. "; if (vtalk==3) {vtalk=vtalk+1;jonas_arrive();} if (plot_depth>1) { if (nuit==1) { print "L'@'ecole est ferm@'ee. C'est une ceinture de hauts murs de cr@'epis jaune non loin du Panth@'eon. En face, l'Epsilon Bar, un endroit bien cool avec de la musique potable dans lequel vous avez l'habitude de prendre un caf@'e et de m@'editer, mais h@'elas ferm@'e @`a cette heure-ci. Aucune voiture ne passe dans cette rue. ";} else { print "L'@'ecole est ferm@'ee. C'est une ceinture de hauts murs de cr@'epis jaune non loin du Panth@'eon. Quelques jeunes zonent encore ici et l@`a sans but. En face, l'Epsilon Bar, un endroit bien cool avec de la musique potable dans lequel vous avez l'habitude de prendre un caf@'e et de m@'editer. Aucune voiture ne passe dans cette rue. ";}} ], before [; Go : if (plot_depth==1) { print "Nan, vous allez pas sortir de l'@'ecole tout de suite. Vous n'@^etes pas du genre @`a abandonner six m@`etres avant la fin, n'est ce pas? ";return 2;} if (nuit==1) {if (noun==in_obj) {print "L'epsilon ferme. Vous poussez un peu la porte mais celle-ci est d@'ej@`a ferm@'ee. Apparement, vous ne pourrez pas rentrer. ";return 2;}} ], n_to mystreet, e_to potdefer, in_to epsilon, has scenery; Object xavier "Xavier" with name "xavier" "Xavier" "mec" "garcon" "amoureux" "amour", description "Xavier, votre ~ami~ d'enfance. Un grand type @`a la voix grave, avec un l@'eger strabisme, si l@'eger, qui l'arrache du monde des beaux-innaccessibles et fait chavirer les coeurs des demoiselles. Pas un grand orateur, mais les grandes gueules vous ont toujours tap@'e sur les nerfs. Juste un peu trop sportif @`a votre gout, mais il n'y a rien qui ne se corrige avec suffisamment de persuasion f@'eminine.^D'ordinaire, il court entre deux sc@'eances de natation ou avec ses copains en roller, ou encore cern@'e par quelques admiratrices que vous pr@'eferez @'eviter, mais cette fois-ci, il est seul, comme un joli cadeau du destin.^L'expression de son regard, concentr@'e sur une manille coinc@'ee de son sac, vous envo@^ute doucement, et plus vous le regardez, plus votre coeur bat fort. ", initial "Xavier est l@`a, et il est seul. ", life [; Answer,Ask,Tell: DialogueXavier();""; Attack : "C'est surtout votre coeur qui va avoir une attaque, si ca continue. "; Kiss: "Vous aimeriez bien, pas vrai? Mettez y les formes et le protocole, Margot, vous obtiendrez peut @^etre un sauf-conduit pour cette action. "; Show, Give: "Xavier l@'eve les yeux sur ",(the) noun," et le consid@`ere avec une certaine perplexit@'e. Il ne semble pas tr@'es interress@'e. "; ], has animate proper; Object jonas "Loser" with name "jonas" "loser" "pauvre" "tache" "nul" "ami" "pote" "compagnon" "lousain", description "Jonas Lousain, alias ~Loser~, votre ~pote~.^Il porte un ravissant short bordeau trop large pour lui qui lui arrive @'a mi-mollet, des converses peintes avec des flammes, et un T-shirt avec un imprim@'e montrant la pochette du single ~Big Bisou~ de Carlos. Il a grande tignasse blonde qui part dans tous les sens et un petit bouc blond pas vraiment entretenu. Il porte en collier son casque de walkman qui diffuse une musique impr@`ecise. ", life [; Answer,Ask,Tell: if (location==randocour && trappe.picked==1) {print "~Hey Blaireau, t'aurais pas l'id@'ee g@'eniale de m'aider sur ce coup l@`a?~^^Jonas ronchonne, avalant son chewing-gum : ~Ouais, Ouais.~ ";trappe.picked=2;return 2;} else {DialogueJonas();return 2;} Attack : "Vous donnez un coup de pied dans le tibia de Jonas.~Hey, t'es folle?~ (c'@'etait bien marrant). "; Kiss: "Bluargh. Jamais. Jamais. Jamais. "; Show, Give: "^~Ouao. C'est trop cool. Mais j'en veux pas.~ "; ], found_in [; if (vtalk==4) {return location;} ], daemon [k; k = random(4); switch(k) { 1 : ActionJonas(); 2 : print "Jonas est @`a vos cot@'es. "; 3 : print ""; 4 : print ""; } ], has scenery animate proper; Object contrescarpe "Place Contrescarpe" with description [; if (nuit==1) { print "C'est une petite place ouverte sur quatres rues serr@'ees, au sommet de la colline St Genevi@`eve. Au milieu de la place, la fontaine au jet invers@'e a cess@'e de couler. Il y a peu de voitures mais beaucoup de monde autour des nombreux caf@'es et petits restaus du coin. ^Si vous descendez la rue Lac@'ep@`ede sur l'est, vous arriverez sur le Jardin des Plantes, problablement ferm@'e. Au sud, c'est la rue du Pot de Fer, et @`a l'ouest, vous rejoindrez la rue Lhomond, l@`a o@`u vous habitez. ";} else { print"C'est une petite place ouverte sur quatres rues serr@'ees, au sommet de la colline St Genevi@`eve. Au milieu de la place, une fontaine lance un jet invers@'e dans un chuintement tranquille. Il y a peu de voitures mais beaucoup de monde autour des nombreux caf@'es et petits restaus du coin. Notamment un Haagen Dazs, peupl@'e encore de merveilleux souvenirs.^Si vous descendez la rue Lac@'ep@`ede sur l'est, vous arriverez sur le Jardin des Plantes. Au sud, c'est la rue du Pot de Fer, et @`a l'ouest, vous rejoindrez la rue Lhomond, l@`a o@`u vous habitez. ";} ], before [;Go : if (nuit==1) {if (noun==e_obj) {print "Les grandes grilles du jardin des plantes sont ferm@'ees. Vous revenez sur la place Contrescarpe face au soleil couchant. ";return 2;}} ], e_to jardinplantes, s_to potdefer, w_to mystreet, has scenery; Object epsilon "L'Epsilon Bar" with description "L'Epsilon bar est un vieux bar suffisament retap@'e pour ne plus pouvoir exploiter son image de lieu ancien. Les banquettes ont @'et@'e capiton@'ees de cuir rouge, et un faux plafond terne cache les boiseries du plafond. Loin des bar lounge @`a la mode, l'Espilon est souvent bond@'e d'@'etudiants qui se serrent sur les chaises vernies, @'a la terrasse ou au sous-sol. La musique est plut@^ot douce --- quand on peut la percevoir sous le brouhaha continuel. ", out_to school has scenery; Object cartevisite "carte de visite" with name "carte" "de" "visite", description [;print "Un petit morceau de carton imprim@'e de caract@`eres alambiqu@'es. ";style underline;print "^^C, agent commercial D & Cie.^^Forfaits Amours A La Carte^^Tel : 968";style roman;print "^^Etrange. ";], has female leger; Object cedric "myst@'erieux personnage" with name "cedric" "commercial" "homme" "type" "gars" "vendeur" "bonhomme", description "Un type plut@^ot nerveux, coup@'e en brosse courte, portant un costume bon march@'e. ", life [; Answer: DialogueCedric();""; Ask: DialogueCedric();""; Tell: DialogueCedric();""; Kiss: "No comment. "; Show, Give: "^~Non, merci. Vraiment. Concentrez vous sur ceci plut@^ot.~ "; ], has animate; Object banquette "chaise" epsilon with name "chaise" "banquette" "siege" "table" "place" "habituelle", description "Une chaise vernie, au dossier tapiss@'e de tissu rouge un peu pass@'e. ", initial "Votre place habituelle est libre. ", react_before [; Go,Exit,GetOff : if (plot_depth==26) {print "L'homme vous retient par le bras. ~Mademoiselle,~ vous dit-il, souriant mais fermement, ~il vous faut faire un choix.~ ";return 2;} ], after [;Enter : if (plot_depth==25) {Commercial();return 2;} else {print "Vous vous asseyez confortablement @`a votre place habituelle, mais fouillant vos poches vous vous apercevez que vous n'avez pas un euro, et vous ne commandez rien. Jonas reste debout pr@`es de vous. ";return 2;} ], has supporter enterable female; Object dossierc "dossier marqu@'e de la lettre C" with name "dossier C" "dossier c" "dossier" "C" "c" "pack" "classique" "photo", description [;if (self has open) {print "Le dossier est @'ecrit dans une langue aux signes @'etranges et d@'eli@'es, @`a la main. Une photo en noir et blanc montre un gar@@con anonyme qui vous est inconnu. ";} else {print "C'est un dossier beige en papier, imprim@'e d'un grand C. ";} ], before [;Take : if (various~=1) {PrendreDossier(1);return 2;} else {Destin(1);return 2;}], has openable; Object dossierd "dossier marqu@'e de la lettre D" with name "dossier D" "dossier d" "dossier" "D" "d" "pack" "deluxe" "photo", description [;if (self has open) {print "Le dossier est @'ecrit dans une langue aux signes @'etranges et d@'eli@'es, @`a la main. Une photo en noir et blanc montre... ";style underline;print "^Votre coeur chavire. ";style roman; attend();print "Xavier.^^Votre coeur bat @`a tout rompre, et vos yeux embu@'es croisent la moue m@'efiante de votre interlocuteur. ";} else {print "C'est un dossier beige en papier, imprim@'e d'un grand D. ";} ], before [;Take : if (various~=2) {PrendreDossier(2);return 2;} else {Destin(2);return 2;}], has openable; Object dossiers "dossier marqu@'e de la lettre S" with name "dossier S" "dossier s" "dossier" "S" "s" "pack" "surprise" "photo", description [;if (self has open) {print "Le dossier est @'ecrit dans une langue aux signes @'etranges et d@'eli@'es, @`a la main. Il n'y a rien d'identifiable dans ce dossier. Hum. ";} else {print "C'est un dossier beige en papier, imprim@'e d'un grand S. ";} ], before [;Take : if (various~=3) {PrendreDossier(3);return 2;} else {Destin(1);return 2;}], has openable; Object potdefer "A l'angle de la rue Mouffetard et de la rue du Pot de Fer" with description [;if (nuit==1) { print"A ce carrefour particulier, deux rues moyenageuses se croisent : la rue du pot de fer, pi@'etonne et bord@'ee de terrasses de restaurants @'a touristes, et la rue Mouffetard, qui monte doucement vers le nord sur la Place Contrescarpe. Au del@`a des restaurants, @`a quelques centaines de m@`etres sur l'ouest, vous trouverez votre @'ecole.^La plupart des magasins pour touristes ferment ou sont d@'ej@`a ferm@'es et les restaurants se remplissent. ";} else { print "A ce carrefour particulier, deux rues moyenageuses se croisent : la rue du pot de fer, pi@'etonne et bord@'ee de terrasses de restaurants @'a touristes, et la rue Mouffetard, qui monte doucement vers le nord sur la Place Contrescarpe. Au del@`a des restaurants, @`a quelques centaines de m@`etres sur l'ouest, vous trouverez votre @'ecole.^Un Giros dont l'enseigne rouge et blanche montre ~Chez Nikos~ s'ouvre devant vous, en face d'un disquaire ~Le Cinqui@`eme Disque~. ";} ], before [;Go : if (nuit==1) {if (noun==in_obj) {print "Ferm@'e !";}}], w_to school, in_to fivedisk, n_to contrescarpe, has scenery; Object fivedisk "Le Cinqui@`eme Disque" with description "C'est un des rares disquaires potables du coin, d'autant plus qu'il a du faire un sacr@'e compromis entre sa client@`ele traditionnelle et la foule de touristes @'etrangers peuplant constamment la rue Mouffetard. C'est un magasin tout en long avec au bout le comptoir, et de part et d'autre sur tous les murs un empilement de CD divers. ", out_to potdefer, has scenery; Object boris "Boris" fivedisk with name "vendeur" "boris" "Boris" "marchand", description "C'est un jeune homme aux yeux fous cach@'es derri@`ere une paire de lunettes @`a monture carr@'ee. Il porte un imperm@'eable l@'eger comme une blouse et range des disques. ", life [; Answer, Ask, Tell: DialogueBoris();""; Attack : "Ouais, fais toi une r@'eputation dans le quartier. "; Kiss: "Ha ha ha. Certainement pas. "; Show, Give: "^^~Grrr~ "; ], initial "^^Un des vendeurs du magasin range une pile de disques tout en accueillant les clients. ", has animate proper; Object nikos "Chez Nikos" with description "Chez Nikos, le meilleur grec de toute la ville --- pour les initi@'es.^Tenu par une fine @'equipe de grecs et d'@'egyptiens que vous connaissez tr@'es bien, c'est un des rares Giros o@`u le Kebab est encore servi dans la Pita avec une viande @'epic@'ee de m@'ethode traditionelle. De vagues photos blanchies sugg@`erent les iles grecques sous un haut comptoir. RFM passe une m@'elop@'ee mi@`evre. ", out_to potdefer, has scenery; Object jardinplantes "Le Jardin des Plantes" with description "Le Jardin Des Plantes, un endroit tranquille et reposant.^Les hauts murs de pierres entourent une grille ancienne qui donne sur une fontaine gard@'ee par des lions de pierre assoupis. Plus loin, une spirale de haies conduit @`a un surplomb o@`u se dresse une tholos-observatoire digne des contes de f@'ees. En deca, un jardin classique bordant la m@'enagerie accueuille tous types de fleurs @'eclatantes en ce d@'ebut d'@'et@'e.^Au bout de ces chemins ensoleill@'ees, un grand b@^atiment se dresse : le Museum d'Histoire Naturelle. ", w_to contrescarpe, in_to galerie, has scenery; Object galerie "La Grande Galerie de L'Evolution" with description "Vous @^etes dans un grand hall recouvert de bois laqu@'e, o@`u vole lentement un squelette de baleine suspendu par des fils invisibles. Un guichet @'electronique d@'elivre des tickets @`a des visiteurs ravis et @'etonnés, marchant le plus souvent le nez en l'air. De l'autre coté d'une paroi de bois, on entend la rumeur soyeuse des visiteurs de la grande galerie. ", before [;Go : if (noun==in_obj) {if (plot_depth<29) {print "^^Vous payez votre ticket d'entr@'ee et vous entrez dans le b@^atiment. ";} else {print "^^Les portes sont ferm@'ees. Un panneau indique : ~Chers visiteurs, suite @`a un accident, le Mus@'ee est ferm@'e jusqu'@`a nouvel ordre.^^La Direction.~ ";return 2;}}], out_to jardinplantes, in_to galeriedown, has scenery; Object galeriedown "Museum d'Histoire Naturelle, niveaux inf@'erieurs" with description "C'est un immense hangar sur quatre niveaux apparents, qui regroupent toute l'histoire de la faune et de la flore dans une immense construction de bois ouverte en son milieu. Des ascenseurs et escaliers de verre m@`enent d'un niveau @`a l'autre.^Vous^@^etes aux niveaux inf@'erieurs, celui des animaux marins et de ~la course de l'@'evolution~, une longue suite d'animaux r@'eunissant les plus beaux sp@'ecimens : ours polaire, rhinoc@'eros, toucan... ", u_to galerieup, out_to galerie, has scenery; Object galerieup "Museum d'Histoire Naturelle, niveaux sup@'erieurs." with description [;if (plot_depth==28) {print "Vous @^etes tout en haut du museum, pench@'ee sur une rambarde de m@'etal et de verre. Dans votre dos, des @'ecran racontent d'une voix anonyme dans une semi-obscurit@'e les pr@'emices de la vie sur terre dans une section du mus@'ee plut@^ot d@'esert@'ee. A votre vision s'offrent quatre @'etages mieux @'eclair@'es rassemblant sur leurs parois papillons, oiseaux, esp@'eces menac@'ees et b@'etail. Vous vous accoudez @`a la rambarde, pensive, scrutant cyniquement le peu de diff@'erence entre les humains agglutin@'es et les animaux qu'ils observent. Le hasard fait alors tomber vos yeux sur la tignasse blonde de Jonas. Il marche silencieusement tout en bas, les @'epaules basses, le nez en l'air sur les immenses squelettes de baleine suspendus au plafond, un casque @'enorme de walkman autour de son cou. Probablement en train d'@'ecouter Mellowman, plaisantez vous int@'erieurement. ";plot_depth=plot_depth+1;} else {print "Vous @^etes tout en haut du museum, pench@'ee sur une rambarde de m@'etal et de verre. Dans votre dos, des @'ecran racontent d'une voix anonyme dans une semi-obscurit@'e les pr@'emices de la vie sur terre dans une section du mus@'ee plut@^ot d@'esert@'ee. A votre vision s'offrent quatre @'etages mieux @'eclair@'es rassemblant sur leurs parois papillons, oiseaux, esp@'eces menac@'ees et b@'etail. ";}], before [;Go : if (plot_depth==29) {if (noun==d_obj) {Baleine();return 2;}}], d_to galeriedown, has scenery; Object belleville "Belleville" with description [; if (ratp==1) {actionmetro();ratp=0;}"Vous @^etes au bout de la rue de Belleville, sous un immense restaurant chinois de quatre @'etages. Devant vous s'@'etend la Rue du Temple, pav@'ee et sale, et ses nombreuses boutiques arabes et @'etranges, qui se prolonge dans la rue de Belleville qui monte en pente raide au creux d'immeubles brunis et vivants jusqu'@`a l'autre bout du vingti@`eme arrondissement. A l'entr@'ee du m@'etro, il y a un vendeur de mais grill@'e dans un foyer mont@'e dans un vieux caddie, et une @'echoppe sauvage de plastification de documents.^Sur le cot@'e de Belleville, vers l'est, derri@`ere une @'eglise, se trouve la boutique ~Mix Magique~. ";], before [; Go : if (noun==s_obj) {print "Nan. Ca vous dit rien d'aller par l@`a. ";return 2;} if (noun==n_obj) {print "Nan. Ca vous dit rien d'aller par l@`a. ";return 2;} if (noun==in_obj) {metro(1);"";} if (noun==w_obj) {metro(1);"";} if (nuit==1) {if (noun==e_obj) {print "Oula, c'est bien sombre et ca ne vous dit pas grand chose d'aller par l@`a @`a cette heure ci !";return 2;}} ], e_to randostreet, has scenery; Object cabine "cabine t@'el@'ephonique" with name "cabine" "telephonique" "phone" "booth", description "Une cabine transparente munie d'un t@'el@'ephone @`a carte. ", found_in randostreet orly anvers frontm, react_before [;Go,Exit,GetOff : if (noun~=cabine) {remove phone2;} ], before [; Push,Take,Attack : style underline;print "Je crois que vous vous @^etes tromp@'e(e) de jeu ;-)";style roman;return 2; Enter : move phone2 to cabine; ], initial "Il y a une cabine t@'el@'ephonique ici. ", has container open enterable static female; Object phone "t@'el@'ephone" with name "telephone" "combine", description [i;i=random(7);switch(i){ 1:"Un t@'el@'ephone ordinaire. "; 2:"Un t@'el@'ephone tr@'es ordinaire. "; 3:"Le st@'er@'eotype du t@'el@'ephone ordinaire. Presque ennuyeux @`a regarder. "; 4:"Vous @^etes persuad@'ee que si vous ouvrez un dictionnaire au terme ~t@'el@'ephone ordinaire~ vous aurez une photo de ce t@'el@'ephone. "; 5:"Un t@'el@'ephone, tapi dans l'ombre, pr@^et @`a bondir. "; 6:"Un t@'el@'ephone plut@^ot myst@'erieux. Non, en fait plut@^ot ordinaire. "; 7:"Vous n'avez jamais aim@'e les t@'el@'ephones. Etres mal@'efiques. "; } ], found_in home randostore halles, before [;Open,Take : print "Vous d@'ecrochez le t@'el@'ephone.^^";style underline;print "(Si vous voulez composer un num@'ero en particulier, utilisez le verbe ~composer~.)^";style roman;return 2;], has static; Object phone2 "t@'el@'ephone" with name "telephone" "combine", description [i;i=random(7);switch(i){ 1:"Un t@'el@'ephone ordinaire. "; 2:"Un t@'el@'ephone tr@'es ordinaire. "; 3:"Le st@'er@'eotype du t@'el@'ephone ordinaire. Presque ennuyeux @`a regarder. "; 4:"Vous @^etes persuad@'ee que si vous ouvrez un dictionnaire au terme ~t@'el@'ephone ordinaire~ vous aurez une photo de ce t@'el@'ephone. "; 5:"Un t@'el@'ephone, tapi dans l'ombre, pr@^et @`a bondir. "; 6:"Un t@'el@'ephone plut@^ot myst@'erieux. Non, en fait plut@^ot ordinaire. "; 7:"Vous n'avez jamais aim@'e les t@'el@'ephones. Etres mal@'efiques. "; } ], before [;Open,Take : print "Vous d@'ecrochez le t@'el@'ephone.^^";style underline;print "(Si vous voulez composer un num@'ero en particulier, utilisez le verbe ~composer~.)^";style roman;return 2;], has static; Object randostreet "A l'Ombre de Saint Augustin" with description [; if (plot_depth==4) {quest4dj();} "Contournant une @'eglise impressionnante, le long de rues plus calmes, vous retrouvez la petite boutique ~Mix Magique~, o@`u transitent les meilleurs vynils de votre connaissance.^Le magasin est ombrag@'e par la structure gothique et ses petits @'etals de disques dans des boites en bois d@'eborde sur le trottoir sur les deux cot@'es. Peu d'importance, car c'est le seul magasin de la rue.^La porte est ouverte.^^L'immeuble @`a cot@'e est en r@'enovation et les ouvriers jettent de temps @`a autre les d@'ecombres du chantier dans une grosse benne cach@'ee dans l'ombre de l'@'eglise. ";], each_turn [;chantier();], w_to belleville, in_to randostore, has scenery; Object benne "grosse benne" randostreet with name "benne" "grosse" "decombres", description "Une grosse benne verte dans laquelle un chantier de r@'enovation d'un immeuble adjacent jette les d@'ecombres inutiles. ", before [;Search : if (~benne.fouilled) {print "Vous cherchez en soulevant un nuage de poussi@`ere qui vous arrache larmes et toussotements. Jonas est blanc de pl@^atre.^";move barre to benne;move bocal to benne;move plaque to benne;benne.fouilled=true;}], fouilled, has scenery container open enterable static female; Object barre "barre de fer" with name "barre" "mine" "levier" "tige" "fer" "barre de fer", description "Un tuyau rectangulaire de m@'etal dur qui a du autrefois soutenir une table. Cool. ", has female; Object bocal "bocal bris@'e" with name "bocal" "bris@'e" "bocal bris@'e" "bocal brise", description "Un bocal fendill@'e sur le cot@'e. Le genre de truc que vous avez toujours r@'ev@'e d'avoir. ", has leger; Object plaque "plaque de pl@^atre" with name "plaque" "pl@^atre" "plaque de platre" "plaque de pl@^atre", description "Une petite plaque informe de pl@^atre consolid@'e. Trop classe. ", has female; Object disquebac "disques" with name 'disque' 'disques' 'bacs' 'bac' 'etageres' 'etagere' 'treteaux' 'presentoirs' 'cartons', description "Pfeu. Des disques que vous connaissez d@'ej@`a sur le bout des doigts. ", found_in randostore fivedisk fnac scene, before [; Take : print "Aucun inter@^et pour vous, vraiment. ";return 2; Search : print "Apr@`es une petite recherche, vous ne trouvez rien qui ne vale la peine d'@^etre emport@'e. ";return 2;], has pluralname static; Object randostore "Mix Magique" with description "La petite boutique ~Mix Magique~ est une pi@`ece carr@'ee tapiss@'ee de posters de reggae et dont le sol est recouvert de tapis moelleux. Sur les murs, au centre, au dessus de vos t@^etes ou @`a vos pieds, ce sont toujours les m@^emes boites de bois remplies de disques vinyl plus ou moins r@'ecents. Une odeur d'ancien impr@`egne l'atmosph@`ere, et une musique roots semble passer ind@'efiniment.^Il n'y a personne ici, sinon Diouf, qui tient le comptoir. ", before [; Go : if (noun==e_obj) {if (dalert==0) {print "^Diouf l@`eve la t@^ete et vous interpelle :^^~Hey ! N'approchez pas de l@`a ! Vous cherchez les ennuis?~^^(Vous reculez prudemment et envisagez un autre stratag@`eme).^^";return 2;} else print "^^Vous profitez de l'inattention de Diouf, concentr@'e sur son client, pour vous glisser dans l'arri@`ere cour.^^La porte se referme silencieusement derri@`ere vous.^";} ], out_to randostreet, e_to panneau, has scenery; Object diouf "Diouf" randostore with name "vendeur" "rasta" "diouf" "marchand" "disquaire" "assistant" "black" "noir", description "Diouf, c'est l'assistant de Rando.^^C'est un africain pure souche qui ne renie pas ses origines : boubou chatoyant, coupe afro impr@`essionnante, regard myst@`erieux.^^Vaguement jaloux de Jonas qui rentre au ~Mix Magique~ en fr@`ere au sens monacal du terme, en fils impossible du Ma@^itre, en brebis @'egar@'e, il ne cache pas son unique profession de foi dans le reggae et consid@`ere d'une moue s@'ev@`ere tout autre production.^^Il tient aujourd'hui, seul, le comptoir de la boutique. ", life [; Answer: DialogueDiouf();""; Ask: DialogueDiouf();""; Tell: DialogueDiouf();""; Attack : "La violence n'est pas la solution. Du moins, pas dans cette situation :-). "; Kiss: "Euuh... "; Show, Give: "Diouf regarde solennelement ",(the) noun," puis hoche la t@^ete en d@'enegation : ~M'interresse pas.~ "; ], has scenery animate proper; Object visiteur "passant" with name "badaud" "homme" "femme" "touriste" "passant", description "Cette personne semble un peu perdue et finalement venue ici plus par curiosit@'e que par recherche d'un titre pr@'ecis. ", life [; Answer, Ask, Tell: "La personne n'est pas vraiment interress@'ee"; Attack : "Rando ne serait pas content si vous abimiez la client@`ele. "; Kiss: "Ouaiis, s@^ur. "; Show, Give: "^~Non Merci.~ "; ], daemon [k; if (location==randostore) { if (dalert==1) {dalert=0;remove visiteur;print "Le touriste paye Diouf et ressort avec son disque sous le bras, tr@'es content. ";} if (visiteur~=child(randostore)) { if (random(6)==1) {move visiteur to randostore;print "Un passant rentre dans le magasin";}""; } if (visiteur==child(randostore)) { k=random(5); if (k==1) {remove visiteur;print "D@'esinteress@'e, le touriste sort de la boutique. ";} if (k==2) {print "Le passant cherche silencieusement dans les @'etag@`eres. ";} if (k==3) {print "La personne fouille dans les boites de disque. ";} if (k==4) {print "La personne se renseigne aupr@`es de Diouf @`a propos d'un album de ";musiquecool();print ".^^Diouf tire un disque vinyl d'un rayon lat@'eral et commence @`a discuter avec le touriste. ";dalert=1;} } } ], has animate; Object panneau "panneau coulissant" with description "Sur le mur est de la boutique, entre deux @'etag@`eres remplies de disques, un grand poster de deux m@`etres rouge vif repr@'esentant le Che.^^En observant plus attentivement, vous remarquez une petite fente tout autour du poster : c'est une porte vers l'arri@`ere boutique, dissimul@'ee sous l'affiche ! ", name 'porte' 'affiche' 'poster' 'Che' 'panneau' 'mur', when_closed "Derri@`ere le poster du Che, vous devinez un panneau de bois ferm@'e. ", when_open "La porte est entrebaill@'ee et s'ouvre sur une cour int@'erieure. ", after [; Open : "^Vous entrebaillez le panneau de bois sans @`eveiller l'attention de Diouf-les-embrouilles. "; ], door_to randocour, door_dir e_to, has static door openable; Object randocour "Cour Int@'erieure" with description "C'est une cour int@'erieure tout en longueur, cach@'ee de la circulation publique comme il y en a tant @`a Belleville. L'endroit est plut@^ot propre et le soleil tombe jusque l@`a en se r@'efl@'echissant sur des volets de t@^ole. Un palmier nain dans un @'enorme pot bloque la moiti@'e du passage qui donne sur une porte barricad@'ee.^Une porte de bois peinte d'@'etoiles bleues m@'ene @`a la boutique ~Mix Magique~ sur le cot@'e est. Tout semble tr@'es calme. ", d_to trappe, w_to randostore, has scenery; Object palmier "palmier nain" randocour with description "Un petit palmier nain dans toute sa fourberie silencieuse. ", name 'arbre' 'pot' 'nain' 'palmier' 'plante' 'arbuste' 'buisson', before [; Push : if (palmier.pushed) {print "Vous avez suffisament pouss@'e de plantes en pot pour aujourd'hui. ";} else {print "^Vous poussez le palmier nain avec l'aide de Loser. Le pot racle le sol avec bruit. Sous le palmier, vous découvrez une trappe de bois vieilli... ";palmier.pushed=true;move trappe to randocour;}""; ], pushed, has scenery; Object trappe "trappe" with description "C'est une trappe carr@'ee d'un m@`etre de cot@'e faite de grosses planches clou@'ees. ", name 'trappe' 'ouverture' 'porte', before [; Open : if (trappe.picked~=2) {print "^Vous tirez sur la trappe en placant vos mains entre les planches, vous tirez de toutes vos forces... ";attend();print "...mais c'est au del@`a des possibilit@'es de vos petits muscles.^^Jonas vous regarde sceptiquement vous escrimer contre la trappe en d@'eroulant tranquillement un chewing-gum. ";trappe.picked=1;return 2;} else {print "^Vous tirez avec Jonas sur la trappe en placant vos mains entre les planches, vous tirez de toutes vos forces... ";attend();print "^^...et Jonas bascule en arri@`ere, lachant prise, et se cogne contre le mur.^Alors qu'il pleurniche, vous lui d@'eclarez : ~Bravo, Loser.~^^";} ], when_open "Une trappe est grande ouverte et descend vers le sous-sol. ", door_to randocave, door_dir d_to, picked, has door static openable female; Object randocave "L'Antre de Rando" with description [; if (randocave.visite~=true) {print "Vous descendez doucement des marches de pierre alors que des volutes d'air @'epais montent doucement le long de votre corps. Vous entendez une musique trip-hop subtile et inconnue alors que vous plongez dans une obscurit@'e aux teintes bleues...^^";attend();randocave.visite=true;randodia=0;}"Vous @^etes dans une grande cave taill@'ee dans la roche, dont les murs ont @'et@'e recouverts de tapis @'epais aux couleurs tr@'es vives. Une odeur @'etrange et enivrante vous attrape le cerveau et vous le presse comme un torchon mouill@'e. Les rythmes lents d'une musique inconnue semblent monter de nulle part.^Une vol@'ee de marches de pierres in@'egales monte jusqu'@`a une trappe en bois au plafond.^Sur le sol, d'immenses coussins et sur le plus grand d'entre eux, un gros pouf bleu nuit brod@'e d'@'etoiles argent, Rando assoupi vous regarde. "; ], visite, u_to randocour, has scenery; Object rando "Rando" randocave with name "rando" "rasta" "homme" "maitre" "Rando" "assistant" "black" "noir", description "^Rando.^^Le Ma@^itre.^^Parmi tous les attrapes-touristes de Paris, il restait une poign@'ee d'@'echoppes, soigneusement rep@'er@'ees par Loser, qui fournissaient du premier choix, avant tout le monde. Et si vous vouliez @^etre *le* precurseur, fallait conna@^itre Rando. Il savait toujours tout.^^Rando, c'est un grand black avec des dreadlocks fines et longues, il parait pas si vieux, mais il n'est pas jeune. Il porte un T-shirt jaune et un short @`a la Jonas, ainsi qu'une paire de sandales. ", life [; Answer, Ask, Tell: DialogueRando();""; Attack : "H@'e. Pas Rando. "; Kiss: "C'est vraiment pas ton genre. "; Show, Give: "Rando d@'etourne ",(the) noun," du revers de sa main : ~Non.~ "; ], has scenery animate proper; Object orly "Aeroport Orly Sud" with description [;if (plot_depth==39) {print "^^Le RER file plein sud, @'emergeant du r@'eseau souterrain comme un @'etalon de la libert@'e. Vous regardez le paysage d@'efiler @`a toute vitesse par la vitre, songeuse.^^Plus question de revenir en arri@`ere, maintenant.^^Vous songez au billet d'avion. Que signifie-t-il vraiment? Un billet d'avion ne peut quand m@^eme pas...enfin, nous verrons bien une fois sur place. ";attend();print "^^Une main se pose encore sur votre @'epaule, et l'on murmure encore @`a votre oreille en secret :^^~Rassurez vous, nous sommes ici pour vous prot@'eger. Content de voir que vous avez tenu jusqu'ici.~^^Et une fois de plus, vous vous retournez et embrassez du regard des gens ordinaires au regard terne sans identifier votre myst@'erieux interlocuteur. ";attend();print "^^Quand arrive votre station de RER (Anthony, avant de prendre Orlyval), vous vous arr@^etez stup@'efaite : devant la porte, quatre hommes en noir, des sbires de Douglas, sont assis sur les strapontins. Mais leur regard est vide, ils semblent inertes, et, pensez vous, probablement hors circuit. Vous remarquez @'egalement avant de quitter le train que l'on a plant@'e sur le revers de chacun de leur col une petite aiguille attach@'ee d'un fil noir.^^";attend();print "Apr@`es huit minutes d'une navette automatique vous conduisant @`a l'aeroport, vous arrivez enfin sur le site d'Orly.^^";plot_depth=plot_depth+1;} else {print "C'est un grand aeroport coup@'e en deux qui envoie ses avions vers des destinations nationales et internationales. Ses diff@'erentes sections sont reli@'ees par un train automatique, l'OrlyVal, qui lui m@^eme rejoint le R.E.R. B en direction de Paris.^^Sous ce hall immense, des gens charg@'es de valises vont et viennent, croisant le pas s@'ev@`ere de militaires, et d'autres, plus l@'egers, de touristes en partance. Droit devant vous, les terminaux attendent pour la validation des billets.^^Le hall passe une douce musique jazzy. ";}], n_to terminal, has scenery; Object terminal "Boarding Check" with description "Vous @^etes face @`a un terminal d'enregistrement, @`a cot@'e d'une porte d@'etectrice de m@'etal. Une jeune femme en uniforme attend paresseusement derri@`ere le terminal, tandis que d'autres voyageurs passent sous le d@'etecteur. ", has scenery; Object femme "hotesse" terminal with name "hotesse" "femme" "employee" "employee" "jeune", description "Une hotesse de l'aeroport sous un terminal d'Air France. Mince et bronz@'ee, ses longs cheveux fins la rendent s@'eduisante et elle ne manque pas d'attirer l'oeil des badauds occasionnels. Elle semble s'ennuyer ferme. ", life [; Answer ,Ask ,Tell: print "^^~Bonjour Mademoiselle, puis-je voir votre billet?~^^"; Attack : "Ne c@'edez pas au d@'esespoir. "; Kiss: "Euh. Non. Tu pr@'ef@'eres les hommes. "; Show, Give: if (noun==billet) {print "^^La demoiselle s'empare du billet et le passe dans un lecteur magn@'etique.^^~Reality Airlines, votre vol est pour dans une heure. (elle prend des notes) Hum, avez vous des bagages @`a enregistrer? Vous avez droit jusqu'@`a...~^^~Non, ca va. Pas de bagages. Combien de temps dure le vol?~^^(elle tapote sur un ordinateur) ~Moins d'une heure. Pas de passeport requis.~^^~Quel est la destination?~ demandez vous innocemment.^^La demoiselle fronce les sourcils : ~Vous plaisantez, j'esp@`ere. Vous avez achet@'e ce billet, n'est ce pas?~^^~Euh, oui, oui.~^^Elle termine l'enregistrement, vous tend votre billet et vous demande ensuite de l'accompagner. Vous passez dans d'immenses halls d@'eserts, m@^eme de vigiles, et elle m@^eme ne semble pas bien rassur@'ee : ~C'est une compagnie sp@'eciale...elle occupe la porte d'envol la plus @'eloign@'ee.~^^";attend();print "Vous avez un mauvais pressentiment. ";attend();print "^^Elle pousse une derniere double porte, et vous d@'ebouchez sur une petite salle d'attente donnant sur une baie vitr@'ee s'ouvrant sur les pistes de d@'ecollage.^^~Merci d'attendre ici. ~^^";various=0;PlayerTo(hallattente);} else {print "^^Votre billet, mademoiselle. ~^^";} ], has scenery animate female; Object hallattente "Hall d'attente" with description "C'est un hall vide et froid, ou de petits bancs de m@'etal recouverts de magazines attendent sur un sol de marbre. Dans un coin, un @'ecran indique le d@'ecompte des secondes en attendant le d@'ecollage. ", has scenery; Object hotesse "hotesse" with name "hotesse" "femme" "employee" "employe" "jeune", description "Une hotesse de l'air. Mince et bronz@'ee, ses longs cheveux fins la rendent s@'eduisante et elle ne manque pas d'attirer l'oeil des badauds occasionnels. Elle semble s'ennuyer ferme. ", life [; Answer ,Ask ,Tell: print "^^~Mademoiselle, puis-je voir votre billet?~^^"; Attack : "Ne c@'edez pas au d@'esespoir. "; Kiss: "Euh. Non. Tu pr@'ef@'eres les hommes. "; Show, Give: if (noun==billet) {print "^^Elle prend votre carte d'embarquement et la vise une nouvelle fois dans le lecteur magn@'etique.^^~Tout est en ordre vous pouvez y aller.~ Elle s'@'ecarte pour vous laisser passer.^^Vous descendez lentement les marches dans le couloir @`a la suite des autres. Vous @'eprouvez une sensation @'etrange...celle d'@^etre effectivement une @'elue, partant pour une destination que peu on eu le privil@`ege d'atteindre.^^Quand vous posez le pied sur la piste de bitume, le mouvement des h@'elices fait voler vos cheveux et vos v@^etements. Vous avancez encore et montez la passerelle. Un officier de bord vous accueille formellement et prend votre billet, puis vous accompagne dans le compartiment passager. ";remove billet;PlayerTo(rearplane);various=0;} ], has animate female; Object steven "touriste" with name "touriste" "barbu" "homme" "chemise" "tongs" "appareil photo", description "Un grand type efflanqu@'e, avec un visage maigre couvert par une barbe claire. Ses cheveux qui lui arrivent jusqu'au cou sont retenus par une casquette @`a l'effigie d'une @'equipe de baseball. Un cordon qu'il porte en collier retient un appareil photo avec un @'enorme objectif. Il porte une paire de lunettes de soleil claires, une chemise @`a fleurs et des tongs. Il tient pr@'es de lui un petit sac de toile aux motifs anglais. ", life [; Answer, Ask, Tell: print "Le type vous fixe intens@'ement mais ne vous r@'epond pas. "; ], each_turn [k; k = random(4); switch(k) { 1 : print "^Le type habill@'e en touriste sifflote ~Noir c'est Noir~.^"; 2 : print "^Le touriste feuillete un magazine de voyages.^"; 3 : print "^Le touriste regarde par la baie un avion d@'ecoller.^"; 4 : print "^Le barbu contemple d'un air vide l'@'ecran de contr@^ole.^"; } ], has animate; Object paku "femme d'affaires" with name "femme" "d^" "affaires" "classe" "blonde" "nez" "noir", description "Une grande femme aux cheveux blonds et lisses, coup@'es au carr@'e, avec un grand nez busqu@'e. Elle est v@^etue d'une robe tr@'es courte qui d@'evoile la longueur immense de ses jambes et un d@'ecollet@'e plongeant. Ses yeux allong@'es semblent voir plus loin que la port@'ee de son regard. Elle transporte avec elle un petit attache-case noir @`a la poign@'ee dor@'ee. ", life [; Answer, Ask, Tell: print "^La femme pose le regard sur vous mais ne vous r@'epond pas. "; ], each_turn [k; k = random(4); switch(k) { 1 : print "^La femme d'affaires rejette la t@^ete en arri@`ere, comme pour dormir. ^"; 2 : print "^La femme ouvre sa malette, consulte un document, puis la referme.^"; 3 : print "^La femme @'etend ses bras le long des deux places assises autour d'elle pour s'@'etirer.^"; 4 : print "^La femme d'affaire vous observe un instant, puis regarde un avion d@'ecoller.^"; } ], has animate female; Object maikal "gros bonhomme" with name "gros" "bonhomme" "toque" "fourrure" "type" "homme" "gras", description "Un type rond et grassouillet, nerveux et potel@'e. Il porte une gabardine de cuir matelass@'ee et une toque de fourrure grise. Deux yeux chassieux sous des sourcils fournis regardent nerveusement de tous cot@'es dans un visage bourrel@'e de graisse. Il fait rouler derri@`ere lui une valise grande comme un frigo. ", life [; Answer, Ask, Tell: print "^~Quoi? Qu'est ce que vous me voulez? Qui @^etes vous? Eloignez vous ! Je n'ai pas besoin de vous !~ "; ], each_turn [k; k = random(4); switch(k) { 1 : print "^Le grassouillet se frotte les mains nerveusement en jetant de regard sur toutes les personnes de la salle d'attente. ^"; 2 : print "^Le type @`a la gabardine se tamponne le front avec un mouchoir. Vous vous demandez s'il sue plus par nervosit@'e ou son accumulation de v@^etements.^"; 3 : print "^Le gros type sursaute soudainement, fouille ses poches, semble rassur@'e et donne des coups d'oeil furtifs de gauche @`a droite.^"; 4 : print "^L'homme avec la toque t@^ate son @'enorme bagage.^"; } ], has animate; Object rearplane "A Bord de l'Airbus 968" with description "Dans la partie arri@`ere de ce petit avion de ligne vingt passagers peuvent s'asseoir sur des places pas sp@'ecialement spacieuses, recouvertes de velours gris. Des petites fen@^etres ovales donnent sur l'ext@'erieur. ", each_turn [; switch(various) { 0 : print "^Les passagers se choisissent un emplacement assez @'eloign@'e les uns des autres, et installent leurs bagages dans les soutes sup@'erieures. (Celle du gros type ayant @'et@'e charg@'ee @`a l'arri@`ere.) ";various=various+1; 1 : print "^L'hotesse ferme le sas d'entr@'ee et passe dans le cockpit. Les autres s'assoient. ";various=various+1; 2 : print "^Vous entendez le bouclement des ceintures tandis que le moteur de l'avion chauffe. ";various=various+1;move hotesse2 to rearplane; 3 : print "^L'hotesse d@'eclare : ~Merci d'attacher vos ceintures.~ ";if (ceinture.attached) {various=various+1;} 4 : style underline;print "^^~Bonjour et Bienvenue @`a bord du vol 968 @`a destination de Paris Orly. Je suis le commandant de bord Charon et nous vous souhaitons un agr@'eable voyage sur les ailes de Reality Airlines.~ ";style roman;various=various+1; 5 : style underline;print "^^~Merci de votre attention : les issues de secours se trouvent @`a l'avant, et @`a l'arri@`ere. Merci de suivre les indicateurs lumineux au sol qui ne manqueront pas de s@'allumer en cas de necessit@'e. ";style roman;various=various+1; 6 : print "^Vous sentez l'avion bouger alors qu'il se positionne au bout d'une piste. ";style underline;print "^^~...en cas d'amerissage vous trouverez...~ ";style roman;print "^^Vous ignorez le discours de l'hotesse, tendue par le fait que vous @^etes peut @^etre sur le point de quitter tout rep@`ere familier pour vous lancer dans l'Inconnu. ";various=various+1; 7 : print "^Les moteurs tournent @`a plein r@'egime, et les freins sont soudainement lach@'es d'un coup. L'avion prend une envol@'ee majestueuse, et vous quittez rapidement le sol. ";various=various+1; 8 : print "^L'avion revient @`a l'horizontale et le voyant des ceintures s'@'eteind. ";style underline;print "^^~Vous pouvez maintenant d@'etacher votre ceinture afin de rejoindre les toilettes ou d'acc@'eder @`a vos bagages. Nous vous prions n@'eanmoins de garder votre ceinture attach@'ee @`a tout autre moment, d'autant plus que nous allons traverser une petite zone de turbulence. Merci. ~ ";various=various+1; 9 : print "^L'avion effectivement a quelque mal @`a se stabiliser. ";various=various+1; 10 : print "^La lumi@`ere de l'ext@`erieur semble diminuer, comme si le temps se couvrait. ";various=various+1; 11 : print "^Vous entendez des bruits de pas ! Comme si l'on marchait sur la carlingue...a l'ext@'erieur !^^Le touriste et la femme d'affaire l@`event la t@^ete, puis croisent le regard d'un air entendu. ";various=various+1; 12 : print "^Le sas est ouvert de l'ext@'erieur ! Dans un sifflement strident, l'air s'@'echappe dans un chaos sans nom. Une main de cuir assome d'un revers l'hotesse et un homme en noir arrache le rideau rouge.^^La femme en robe noire se l@`eve et vous dit : ~Margot, r@'efugiez vous @`a l'arri@`ere de l'appareil, vite !~^^Le gros type s'insurge : ~Mais...c'est un scandale ! Cela ne devait pas se passer comme cela !";various=various+1;move blackmens to rearplane;remove redcurtain;remove hotesse2; 13 : print "^~Pour Lachesis !~ crient en coeur le touriste et la femme, brandissant des armes fa@@conn@'ees comme des pistolets scintillants, s'avan@@cant vers les hommes en noir. ";various=various+1; 14 : print "^Le sas se referme et l'appel d'air s'arr@^ete, m@^eme si l'avion ne semble pas pour autant stabilis@'e. Le touriste et la femme utilisent leurs armes contre les implacables agents de Douglas, tirant semble-t-il des aiguilles attach@'ees de fils noirs tourbillonants. ~Visez leurs v@^etements !~ crie le touriste @`a l'autre. Le gros type rampe au sol. ";various=various+1; 15 : print "^Les hommes en noir s'@'effondrent un par un, touch@'es par les aiguilles volantes. ~Je crois qu'on s'en est bien sorti, cette fois-ci !~ d@'eclare la femme, haletante. ";if (nuit==99) {print "Vous voyez s'@'echapper du corps d'un des hommes @'etendu sur la moquette cinq filaments oranges, s'@'elevant en l'air comme des serpents. Ils s'approchent du touriste. ";} various=various+1;move foranges to rearplane;remove maikal2; 16 : print "^Le touriste repousse du pied le premier corps, mais il semble frapp@'e d'une sorte de d@'echarge @'el@'ectrique et s'@'effondre au sol lui aussi, inerte. ";if (nuit==99) {print "Mais vous, vous avez bien vu qu'un filament orange s'@'etait lov@'e autour de son genou et avait p@'en@'etr@'e son coeur. ^Les filaments oranges s'approchent de la femme. ";} print "La femme semble prise de panique soudaine. ~Bon dieu, murmure-t-elle, les filaments oranges. ~ Elle cherche dans sa poche et extrait une aiguille pass@'ee d'un fil marron. Elle se retourne vers vous avec des yeux d@'esol@'es : ~Je ne peux pas lutter contre ces choses. Tu me comprendrais, si tu savais. ~ ";various=various+1;remove steven2; 17 : print "^Elle passe d'un coup l'aiguille au travers de sa robe et s'@'evanouit dans les airs dans la seconde qui suit. Disparue. ";if (nuit==99) {print "^^Les filaments bondissent sur l'endroit o@`u elle se tenait, sans rien rencontrer. ";} various=various+1;remove paku2; 18 : print "^Vous voyez le gros type qui @'emerge du cot@'e du cockpit, affol@'e : ~Ils ont descendu le pilote ! Douglas me le paiera !~ ";various=various+1;move maikal2 to rearplane;if (nuit==99) {print "Les filaments se dirigent en se tortillant vers vous. ";} 19 : various=various+1;if (nuit==99) {print "Les filaments se dirigent en se tortillant vers vous. ";} 20 : various=various+1;if (nuit==99) {print "Les filaments se dirigent en se tortillant vers vous. ";} 21 : various=various+1;if (nuit==99) {print "Les filaments se dirigent en se tortillant vers vous. ";} 22 : various=various+1;if (nuit==99) {print "Les filaments se dirigent en se tortillant vers vous. Ils sont sur le point de bondir. ";} 23 : print "^Le type se saisit d'un parachute, transpirant de col@`ere. ~Il me le paiera,~ marmonne-t-il sans cesse. A l'ext@'erieur, un @'eclair gigantesque semble entourer l'avion en totale perte de contr@^ole. ";if (plot_depth==41) {if (nuit==99) {print "Vous voyez les filaments bondir d'un coup sur vous, mais ils se grillent instantanement dans le feu que vous avez provoqu@'e. C'est toujours @@ca de moins pour Douglas !";remove foranges;plot_depth=plot_depth+1;various=various+1;} else {print "Vous entendez un petit chuintement suivi d'un cr@'epitement quand les filaments oranges se br@^ulent dans le feu. ";remove foranges;plot_depth=plot_depth+1;various=various+1;}} else {print "Un doux contact vous saisit les membres et le cou lorsque les filaments bondissent sur vous. ";Fin(5);} 24 : print "^Un appel d'air glac@'e, mais moins fort, se fait @`a nouveau sentir quand Maikal ouvre le sas. ~Ma fortune et mon @^ame, il me le paiera !~ hurle-t-il une derni@`ere fois avant de se plonger dans le vide. Le sas se referme peu apr@`es automatiquement, et l'appareil tangue comme une planche de bois sur une mer d@'echain@'ee. ";remove maikal2;various=various+1; } if (various>24 && various<34) {print "^L'appareil semble prendre de la vitesse et piquer du nez. ";various=various+1;} if (various==35) {print "^L'avion fr@^ole la cime d'arbres en arrachant des bouts de carlingue, puis s'@'ecrase au sol dans un d@'eluge de flammes. ";Fin(7);} ], before [;Go : if (noun==n_obj) {if (various<12) {print "^Vous tentez d'aller au cockpit, mais l'hotesse vous en empeche : ~Mademoiselle, seul le personnel de bord @`a acc@`es @`a cette partie de l'appareil ! ";return 2;} else if (various>11 && various <15) {print "^Pour tomber sur les sbires de Douglas? Pas tr@'es malin. ";return 2;} else if (feu in rearplane) {print "^Un feu (allum@'e par vos soins, je vous le rappelle) vous en emp@^eche. ";return 2;} else if (foranges in rearplane) {print "Le contact doux et chaud d'un filament vous enserre le cou. ";Fin(5);return 2;}} ], n_to frontplane, has scenery; Object hublot "hublot" with name "hublot" "hublots" "fenetres" "fenetre" "ouverture" "ouvertures" "vitre" "vitres", description [;switch(various) { 1 : print "Vous voyez l'aeroport. "; 2 : print "Vous voyez l'aeroport. "; 3 : print "Vous voyez l'aeroport. "; 4 : print "Vous voyez l'aeroport. "; 5 : print "Vous voyez l'aeroport. "; 6 : print "Vous voyez l'aeroport. Vous @^etes sur le bout de la piste de d@'ecollage. "; 7 : print "Vous voyez le sol et les maisons qui se r@'etr@'ecissent. "; 8 : print "Vous voyez le sol et les maisons qui se r@'etr@'ecissent. "; 9 : print "Vous voyez un avion qui s'approche du v@^otre @`a toute vitesse ! "; 10 : print "Un avion est au dessus du v@^otre ! A quelques m@`etres au dessus du v@^otre !"; 11 : print "Des individus en noir sautent d'un avion au dessus du v@^otre et avancent sur les ailes ! "; 12 : print "Un avion au dessus du v@^otre s'@'eloigne doucement. "; 13 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas. "; 14 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas. "; 15 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas. "; 16 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas. "; 17 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas. "; 18 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas. "; 19 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas. "; 20 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas. "; 21 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas. "; 22 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas. "; 23 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas. "; 24 : print "Des nuages charg@'es d'@'el@'ectricit@'e qui cachent le sol plus bas, et Maikal qui devient de plus en plus petit dans la tourmente. "; 25 : print "Vous @^etes sous les nuages orageux, qui pourtant sont assez bas. Vous volez au dessus d'une for@^et de sapins. "; 26 : print "Vous @^etes sous les nuages orageux, qui pourtant sont assez bas. Vous volez au dessus d'une for@^et de sapins. "; 27 : print "Vous @^etes sous les nuages orageux, qui pourtant sont assez bas. Vous volez au dessus d'une for@^et de sapins. "; 28 : print "Vous @^etes sous les nuages orageux, qui pourtant sont assez bas. Vous volez au dessus d'une for@^et de sapins. "; 29 : print "Vous @^etes sous les nuages orageux, qui pourtant sont assez bas. Vous volez au dessus d'une for@^et de sapins. "; 30 : print "Vous @^etes sous les nuages orageux, qui pourtant sont assez bas. Vous volez au dessus d'une for@^et de sapins. "; 31 : print "Vous @^etes sous les nuages orageux, qui pourtant sont assez bas. Vous volez au dessus d'une for@^et de sapins. "; 32 : print "Vous @^etes sous les nuages orageux, qui pourtant sont assez bas. Vous volez au dessus d'une for@^et de sapins. "; 33 : print "Vous @^etes sous les nuages orageux, qui pourtant sont assez bas. Vous volez au dessus d'une for@^et de sapins. "; 34 : print "Vous @^etes sous les nuages orageux, qui pourtant sont assez bas. Vous volez au dessus d'une for@^et de sapins. "; } ], found_in rearplane frontplane, has scenery static; Object siege "siege" rearplane with name 'fauteuil' 'siege' 'chaise' 'fauteuils' 'sieges' 'chaises' 'emplacement' 'emplacements' 'places' 'place', description "Un si@`ege pas hyper grand, mais plut@^ot confortable. ", has supporter static enterable scenery; Object ceinture "ceinture" rearplane with name "ceinture" "securite" "ceintures", description "Une ceinture de s@'ecurit@'e en plastique et m@'etal qui se ferme par un clip. ", react_before [;Go ,Exit ,GetOff : if (ceinture.attached) {print "Pas possible : vous @^etes attach@'ee. ";return 2;}], before [;Tie : if (ceinture.attached==2) {print "A quoi bon? Vous @^etes d@'ej@`a attach@'ee ! ";return 2;} else {if (player in siege) {ceinture.attached=2;print "Vous vous attachez avec la ceinture. ";return 2;} else {print "Quel inter@^et? Vous n'@^etes pas assise sur le siege ! ";return 2;}} Untie : if (ceinture.attached==2) {if (various>8) {print "Clic-clac, vous d@'etachez la ceinture. ";ceinture.attached=0;return 2;} else {print "Pas possible, la phase de d@'ecollage n'est pas encore termin@'ee. ";return 2;}} else {print "Ahem. C'est d@'ej@`a d@'etach@'e. ";return 2;} ], attached, has static scenery; Object hotesse2 "hotesse" with name "hotesse" "femme" "employee" "employe" "jeune", description "Une hotesse de l'air. Mince et bronz@'ee, ses longs cheveux fins la rendent s@'eduisante. ", life [; Answer ,Ask ,Tell: print "^^~Mademoiselle, merci d'attendre la fin du d@'ecollage de l'appareil. ~^^"; Attack : "Pourquoi faire? "; Kiss: "Euh. Non. Tu pr@'ef@'eres les hommes. "; ], has animate female; Object steven2 "touriste" rearplane with name "touriste" "barbu" "homme" "chemise" "tongs" "appareil photo", description "Un grand type efflanqu@'e, avec un visage maigre couvert par une barbe claire. Ses cheveux qui lui arrivent jusqu'au cou sont retenus par une casquette @`a l'effigie d'une @'equipe de baseball. Un cordon qu'il porte en collier retient un appareil photo avec un @'enorme objectif. Il porte une paire de lunettes de soleil claires, une chemise @`a fleurs et des tongs. ", life [; Answer, Ask, Tell: print "Le type vous fixe intens@'ement mais ne vous r@'epond pas. "; ], has animate; Object paku2 "femme d'affaires" rearplane with name "femme" "d^" "affaires" "classe" "blonde" "nez" "noir", description "Une grande femme aux cheveux blonds et lisses, coup@'es au carr@'e, avec un grand nez busqu@'e. Elle est v@^etue d'une robe tr@'es courte qui d@'evoile la longueur immense de ses jambes et un d@'ecollet@'e plongeant. Ses yeux allong@'es semblent voir plus loin que la port@'ee de son regard. ", life [; Answer, Ask, Tell: print "^La femme pose le regard sur vous mais ne vous r@'epond pas. "; ], has animate female; Object maikal2 "gros bonhomme" rearplane with name "gros" "bonhomme" "toque" "fourrure" "type" "homme" "gras", description "Un type rond et grassouillet, nerveux et potel@'e. Il porte une gabardine de cuir matelass@'ee et une toque de fourrure grise. Deux yeux chassieux sous des sourcils fournis regardent nerveusement de tous cot@'es dans un visage bourrel@'e de graisse. ", life [; Answer, Ask, Tell: print "^~Quoi? Qu'est ce que vous me voulez? Qui @^etes vous? Eloignez vous ! Je n'ai pas besoin de vous !~ "; ], has animate; Object bluecurtain "rideau bleu" rearplane with name "rideau" "bleu", description "Un rideau bleu qui cache un petit compartiment @`a l'arri@`ere de l'appareil. ", when_closed "Un rideau bleu est pendu @`a l'arri@`ere. ", before [;Open : if (player in siege) {print "Levez vous, d'abord..." ;return 2;} else {if (various<11) {print "^L'hotesse s'approche et arr@^ete votre geste : ~Je suis d@'esol@'ee, mademoiselle, mais cet endroit est r@'eserv@'e au personnel de bord. ~^";return 2;} else {print "Vous tirez le rideau bleu, r@'evelant un compartiment exigu dans lequel se trouve un petit placard et une armoire peinte en rouge. ";move placard to rearplane;move firecloset to rearplane;}}], has static openable; Object placard "placard" with name "placard" "soute" "a" "vivres", description "Un placard marqu@'e de l'inscription ~Repas et boissons~. ", has container openable; Object firecloset "armoire de s@'ecurit@'e" with name "armoire" "securite" "incendie" "peinte" "en" "rouge", description "Une armoire allong@'ee en hauteur et peinte de hachures rouges. ", has container openable female; Object boisson "bouteille de J&B" placard with name "whisky" "bouteille" "JB" "whysky" "whiskey" "alcool", description "Une bouteille marqu@'ee d'une @'etiquette ~Whisky J & B~. ", before [;Empty : if (self.vided) {print " Tout est d@'ej@`a par terre, Margot ! ";return 2;} else {print "Vous videz la bouteille sur le sol devant vous. ";remove alcool;self.vided=true;move flaque to rearplane;return 2;}], vided, has container openable leger female; Object rocket "torche de detresse" firecloset with name "fusee" "lumineuse" "torche" "chimique" "detresse" "rouge", description "Un tube allong@'e en plastique rouge. ", before [;SwitchOff : if (self has on) {print "Ca ne s'@'eteint pas sur commande ! ";return 2;} PutOn : if (second==flaque) {if (self has on) {print "Vous approchez la torche de la flaque d'alcool qui s'enflamme aussit@^ot et des flammes s'@'el@`event dans l'avion. ";remove flaque;move feu to rearplane;plot_depth=plot_depth+1;return 2;} else {print "La torche est @'eteinte, ce ne serait pas bien utile ! ";return 2;}}], after [;SwitchOn : print "Tirant sur une extr@'emit@'e, vous allumez la torche qui cr@'epite doucement et projette des @'etincelles br@^ulantes. ";return 2;] has female switchable leger; Object flaque "flaque d'alcool" with name "flaque" "d^" "alcool" "whisky", description "Une flaque odorante d'alcool est r@'epandue sur le sol. ", has female; Object feu "flammes" with name "feu" "flamme" "flaque" "flammes" "alcool", description "De hautes flammes odorantes coulent le long du sol, sur les traces du whisky, et bient@^ot sur la moquette. ", has female pluralname; Object fireout "extincteur" firecloset with name "extincteur" "securite" "poignee", description "Un gros extincteur rouge (pour utiliser, tournez la poign@'ee). ", before [;Turn : if (feu in rearplane) {print "Vous videz toute la neige carbonique sur les flammes qui se propagent. Difficilement, mais finalement, le feu est compl@'etement @'eteint. ";remove feu;return 2;} else {print "Pour eteindre quoi? ";return 2;}]; Object alcool "whisky" boisson; Object blackmens "hommes en noir" with name 'hommes' 'homme' 'en' 'noir', description "Des types anonymes, habill@'es dans des costumes noirs, avec un imperm@'eable noir. ", has scenery static; Object foranges "filaments oranges", with name 'filament' 'orange' 'filaments' 'oranges', description "Les terribles filaments oranges, se tortillant hideusement sur le sol. ", has scenery; Object redcurtain "rideau rouge" rearplane with name "rideau" "rouge", description "Un rideau rouge qui cache l'acc@`es au cockpit de l'appareil. ", when_closed "Un rideau rouge masque l'acc@`es au cockpit. ", before [;Open : if (various<8) {print "^L'hotesse s'approche et arr@^ete votre geste : ~Je suis d@'esol@'ee, mademoiselle, mais cet endroit est r@'eserv@'e au personnel de bord. ~^";return 2;}], has openable static; Object frontplane "Le cockpit de l'Airbus" with description "L'avant de l'appareil est occup@'e par une minuscule cabine tapiss@'ee de commandes et de clignotants sans vraies significations, et de deux si@`eges. Il y a @'egalement un strapontin pour l'hotesse de bord, qui fait face au sas de sortie. ", each_turn [;various++;;style underline;if (sas has open) { switch(various) { 30 : print "^^Voici le moment de te poser une grande question, Margot.^^"; 31 : print "^^Le Saut de la Foi, Margot.^^"; 32 : print "^^Es-tu pr@^ete, Margot?^^"; 33 : print "^^ES TU PRETE?^^"; 34 : print "^^SAUTE ! MAINTENANT MARGOT ! SAUTE MAINTENANT !^^"; }} style roman;], has scenery; Object sas "sas" frontplane with name "sas" "porte" "secours" "sortie" "porte", description "Le sas de sortie de l'appareil. C'est une porte coulissante m@'etallique munie d'un petit hublot. ~La manipulation de cette sortie doit @^etre execut@'ee uniquement par les membres de l'@'equipage ! previent un @'ecriteau rouge. ", after [;Open : print "Vous ouvrez le sas difficilement. L'air s'engouffre et vous devez vous accrocher @`a un montant m@'etallique pour ne pas @^etre emport@'ee par les tourbillons. Vos cheveux et vos vetements battent au vent.^^Vous entendez une voix qui r@'esonne au fond de votre t@^ete, dans le vacarme infernal de votre situation affreuse et les battements affol@'es de votre coeur qui vous font perdre la raison, et un instant, tout semble s'apaiser. ";style underline;print "^^Garde courage. ";attend();print "^^Fais moi confiance. ";attend();print "^^Quand je te le dirai, tu sauteras dans le vide. ";attend();print "^^Fais moi confiance. ";style roman;print "^^Le vacarme revient subitement dans la furie des tourbillons. ";move vide to frontplane;], when_open "L'air s'engouffre par le sas et s@`eme un chaos sans nom dans lequel vous menacez d'@^etre aspir@'ee @`a chaque instant. ", before [;Close : if (self has open) {print "Vous tendez la main pour fermer le sas, mais le tumulte est trop grand et, risquant de sauter dans le vide, vous pr@'ef@'erez reculer. ";return 2;}], has static openable; Object vide "vide" with name "vide" "nuages" "foret" "sol" "dehors" "fenetre" "en" "bas", description "Le vide, au dehors, tel une entit@'e malfaisante semblant vouloir vous aspirer avec d@'elice et gourmandise. Vous voyez des c@^imes de grands sapins arracher des bouts de nuages plus bas. Mon Dieu que vous @^etes pr@`es du sol ! ", initial "Au del@`a du sas ouvert dont la porte claque, le vide des cieux pris dans une tourmente de tous les diables. ", before [;Enter : if (various==34) {Sautdelafoi();return 2;} else {print "Vous sautez...et tombez pendant pas tr@'es longtemps. Vous ne vous remettrez pas de cette chute, Margot, j'en ai bien peur ! ";Fin(99);}], has static; Object anvers "Station Anvers" with description [; if (ratp==1) {actionmetro();ratp=0;}"La station Anvers est prise en étau entre de vieux immeubles du quartier Pigalle, un Parc Public, une Prison, d'o@`u partent de petites rues grises au travers desquelles l'on entrevoit parfois le sacr@'e coeur et ses tours en As de Pique.^^D'ici vous pouvez aller au m@'etro, vous approcher de la salle L'Elys@'ee Montmartre @`a l'est, ou du Sacr@'e Coeur au nord. ";], before [; Go : if (noun==in_obj) {metro(2);"";} if (noun==w_obj) {metro(2);"";} if (nuit==1) {if (noun==n_obj) {print "L'acc@'es au sacr@'e coeur est ferm@'e @`a cette heure ci !";return 2;}} ], n_to marches, e_to devantem, has scenery; Object marches "Les Marches du Sacr@'e Coeur" with description "Une vol@'ee impressionnante de marches gravit la butte Montmartre jusqu'au Sacr@'e Coeur, ceintur@'e d'une foule de touristes. Autour de ces escaliers, des entrelacs de sentiers qui se perdent dans les jardins adjacents et reviennent sur les contreforts principaux.^^Vous pouvez allez en haut rejoindre l'imposante @'eglise, ou redescendre vers la station Anvers. ", s_to anvers, u_to sacrecoeur, n_to sacrecoeur, has scenery; Object sacrecoeur "Devant le Sacr@'e Coeur" with description "Un imposant b@^atiment se dresse devant vous, tout en haut d'un surplomb magnifique qui vous fait embrasser d'un regard tout Paris.^^Une cohorte de touristes fait la queue devant un chemin balis@'e qui m@`ene @`a l'int@'erieur du lieu saint, et d'autres photographient de long en large le panorama.^^Au sud-ouest, vous remarquez un espace recouvert d'herbe plut@^ot d@'egag@'e qui sert de lieu de parking @`a un petit train @'electrique transportant des touristes tout autour de l'endroit, et @`a l'est, vous avez la place du Tertre. Si vous vous sentez de faire la queue, vous pourrez toujours entrer dans le sacr@'e coeur, ou repartir d'o@`u vous venez en bas des marches. ", d_to marches, s_to marches, w_to tertre, sw_to butte, has scenery; Object butte "La Butte Montmartre" with description "C'est un coin de verdure ceint par une haie m@'etallique et bord@'e de g@'eraniums. ", each_turn [;petittrain();], ne_to sacrecoeur, n_to tertre, has scenery; Object herse "haie m@'etallique" butte with name "haie" "herse" "herse de fer" "haie de fer" "haie m@'etallique" "herse m@'etallique" "porte" "chaine" "chaine rouillee" "chaine rouill@'ee", description "Une haie faite de piquets m@'etalliques d@'elimite le terrain et emp@^eche les gens d'aller du cot@'e des versants trop pentus de la butte. Une petite porte est am@'enag@'ee dans cette haie qui semble solidement ferm@'ee. ", before [; Open : if (various<4) { print "Le petit train vous emp@^eche de vous approcher de la porte. "; } else { if (barre==child(player)) { if (elymentrance==0) { badaboum();} else { print "Non, vous allez pas vous retaper la chute, d'autant plus que vous pouvez rentrer par l'entr@'ee principale maintenant. ";} } else { print "Vous poussez la petite porte de toutes vos forces, elle grince sans c@'eder. "; } }""; ], has scenery; Object tertre "La Place du Tertre" with description "La place du Tertre, lieu hautement touristique, est une petite place carr@'ee hant@'ee de peintres du dimanche et de vendeurs de cartes postales. Tout autour, une ceinture de restaurants et bistros pittoresques donnent sur le coeur de la place agit@'ee d'une houle humaine.^^D'ici, vous pouvez rejoindre le sacr@'e coeur @`a l'est. ", e_to sacrecoeur, s_to butte, has scenery; Object devantem "Devant l'Elys@'ee Montmartre" with description [; if (nuit==1) {print "Une salle plut@^ot prestigieuse avec une entr@'ee...plut@^ot modeste.^^Enfonc@'ee dans un vieux b@^atiment d'avant-guerre entre une @'echoppe de frites et un sex-shop, un parvis discret m@`ene @`a un guichet vide et une double porte grillag@'ee et cadenass@'ee. Au dessus, en lettres rouges, on peut lire : ~Elysee Montmartre~. Sur les cot@'es de l'immeuble, on devine encore des affiches publicitaires de produits qui n'existent plus ou de combats de boxeurs aujourd'hui oubli@'es. ^Une foule surexcit@'ee fait la queue devant le concert qui est sur le point de commencer. Vous ne pouvez m@^eme pas vous approcher de l'entr@'ee. ";} else { print"Une salle plut@^ot prestigieuse avec une entr@'ee...plut@^ot modeste.^^Enfonc@'ee dans un vieux b@^atiment d'avant-guerre entre une @'echoppe de frites et un sex-shop, un parvis discret m@`ene @`a un guichet vide et une double porte grillag@'ee et cadenass@'ee. Au dessus, en lettres rouges, on peut lire : ~Elysee Montmartre~. Sur les cot@'es de l'immeuble, on devine encore des affiches publicitaires de produits qui n'existent plus ou de combats de boxeurs aujourd'hui oubli@'es. ";} ], before [; Go : if (nuit==1) {if (noun==in_obj) {print "Vous bouscoulez quelques individus pour vous frayer un chemin, mais c'est peine perdue, vous ne rentrerez pas. ";return 2;}} else {if (noun==in_obj) {if (elymentrance==1) {print "^^Vous faites un petit signe au technicien @`a travers la porte grillag@'ee et il l'ouvre pour vous laisser entrer dans la salle. ";PlayerTo(elym);} else {print "^^Vous tendez le cou pour voir au del@`a de la porte grillag@'ee.^Vous devinez des ombres qui s'agitent, et le bleu d'un technicien en train de brancher des c@^ables. Vous tapotez contre la porte pour qu'il vous laisse entrer, mais il hoche la t@^ete en d@'en@'egation.^^La porte reste ferm@'ee et vous ne pourrez pas entrer. ";}"";}} ], w_to anvers, has scenery; Object derriereem "Derri@`ere l'Elys@'ee Montmartre" with description "C'est l'arri@`ere cour de la salle de concert, un petit surplomb de b@'eton entour@'e de mauvaise herbe. Manifestement, vous ne pourrez pas grimper la contrescarpe pentue qui m@'ene au Sacr@'e Coeur d'ici. Deux trois poubelles entourent une petite porte de bois @`a la poign@'ee de porcelaine. ", s_to elym, in_to elym, has scenery; Object dj_shadow "type" with name "type" "type blafard" "type malingre" "type blafard et malingre" "homme" "dj" "dj shadow" "shadow" "DJ shadow" "DJ Shadow", description "^C'est un type plut@^ot jeune au visage carr@'e qui s'effile dans un bouc brun-roux. Il porte de tr@'es larges lunettes noires, et un t-shirt noir avec un logo Mercedes @`a l'envers. Il est concentr@'e sur des branchements complexes. ", life [; Answer, Ask, Tell: DialogueShadow();""; Attack : "Ho. Du calme. "; Kiss: "Il est pas assez bizzare pour toi. "; Show, Give: "Le type ne regarde m@^eme pas ",(the) noun,", il a d'autres probl@`emes. "; ], has scenery animate proper; Object elym "L'Elys@'ee Montmartre" with description "Cet ancien Ring o@`u se sont affront@'es les plus grands s'est bien reconverti dans une salle de concert sans gradins ni si@`eges, o@`u l'on danse plus que l'on observe. Des techniciens accroch@'es au plafond installent des @'ecrans videos pour le concert du soir, tandis que d'autres tirent du cablage sur les cot@'es de la salle.^^Un sentiment de respect vous envahit.^^Vous voyez @'egalement du mouvement depuis la sc@`ene, derri@`ere trois platines d@'ebranch@'ees. ", before [; Go : if (noun==out_obj) {print "^Avant de sortir, vous expliquez au technicien @`a l'entr@'ee que vous reviendrez bient@^ot pour qu'il vous ouvre la porte.^";} ], n_to derriereem, out_to devantem, has scenery; Object scene "scene" elym with name "scene" "estrade", description "Au fond de la salle, entre deux immenses banni@`eres sombres, une grande sc@'ene recouverte d'appareillages @'electroniques. ", after [;Enter : montesurscene();], out_to elym, has enterable supporter scenery female; Object halles "Ch@^atelet les Halles" with description "Ch@^atelet les Halles, c'est avant tout un immense centre commercial regroupant toutes sortes de boutiques b@^ati sur un labyrinthe de couloirs souterrains donnant sur presques toutes les lignes de m@'etro parisiennes. Vous @^etes ici @^a l'entr@'ee d'un des doubles escalators s'enfon@@cant droit dans le sous-sol menant au centre commercial, puis plus loin, dans le m@'etro.^Au dessus, un parc @'etrange compos@'e d'arbres espac@'es, de petits bosquets et de fontaines g@'eom@'etriques, entour@'e de b@^atiments prestigieux et s@'ev@`eres tels que l'@'eglise St Augustin ou l'A@'erospatiale.^^Tout autour, de pittoresques restaurants et bistros accueillent les parisiens de passage. Ils s'en vont au sud vers Notre Dame de Paris que l'on devine entre deux immeubles, ou @`a l'est vers les quartiers plus vieux de Paris. ", s_to notredame, e_to sides, d_to intohalles, in_to intohalles, ne_to frontm, has scenery; Object intohalles "Centre Commercial des Halles" with description [; if (nuit==1) {print "Vous @^etes dans un centre commercial dont le design a des relents de science-fiction des ann@'ees 80. Sur trois niveaux, dans un entrelacs confus d'escalators et de passerelles, sous des bulbes de verre et d'acier, des cin@'emas, des boutiques de vetements et de parfums, des restaurants, mais aussi et surtout la fameuse FNAC, merveilleux temple o@`u la consultation des livres et des C.D. en vente est gratuite. Plus bas encore, vous trouverez le r@'eseau des m@'etros.^A propos, ne vous fiez pas au plan multicolore arbor@'e @`a tous les carrefours : il est faux. Les magasins se ferment peu @`a peu et le centre se vide de ses visiteurs. ";} else { print"Vous @^etes dans un centre commercial dont le design a des relents de science-fiction des ann@'ees 80. Sur trois niveaux, dans un entrelacs confus d'escalators et de passerelles, sous des bulbes de verre et d'acier, des cin@'emas, des boutiques de vetements et de parfums, des restaurants, mais aussi et surtout la fameuse FNAC, merveilleux temple o@`u la consultation des livres et des C.D. en vente est gratuite. Plus bas encore, vous trouverez le r@'eseau des m@'etros.^A propos, ne vous fiez pas au plan multicolore arbor@'e @`a tous les carrefours : il est faux. ";} ], before [;Go : if (nuit==1) {if (noun==in_obj) {print "Vous @^etes bloqu@'ee par un vigile. ~On ferme~, d@'eclare-t-il durement. ";return 2;}} ], out_to halles, in_to fnac, d_to rerstation, has scenery; Object fnac "La FNAC des Halles" with description "C'est un grand magasin sur deux @'etages qui propose toutes sortes de produits culturels, mis en libre consultation. Coupant les files d'attente pour les billeteries de spectacles, enjambant les lecteurs de bande dessin@'ees allong@'es sur le sol, vous arrivez rapidement au rayon disques.^L@`a, toutes sortes de pelerins aux ob@'ediences diverses fouillent dans les bacs et @'ecoutent les derniers morceaux. ", out_to intohalles, has scenery; Object vendeurs "vendeurs" fnac with name "vendeurs" "marchands" "hommes" "types" "gars" "vendeur", description "On les identifie facilement @`a leurs gilets verts et bruns. Sous ce gilet, n@'eammoins, la tenue n'est pas formelle, et il s'agit le plus souvent de gens comme vous. Ils veillent @`a ce que les bacs soient bien ordonn@'es et r@'epondent aux diverses questions des visiteurs. ", life [; Answer, Ask, Tell: DialogueVendeurs();""; Attack : "Ouais, pour faire la une des journaux, mais...non. "; Kiss: "Malgr@'e vos ELANS D'AMOUR vous vous retenez et concentrez sur votre mission. "; Show, Give: "^^Non. Franchement, vous avez pas vraiment envie. "; ], initial "^^Au rayon disque, des vendeurs vaquent ici et l@`a au service des clients. ", has animate proper pluralname; Object cddan "~1884~" with name "cd" "1884" "Dan the Automator" "CD" "Cd", description "1884. Vous l'avez enfin trouv@'e. Rando serait fier de vous. Sa pochette est sobre, @'ecrite dans une police vieillote que vous n'auriez pas soup@@conn@'e chez un producteur de Rap et Trip Hop. Aucune autre mention que le titre sur la boite. ", before [; Open : if (location==chambrehome) {OuvertureCd();} else {print "Il n'y a rien ici pour @'ecouter le CD, vous ne voulez pas l'abimer, non?";return 2;} ], after [; Take : if (cddan.picked~=true) {print "Vous prenez le boitier et un frisson @'etrange vous parcourt.^^Vous r@`eglez le prix @`a la caisse, tr@'es impatiente de l'@'ecouter ! ";cddan.picked=true;} ], picked, has openable container proper leger; Object feuillet "feuillet blanc" with name "feuille" "mot" "feuillet" "lettre" "papier", description [; if (plot_depth==13) {plot_depth=plot_depth+1;} print "Une feuille de papier tr@'es fin o@`u sont imprim@'es, dans la police alambiqu@'ee du boitier, les mots suivants :"; style underline; print "^^Ch@`ere Margot,^^J'ai votre enregistrement. Si vous @^etes pr@^ets @`a en payer le prix, rendez vous ce soir @`a 20h30 pr@'ecises au Syndicat des Epiciers.^^Votre ami peut vous accompagner.^^Cordialement,^^D. "; style roman; print "^^Quelle @'etrange invitation. "; ], has leger; Object rerstation "Station de R.E.R." with description "Une grande station de R.E.R. labyrinthique dont les trains m@`enent aux quatre coins de Paris. A cot@'e d'un guichet, entre deux gendarmes sinistres, un plan montre les destinations possibles : La D@'efense, L'aeroport Orly, Marne-la-vall@'ee, L'aeroport Charles de Gaulle...^Des militaires arm@'es sillonent et interrogent des gens pris au hasard. Dans un coin, vous voyez des vendeurs @`a la sauvette de cartes t@'el@'ephoniques, et dans un autre, d'immenses queues de personnes voulant avoir acc@'es aux points informatiques-internet gratuits.^D'ici vous pouvez sortir, prendre le R.E.R. ou le metro. ", before [; Go : if (noun==in_obj) {if (plot_depth>38) {metro(4);"";} else {metro(3);"";}} ], out_to intohalles, u_to intohalles, has scenery; Object notredame "Notre Dame de Paris" with description [;if (plot_depth==38) {print "Devant une grande place rectangulaire inond@'ee de soleil, entour@'ee de part et d'autre par la Seine sur laquelle sont lanc@'es d'harmonieux ponts, sous un envol pittoresque de pigeons, Notre Dame de Paris se dresse dans toute sa gothique splendeur.^Une trentaine de saints de pierre contemplent gravement les l@'egions silencieuses de touristes attendant patiemment leur tour de pouvoir visiter ce pour quoi ils ont parfois fait le tour de la plan@`ete.^Si vous marchez un peu au Nord, passant le pont d'Arcole, vous rejoindrez les Halles.^^Tremblante encore de frayeur, vous vous asseyez @`a terre pr@`es de la grille que vous refermez pour toujours. Vous reprenez votre souffle en go@^utant le bonheur sans limites d'@^etre de nouveau au soleil, comme si ce dernier pourrait vous prot@'eger de tout ennemi.^^Certains touristes vous regardent (et vous reniflent) avec d@'ego@^ut et s'@'eloignent avec d@'edain. Mais vous vous en moquez. ";attend();print "^^Une main gant@'ee de cuir brun se pose sur votre @'epaule. ";attend();print "Un visage s'approche du v@^otre par derri@`ere, et vous l'entendez murmurer :^^";style underline;print "Prudence. Ils sont comme les filaments de mon fr@`ere. Ils te voient. Et si tu ne peux pas les voir toi-m@^eme, tu ne pourras pas les @'eviter. ";style roman;attend();print "^^La voix - mais vous avez la conviction qu'il ne s'agissait pas d'une voix - s'arr@^ete et l'emprise se relache. Le temps de vous retourner, vous croyez apercevoir, entre une masse de touristes, une grande silhouette derri@`ere laquelle se balance une cape, avant qu'elle ne disparaisse comme un fant@^ome. ";attend();@erase_window -1;style underline;print "^^^~Qu'ai je vu Lachesis?~^^~Silence, P@`ere. J'en ai assez de mon propre fr@`ere d'@^etre continuellement contre moi.~^^~Et depuis quand influons nous sur la trame de l'int@'erieur?~^^~Depuis qu'il s'en fait sentir le besoin. P@`ere, cette jeune fille n'est ni la seule ni la premi@`ere. Ni la derni@`ere. Avec le temps j'ai r@'euni des fils - des fils approch@'es par Clothos, et qui lui ont r@'esist@'e. Je les envoie imm@'ediatement.~^^~Et pourquoi ne pas leur laisser suivre leur destin ainsi qu'il est convenu?~^^~Parce que la convention et les r@`egles du jeu ont chang@'ees depuis que Clothos tisse avec des fils qu'il arrache de notre oeuvre.~^^~Cela ne pr@'esage rien de bon. Rien de bon.~^^";style roman;plot_depth=plot_depth+1;} else if (nuit==1) { print "Devant une grande place rectangulaire qu'@'eclairent les derniers rayons d'un soleil rosissant, entour@'ee de part et d'autre par la Seine sur laquelle sont lanc@'es d'harmonieux ponts, sous un envol pittoresque de pigeons, Notre Dame de Paris se dresse dans toute sa gothique splendeur.^Une trentaine de saints de pierre contemplent gravement les quelques parisiens et les couples amoureux qui profitent de la magie de l'endroit pour leurs escapades cr@'epusculaires.^Si vous marchez un peu au Nord, passant le pont d'Arcole, vous rejoindrez les Halles. ";} else { print"Devant une grande place rectangulaire inond@'ee de soleil, entour@'ee de part et d'autre par la Seine sur laquelle sont lanc@'es d'harmonieux ponts, sous un envol pittoresque de pigeons, Notre Dame de Paris se dresse dans toute sa gothique splendeur.^Une trentaine de saints de pierre contemplent gravement les l@'egions silencieuses de touristes attendant patiemment leur tour de pouvoir visiter ce pour quoi ils ont parfois fait le tour de la plan@`ete.^Si vous marchez un peu au Nord, passant le pont d'Arcole, vous rejoindrez les Halles. "; } ], before [;Go : if (noun==n_obj) {if (plot_depth==38) {if (nuit~=99) {print "Vous remontez la place du Ch@^atelet pour rejoindre l'entr@'ee du centre commercial quand, au d@'etour d'une rue, on vous tire par le bras.^^";attend();print "Votre agresseur semble tout d'abord invisible, mais vous ne l'identifiez, h@'elas, que trop rapidement. ";attend();style underline;print "^^Je suis d@'esol@'e. Je t'avais pourtant pr@'evenue. ";style roman;Fin(5);return 2;}}}], n_to halles, has scenery; Object marais "Quartier du Marais" with description "Le coeur de Paris, un entrelacs de rues pav@'ees et courbes, o@`u chaque coin de rue r@'ev@`ele un b@^atiment cach@'e aux @'elans gothiques sublimes. Des galeries d'arts glac@'ees succ@`edent aux bars gays et autres boutiques de souvenirs et cadeaux de mauvais go@^ut.^^Droit devant, @`a l'est, c'est le quartier juif, et si vous revenez @`a l'ouest, vous retrouverez le quartier des halles. ", w_to sides, nw_to sides, e_to goldenberg, has scenery; Object goldenberg "Rue des Rosiers" with description "C'est le quartier juif traditionnel de Paris, o@`u les @'echoppes de falafel alternent avec les librairies. A l'angle de la rue des rosiers et de la rue des @'ecouffes que vous pourrez suivre vers le sud, une somptueuse patisserie se dresse. ", s_to ecouffes, w_to marais, has scenery; Object ecouffes "Rue des Ecouffes" with description "C'est une petite rue peu fr@'equent@'ee sur laquelle les vieux immeubles se penchent pour cacher presque le ciel. Les trottoirs pav@'es irr@'eguliers donnent sur un bar @`a la devanture mauve, une @'epicerie orientale, et un magasin de disques aux couleurs acides qui porte l'enseigne ~Happy Samples~", before [;Go : if (nuit==1) {if (noun==in_obj) {print "Le magasin est ferm@'e @`a cette heure-ci !";return 2;}}], n_to goldenberg, in_to happysamples, has scenery; Object happysamples "Happy Samples" with description "Un int@'erieur aux murs et meubles blancs, orn@'e de pochettes brillantes de vinyles aux noms obscurs, parfois m@^emes anonymes. Un musique indus ponctue doucement le temps qui passe. ", out_to ecouffes, has scenery; Object sampler "vendeur" happysamples with name "vendeur" "marchand" "homme" "type" "gars", description "C'est un type tellement maigre qu'il pourrait passer pour un malade dans cette chambre d'h@^opital @'etrange. Mais au sein de son visage maigre br@^ulent deux yeux vifs et noirs, passionn@'es.^Il porte une veste en plastique bleu sombre et des baskets jaunes vif, et sur sa t@^ete, une kippa. ", life [; Answer, Ask, Tell: DialogueSampler();""; Attack : "Bof, @`a quoi bon. "; Kiss: "Pas assez gros pour toi. "; Show, Give: "^^~Non merci, sans fa@@cons~ "; ], initial "^^Le vendeur du magasin se trouve derri@`ere un comptoir vide et vous regarde avec curiosit@'e. ", has animate proper; Object dictaphone "dictaphone" with name "dictaphone" "enregistreur" "magnetophone", description "C'est un dictaphone de haute qualit@'e mais qui a fait son temps. Noir et us@'e sur les bords, il a @'egalement un gros autocollant jaune et noir qui marque ~Radio B@'eton~. Il appartient @`a Jonas, et semble en bon @'etat de fonctionnement. ", before [;SwitchOn,SwitchOff : print "Pour utiliser le dictaphone, placez vous pr@`es de ce que vous voulez enregistrer et tapez ~enregistrer~ ";return 2;], has switchable leger; Object shadowdisk "disque pour le concert de DJ shadow" with name "disque" "vinyle" "vinyl", description "Le disque compil@'e par Happy Samples sp@'ecialement pour le concert de DJ Shadow. Sa couverture est blanche, il n'y a qu'une signature @'ecrite au marqueur rouge dessus. ", has leger; Object forestcd "CD collector de Forest for the Trees" with name "cd", description "Le CD de Forest For The Trees num@'erot@'e. Bon vous avez d@'ej@`a une copie chez vous, mais c'est toujours un plus @`a votre collec'. ", has leger; Object frontm "Devant le Mus@'ee Pompidou" with description "Le mus@'ee est une cr@'eation @'etrange dont tous les @'el@`ements de construction sont apparents et color@'es. C'est un b@^atiment rectangulaire qui semble avoir gliss@'e au bas d'une pente dall@'ee surplomb@'ee par un pot @`a fleurs vide, gigantesque et dor@'e. Vous pouvez contourner le mus@'ee par le nord est ou le sud, ou revenir aux halles au sud-ouest. ", ne_to siden, s_to sides, sw_to halles, has scenery; Object sides "Mmm...Merveilleuses Fontaines" with description "Un bassin rectangulaire fait face au cot@'e sud et inexpressif du mus@'ee d'art moderne. Des sculptures d'art moderne, en perpetuel mouvement, lance des jets tout le long du bassin. Tout autour, des restaurants cozy ou d@'eco, et des petites rues pav@'ees qui pr@'efigurent le quartier du marais que vous venez d'aborder. Vous pourrez entrer dans son coeur en poursuivant @`a l'est, rejoindre le mus@'ee au nord, contourner le mus@'ee au nord ouest.^Vous @^etes @`a l'est des Halles. ", w_to halles, n_to frontm, ne_to sidew, e_to marais, has scenery; Object siden "A L'Ombre de L'Art Moderne" with description "Vous @^etes dans un petit passage sous une partie du mus@'ee et passablement sombre et frais, soumis @`a la turbulence de la rue du Renard tout pr@'es. Vous pouvez rejoindre l'entr@'ee principale du mus@'ee au sud-ouest, ou contourner le mus@'ee par le sud-est. ", sw_to frontm, se_to sidew, has scenery; Object sidew "Rue du Renard" with description "Derrri@`ere les ascenseurs de service du mus@'ee, sous d'imposants tuyaux color@'es, une voie rapide ouvre le quartier aux petites rues en deux parties rejet@'ees sur chaque cot@'e. Au del@`a de l'avenue parcourue de voitures, vous apercevez un curieux b@^atiment aux fen@^etres art d@'eco surmont@'ees d'ornements ressemblant @`a des sourcils fatigu@'es.^Vous pouvez traverser la rue vers l'est, ou revenir sur vos pas @`a l'ouest. ", w_to sides, nw_to siden, e_to syndicat, has scenery; Object syndicat "Devant le Syndicat des Epiciers" with description [;if (plot_depth==18) {Fin(1);return 2;} else {print "Sous une facade @'etrange, toute en rondeurs, un blason de pierre affiche : ^~Syndicat des Epiciers - Un pour tous, tous pour un ~.^Les grandes fen@^etres sont completement opaques et l'immeuble a un air vieux, peu entretenu, problablement jamais visit@'e et pas tr@'es rassurant. La double porte de bois recouverte de clous de bronze semble solidement ferm@'ee. ";}], w_to sidew, e_to portesyn, in_to portesyn, has scenery; Object portesyn "double porte" syndicat with description "Une double porte de bois rivet@'ee par de petites pi@`eces de m@'etal. ", name 'porte' 'porte en bois' 'double porte' 'portes' 'portes de bois' 'clous', when_closed "Ferm@'ee et hautaine. ", when_open "La porte semble relach@'ee, comme si une simple pouss@'ee pouvait l'ouvrir. ", before [; Attack : if (nuit==1) { if (self has locked) {print "^Vous entendez des verrous que l'on tire brusquement. Un majordome @`a l'air s@'ev@`ere ouvre l'une des portes. ";attend();print" Gravement, il dit : ~Margot. Jonas. Vous @^etes attendus.~^Il se retourne, pr@'esumant que vous le suivrez, et laisse retomber le battant de la porte. ";give self ~locked;give self open;return 2;} else {print "Vous frappez, mais vous vous apercevez ce faisant que le battant de la porte est lib@'er@'e de tout verrou. Vous attendait-on? ";return 2;}} else {if (self has locked) {print "^Vous frappez, mais personne ne vous r@'epond. ";return 2;} else {print "Vous frappez, mais vous vous apercevez ce faisant que le battant de la porte est lib@'er@'e de tout verrou. Vous attendait-on? ";return 2;}} ], door_to hallsyndicat, door_dir e_to, has static door openable lockable locked female scenery; Object hallsyndicat "Antichambre" with description [;if (plot_depth<32) {print "Vous @^etes dans un couloir capiton@'e et meubl@'e d'objets exotiques en bois laqu@'e. Un miroir parsem@'e de taches de vieillesse vous observe de sa mate placidit@'e. Vos pas semblent @'etouff@'es par une @'epaisse moquette sans motif. A l'autre bout du couloir, vers l'est, vous voyez les @'eclats bleus d'une pi@`ece mieux @'eclair@'ee, et les @'eclats sonore d'une musique douce et de convives enthousiastes";} else {print "Un couloir de ciment nu et poussi@`ereux s'avance derri@`ere la porte et se prolonge jusqu'@`a une pi@`ece faiblement @'eclair@'ee dont vous ne distinguez rien. Les murs sont rugueux et sordides, les proportions, strictement carr@'ees, oppressantes. De temps @`a autre, un cafard longe une ar@^ete de la paroi. ";}], out_to syndicat, w_to syndicat, e_to diningroom, has scenery; Object diningroom "Salle de Reception" with description [; if (plot_depth<32) { if (plot_depth==15) { ArriveeRepas();} else { print "C'est une salle h@'emisph@'erique, un d@^ome peint en bleu nuit et constell@'e de petits spots en forme d'@'etoiles regroup@'ees en amas harmonieux. Un pianiste en livr@'ee blanche joue le th@'eme tr@'es doux et traditionnel de ~Feeling Good~, pour le confort d'une vingtaine de couples attabl@'es autour de petites tables rondes supportant des plats raffin@'es. Des serveurs vont et viennent au service de ces personnes obs@'equieusement.^Un passage sur le cot@'e ouest ouvre un rectangle noir dans le bleu uni des murs. ";} } else { print "Le d@'ebarras qui g@^it devant vos yeux n'a plus commune mesure avec l'extravagante salle de la veille : on devine encore le bleu terne du plafond peint, sous, semble-t-il des ann@'ees de poussi@`ere, et peut @^etre aussi les tables dans les d@'ebris de bois pourri et moisi qui jonchent un sol d@'ej@`a encombr@'e de d@'ebris de pierre. Par une fen@^etre bris@'ee un trait de lumi@`ere illumine l'endroit faiblement. ";} ], before [; Go : if (plot_depth<18) {if (noun==n_obj) {print "Nan, Margot, pas possible. Pas par l@`a. ";return 2;}} ], w_to hallsyndicat, n_to portepassage, has scenery; Object clothos "Monsieur D." diningroom with name "homme" "hote" "d" "D" "douglas" "clothos", description "C'est un homme au petit visage rond, sans vraiment d'@^age pr@'ecis, peut-@^etre la trentaine, peut-@^etre plus. Il est v@^etu d'un costume sobre mais de grande classe, d'un brun sombre. Ses cheveux sont liss@'es et plaqu@'es dans une raie sur le cot@'e sage, et une fine moustache tr@'es bien entretenue prend naissance sur sa l@`evre sup@'erieure. Son regard est transper@@cant. ", initial "L'homme @`a la table semble vous @'evaluer du regard. ", life [; Answer,Ask,Tell: "L'homme pointe d'un index pas convaincu la soupi@`ere fumante, vous invitant @`a manger. "; Attack : "Non, attendons d'en savoir plus. "; Kiss: "Ah non, ca va pas @^etre possible. "; Show, Give: "L'homme m@'eprise souverainement ",(the) noun," d@'etournant le regard imm@'ediatement . "; ], has animate proper; Object chair "chaise" diningroom with name "table" "chaises" "fauteuil" "diner" "chaise", description "La table et la chaise sont en bois sombre verni, au toucher agr@'eable. ", react_before [; Go,Exit,GetOff : if (player in chair) { if (plot_depth==17) {print "Vous vous levez d'un bond @`a la suite de Douglas, attrapant le bras de Jonas :^~Hey, on finit pas la soupe?~ demande-t-il.^Le temps que vous tourniez la t@^ete, Douglas a d@'ej@`a disparu au travers de la petite porte. ";plot_depth=plot_depth+1;various=17;PlayerTo(diningroom);return 2;} else {print "Vous vous levez en faisant crisser la chaise sur le parquet. ";PlayerTo(diningroom);return 2;} } ], after [; Enter : "Vous vous asseyez @`a la table du centre, devant les soupi@`eres fumantes. "; ], has scenery supporter female static enterable; Object potage "potage" diningroom with description "Dans une soupi@`ere d'argent @'etincelant, un potage orang@'e @`a l'odeur de citrouille d@'egage un mince filet de fum@'ee d@'elicieusement odorante. ", name "potage" "soupiere" "soupe" "assiette" "cuillere", before [; Take : if (chair~=parent(player)) {print "Asseyez vous @`a la table, d'abord ! ";return 2;} Smell : "Ca sent le potiron. "; Eat, Taste : if (plot_depth==16) {DialogueDouglas();return 2;} else {print "^Gloups. Mmm. Pas Mauvais. (Vous go@^utez et en laissez un peu.) ";return 2;} ], initial ""; Object portepassage "petite porte" with description [;if (plot_depth<32) {print "C'est une petite porte bien dissimul@'ee dans la paroi du mur, peinte en bleu nuit, dont la poign@'ee est presque invisble. ";} else {print "A peine tenue par des gonds rouill@'es, la porte de bois moisie est sur le point de tomber en poussi@`ere";}], name 'porte' 'passage' 'ouverture' 'petite', door_to [;if (plot_depth<32) {return passage;} else {return escalier;}], door_dir n_to, has static door openable female; Object passage "Un Myst@'erieux Passage" with description [;print"Vous @^etes dans un couloir recouvert de boiseries sur les murs et plafonds, nu de tout meuble et faiblement @'eclair@'e par de fam@'eliques ampoules. Au bout de ce couloir en l@'eg@`ere pente descendante, un croisement part dans les quatre directions : Sud (vers la grande salle @`a manger), Est, Ouest, et Nord.^^";style underline;print "(Vous avez la tr@'es nette sensation d'entrer dans un territoire un peu dangereux pour une aventuri@`ere de votre envergure, ne remarquez vous rien d'anormal depuis quelque temps?^^Je vous conseille de vous tenir sur vos gardes !)^"; style roman;], s_to diningroom, n_to smallhalls, e_to smallhalls, w_to smallhalls, has scenery; Object escalier "Un escalier sans fin" with description [;print "Vous @^etes en haut d'un grand escalier aux marches de ciment, puis de pierre brute, qui s'enfonce dans des t@'en@'ebres totales o@`u m@^eme le son semble englouti.^^";style underline;print "Nous ne plaisantons plus, Margot, semble-t-il. Faites tr@'es attention.^"; style roman;], before [;Go : if (noun==d_obj) {print "Rassemblant tout votre courage, vous entamez une longue descente.^^Au bout d'une centaines de marches, alors que le noir total vous a aspir@'e et que vous n'avancez plus qu'@`a tatons sur la pierre nue et suintante, vous percevez des coups de pioche.^^Des coups de pioche au del@`a m@^eme de vos battements de coeur.^^Parfois d'autres bruits, comme des fr@'emissements, semblent courir derri@`ere vous, vous gla@@cant le sang. Enfin vous posez pied sur un palier et vos yeux habitu@'es aux t@'en@'ebres distinguent les contours de l'endroit. ";}], s_to diningroom, d_to portecaverne, has scenery; Object smallhalls "Un Petit Couloir" with description [; print "Vous @^etes dans un petit couloir, en tous points semblable au pr@'ec@'edent...@'etrange...^^"; if (direc==1) { if (couloir==5) {print "Vous @^etes arriv@'ee dans un cul-de-sac. Il ne reste plus qu'@`a faire marche arri@`ere.^";}!sud if (couloir==1) {print "Il n'y a apparamment qu'une seule sortie que le couloir suit vers le nord. ";}!nord if (couloir==2) {print "Vous @^etes @`a un embranchement : vous pouvez aller soit vers l'est, soit vers le nord. ";}!nord est if (couloir==3) {print "Vous @^etes @`a un croisement : le couloir part ici dans trois directions @`a angle droit : vers le nord, vers l'est ou vers l'ouest. ";}!nord est ouest if (couloir==4) {print "Le souterrain part maintenant dans les quatre directions : Est, Ouest, Nord, Sud. ";} } if (direc==2) { if (couloir==5) {print "Vous @^etes arriv@'ee dans un cul-de-sac. Il ne reste plus qu'@`a faire marche arri@`ere.^";}!est if (couloir==1) {print "Il n'y a apparamment qu'une seule sortie que le couloir suit vers l'ouest. ";}!ouest if (couloir==2) {print "Vous @^etes @`a un embranchement : vous pouvez aller soit vers le nord, soit vers l'ouest. ";} if (couloir==3) {print "Vous @^etes @`a un croisement : le couloir part ici dans trois directions @`a angle droit : vers le nord, vers le sud ou vers l'ouest. ";} if (couloir==4) {print "Le souterrain part maintenant dans les quatre directions : Est, Ouest, Nord, Sud. ";} } if (direc==3) { if (couloir==5) {print "Vous @^etes arriv@'ee dans un cul-de-sac. Il ne reste plus qu'@`a faire marche arri@`ere.^";}!ouest if (couloir==1) {print "Il n'y a apparamment qu'une seule sortie que le couloir suit vers l'est. ";}!est if (couloir==2) {print "Vous @^etes @`a un embranchement : vous pouvez aller soit vers l'est, soit vers le nord. ";} if (couloir==3) {print "Vous @^etes @`a un croisement : le couloir part ici dans trois directions @`a angle droit : vers le nord, vers l'est ou vers le sud. ";} if (couloir==4) {print "Le souterrain part maintenant dans les quatre directions : Est, Ouest, Nord, Sud. ";} } if (direc==4) { if (couloir==5) {print "Vous @^etes arriv@'ee dans un cul-de-sac. Il ne reste plus qu'@`a faire marche arri@`ere.^";}!nord if (couloir==1) {print "Il n'y a apparamment qu'une seule sortie que le couloir suit vers le sud. ";}!sud if (couloir==2) {print "Vous @^etes @`a un embranchement : vous pouvez aller soit vers l'est, soit vers le sud. ";} if (couloir==3) {print "Vous @^etes @`a un croisement : le couloir part ici dans trois directions @`a angle droit : vers le sud, vers l'est ou vers l'ouest. ";} if (couloir==4) {print "Le souterrain part maintenant dans les quatre directions : Est, Ouest, Nord, Sud. ";} } ], before [; Go : if (noun==s_obj && direc==2 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==s_obj && direc==2 && couloir==1) {print "Pas possible par l@`a. ";return 2;} if (noun==s_obj && direc==2 && couloir==2) {print "Pas possible par l@`a. ";return 2;} if (noun==s_obj && direc==3 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==s_obj && direc==3 && couloir==1) {print "Pas possible par l@`a. ";return 2;} if (noun==s_obj && direc==3 && couloir==2) {print "Pas possible par l@`a. ";return 2;} if (noun==s_obj && direc==4 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==s_obj && direc==2 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==n_obj && direc==1 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==n_obj && direc==2 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==n_obj && direc==2 && couloir==1) {print "Pas possible par l@`a. ";return 2;} if (noun==n_obj && direc==3 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==n_obj && direc==3 && couloir==1) {print "Pas possible par l@`a. ";return 2;} if (noun==e_obj && direc==1 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==e_obj && direc==1 && couloir==1) {print "Pas possible par l@`a. ";return 2;} if (noun==e_obj && direc==3 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==e_obj && direc==4 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==e_obj && direc==4 && couloir==1) {print "Pas possible par l@`a. ";return 2;} if (noun==w_obj && direc==1 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==w_obj && direc==1 && couloir==1) {print "Pas possible par l@`a. ";return 2;} if (noun==w_obj && direc==1 && couloir==2) {print "Pas possible par l@`a. ";return 2;} if (noun==w_obj && direc==2 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==w_obj && direc==4 && couloir==5) {print "Pas possible par l@`a. ";return 2;} if (noun==w_obj && direc==4 && couloir==1) {print "Pas possible par l@`a. ";return 2;} if (noun==w_obj && direc==4 && couloir==2) {print "Pas possible par l@`a. ";return 2;} ], after [; Go : if (noun==s_obj) {direc=4;couloir=random(5);various=various-1;if (various==0) {Surprise();return 2;}} if (noun==n_obj) {direc=1;couloir=random(5);various=various-1;if (various==0) {Surprise();return 2;}} if (noun==e_obj) {direc=3;couloir=random(5);various=various-1;if (various==0) {Surprise();return 2;}} if (noun==w_obj) {direc=2;couloir=random(5);various=various-1;if (various==0) {Surprise();return 2;}} ], s_to smallhalls, n_to smallhalls, e_to smallhalls, w_to smallhalls, has scenery; Object fantomas "fantomas" smallhalls with description "Vous ne voyez rien de tel. ", each_turn [i; i=random(10);switch(i) { 1: print "Vous voyez l'ombre d'un homme, peut-@^etre Douglas, disparaitre dans un coin de couloir. Vous @^etes sur la bonne voie ! "; 2 : print "Quand vous marchez, le parquet grince sinistrement sous vos pas. "; 3 : print "Vous entendez un rire glacial r@'esonner faiblement dans le d@'edale de couloirs. "; 4 : print "Vous entendez un ~clic~ et un mouvement derri@`ere vous. Les couloirs seraient-ils en train de bouger? "; 5 : print "Vous avez la tr@'es nette sensation que la pi@`ece est en train de bouger. "; 6 : print "Vous entendez les bruits de myst@'erieux coups de pioche dans le lointain. "; 7 : print "Une lumi@`ere fugace passe rapidement derri@`ere vous ! "; 8 : print "Un silence sinistre @'etouffe tous vos mouvements. "; 9 : print "Vous @^etes persuad@'e d'@^etre d@'ej@`a pass@'e ici. "; 10 : print "Vous avez la t@^ete qui tourne. "; } ], has scenery; Object portecaverne "La Porte" with description [;if (plot_depth<32) {print "Vous @^etes devant une double porte de pierre aux gonds de bronze, suffisamment entrebaill@'ee pour laisser passer un homme @`a la fois, et d'o@`u filtre une lumi@`ere bleue et pulsante surr@'eelle.^^Cette porte est plein nord, supposez vous. Derri@`ere vous, il n'y a que le d@'edale de couloirs de bois dont les lumi@`eres se sont maintenant @'eteintes, vous laissant peu de choix quand @`a la suite de votre parcours. ";} else {print "Vous @^etes devant une double porte de pierre aux gonds de bronze, suffisamment entrebaill@'ee pour laisser passer un homme @`a la fois, et d'o@`u filtre une lumi@`ere bleue et pulsante surr@'eelle.^^Cette porte est plein nord, supposez vous. Derri@`ere vous, il n'y a que les centaines de marches qui grimpent dans les t@'en@'ebres, vous laissant peu de choix quand @`a la suite de votre parcours. ";}], before [; Go : if (noun~=n_obj) {if (plot_depth>32) {print "Remonter ces centaines de marche, dans le noir? Vous n'en avez pas le courage. ";return 2;} else {print "^Euh, tr@'es franchement, ce labyrinthe de couloirs, dans le noir, ca vous dit pas vraiment. ";return 2;}} ], n_to caverne, has scenery; Object urne "urne myst@'erieuse" with name "urne" "presentoir" "receptacle" "boite" "bac" "mysterieuse", description "C'est un objet de bronze pos@'e sur un tr@'epied m@'etallique, finement ouvrag@'e de petites vagues qui s'entrem@^elent. ", found_in portecaverne biblio, has female openable container static; Object sable "tas de sable brillant" urne with name "sable" "brillant" "poussiere" "poudre" "tas", description "Une fine poudre qui @'etincelle faiblement d'une lumi@`ere int@'erieure. ", before [;Take : print "Vous prenez une petite poign@'ee de sable. ";move psable to player;return 2;], has static; Object psable "un peu de sable" with name "sable" "brillant" "poussiere" "poudre" "peu", description "Une fine poudre qui @'etincelle faiblement d'une lumi@`ere int@'erieure. Il n'y en a pas beaucoup. ", before [k;PutOn : if (second==player) {print "Vous mettez un peu de sable dans vos yeux. Le monde semble tourner un instant et les couleurs momentanement changent pour vous. Puis tout redevient comme @`a la normale...mais votre vision semble plus claire, comme si vous aperceviez parfois de la lumi@`ere...l@`a o@`u il ne devrait pas en avoir. ";StopDaemon(pouvoirsable);k=random(5);shining=10+k;nuit=99;StartDaemon(pouvoirsable);return 2;}], has proper; Object pouvoirsable "pouvoir du sable" with description "", daemon [; shining=shining-1; switch(shining) { 10 : print "Vos mains semblent briller d'une aura magique @'emanant de votre corps. "; 9 : print "Le monde tourne un peu autour de vous. "; 5 : print "L'aura que vous distinguez autour des choses semble s'amoindrir : le myst@'erieux effet du sable commence @`a s'estomper. "; 3 : print "Vous entendez le bruit que ferait un fleuve passant au travers de votre cerveau. Vous avez l'impression de ";style underline;print "vous vider. ";style roman;print "Vous sentez que l'effet magique du sable est bient@^ot fini. "; 1 : print "Vous clignez des yeux et vous semblez reint@'egrer un corps que vous n'aviez jamais quitt@'e. Cette fois-ci, l'effet du sable a bel et bien disparu. ";nuit=0;StopDaemon(pouvoirsable); } if (player in notredame) {print "^^Vous apercevez des hommes en noir apparus du n@'eant, juch@'es sur des bancs, ou sur des pierres, surveillant les alentours. Quel que f@^ut votre informateur, il avait vu juste. Vous @'evoluez pr@'ecautionneusement afin de ne pas tomber sous l'oeil de ces sinistres sentinelles.^^Vous voyez @'egalement des milliers de filaments bleus sortir des t@^etes de toutes ces personnes, mais aussi des fen@^etres des maisons, pour tomber au sol et couler le long des trottoirs, des caniveaux, et se r@'efugier dans les profondeurs de la cit@'e.^^";style underline;print "Des souvenirs perdus.^^";style roman;} ], has scenery proper; Object caverne "L'Immense Caverne Souterraine" with description [; if (plot_depth==36) {print "Vous entendez un hurlement qui vient du contrebas de la vall@'ee : ~Ne la laissez pas s'@'echapper !~ crie Douglas, ~Que les portes se ferment !~. La plupart des mineurs ne bougent pas, concentr@'es (soumis?) @`a leur t@^ache, mais alors que vous gravissez le sentier vous entendez avec effroi un terrible grincement : les deux vantaux @`a peine entrebaill@'es de la lourde porte de pierre se referment !^^Avant m@^eme que vous puissiez toucher la paroi, la porte s'est d@'ej@`a referm@'ee d'elle m@^eme dans un claquement sec.^^Et bien. On dirait bien que tu es prise au pi@`ege. ";plot_depth=plot_depth+1;} if (plot_depth==18) {print "Ce lieu vous semble inimaginable.^^Devant vos yeux s'ouvre une caverne aussi large que haute, et dont la profondeur disparait dans les t@'en@`ebres. Les parois sont recouvertes de roches bleut@'ees ou blanches, un chemin sinueux mais entretenu, @'eclair@'e de flambeaux odorants, tranche ce paysage fantomatique et m@`ene depuis une double porte de pierre @`a peine entrebaill@'ee aux confins de cette immense vall@'ee souterraine.^Sur les cr@^etes des collines bordant le chemin, vous distinguez de singuliers mineurs qui arrachent de leurs pioches des morceaux de la paroi.^^A quelques pas, le chemin fourche pour monter sur une colline, ou descendre dans la vall@'ee. ^^Vous avancez, subjugu@'es, dans ce paysage @`a couper le souffle. Au contrebas d'un sentier, vous voyez la silhouette impatiente de Douglas qui vous attend. Il vous invite @`a marcher @`a ses cot@'es, ralentissant l'allure, et prend le chemin qui descend. ";plot_depth=plot_depth+1;} else {print"Ce lieu vous semble inimaginable.^^Devant vos yeux s'ouvre une caverne aussi large que haute, et dont la profondeur disparait dans les t@'en@`ebres. Les parois sont recouvertes de roches bleut@'ees ou blanches, un chemin sinueux mais entretenu, @'eclair@'e de flambeaux odorants, tranche ce paysage fantomatique et m@`ene depuis une double porte de pierre @`a peine entrebaill@'ee aux confins de cette immense vall@'ee souterraine.^Sur les cr@^etes des collines bordant le chemin, vous distinguez de singuliers mineurs qui arrachent de leurs pioches des morceaux de la paroi.^^A quelques pas, le chemin fourche pour monter sur une colline, ou descendre dans la vall@'ee. ";} ], before [;Go : if (plot_depth==37) {if ((plot_depth==d_obj)||(plot_depth==n_obj)) {print "Vous tombez nez @`a nez par Douglas, le visage transform@'e par la col@`ere, accompagn@'e de deux mineurs qui mettent rapidement la main sur vous. ";Fin(5);} else if (plot_depth==s_obj) {print "Impossible. La porte de pierre est solidement ferm@'ee";return 2;}}], u_to sentierhaut, d_to sentierbas, n_to sentierbas, e_to sentierhaut, ne_to sentierhaut, s_to portecaverne, has scenery; Object sentierhaut "Filon de Souvenir" with description "En haut d'une colline, un replat a @'et@'e amenag@'e afin d'exploiter une fissure juste entrouverte. De l@`a, l'immense vall@'ee s'offre @`a vous, tranch@'ee du sentier aux flambeaux, encercl@'ee de courageux mineurs concentr@'es sur leur labeur. ", d_to caverne, w_to caverne, sw_to caverne, has scenery; Object flambeau "flambeau" sentierhaut with name "flambeau" "torche" "flamme" "pique" "huile" "vasque", description [;if (self.poussed) {print "Une longue pique en m@'etal de deux m@`etres de haut. ";} else {print "Un flambeau m@`etallique de deux m@`etres de haut projette une lumi@`ere dansante au travers de cette nuit souterraine. Il est compos@'e d'une longue pique soutenant une large vasque contenant de l'huile odorante. ";}], before [;Push : if (flambeau.poussed) {print "On peut pas plus le pousser... ";return 2;} else {if (mineur.assomed) {if (nuit==99) {print "Vous poussez le flambeau en direction du filament orange et sa vasque se deverse sur le sol. Vous entendez un petit cr@'epitement et dans un chuintement imperceptible le filament se dissout et disparait. ";remove forange;flambeau.poussed=true;give self ~static;return 2;} else {print "Vous poussez le flambeau @`a terre et sa vasque se deverse sur le sol. ";flambeau.poussed=true;give self ~static ;return 2;}} else if (self in rocher) {print "Vous vous appuyez de tout le poids de votre corps sur le flambeau...le rocher bouge ! Et r@'ev@`ele un passage au del@`a. Dans un craquement sec la pique se casse en deux. ";give trou ~concealed;rocher.poussed=true;remove self;return 2;} else {print "Vous poussez le flambeau sur le sol. Le mineur se retourne aussit@^ot et vous saisit par l'@'epaule : ~C'est toi qui provoque tout ce raff@^ut? Attends que j'appelle les autres...~ ";Fin(5);return 2;}} Take : if (flambeau.poussed~=true) {print "Difficile @`a soulever, avec cette grande vasque en @'equilibre ! ";return 2;} PutOn : if (second==rocher) {print "Vous fichez la pique du flambeau sous le rocher, comme un levier. ";} else {print "Mouais. ";return 2;}], poussed, has static; Object pioche "pioche" with name "outil" "pioche" "fichee", description "Cette pioche est fermement fich@'ee dans la roche. Son manche en bois semble n@'eanmoins bouger un peu. ", initial "Une pioche est fich@'ee dans une fracture ferm@'ee situ@'ee dans le mur @`a hauteur d'homme. ", has female static; Object manche "manche de pioche" with name "manche" "de" "pioche", description "Le manche est viss@'e dans une t@^ete m@'etallique fich@'ee dans le mur. ", before [;Turn : print "Precautionneusement, vous devissez le manche de pioche sans faire de bruit. ";manche.devissed=true;give self ~scenery;return 2; Take : if (manche.devissed~=true) {print "^Le manche est viss@'e @`a la pioche, vous ne pouvez pas le retirer en tirant. ";return 2;}], devissed, has scenery; Object fracture "fracture dans la roche" sentierhaut with name "fracture" "fissure" "ouverture" "trou" "dans" "la" "roche", description "Une mince fracture . ", has static container open female; Object rocher "gros rocher" sentierhaut with name "rocher" "lourd" "gros", description "Un lourd rocher semblant bloquer une fissure plus grande. ", before [;Push,Open : if (flambeau in self) {print "Vous vous appuyez de tout le poids de votre corps sur le flambeau...le rocher bouge ! Et r@'ev@`ele un passage au del@`a. Dans un craquement sec la pique se casse en deux. ";give trou ~concealed;rocher.poussed=true;remove flambeau;return 2;} else {print "Oula, beaucoup trop lourd pour le bouger avec vos petits bras ! ";return 2;}], poussed, has static supporter; Object trou "passage derriere le rocher" sentierhaut with name "passage" "trou" "fracture" "fissure" "ouverture" "trou" "dans" "la" "roche", description "Un passage sombre dans la pierre, qui semble remonter. ", before [;Enter : print "Vous avancez @`a quatre pattes dans la nouvelle ouverture. Vous arrivez rapidement @`a un couloir de ciment et de vieille pierre d'une puanteur innomable. ";PlayerTo(sewer);return 2;], has static enterable concealed; Object mineur "mineur" sentierhaut with name "mineur" "homme" "creuseur" "travailleur" "esclave" "elu", description [;if (self.assomed) {print "Un grand gars baraqu@'e, mais assom@'e ! ";} else {print"Un grand gars baraqu@'e avec un bleu de travail. Concentr@'e sur son travail, il ne vous a pas entendu venir, car il pioche de toutes ses forces pour d@'egager un gros rocher contre la paroi. A sa ceinture, de petits filaments bleus s'agitent comme des serpents. ";}], life [; Answer, Ask, Tell, Kiss, Show, Give: if (plot_depth>36) {if (self.assomed) {print "Pas bien loquace, le bougre. ";} else {print "^~C'est toi qu'on cherche partout, pas vrai? Viens un peu par ici...~^^En une seconde, il est sur vous. ";attend();Fin(5);}} else {print "~Laissez moi bosser. ~ ";} Attack : if (second==manche) {print "D'un mouvement rapide vous abattez le manche de pioche sur le mineur, qui lui m@^eme s'@'ecroule au sol. Et bien, Margot, vous les achevez un par un en ce moment !^^Alors que vous retournez son corps, un petit filament orange se d@'etache de son corps. ";self.assomed=true;move forange to sentierhaut;various=5;if (nuit~=99) {print "^^Le filament semble disparaitre sous vos yeux, sans raison. ";return 2;}} else {print "Vous consid@'erez un instant cette action, mais ca ne vous parait pas bien r@'ealisable de cette fa@@con. ";} ], assomed, initial [;if (self.assomed) {print "Un mineur assom@'e g@^it sur le sol. ";} else {print "^^Un mineur donne des coups de pioche contre un mur. ";}], has animate proper; Object forange "filament orange" with name "filament" "orange", description "Un vicieux petit filament orange, brillant. ", each_turn [;if (nuit==99) {give forange ~scenery;give forange ~concealed;switch(various) { 5 : print "Le petit filament absorbe un par un les filaments bleus autour de la ceinture du type. "; 4 : print "Le filament semble briller plus fort maintenant. "; 3 : print "Le filament orange semble lever une extr@'emit@'e de son corps, comme un serpent humant la trace de sa prochaine proie. "; 2 : print "Le filament orange s'approche en se tortillant de vous. "; 1 : print "Le filament orange saute sur votre cou.^^";Fin(5); } various=various-1;} else {give forange scenery;give forange concealed;switch(various) { 5 : print "Les filaments bleus autour de la ceinture du mineur disparaissent aussi maintenant, comme absorb@'es par un @^etre invisible. "; 4 : print "Vous sentez une pr@'esence invisible proche du mineur. "; 3 : print "Vous sentez une pr@'esence invisible proche du mineur. "; 2 : print "La pr@'esence myst@'erieuse semble se rapprocher. "; 1 : print "Quelque chose de chaud et doux vous enserre le cou.^^";Fin(5); } various=various-1;} ]; Object sentierbas "La Vall@'ee des Souvenirs" with description [; if (plot_depth==19) {print "Un sentier de pierres broy@'ees finement descend au coeur de la vall@'ee souterraine. Les parois abruptes des surplombs renvoient les lumi@`eres tremblantes des flambeaux avec un @'eclat bleut@'e surr@'eel.^Si vous descendez le sentier, vous arriverez dans une vaste zone d@'egag@'ee qu'occupe une simple maison carr@'ee au toit plat. Derri@`ere vous, plus haut au sud, le sentier remonte vers une curieuse double porte am@'enag@'ee dans une paroi.^^Vous percevez de temps @`a autre des roches qui se brisent sous les coups de pioche.^^Douglas vous d@'eclare @`a br@^ule-pourpoint :^^~Ecoutez ceci attentivement. ";attend();print "^^^Les ";style underline;print "souvenirs ";style roman;print "ne sont pas des informations uniques, mises @`a la disposition de votre mental par un quelconque processus biologique. Ce sont des ";style underline;print " chemins, ";style roman;print "des routes immat@'erielles que parcourt votre esprit pour remonter le temps et revivre, dans ce pass@'e retrouv@'e, l'objet de votre souvenir.^^Oublier, c'est perdre la facult@'e de remonter ces chemins, ou, plus frequemment en fait, perdre le chemin lui-m@^eme. Car les souvenirs sont anim@'es d'une vie propre et n'ont de cesse d'@'echapper au confinement exigu que maintient la conscience individuelle. Mais voyez plut@^ot :~^^Douglas s'arrete soudainement et pointe de l'index un mineur qui vient de d@'eloger une roche et d'o@`u se tortillent de long filaments bleus. Le mineur attrape habilement ces filaments et un par un les bloque dans le chas d'une aiguille ouvrag@'ee avant de le coudre dans sa ceinture et rejoindre quantit@'e d'autres qui s'y tortillent d@'ej@`a. Douglas reprend subitement sa route :^^~Vous @^etes ici dans ma mine. Les souvenirs des parisiens s'@'echappent et s'infiltrent dans les roches calcaires pour venir ici et @^etre extraites par une poign@'ee d'@'elus qui en retour de leur labeur ont acc@'es @`a une partie de leur production. Et je peux vous dire que les places sont ";style underline;print "ch@`eres. ";style roman;print "^L'argent, quel inter@^et, jeunes gens, quand vous pouvez avoir l'exp@'erience de dix vies couler en vous, conna@^itre @`a l'insu de tous les m@'ecanismes de l'@^ame.~^^Douglas descend encore le chemin plus bas, s'approchant de la maison blanche. ";plot_depth=plot_depth+1;} else {print"Un sentier de pierres broy@'ees finement descend au coeur de la vall@'ee souterraine. Les parois abruptes des surplombs renvoient les lumi@`eres tremblantes des flambeaux avec un @'eclat bleut@'e surr@'eel.^Si vous descendez le sentier, vous arriverez dans une vaste zone d@'egag@'ee qu'occupe une simple maison carr@'ee au toit plat. Derri@`ere vous, plus haut au sud, le sentier remonte vers une curieuse double porte am@'enag@'ee dans une paroi.^^Vous percevez de temps @`a autre des roches qui se brisent sous les coups de pioche. ";} ], s_to caverne, u_to caverne, d_to devanthutte, n_to devanthutte, has scenery; Object devanthutte "Devant La Maison Carr@'ee" with description [; if (plot_depth==35) {print "Vous entendez Douglas qui se rel@`eve en hurlant de fureur comme un animal dans la maison. ";plot_depth=plot_depth+1;} if (plot_depth==22) {fuite();return 2;} if (plot_depth==20) {print "Le sentier se noie dans un parterre de gravier grand comme un stade au milieu duquel se dresse une maison cubique et blanche, elle aussi cern@'ee de flambeaux vifs dont la fum@'ee se perd dans l'obscurit@'e du plafond, si haut que vous ne pouvez le voir. Un paysage lunaire, sans aucune pr@'esence humaine...si ce n'est Douglas, qui entre sans h@'esiter dans la maison dont les ouvertures ne comportent aucun battant. ";plot_depth=plot_depth+1;} else {print"Le sentier se noie dans un parterre de gravier grand comme un stade au milieu duquel se dresse une maison cubique et blanche, elle aussi cern@'ee de flambeaux vifs dont la fum@'ee se perd dans l'obscurit@'e du plafond, si haut que vous ne pouvez le voir. Un paysage lunaire, sans aucune pr@'esence humaine. ";} ], before [;Go : if (plot_depth==36) {if (noun==in_obj) {print "Douglas vous attrape par l@'epaule et appelle ses mineurs.^^";Fin(5);}}], in_to hutte, u_to sentierbas, s_to sentierbas, has scenery; Object hutte "Maison Carr@'ee" with description [; if (plot_depth==33) {print "La maison ne comporte qu'une pi@`ece cubique meubl@'ee d'une simple table de bois brut et d'un fauteuil. Les murs sont blancs et vides, le sol de terre battue, et la lumi@`ere vient de l'ext@'erieur depuis les flambeaux dansant. Le silence semble absolu. ^^";style underline;print "~Enfin, vous voil@`a.~ ";attend();style roman;print "Vous devinez le sourire r@'epugnant qu'il doit vous adresser. Douglas sort de l'ombre et poursuit en seulement ces mots :^^~Vous savez ce qu'il vous reste @`a faire...~, indiquant d'un doigt d@'esinterress@'e le fauteuil garni de lani@`eres. ";plot_depth=plot_depth+1;various=0;} else if (plot_depth==21) {print "La maison ne comporte qu'une pi@`ece cubique meubl@'ee d'une simple table de bois brut et d'un fauteuil. Les murs sont blancs et vides, le sol de terre battue, et la lumi@`ere vient de l'ext@'erieur depuis les flambeaux dansant. Le silence semble absolu. ^^Douglas sort d'un coin d'ombre et pose une malette sur la table. Il prend une inspiration et poursuit sur un ton malicieux :^^~Je n'ai pas ";style underline;print "stricto sensu ";style roman;print "votre...enregistrement, car @`a proprement parler il n'en existe pas. Mais j'ai ";style underline;print "ceci. ";attend();style roman;print "^^Il ouvre la malette. Celle ci comporte deux @'eprouvettes de verre, l'une contenant un filament bleu vif et l'autre cinq autres, oranges.^^Indiquant le filament bleu, il explique :~Ceci est le souvenir du fameux concert dans lequel le morceau 1884 a @'et@'e jou@'e. Un souvenir, dont, @`a la couleur, vous pouvez voir la qualit@'e. Du premier choix.~^^~Et les oranges?~ demande Jonas en s'approchant.^^Le visage de Douglas semble s'assombrir. ~C'est l'objet de mon service.^Voyez vous, nous extrayons la plupart du temps des filaments de couleur bleue ou verte, suivant qu'ils sont riches en @'emotions ou en faits. Mais parfois nous tombons sur ceux-ci, oranges. Personne n'ose les tester en fait. Non pas qu'ils pr@'esentent un danger, mais...nos collaborateurs sont d'une nature superstitieuse. J'ai l'intime conviction que des esprits jeunes et talentueux comme les v@^otres sauront exploiter le potentiel de ces myst@'erieux filaments oranges. Voil@`a donc notre march@'e : vous vous installez sur le fauteuil, vous choisissez un filament orange, vous explorez son contenu, vous me faites un rapport, et en retour, vous disposez du souvenir du concert de Dan The Automator. Est ce que vous trouvez cela correct?~^^Jonas d@'eglutit mais avance sa main vers le souvenir bleu ~ca me semble plut@^ot cool...~ ";plot_depth=plot_depth+1;} else {print"La maison ne comporte qu'une pi@`ece cubique meubl@'ee d'une simple table de bois brut et d'un fauteuil. Les murs sont blancs et vides, le sol de terre battue, et la lumi@`ere vient de l'ext@'erieur depuis les flambeaux dansant. Le silence semble absolu. ";} ], each_turn [; if (player in fauteuil) { if (plot_depth<34) { if (various==3) {print "Deux mineurs en combinaison, le visage gris de poussi@`ere, p@'en@'etrent dans la chambre et encadrent Jonas.^^~Faites en sorte qu'il ne bouge pas, dit Douglas d'un ton morne. C'est le prochain sujet.~^^Il se tourne vers vous et d@'ebouche soucieusement l'@'eprouvette o@`u repose lov@'e le mince filament orange.^^~J'ai toujours cru en vous, ch@`ere Margot. Je suis enchant@'e que les @'evenements pr@`enent cette tournure.~^^Se d@'epliant comme un serpent, le filament bondit autour de votre cou. Vous sentez sa pr@'esence chaude, immat@'erielle comme une souffle, tourner un instant autour de vos @'epaules, pour enfin p@'en@'etrer dans votre esprit. ";Fin(3);} if (various==2) {print "Douglas se retourne sans bruit et saisit une @'eprouvette orange. A la lueur subite d'un flambeau plus vif, vous discernez un sourire malsain. ";various=various+1;} if (various==1) {print "Douglas saisit les lani@`eres et commence @`a vous attacher. ~Ces pr@'ecautions peuvent vous impressionner, et croyez que j'en suis le premier navr@'e, mais elles sont necessaires...nous avons tout lieu de croire que des r@'eactions impr@'evues et fort heureusement tout @`a fait temporaires peuvent survenir.~ Il dit tout cela concentr@'e sur les lani@`eres qu'il attache @`a vos bras. ";various=various+1;} if (various==0) {print "Douglas s'avance vers vous et allonge vos bras le long de ceux du fauteuil. ~Surtout restez calme, mademoiselle, cela ne vous fera aucun mal. ~^^Vous entendez Jonas qui d@'eglutit. ";various=various+1;} } else if (plot_depth==34) { if (various==3) {print "Douglas se tourne vers vous et d@'ebouche soucieusement l'@'eprouvette o@`u repose lov@'e le mince filament orange.^^~J'ai toujours cru en vous, ch@`ere Margot. Je suis enchant@'e que les @'evenements pr@`enent cette tournure.~^^Se d@'epliant comme un serpent, le filament bondit autour de votre cou. Vous sentez sa pr@'esence chaude, immat@'erielle comme une souffle, tourner un instant autour de vos @'epaules, pour enfin p@'en@'etrer dans votre esprit. ";Fin(5);} if (various==2) {print "Douglas se retourne sans bruit et saisit une @'eprouvette orange. A la lueur subite d'un flambeau plus vif, vous discernez un sourire malsain.~Ces filaments ne sont pas visibles @`a l'oeil nu, explique-t-il. Trop subtiles cr@'eations. Ils le sont au travers du mat@'eriau de ces @'eprouvettes, ou si vous avez pris un peu de la poudre dont je vous ai empli les yeux. ";various=various+1;} if (various==1) {print "Douglas saisit les lani@`eres et commence @`a vous attacher. ~Ces pr@'ecautions peuvent vous impressionner, et croyez que j'en suis le premier navr@'e, mais elles sont necessaires...nous avons tout lieu de croire que des r@'eactions impr@'evues et fort heureusement tout @`a fait temporaires peuvent survenir.~ Il dit tout cela concentr@'e sur les lani@`eres qu'il attache @`a vos bras. Il semble nerveux. Il prend une pinc@'ee de sable de sa poche et le verse sur vos yeux qui se mettent @`a pleurer. ~Ainsi, cela se passera mieux. Allons, pas de mani@`eres, je n'en ai pas mis beaucoup. ~^^";StopDaemon(pouvoirsable);shining=11;StartDaemon(pouvoirsable);;various=various+1;} if (various==0) {print "Douglas s'avance vers vous et allonge vos bras le long de ceux du fauteuil. ~Surtout restez calme, mademoiselle, cela ne vous fera aucun mal. ~ ";various=various+1;} } } ], out_to devanthutte, has scenery; Object clothos1 "Douglas" hutte with name "homme" "Douglas" "d" "D" "douglas" "clothos", description "C'est un homme au petit visage rond, sans vraiment d'@^age pr@'ecis, peut-@^etre la trentaine, peut-@^etre plus. Il est v@^etu d'un costume sobre mais de grande classe, d'un brun sombre. Ses cheveux sont liss@'es et plaqu@'es dans une raie sur le cot@'e sage, et une fine moustache tr@'es bien entretenue prend naissance sur sa l@`evre sup@'erieure. Son regard est transper@@cant. ", initial "Douglas vous sonde du regard. ", life [; Answer,Ask,Tell: if (plot_depth<35) {print "Douglas r@'epond par un silence mortel. ";} else {print "Pour l'instant, il bouge plus, et t'as pas vraiment envie de t'@'eterniser ici. ";} Attack : if (plot_depth==34) {if (various==0) {print "Pas maintenant, il vous verrait venir et il a l'air costaud. ";} else if (various==1) {print "Pas encore, il n'est pas assez pr@`es. ";} else if (various==2) {print "Alors que Douglas se penche sur vous, vous lui envoyez un bon coup de pied dans le tibia, si fort que vous entendez un craquement. Il tombe @`a genoux dans une expiration sifflante qui contient sa douleur, et vous continuez d'un bon coup de pied @`a la Margot en pleine figure qui le fait tomber @`a la renverse. Bien jou@'e Margot ! Le coeur battant @`a tout rompre, vous vous levez promptement. ";clothos1.assomed=1;plot_depth=plot_depth+1;PlayerTo(hutte);various=0;return 2;} else {print "Vous ne pouvez plus faire grand chose, h@'elas. ";}} else if (plot_depth>34) {print "C'est bon il a plus l'air de bouger, on va pas s'acharner. ";} Kiss: "NON. "; Show, Give: if (plot_depth<35) {"L'homme m@'eprise souverainement ",(the) noun," d@'etournant le regard imm@'ediatement . ";} else {print "Il a pas l'air ultra interress@'e, l@`a... ";} ], assomed, has animate proper; Object fauteuil "fauteuil" hutte with name 'fauteuil' 'siege' 'chaise', description "Un fauteuil en bois brut plut@^ot rude, avec des lani@`eres de cuir attach@'ees sur les bras du si@`ege. Cela vous rappelle avec angoisse ~Spider and Web~, une histoire de suspense qui vous avait fait trembler. ", react_before [;Go,Exit,GetOff,Jump,Give,Take : if (various>2) {print "Vous @^etes fermement ligot@'ee. Impossible. ";return 2;}], after [;Enter : print "Vous vous installez dans le fauteuil sans quitter Douglas des yeux. ";], has supporter static enterable; Object lanieres "lanieres de cuir" hutte with name "lanieres" "cuir" "liens" "lien" "laniere", description "Des liens probablement destin@'es @`a maintenir l'occupant du fauteuil fermement attach@'e. Ils semblent us@'es. ", has static female scenery pluralname; Object tablebrut "table" hutte with name "table" "bois" "brut", description "Une grande table de bois brut, us@'ee et fatigu@'ee. ", has supporter static enterable female; Object malette "valise" tablebrut with name "malette" "valise" "sac", description "C'est une petite malette noire dont les bords chrom@'es refl@`etent la lumi@`ere dansante des flambeaux. ", before [;Take : if (clothos1.assomed~=1) {print "Vous tendez la main vers la malette pour vous en saisir, mais Douglas l'@'eloigne de votre port@'ee d'un geste vif et vous indique le fauteuil. ~Votre part du contrat d'abord. Asseyez vous. ~ ";return 2;} else {print "Vous n'avez pas vraiment envie de toucher @`a ces trucs, maintenant !";return 2;}], has container female openable open; Object eprouvetteb "eprouvette bleue" malette with name "eprouvette bleue" "bleue" "eprouvette", description "Une petite @'eprouvette viss@'ee @`a son extremit@'e contenant un filament bleu qui se tortille vivement. ", before [;Take : if (clothos1.assomed~=1) {print "Vous tendez la main vers la malette pour vous en saisir, mais Douglas l'@'eloigne de votre port@'ee d'un geste vif et vous indique le fauteuil. ~Votre part du contrat d'abord. Asseyez vous. ~ ";return 2;} else {print "Vous n'avez pas vraiment envie de toucher @`a ces trucs, maintenant !";return 2;}], has female; Object eprouvetteo "cinq eprouvettes oranges" malette with name "eprouvette orange" "oranges" "cinq" "eprouvettes oranges" "eprouvette" "orange", description "De petites @'eprouvettes viss@'ees @`a leurs extremit@'es contenant chacune un filament orange vif. ", before [;Take : if (clothos1.assomed~=1) { print "Vous tendez la main vers la malette pour vous en saisir, mais Douglas l'@'eloigne de votre port@'ee d'un geste vif et vous indique le fauteuil. ~Asseyez vous sur le fauteuil d'abord.~ ";return 2;} else {print "Vous n'avez pas vraiment envie de toucher @`a ces trucs, maintenant !";return 2;}], has female pluralname proper; Object sewer "Dans les Egouts" with description "Un passage d'un metre cinquante de haut s'allonge au devant dans une p@`enombre @`a peine discernable. Vous croyez voir loin au devant, vers l'est, une faible lumi@`ere. Sous vos pieds, sur les murs, c'est collant et d@'egoulinant, glaireux, insupportable. La puanteur vous porte @`a chaque seconde le coeur au bord des l@`evres. ", w_to sentierhaut, e_to s1, has scenery; Object s1 "Dans les Egouts" with description "Le passage s'ouvre dans trois directions : vers l'ouest, o@`u se trouve la carri@`ere, vers l'est, o@`u au loin tombe un fin rai de lumi@`ere, et vers le sud, plongeant dans des t@'en@`ebres peu rassurantes. Au dessus de vous, d'anciennes canalisations gouttent une substance visqueuse et brillante. ", before [;Go : if (noun==e_obj) {if (blackblob in s1) {print "Vous ne pouvez pas aller dans cette direction, car l'horrible chose prend tout l'espace qu'elle remplit d'un froid glac@'e. ";return 2;}}], w_to sewer, e_to s4, s_to s2, has scenery; Object s2 "Dans les Egouts" with description "Vous @^etes dans le noir complet. Vos pieds glissent sur un sol visqueux, la puanteur est tuante. Oubliant une terrible r@'epulsion instinctive, vous tatez les murs et devinez que le couloir est un coude qui oblique sur deux directions : l'est ou le nord. ", e_to s3, n_to s1, has scenery; Object s3 "Dans les Egouts" with description "Les t@'en@`ebres ici sont totales. Un ronflement sourd, mi-m@'ecanique, mi-animal, hach@'e d'un souffle sifflant fait vibrer les quelques tuyaux d@'egoulinant de boue naus@'eabonde auxquels vous vous attachez pour vous guider. Vous comprenez par leurs dispositions que vous @^etes dans un coude qui donne sur deux directions : le nord ou l'ouest. ", w_to s2, n_to s4, has scenery; Object s4 "Dans les Egouts" with description "Il fait plus clair ici, mais le spectacle n'est pas plus r@'ejouissant. Le couloir s'agrandit et maintenant vous pouvez tenir debout, dans une sorte de tunnel circulaire. De r@'epugnants lombrics blancs et de longs scolopendres se tortillent sur des parois d@'egoulinantes de boue glaireuses. Au devant, le rai de lumi@`ere tombant du haut semble @'eclairer un long objet filant vers le haut. ", before [;Go : if (noun==e_obj) {if (blackblob in s4) {print "Vous ne pouvez pas aller dans cette direction, car l'horrible chose prend tout l'espace qu'elle remplit d'un froid glac@'e. ";return 2;}}], s_to s3, w_to s1, e_to echelle, has scenery; Object echelle "Une Echelle Vers La R@'edemption" with description [;if (plot_depth==37) {print "Le couloir s'agrandit encore vers l'est et d@'ebouche sur un cul-de-sac. Au bout de celui-ci est suspendue une longue @'echelle que vient @'eclairer un long trait lumineux tombant d'une ouverture plus haut. Au pied de l'@'echelle une @'etrange substance semblable @`a un amas de fum@'ee noire de trente centim@`etres de haut bouge lentement et s'entortille autour des premiers barreaux de l@'echelle. A votre approche, certains volutes s'agitent dans votre direction. ";style underline;print "^^Cela ne vous dit rien qui vaille.^";style roman;various=0;couloir=0;plot_depth=plot_depth+1;move blackblob to echelle;StartDaemon(blackblob);} else {print "Le couloir s'agrandit encore vers l'est et d@'ebouche sur un cul-de-sac. Au bout de celui-ci est suspendue une longue @'echelle que vient @'eclairer un long trait lumineux tombant d'une ouverture plus haut. ";}], before [;Go : if (noun==u_obj) {if (couloir==6) {print "Rassemblant tout votre courage, vos forces et votre esprit dans une lutte pour la survie, vous aggripez les barreaux de l'echelle, fuyant les bras glac@'es de la chose qui vous tirent vers le bas, vous grimpez encore et encore, haletante, fermement r@'esolue @`a survivre, et soulevez d'un coup d'@'epaule la plaque de m@'etal qui couvrait la sortie.^^";attend();print "Victoire. ";StopDaemon(blackblob);attend();print "Vous @^etes @`a l'air libre.^^";attend();} else if (couloir==5) {print "Vous grimpez quatre @`a quatre l@'echelle, mais dans votre empressement vous glissez sur un barreau impr@'egn@'e de boue et vous d@'egringolez, vous raccrochant du mieux que vous le pouvez, et vous vous @'etalez dans la boue immonde, au milieu du nuage noir de mort. ";move blackblob to echelle;couloir=couloir+1;return 2;} else {print "L'horrible chose prend tout l'espace de son emprise glac@'ee et vous en emp@^eche. ";return 2;}}], w_to s4, u_to notredame, has scenery; Object blackblob "horrible chose" with name "horrible" "chose" "masse" "noire" "truc" "noir" "fumee" , description "Une masse noire informe compos@'ee de volutes de fum@'ee et semblant dou@'ee de vie propre. ", daemon [; if (self in location) {switch(various) { 0 : print "L'horrible chose noire @'etend une volute vers vous. ";various=various+1; 1 : print "Un volute glac@'e s'entortille autour de votre genou, qui s'insenbilise doucement. ";various=various+1; 2 : print "La chose entoure maintenant la moiti@'e de votre corps. C'est comme si vous ne le sentiez plus, m@^eme si vous pensez encore pouvoir le controler. ";various=various+1; 3 : print "L'horrible chose vous engloutit dans le n@'eant. ";Fin(6);}} else if (couloir==0) {if (player in s1) {move self to s4;print "^^Vous retournant, vous remarquez avec effroi que l'horrible chose vous poursuit lentement, se d@'etachant de l'@'echelle au loin, et s'approche doucement. ";couloir=couloir+1;}} else if (couloir==1) {if (player in s2) {move self to s1;print "^^L'horrible chose est arriv@'ee sur vos traces @`a l'intersection et s'allonge de votre cot@'e, inexorablement. ";couloir=couloir+1;}} else if (couloir==2) {if (player in s3) {move self to s2;print "^^Bien que vous n'y voyiez pas grand chose, vous entendez au del@`a du ronflement habituel le soyeux glissement des volutes noirs comme la mort de l'horrible chose, et croyez parfois m@^eme sentir son emprise glac@'ee, vous poursuivant sans relache. ";couloir=couloir+1;}} else if (couloir==3) {if (player in s4) {move self to s3;print "Jetant un oeil de cot@'e, vous voyez sortir de l'ombre un inf@^ame filament de fum@'ee noire qui s'@'etend dans votre direction ! Vous reculez dans un sursaut d'horreur. ";couloir=couloir+1;}} else if (couloir==4) {if (player in echelle) {move self to s4;print "La masse noire s'est extirp@'ee du sombre passage et s'avance de nouveau vers vous en @'etendant tous ses tentacules immat@'eriels dans votre direction. ";couloir=couloir+1;}} else {print "Vous percevez indistinctement le froissement soyeux de l'horrible cr@'eature immat@'erielle quelque part autour de vous. ";} ], has female; Object crashsite "Site du Crash" with description "Au coeur d'un bosquet de bouleaux clairs et de grands chataigniers epars, sur un gazon uniforme serpente le sentier de terre battue. Ce sentier part vers le sud, d'o@`u vous pouvez entendre le bruit diffus du ressac, et vers le nord, dans un bois moins gracieux.^Mais un accident s'est produit ici, et vous n'y @^etes pas @'etrang@`ere : vous reconnaissez sans mal les d@'ebris du petit avion qui vous transportait diss@'emin@'es un peu partout au milieu des arbres. La coque principale a labour@'e la terre sur une vingtaine de m@`etres avant de se ficher devant un rocher taill@'e comme un menhir. Certains arbres ont @'et@'e coup@'es nets dans l'accident, mais, @'etrangement, le bosquet ne semble pas avoir trop souffert. ", s_to seaside, n_to sentierjardin, has scenery; Object debris "debris" crashsite with name "debris" "morceaux" "tole" "avion" "carlingue" "metal", description "La petite clairiere fraichement trac@'ee est recouverte d'une grande quantit@'e de d@'ebris. Beaucoup d'entre eux ne vous semblent pas bien r@'ecup@'erables, mais qui sait ce que l'on pourrait y trouver ?", before [;Search : if (debris.fouilled==0) {print "Vous soulevez les diff@'erentes pi@`eces de m@'etal, mais vous ne trouvez rien de probant. Ah...tiens. Le pistolet @`a aiguilles du touriste. ";move brokenpistol to crashsite;debris.fouilled=1;return 2;} if (corneilles in crashsite) {print "Avancant parmi les volatiles, vous tombez sur une mince feuille de papier qui *pourrait* @^etre votre fameux billet. Vous tendez la main pour le prendre, mais une corneille s'en empare et se perche sur une branche non loin. Plissant les yeux, vous l'observez et vous vous demandez s'il s'agit bien de votre billet. Apr@'es tout, il y en a d'autres. Apr@`es une petite minute, l'oiseau s'envole vers le nord ouest avec dans son bec le papier.^^De rage, vous lancez un caillou sur la masse des oiseaux picorant le mini-bar @'eventr@'e et ils s'envolent dans un bruissement chaotique. ";remove corneilles;plot_depth=plot_depth+1;return 2;}], fouilled, has pluralname static; Object brokenpistol "pistolet @`a aiguilles" with name "pistolet" "a" "aiguilles" "arme" "revolver", description "Un pistolet normal, pour autant que vous connaissiez ce type d'arme. Son m@'etal est tiede et brillant, et sa crosse recouverte d'un tissu souple. Le canon est fin et @'etroit. Il est en tr@'es mauvais @'etat apr@'es ce crash : il se disloque de tout cot@'es et semble sur le point d@'eclater. Il est probablement inutilisable. ", before [;Open : print "Vous ouvrez l'objet en tirant dessus. Les rivets fatigu@'es lachent aussit@^ot, et les nombreuses pi@`eces composant le d@'elicat engin @'eclatent et tombent au sol. Elles n'ont aucun inter@^et pour vous, sauf pour une, la derni@`ere munition : une fine aiguille de m@'etal @'etincelant qui attire votre regard. ";remove brokenpistol;move aiguille to location;return 2;], has leger; Object corneilles "corneilles" with name "corneilles" "corneille" "oiseaux" "oiseau" "noir" "noirs" "noires", description "Des petits oiseaux semblables @`a des corbeaux fouillent dans les d@'ebris de l'avion, se disputant les morceaux de nourriture sortant des emballages @'eventr@'es. ", each_turn [i;i=random(7);switch(i) { 1 : print "^Alors que vous marchez dans le bosquet, une corneille croasse deux fois en battant des ailes, et d'autres s'envolent; "; 2 : print "^Deux corneilles viennent se poser sur un bout de carlingue et se disputent un rivet brillant. "; 3 : print "^Un oiseau noir extirpe un bout de papier brillant sous une pi@`ece de metal plate et s'envole vers le nord ouest. "; 4 : print "^Les corneilles fichent une pagaille terrible dans ce paisible endroit. "; 5 : print "^Une corneille passe en bondissant devant vous, vous observe, puis s'envole. "; 6 : print "^Un oiseau s'envole et passe juste au dessus de votre t@^ete. "; 7 : print "^Un oiseau noir et petit se pose sur une branche non loin de vous. "; } ], has pluralname female static; Object seaside "Une Baie Donnant sur un Oc@'ean Infini" with description "Votre point d'observation se trouve au sommet d'une courte falaise de rochers ronds et gris dissimul@'es pour la plupart sous une mousse @'epaisse ou des touffes d'herbes verdoyantes. Des petits ruisseaux venus de plus au nord se rejoignent et se d@'eversent en cascade vingt m@^etres plus bas, dans une mer tr@'es calme. La falaise s@'etend sur les deux cot@'es en formant un tr@'es long croissant, une baie qui enserre cette mer que vous voyez encore sur tout le sud jusqu'@`a l'horizon, et au del@`a encore, comme si elle montait un peu vers le ciel. Le soleil est p@^ale mais sa lumi@`ere, renvoy@'ee par l'@'ecume de la faible houle, est pure et apaisante.^Un chemin presque effac@'e, born@'e de petits menhirs, sinue en contrebas vers le nord. ", each_turn [i;i=random(10);switch(i) { 1 : print "^Une mouette passe en couinant au dessus de vous. Elle se pose sur un rocher, @`a vos cot@'es, tape deux fois du bec sur le rocher, puis s'envole @`a nouveau en piaillant. "; 2 : print "^Un vent l@'eger souffle doucement. Tiede. Vous voyez des fleurs s'ouvrir sur son passage, puis se refermer une fois celui-ci @'eteint. "; 3 : print "^Une vague plus grande que les autres s'@'ecrase au pied de la falaise et vient vous projeter quelques embruns sal@'es au visage. "; 4 : print "^Vous entendez une bogue de chataigne tomber non loin. Certaines @'ecorces de bouleau et d'eucalyptus @'eclatent, parfumant d@'elicieusement l'endroit. "; 5 : print "^Au milieu de la baie, une baleine bondit, se laissant lourdement retomber dans une gigantesque gerbe de vagues. "; 6 : print "^Vous entendez le chant triste d'une baleine. "; 7 : print "^La houle bruisse doucement et vous entraine dans une s@'er@'enit@'e mystique. "; 8 : print "^Quelques grillons chantent doucement entre les rochers inond@'es de lumi@`ere. "; 9 : print "^Une @'enorme queue de baleine surgit au milieu de la baie, suivie de quelques autres, puis elles disparaissent @`a nouveau dans les profondeurs. "; 10 : print "^Un nuage d@'echir@'e passe devant le soleil, dessinant d@'etranges motifs sur l'eau calme de la baie. "; } ], n_to crashsite, has scenery; Object sentierjardin "Un Sentier Dans Un Jardin Mourant" with description [;if (plot_depth>50) {print "Le sentier menant depuis la falaise coti@`ere se perd rapidement dans une extravagance de couleurs et de senteurs exaltantes. Partout o@`u vous portez le regard, ce n'est que fleurs somptueuses, plantes luxuriantes, arbres d@'elicats. Les parterres s'imbriquent comme des patchworks gracieux qui enchantent le regard. Un v@'eritable Eden, s'ouvrant, vers le nord, sur la cour de la biblioth@`eque. ";} else {print "Le sentier menant depuis la falaise coti@`ere s'enfonce maintenant dans un jardin mort, o@`u des plantes et des bosquets s@'ech@'es pourrissent dans une s@'echeresse inhabituelle. Des arbres morts @'etendent des branches tordues et tortur@'ees vers le sentier, comme des bras vicieux pr@^ets @`a vous saisir. Certaines fleurs se sont d@'essech@'ees si rapidement qu'elles n'en ont pas fan@'ees. L'ensemble donne un tableau sinistre et d@'eprimant, d@'epourvue de vie, qui ne vous donne gu@`ere envie de vous @'eterniser.^Le sentier donne, sur le nord, sur une cour dont vous discernez d'ici l'habitation. ";}], s_to crashsite, n_to courbiblio, has scenery; Object lys "lys blanc" with name "lys" "blanc" "fleurs", description "Un beau lys blanc se dresse vers le ciel. Il fera plaisir @`a Atropos. ", has leger; Object courbiblio "Une Cour Ensoleill@'ee" with description [;if (plot_depth>44) {print "C'est une cour de graviers blancs plant@'ee de platanes qui vous donnent une ombre bienvenue sous un soleil p@^ale mais puissant.^^Devant la cour se dresse une habitation carr@'ee et massive, haute de trois @'etages, devanc@'ee d'un perron de marbre lui m@^eme entour@'ee de statues de marbre gardiennes de l'endroit. Pour ouvertures l'habitation a simplement un grand vitrail vert et jaune, finement ouvrag@'e, surmontant une double porte gigantesque et @`a peine entrouverte.^La cour est cern@'ee d'un haut taillis renforc@'e d'arbres anciens aux ra@@cines profondes. Sur le sud de celle-ci, un sentier battu m@`ene au travers d'un jardin mort. ";style underline;print "^Vous remarquez @'egalement une ouverture vers l'ouest dans les hauts taillis, comme si les arbres s'@'etaient repli@'es d'eux m^emes pour vous ceder un passage. Etrange. Vous auriez jur@'e qu'elle n'existait pas plus t@^ot. ";style roman;} else {print "C'est une cour de graviers blancs plant@'ee de platanes qui vous donnent une ombre bienvenue sous un soleil p@^ale mais puissant.^^Devant la cour se dresse une habitation carr@'ee et massive, haute de trois @'etages, devanc@'ee d'un perron de marbre lui m@^eme entour@'ee de statues de marbre gardiennes de l'endroit. Pour ouvertures l'habitation a simplement un grand vitrail vert et jaune, finement ouvrag@'e, surmontant une double porte gigantesque et @`a peine entrouverte.^La cour est cern@'ee d'un haut taillis renforc@'e d'arbres anciens aux ra@@cines profondes. Sur le sud de celle-ci, un sentier battu m@`ene au travers d'un jardin mort. ";}], s_to sentierjardin, in_to hallbiblio, w_to [;if (plot_depth>44) {return hiddenpath;}], has scenery; Object hiddenpath "Un Sentier Secret" with description "Le sentier n'est pas bien grand, une seule personne peut y progresser de front. Il s'@'elance entre les @'epaisses futaies qui se sont soulev@'ees d'elles-m@^emes comme pour l'occasion. Il relie la cour de la biblioth@'eque @`a un chemin champ@^etre bordant de grands champs de bl@'e mur, sur l'ouest. Vous marchez, abrit@'ee d'une v@'eg@'etation silencieuse et bienveillante. ", w_to champs, e_to courbiblio, has scenery; Object hallbiblio "Dans La Biblioth@'eque de La R@'ealit@'e" with description "Ce palais haut de trois @'etage est en fait de plain pied, avec une pi@`ece haute comme un hall de gare, dall@'e de marbre pr@'ecieux finement cisel@'e. La lumi@`ere inonde l'endroit par de nombreux vitraux, tous de teintes diff@'erentes, qui se m@^elent dans une lumi@`ere blanche en tombant sur un @'enorme bureau sur une estrade o@`u un homme est pench@'e studieusement et semble calligraphier avec soin un ouvrage pos@'e sur un lutrin de bois brillant. ", each_turn [;if (collier has worn) {give doubleporte ~locked;give doubleporte open;} else {give doubleporte ~open;give doubleporte locked;}], n_to doubleporte, in_to doubleporte, out_to courbiblio, s_to courbiblio, has scenery; Object atropos "Atropos" hallbiblio with name "vieux" "bonhomme" "homme" "type" "gars" "petit" "atropos", description "Un vieux bonhomme tout menu, qui vous arrive @`a l'@'epaule, mais n@'eanmoins bien proportionn@'e. Ses cheveux sont tous @'ebourriff@'es, comme s'il avait pass@'e de longues heures appuy@'e sur sa t@^ete. Il est v@^etu d'une tunique pas banale, @`a la coupe ancienne mais au tissu fin, bariol@'e de couleurs changeantes pour lesquelles vous n'auriez pas de nom. A sa ceinture pend une besace fournie d'o@`u d@'ebordent de petits fils de couleurs. Il garde toujours un stylet entre deux doigts. ", life [; Answer, Ask, Tell: DialogueAtropos();""; Attack : "Pas lui. Il est trop gentil. "; Kiss: "Vous vous penchez et faites un petit bisou sur la joue du vieil homme. ~Et bien merci ! Un baiser. Hum. Je me demande comment le tisser. Un fil blanc, je pense. Jaune, peut @^etre? Ah, Lachesis saurait...~ "; Show, Give: if (noun==lys && plot_depth==50) {Lysdonne();remove lys;return 2;} else {print "^^~Hum, merci. Je connais les motifs intrins@`eques de ces choses. Cela ne m'interresse pas vraiment !~ ";} ], has animate proper scenery; Object doubleporte "immense porte" hallbiblio with name "immense" "double" "porte", description "Une immense double porte aux vantaux m@'etalliques, sculpt@'ee amoureusement de millions de signes inconnus. ", when_open "L'@'etoffe autour du collier de cuir brille quelque peu et vibre d'une fa@@con imperceptible. Les doubles portes de l'immense portail m@'etallique menant au sanctuaire sont ouvertes. ", when_closed "Sur le cot@'e nord de cette immense pi@`ece, une double porte tout aussi grande fait face @`a la double porte d'entr@'ee, mais celle-ci est solidement ferm@'ee. ", door_dir n_to, door_to biblio, has female door openable locked; Object collier "collier de cuir" with name "collier" "cuir" "clef", description "Une simple lani@`ere de cuir nou@'ee, sur laquelle est enfil@'ee un carr@'e de tissu bleu brod@'ee d'une clef d'argent. ", has clothing; Object biblio "Biblioth@'eque Des Motifs" with description "Cette salle recouverte de cuivre poli a des dimensions colossales qui vous laissent stup@'efaite un instant. L'immense double porte menant au hall donne sur un sol de cuivre @'etincelant qui reflete le reste de la pi@`ece, large comme une avenue, descendant ensuite sur un perron surplombant une autre surface, grande comme une place de capitale. A l'autre bout de cette immense @'etendue scintillante et rivet@'ee se dresse une alcove gracieuse donnant sur une autre pi@`ece, plus obscure.^De part et d'autre de ces lieux, une fine rambarde orn@'ee de motifs floraux, toujours en cuivre, empeche le visiteur de tomber dans l'ab@^ime sur lequel cet improbable passerelle est construite : un ab@^ime plongeant dans les t@'en@^ebres, s'enfon@@cant lat@'eralement dans une obscurit@'e indiscible et remontant vers un d@^ome dont les facettes color@'ees d@'ecomposent la lumi@`eres en spectres qui se recomposent @`a l'interieur du Sanctuaire. Sur les murs de cet ab@^ime, des @'etag@'eres sont am@'enag@'ees et supportent un nombre inimaginable d'ouvrages.^Un vent l@`eger souffle dans cette pi@`ece, provoqu@'e par l'immensit@'e de celle-ci. ", n_to lacheden, s_to hallbiblio, has scenery; Object miniloom "petit m@'etier @`a tisser" biblio with name "petit" "metier" "a" "tisser" "etoffe" "navette", description "Au milieu de la place couverte de cuivre se tient un simple m@'etier @`a tisser en bois. Certaines parties sont recouvertes d'un m@'etal chatoyant et par moments translucide, tout comme les myst@'erieux fils tissant une @'etoffe inachev@'ee. Un clavier @'etrange, compos@'ee d'un seul rand de touches carr@'ees de bois sculpt@'ees chacune d'une lettre de l'alphabet, est pos@'e sur le m@'etier @`a tisser. ", has supporter static; Object clavier "clavier" miniloom with name "clavier" "touches" "lettres" "lettre" "touche", description "Un clavier @'etrange, compos@'ee d'un seul rand de touches carr@'ees de bois sculpt@'ees chacune d'une lettre de l'alphabet, est pos@'e sur le m@'etier @`a tisser. ", before [;Touch,Attack,Composer : print "Si vous voulez composer un mot avec le clavier, utilisez la syntaxe suivante : ~taper mot~ ";return 2;], has static; Object sac "grand sac suspendu" with name "grand" "sac" "suspendu" "velours" "bleu" "pendu", description "C'est une poche de velours bleu nuit, plus grande que vous, li@'ee par un cordon dor@'e @`a une complexe machine de cuivre et de pistons, tout en haut, sur l'immense plafond. Vous pouvez voir une ouverture boutonn@'ee sur un cot@'e. ", react_before [;Exit,Go : if (various<2 && player in sac) {PlayerTo(anti);print "Vous sortez du sac non sans difficult@'es.^";return 2;}], before [;Enter : if (location==anti) {print "Vous entrez dans le sac. Le cordon se tire automatiquement et vous @^etes rapidement ramen@'ee @`a la plate-forme.^Une fois en dehors, le sac est aussit@^ot retir@'e et replong@'e dans l'ab@^ime. ";remove sac;PlayerTo(biblio);return 2;} ], each_turn [;if (various>0) {various=various-1;} if (various==3) {if (player in sac) {print "Vous sentez que vous @^etes rapidement tir@'ee vers le haut, et vous basculez au fond du sac. Le claquement des cha@^ines se fait entendre @`a nouveau...le sac se d@'eplace, et @`a grande vitesse, vu comme vous @^etes balanc@'ee dans tous les sens !";give sac ~open;give sac ~openable;} else {print "Le sac remonte brusquement vers le plafond, puis se d@'eplace au del@`a de votre plateforme, et retombe dans les t@'en@`ebres. ";remove self;}} if (various==2) {print "Sous la vitesse consid@'erable imprim@'ee par la machinerie, le sac est presque tir@'ee @`a l'horizontale et votre coeur se contracte dans votre poitrine... ";} if (various==1) {print "Votre mouvement ralentit progressivement, puis le sac est tir@'e doucement vers le haut. Au bout de quelques minutes et tourbillons, il stoppe compl@`etement. Vous avez les sens en compote, compl@`etement d@'esorient@'ee. ";move sac to anti;give sac openable;vtalk=0;} ], has container enterable openable; Object lacheden "Salle de m@'editation" with description "Cette pi@`ece a des dimensions bien plus raisonables que la biblioth@`eque, et est plong@'ee dans une relative obscurit@'e qui dissimule le plafond en ogives crois@'ees.^Deux longues tables de pierre sont align@'ees sur chaque cot@'e de la pi@`ece, et un piedestal cylindrique d'un m@`etre orne le centre.^Au dessus des tables de pierre flottent des morceaux d'@'etoffe qui ondulent dans l'espace, et des dizaines d'aiguilles passent et repassent dans ces @'etoffes, tissant de subtils motifs. ", s_to biblio, has scenery; Object lachesis "Lachesis" lacheden with name "lachesis" "masque" "homme" "type" "grand" "cape" "gants", description "Un grand homme (ou une grande femme, vous ne pouvez savoir), immobile et silencieux, assis en tailleur sur un piedestal de pierre. Un masque ovale et lisse, sans ouverture, avec deux minces fentes (mais peut-@^etre sont-elles peintes) pour les yeux. Il porte une simple tunique blanche et marron, et des bottes souples. Ses mains sont gant@'ees d'un cuir pr@'ecieux. Une longue cape verte lui recouvre le dos et les @'epaules. ", life [; Answer, Ask, Tell: DialogueLachesis();""; Attack : "Hum. Il m'a l'air un peu costaud pour toi. Ce n'est pas l'envie qui t'en manque, toutefois ! "; Kiss: "Vous vous penchez et faites un petit bisou de la paix entre vous et Lachesis sur la surface lisse du masque. Aucune r@'eaction... "; Show, Give: "^Aucune r@'eaction. "; ], initial [;if (plot_depth<51) {print "Sur le piedestal est assis en tailleur Lachesis, droit, immobile et silencieux comme une statue. ";} else {print "Vous pouvez voir Lachesis. ";}], has animate proper; Object anti "Antichambre" with description "Un couloir plut@^ot large, aux murs recouverts d'une fresque @'etrange.^Il y fait sombre, mais de petites inscrustations de pierres bleues brillantes dispensent une lumi@`ere diffuse. D'un cot@'e, une plateforme entour@'ee d'une rambarde s'avance dans l'ab@^ime, et de l'autre, le couloir s'avance comme une perc@'ee dans cette immense paroi recouverte de livres. ", each_turn [;if (nuit==99 && plot_depth<49) {move miniloom2 to anti;move silhouette to anti;} else {remove miniloom2;remove silhouette;}], n_to [;if (plot_depth>48) {return study;}], in_to [;if (plot_depth>48) {return study;}], has scenery; Object miniloom2 "m@'etier @`a tisser fant@^ome" with name "petit" "metier" "a" "tisser" "etoffe" "navette" "fantome", description "Sur le cot@'e du couloir, vous voyez une aura de lumi@`ere se condenser doucement en un m@`etier @`a tisser translucide, aux reflets mauves, @'eclair@'e de l'interieur par moments comme si une aurore bor@'eale br@^ulait en lui. A part ses couleurs et son cot@'e...immat@'eriel, il est en tous points semblable @`a celui de la biblioth@`eque. ", has supporter static; Object clavier2 "clavier" miniloom2 with name "clavier" "touches" "lettres" "lettre" "touche", description "Le clavier est, lui aussi, fantomatique, avec des touches grossierement carr@'ees semblables @`a des gla@@cons. ", before [;Touch,Attack,Composer : print "Si vous voulez composer un mot avec le clavier, utilisez la syntaxe suivante : ~taper mot~ ";return 2;], has static; Object silhouette "silhouette" with name "silhouette" "fantome" "figure" "ombre" "gardien" "spectre" "apparition", description "Au bout du couloir se tient immobile une silhouette indistincte d'homme, aux couleurs changeantes. Vous ne pouvez voir ses yeux, mais vous sentez aux imperceptibles mouvements de son visage qu'il vous observe. ", life [; Answer, Ask, Tell : print "Vous vous approchez du fant@^ome : ~Euh...salut, mec. ~^^La silhouette montre le m@'etier @`a tisser qui brille fantomatiquement.^^Hum. ";""; Attack : print "Vous donnez un coup de pied sans conviction @`a la silhouette. Votre pied passe au travers du corps immat@'eriel et le fantome vous observe avec curiosit@'e. ";""; Kiss: print "Vous frolez de vos l@`evres la surface ondulante de l'apparition et faites un petit bisou. Vous sentez un peu d'@'el@'ectricit@'e parcourir votre corps, et la surface embrass@'ee vire au bleu quelques instants. ";""; Show, Give: print "^Le fantome hoche la t@^ete, et pointe vers le m@'etier @`a tisser. ";""; ], has animate female; Object study "Salle secr@`ete" with description "Un petite pi@`ece carr@'ee @'eclair@'ee par de nombreuses bougies aux flammes droites et tranquilles. Une moquette souple et agr@'eable @`a fouler, des murs capitonn@'es de velours dans des tons chaleureux, tout inspire au confort. ", out_to anti, has scenery; Object radio "radio" with name "radio", description "C'est la super radio d'Atropos qui s'allume quand elle veut (elle n'a pas de bouton ~on~), mais elle passe toutes les musiques que j'aime. Depuis hier soir, elle ne produit plus un son. ", has female; Object superlit "lit douillet" with name "lit" "douillet", description "Un super lit que vous a cr@'e@'e Atropos. Super confortable, tout doux et toujours chaud pour vous. Dommage que vous ne puissiez pas le transporter... ", has static supporter; Object ikea "biblioth@`eque" study with name "bibliotheque" "bibliotheques" "livres", description "De nombreux livres aux intitul@'es divers sont rang@'es dans la biblioth@`eque. Un grand nombre d'entre eux ne sont pas r@'edig@'es dans une langue ou un alphabet que vous connaissez. ", before [;Search : if (ikea.fouilled==1) {print "Vous passez quelques minutes @`a parcourir les livres, mais apparemment, aucun autre volume ne peut vous venir en aide. ";return 2;} else {print "Vous parcourrez les diff@'erents titres, du moins ceux que vous comprenez, en carressant leur reliure @'epaisse, et vous notez un volume qui pourrait vous @^etre utile : ~Fleurs d@'elicates et belles~ ";move livre to study;ikea.fouilled=1;return 2;}], fouilled, has female static; Object livre "livre intitul@'e ~Fleurs d@'elicates et belles~" with name "livre" "tome" "volume" "cadenas" "ferme" "fleurs" "delicates" "et" "belles", description [;print "Un in-folio somptueusement reli@'e, vert sombre, bord@'e de dorures art nouveau. Epais comme un dictionnaire, il est maintenu solidement ferm@'e par un cadenas. ";if (self has open) {print "Sur la premiere page du livre, vous pouvez lire l'introduction suivante :";style underline; print "^Un mot pour rappeler la pratique du tissage ne serait pas, je pense, superflu.^^Il faudra au tisserand une @'etoffe @'elabor@'ee @`a partir des motifs du lieu o@`u les fleurs seront destin@'ees @`a vivre, et une aiguille. Je pr@'ecise @`a toutes fins utiles que les aiguilles destin@'ees @`a tisser la r@'ealit@'e ne se transmettent pas : elles sont la plupart du temps trouv@'ees par hasard dans des circonstances toujours innattendues, comme si, anim@'ees d'une volont@'e propre, elles d@'ecidaient de qui ou non est apte @`a l'art du tissage.^^Je rappelle @'egalement que les combinaisons de fil d@'ependent de quatre facteurs cruciaux pour l'accomplissement en bonne et due forme de la cr@'etion par le fil : couleur de l'@'etoffe, nombre de fils pass@'es dans le chas de l'aiguille, ordre de ces fils, couleurs de ces fils.^La moindre inversion ou un mauvais suivi des tables suivantes donnerait des r@'esultats al@'eatoires, donc potentiellement dangeureux.^^";style roman;print "Suivent alors, sur toutes les pages, class@'es par ordre alphab@'etique, des tableaux qui n'en finissent pas avec des noms de plante, des couleurs de fil, et d'@'etoffe.^^(Pour consulter un item pr@'ecis, utiliser le verbe ~regarder item dans livre~ ou ~consulter livre sur item~) ";return 2;}] , before [w j;Take : if (parent(livre)==lutrin) {print "Saisissant le livre, vous entendez un petit clic. ";give livre ~open;give livre locked;} Consult : if (self has open) {wn=consult_from;w=NextWord();j=random(10);switch(w) { 'Lys','Blanc': print "~Lys : Etoffe marron. Fil Vert. Fil Blanc. Fil Violet.~ "; default : print "L'@'ecriture n'est pas facile @`a d@'echiffrer. Incertaine, vous tournez les pages...^";switch(j) { 0 : print "Vous ne trouvez pas d'entr@'ee @`a ce nom. Cherchez ailleurs. "; 1 : print "Etoffe Noire. Fil Vert. "; 2 : print "Etoffe Marron. Fil Jaune. Fil Violet. Fil Transparent. "; 3 : print "Etoffe Verte. Fil Noir. "; 4 : print "Non, vous ne trouvez pas d'entr@'ee @`a ce mot dans le livre. "; 5 : print "Etoffe Noire. Fil Noir. "; 6 : print "Il y a une entr@'ee @`a ce nom, mais elle est @`a moiti@'e effac@'ee. "; 7 : print "Etoffe Marron. Fil Jaune. Fil Vert. Fil Orange. "; 8 : print "Etoffe Blanche. Fil Jaune. Fil Rouge. Fil Bleu. "; 9 : print "La page a @'et@'e arrach@'ee @`a cette entr@'ee. "; 10 : print "Vous ne trouvez pas d'entr@'ee @`a ce nom. Cherchez ailleurs. "; } } return 2; } else {print "Ben, il est ferm@'e !";return 2;} ], has openable locked; Object lutrin "lutrin" study with name "lutrin" "ecritoire" "support", description "C'est un lutrin, un support @`a partitions ou livres, taill@'e dans un bois brillant et lisse. Il maintient le livre @`a hauteur de lecture pour quelqu'un de debout. ", before [;Receive : if (noun==livre) {print "Posant le tome sur le lutrin, vous entendez un petit clic. ";give livre ~locked;}], has static supporter; Object etabli "etabli" study with name "etabli" "atelier" "table", description "Un etabli, pos@'e sur des tr@'eteaux solides, jouxte le lutrin. ", has supporter static; Object boite "boite" etabli with name "boite" "couture", description "Une boite de bois clair, fix@'ee sur l'@'etabli. ", has container static openable female; Object ciseaux "paire de ciseaux" etabli with name "paire" "de" "ciseaux", description "Une paie de ciseaux dans un m@'etal lourd et brillant. ", has female leger; Object bobines "bobines" boite with name "bobines" "bobine", description "Des bobines de fil de toutes les couleurs, que l'on peut d@'erouler, sont attach@'ees au fond de la boite. ", has container static open female pluralname; Object filblanc "fil blanc" bobines with name "fil" "blanc" "bobine", description "Du fil blanc, apparemment tr@'es r@'esistant. ", article "du", before [;Cut : if (second==ciseaux) {if (self.couped==1) {print "Vous avez d@'ej@`a coup@'e un bout. ";return 2;} else {print "Clac, vous coupez un bout de fil blanc. ";move bfblanc to etabli;self.couped=1;return 2;}} else {print "Avec quoi? ";return 2;} Take : print "Vous en d@'eroulez un bout, mais vous ne pourrez pas tout emporter, et vous en servir utilement. ";return 2;],couped, has static; Object filbleu "fil bleu" bobines with name "fil" "bleu" "bobine", description "Du fil bleu, apparemment tr@'es r@'esistant. ", article "du", before [;Cut : if (second==ciseaux) {if (self.couped==1) {print "Vous avez d@'ej@`a coup@'e un bout. ";return 2;} else {print "Clac, vous coupez un bout de fil bleu. ";move bfbleu to etabli;self.couped=1;return 2;}} else {print "Avec quoi? ";return 2;} Take : print "Vous en d@'eroulez un bout, mais vous ne pourrez pas tout emporter, et vous en servir utilement. ";return 2;],couped, has static; Object filrouge "fil rouge" bobines with name "fil" "rouge" "bobine", description "Du fil rouge, apparemment tr@'es r@'esistant. ", article "du", before [;Cut : if (second==ciseaux) {if (self.couped==1) {print "Vous avez d@'ej@`a coup@'e un bout. ";return 2;} else {print "Clac, vous coupez un bout de fil rouge. ";move bfrouge to etabli;self.couped=1;return 2;}} else {print "Avec quoi? ";return 2;} Take : print "Vous en d@'eroulez un bout, mais vous ne pourrez pas tout emporter, et vous en servir utilement. ";return 2;],couped, has static; Object filviolet "fil violet" bobines with name "fil" "violet" "bobine", description "Du fil violet, apparemment tr@'es r@'esistant. ", article "du", before [;Cut : if (second==ciseaux) {if (self.couped==1) {print "Vous avez d@'ej@`a coup@'e un bout. ";return 2;} else {print "Clac, vous coupez un bout de fil violet. ";move bfviolet to etabli;self.couped=1;return 2;}} else {print "Avec quoi? ";return 2;} Take : print "Vous en d@'eroulez un bout, mais vous ne pourrez pas tout emporter, et vous en servir utilement. ";return 2;],couped, has static; Object filjaune "fil jaune" bobines with name "fil" "jaune" "bobine", description "Du fil jaune, apparemment tr@'es r@'esistant. ", article "du", before [;Cut : if (second==ciseaux) {if (self.couped==1) {print "Vous avez d@'ej@`a coup@'e un bout. ";return 2;} else {print "Clac, vous coupez un bout de fil jaune. ";move bfjaune to etabli;self.couped=1;return 2;}} else {print "Avec quoi? ";return 2;} Take : print "Vous en d@'eroulez un bout, mais vous ne pourrez pas tout emporter, et vous en servir utilement. ";return 2;],couped, has static; Object filvert "fil vert" bobines with name "fil" "vert" "bobine", description "Du fil vert, apparemment tr@'es r@'esistant. ", article "du", before [;Cut : if (second==ciseaux) {if (self.couped==1) {print "Vous avez d@'ej@`a coup@'e un bout. ";return 2;} else {print "Clac, vous coupez un bout de fil vert. ";move bfvert to etabli;self.couped=1;return 2;}} else {print "Avec quoi? ";return 2;} Take : print "Vous en d@'eroulez un bout, mais vous ne pourrez pas tout emporter, et vous en servir utilement. ";return 2;],couped, has static; Object filmarron "fil marron" bobines with name "fil" "marron" "bobine", description "Du fil marron, apparemment tr@'es r@'esistant. ", article "du", before [;Cut : if (second==ciseaux) {if (self.couped==1) {print "Vous avez d@'ej@`a coup@'e un bout. ";return 2;} else {print "Clac, vous coupez un bout de fil marron. ";move bfmarron to etabli;self.couped=1;return 2;}} else {print "Avec quoi? ";return 2;} Take : print "Vous en d@'eroulez un bout, mais vous ne pourrez pas tout emporter, et vous en servir utilement. ";return 2;],couped, has static; Object aiguille "aiguille" with name "aiguille" "metal" "brillant", description "Une fine aiguille de la longueur de votre index, brillante d'une lumi@`ere int@'erieure. ", each_turn [;if (child(aiguille) == nothing) {aiguille.combo=0;}], before [;Receive : if (noun has fil) {if (noun==lachebfvert) {aiguille.combo=66;} else if (noun==bforange) {aiguille.combo=99;} else if (noun==bfvert && aiguille.combo==0) {aiguille.combo=1;} else if (noun==bfblanc && aiguille.combo==1) {aiguille.combo=2;} else if (noun==bfviolet && aiguille.combo==2) {aiguille.combo=3;}} else {print "Hum, je ne crois pas que ca passera dans le chas de l'aiguille !";return 2;}], combo, initial "Pos@'ee l@`a, une aiguille brillante qui attire votre regard. ", has container female open leger; Object scarf "@'echarpe de tissu" with name "tissu" "echarpe" "marron" "etoffe" "motif" "motifs", description "Un long morceau de tissu marron, chaud et doux, sur lequel de petites ondes comme des vaguelettes sont parfois perceptibles. ", has clothing female leger; Object bfblanc "bout de fil blanc" with name "bout" "fil" "blanc", description "Un bout coup@'e de fil blanc", has fil leger; Object bfbleu "bout de fil bleu" with name "bout" "fil" "bleu", description "Un bout coup@'e de fil bleu", has fil leger; Object bfrouge "bout de fil rouge" with name "bout" "fil" "rouge", description "Un bout coup@'e de fil rouge", has fil leger; Object bfviolet "bout de fil violet" with name "bout" "fil" "violet", description "Un bout coup@'e de fil violet", has fil leger; Object bfjaune "bout de fil jaune" with name "bout" "fil" "jaune", description "Un bout coup@'e de fil jaune", has fil leger; Object bfvert "bout de fil vert" with name "bout" "fil" "vert", description "Un bout coup@'e de fil vert", has fil leger; Object bfmarron "bout de fil marron" with name "bout" "fil" "marron", description "Un bout coup@'e de fil marron", has fil leger; Object champs "Des Champs @`a Perte De Vue" with description "Vous progressez sur un chemin large trac@'e de vieilles orni@`eres. Sur chaque cot@'e, une grossi@`ere haie de bois entoure sur votre droite un grand champ de bl@'e mur et roux, et sur votre gauche une @'etendue en jach@`ere o@`u paissent des moutons sauvages. Sur l'est, vous devinez derri@`ere de grands arbres une b@^atisse gigantesque et carr@'ee, et sur l'ouest, au del@`a de quelques collines herbues plant@'ees de quelques arbres @'epars, le clocher d'une @'eglise de village. ", e_to hiddenpath, w_to village, has scenery; Object village "Un Petit Village Silencieux" with description "Vous @^etes sur la place d'un hameau silencieux constitu@'e d'une poign@'ees de maisons tourn@'ees vers une vieille @'eglise fatigu@'ee. Les maisons sont en pierre et leurs toits en chaume. Leurs lourdes portes sont entrouvertes et montrent des int@'erieurs vides de toute vie et de tout meuble. La seule vie du village bouillone dans une source tranquille sur la place et les nombreux oiseaux volant et piaillant autour du campanile de l'@'eglise.^Vous distinguez, sur le nord, un endroit d@'egag@'e o@`u se tient une grosse masse indistincte. Un chemin quitte le village et part sur l'est au travers des collines. ", in_to church, e_to champs, n_to sidechurch, has scenery; Object church "Une Eglise Silencieuse" with description "Une @'eglise gothique et paysanne qui a senti passer le fil du temps : des lierres sauvages ont descell@'e le pav@'e et grimpent jusqu'aux vitraux bris@'es, des bancs de bois pourris se sont @'eventr@'es et la lumi@`ere tombe en rais crois@'es dans les nombreux trous du toit. Vide et silencieuse, elle abrite un grand christ en croix qui vous fixe de ses yeux tristes, et un lustre de bronze terni pend du plafond.^La sacristie est vide. Une lourde porte close garde une entr@'ee lat@'erale sur l'est. ", e_to heavydoor, out_to village, has scenery; Object lustre "grand lustre" church with name "grand" "lustre" "candelabre" "lumieres" "lumiere", description [;if (lustre.attached==1) {print "C'est un tr@'es grand lustre pour l'@'eglise, qui peut accueillir une soixantaine de bougies, mais dont tous les emplacements sont vides. Il est accroch@'e au plafond par une chaine qui passe par une poulie et redescend derri@`ere l'autel. Massif et lourd, vous vous demandez comment il a resist@'e au passage du temps.^Le lustre est par terre. ";} else if (lustre.reattached==1 || chain.tired==1) {print "C'est un tr@'es grand lustre pour l'@'eglise, qui peut accueillir une soixantaine de bougies, mais dont tous les emplacements sont vides. Il est accroch@'e au plafond par une chaine qui passe par une poulie et redescend derri@`ere l'autel. Massif et lourd, vous vous demandez comment il a resist@'e au passage du temps. Il se balance doucement, @`a un m@`etre du sol. ";} else {print "C'est un tr@'es grand lustre pour l'@'eglise, qui peut accueillir une soixantaine de bougies, mais dont tous les emplacements sont vides. Il est accroch@'e au plafond par une chaine qui passe par une poulie et redescend derri@`ere l'autel. Massif et lourd, vous vous demandez comment il a resist@'e au passage du temps. ";}], before [;Push : if (lustre.descended~=1) {print "Le lustre est hors d'atteinte, voyons ! ";return 2;} else if (lustre.reattached~=1) {print "Vous ne pouvez pas le pousser, il est bien trop lourd pos@'e comme cela sur le sol ! ";return 2;} else {if (lustre.balanced==0) {StartDaemon(lustre);lustre.balanced=1;various=various+2;return 2;} else {if (direc==0) {print "Vous donnez une bonne impulsion au lustre pour augmenter son balancement. ";various=various+2;return 2;} else {print "Non, ce n'est pas le bon moment, vous risquez de vous blesser et de freiner le balancement plut@^ot que de l'augmenter. ";return 2;}}}], daemon [; if (player in church) { if (direc==3) {direc=0;} else {direc=direc+1;} if (direc==2) {various=various-1;} switch(direc) { 0 : print "^Le lustre s'@'eloigne dans l'autre sens, s'@'elevant en l'air. "; 1 : print "^Le lustre passe en sifflant entre les bancs de bois vers la porte de bois. "; 2 : switch(various) { 1 : print "^Le lustre gratte un peu contre la porte et revient en tournoyant. "; 2 : print "^Le lustre @'emet un faible bruit quand il heurte la porte. "; 3 : print "^Le lustre s'@'ecrase contre la porte dans un bruit sec. "; 4 : print "^Le lustre heurte tr@'es violemment la porte, arrachant quelques @'echardes de bois et des grincements de bon augure. "; 5 : if (heavydoor has locked) {print "^Le lustre s@'ecrase contre la porte et l'ouvre d'un seul coup en descellant les gonds. Bien jou@'e Margot ! ";plot_depth=plot_depth+1;give heavydoor ~locked;give heavydoor open;move billet to clocher;} else {print "^Le lustre se balance dans le vide et revient. ";}} if (various>5) {print "^Le lustre se balance dans le vide et revient. ";} 3 : print "^Le lustre repasse en sifflant au ras des bancs de bois dans la direction oppos@'ee @`a la porte. "; } if (various==0) {print "^Ayant perdu petit @`a petit son @'elan, le lustre revient s'immobiliser au centre de la piece. ";direc=1;lustre.balanced=0;StopDaemon(lustre);} } else {direc=1;lustre.balanced=0;StopDaemon(lustre);} ], balanced, attached, reattached, descended, has scenery; Object chain "chaine" church with name "chaine" "metal" "lourde", description "Une tr@'es lourde chaine de m@'etal, reli@'ee au lustre pendu au plafond, passant par une poulie suspendue et que l'on attache @`a un montant de m@'etal derri@`ere l'autel. ", before [;Untie : if (lustre.descended==1) { if (lustre.reattached==1) { print "Bam ! Le lustre s@'ecrase de nouveau sur le sol. ";lustre.reattached=0;various=0;direc=1;return 2; } else { if (lustre.attached==1) { print "Ok, vous d@'etachez la chaine, et elle se balance dans le vide doucement. ";lustre.attached=0;return 2; } else { print "Hum. C'est d@'ej@`a d@'etach@'e. ";return 2; } } } else { print "Vous d@'etachez doucement la chaine...et soudain elle s'@'echappe de vos mains, tir@'ee par le tr@'es lourd lustre, qui s'@'ecrase au sol dans un tonnerre de tous les diables, balayant les bancs de bois et soulevant une poussi@`ere centenaire ! BAM ! ";lustre.descended=1;various=0;direc=1;return 2; } Pull : if (lustre.descended==1) { if (lustre.reattached==1) {print "Vous tirez de tout votre poids sur la chaine, mais vous ne pourrez pas hisser le lustre plus haut ! ";return 2;} else {if (lustre.attached==1) {print "La chaine est attach@'ee, vous ne pouvez pas assurer une bonne prise. En tirant ainsi, vous ne soulevez rien. ";return 2;} else {if (chain.tired==1) {print "Vous n'arriverez pas @`a la tirer plus haut ! ";return 2;} else {print "Vous vous aggripez @`a la cha@^ine et vous tirez en appuyant de tout votre poids. Le lustre se soul@`eve d'un m@`etre, puis se stabilise. Vous ne pourrez pas le tirer plus haut. ";chain.tired=1;return 2;}}}} else {print "La chaine est tenue au maximum. Je ne crois pas que vous pourrez monter encore le lustre plus haut. ";return 2;} Tie : if (chain.tired==1) {print "Ok, vous attachez la chaine au portant en acier. ";lustre.reattached=1;chain.tired=0;return 2;} else if (lustre.descended==1 && lustre.attached==0) {print "Ok, vous attachez la chaine au portant en acier. ";lustre.attached=1;return 2;} ], react_before [;Go,Exit,GetOff,Push : if (chain.tired==1) {print "Vous lachez la chaine et le lustre tombe par terre, BAM ! Encore un peu, et vous creusiez un trou. ";chain.tired=0;}], tired, has scenery female; Object portant "portant en acier" church with name 'portant' 'acier', description "Un gros rivet d'acier fich@'e dans le mur pour attacher la cha@^ine du lustre. ", has static scenery; Object heavydoor "lourde porte" with name "lourde" "porte" "serrure" "bois" "rouillee", description "Une lourde porte de planches de ch@^ene @'epaisses, munie d'une serrure envahie de rouille. Solidement ferm@'ee par une clef et la grippe du temps. ", when_open "La lourde porte du cot@'e est est ouverte, @`a moiti@'e d@'efonc@'ee par le lustre. ", door_to churchpassage, door_dir e_to, has female scenery door openable locked; Object sidechurch "Derri@'ere l'Eglise" with description "Juste un endroit d@'egag@'e, o@`u autrefois devaient paisser les b@^etes de somme appartenant au clerg@'e. Contre l'@'eglise est empil@'e un @'enorme tas de foin un peu d@'efraichi, qui fait deux fois votre taille. Un enclos de poutres brutes d@'elimite cet espace. Au sud se trouve la place du village. ", s_to village, has scenery; Object meule "tas de foin" with name "tas" "foin" "meule" "paille", description "Un tas de foin gigantesque est adoss@'e contre l'@'eglise. Pas super fraichement coup@'e, il sent quelque peu le moisi. ", has static; Object churchpassage "Des Escaliers Oubli@'es" with description "Une vol@'ee d'escaliers de pierre recouverts d'une poussi@`ere centenaire monte en colima@@con depuis l'@'eglise jusqu@`a une ouverture tr@'es @'eclair@'ee, o@`u vous entendez de nombreux cris d'oiseaux. ", u_to clocher, w_to church, out_to church, has scenery; Object clocher "Clocher de L'Eglise" with description "L'escalier de l'@'eglise m@`ene tout droit au campanile en haut du clocher, o@`u devait pendre autrefois une cloche. D'ici, le spectacle est envo@^utant : les quelques maisons de au toit de chaume entour@'ee par des collines, et au dela, un oc@'ean de verdure rythm@'e par une houle de collines, et de temps @`a autre, rompu par de petits bosquets d'arbres feuillus.^^Une nu@'ee d'oiseaux piaillent autour de vous. Le sol de paille, qui est leur niche, est recouvert de nombreux objets h@'et@'eroclites chip@'es dans les maisons des alentours, mais vous reconnaissez aussi certains des objets de votre avion. ", d_to churchpassage, has scenery; Object sacados "sac @`a dos" with name 'sac' 'a' 'dos' 'sac a dos', description "Un large sac @`a dos en cuir, @`a la coupe @'el@'egante, presque neuf. ", before [;Receive : if (noun hasnt leger) {print "Ca tiendra pas dans ton sac, Margot ! ";return 2;}], has container openable clothing; Object parka "parka" sacados with name 'parka' 'manteau', description "Un manteau @'epais, lourd et bien chaud. Plusieurs @'epaisseurs de tissu moletonn@'e et plusieurs ouvertures : fermeture @'eclair, boutons, clips...sans oublier les petits fils qui pendent de partout pour permettre de resserer les entournures. Le col se rel@`eve et permet de couvrir presque tout le visage, et, touche d@'elicate de l'objet, une grande capuche bord@'ee de fourrure. ", has female clothing leger; Object chapka "chapka" sacados with name 'chapka' 'toque' 'chapeau', description "Mmm...une sorte de bonnet chaud fourr@'e @`a l'int@'erieur avec de d@'elicieuses oreillettes qui pendent jusque sous votre menton, que vous pouvez lier avec une petite cordelette de cuir. ", has female clothing leger; Object endvoie "Fin de voie dans des collines perdues" with description "Le terrain ici se radoucit un peu, quittant les terres vallon@'ees du sud. Une herbe rase et s@`eche recouvre un terrain rocailleux. Le vent est froid et sans merci. Au beau milieu de cette rase campagne, une ligne de chemin de fer se termine et part vers le nord, droite comme un m@'eridien. ", before [;Go : if (noun~=n_obj) {if (noun==s_obj) {print "Vous avez fait vos adieux, Margot. L'avenir, c'est vers le nord. ";return 2;} else {print "N'est ce pas un peu pr@'esomptueux et dangereux de s'@'eloigner de la piste du chemin de fer? Suivez le conseil de Lachesis. ";}} else {various=0;direc=0;}], n_to snow1, has scenery; Object snow1 "Steppe" with description "Tout s'aplatit : l'horizon dans un trait mince et distant, les nuages en cirrus d@'echir@'es par des vents violents qui apportent du nord, d'autres nuages blancs et lourds, l'herbe de plus en plus rase, et vous m@^eme dans vos v@^etements alors qu'il fait plus de plus en plus froid. Pr@'es de vous, la ligne de chemin de fer us@'ee continue invariablement vers le nord. ", before [;Go : if (noun==s_obj) {print "Vous avez fait vos adieux, Margot. L'avenir, c'est vers le nord. ";return 2;} ], n_to snow2, w_to perdu, nw_to perdu, ne_to perdu, e_to perdu, se_to perdu, sw_to perdu, has scenery; Object perdu "Marchant dans la neige" with description [i;print "^Vous n'@^etes pas certaine de votre direction. Les nuages recouvrent enti@`erement le ciel et tout est couvert de neige.^";i=random(10);switch(i) { 0 : print "Autour de vous, un terrain plat et morne, avec de temps @`a autres des dolmens recouverts d'un @'epais manteau de neige. "; 1 : print "Autour de vous, un terrain plat comme une table, avec de temps @`a autres des hautes foug@`eres qui percent le manteau de la neige. "; 2 : print "Vous entrez dans un petit bois d'arbres maigrelets et @'epars, sans leurs feuilles. Une petite clairi@`ere entoure un simple rocher, @`a moiti@'e enterr@'e sous la neige. "; 3 : print "Le terrain est en pente nette, et grimper les rochers dans cette neige est un exercice @'eprouvant. Le plateau est encore @`a quelques m@`etres devant vous. "; 4 : print "Une pente abrupte juste devant vous s'ouvre et descend rapidement beaucoup plus bas, dans un terrain enneig@'e et @'eboul@'e. "; 5 : print "Vous venez de d@'ecouvrir les restes d'un grand village. Vous devinez l'ancien emplacement des maisons aux murs @'ecroul@'es et aux quelques chambranles de porte encore debouts. Mais il ne reste plus rien de concret et utilisable, le tout ayant @'et@'e balay@'e par le temps et les intemp@'eries. "; 6 : print "Passant une @'etrange colonne noir incrust@'ee de veines de quartz brillant, il vous semble voir un instant dans la neige un groupe de six voyageurs trainant d'@'etranges b@^etes de somme, mais secouant la t@^ete, cette vision s'estompe. Ce froid, ce blanc intense vous tourne la t@^ete. "; 7 : print "Vous contournez une for@^et imp@'en@'etrable de hauts sapins, et longez une ancienne cloture @`a moiti@'e d@'etruite d@'elimitant un champ qui n'existe plus. "; 8 : print "De nombreux trous minent le terrain plat de cet endroit. Avec un b@^aton, vous t@^atez pr@'ecautionneusement le sol avant d'avancer, de peur d'y tomber. "; 9 : print "Le paysage est fascinant : de longues stalactites tombent de chemin@'ees de f@'ees cr@'ees par le temps et l'@'erosion, se penchant sur vous comme des esprits de pierre interrogateurs. "; 10 : print "Autour de vous, un terrain plat comme une table, avec de temps @`a autres des hautes foug@`eres qui percent le manteau de la neige. "; }], before [i;i=random(10);if (i==7) {print "Vos pieds heurtent une asp@'erit@'e dissimul@'ee sous la neige et vous tombez plut@^ot brutalement. ";attend();print "Surprise, vous remarquez qu'il s'agit de la voie ferr@'ee ! Vous l'avez retrouv@'ee ! ";attend();PlayerTo(snow2);return 2;}], n_to perdu, w_to perdu, nw_to perdu, ne_to perdu, e_to perdu, se_to perdu, sw_to perdu, has scenery; Object neige "tempete de neige" with name 'tempete' 'de' 'neige' 'flocons' 'ciel' 'nuages', description "Les flocons tombent autour de vous en tourbillonant, alors que des vents furieux balayent votre visage. Tout devient blanc. ", found_in snow1 snow2 snow3 perdu intersection tunnel incabane, each_turn [i;if (neige.tombing~=1) { if (location~=incabane || (location==incabane && portecabane has open)) { if (parka hasnt worn) {print "^Vos v@^etements ne vous prot@'egent pas assez, et le froid passant entre ceux-ci vous g@`ele dans une morsure paralysante qui vous fait souffrir. ^";direc=direc+1;} if ((chapka hasnt worn)) {print "^Vous avez terriblement froid @`a la t@^ete, une brulure qui semble d@'echirer vos oreilles et une migraine d@^ue au froid qui vous lance atrocement. ^";direc=direc+1;} switch(various) { 0 : print "Le vent souffle fort et vous br@^ule le visage de froid. "; 1 : print "La temp@'erature vient de chuter encore, et vous exhalez une vapeur blanche @`a chacune de vos respirations. "; 2 : print "Quelques flocons tombent @'epars, et viennent fondre dans vos cheveux et vos yeux. "; 3 : print "Le sol est maintenant recouvert d'une fine couche de neige. "; 4 : print "Le ciel est totalement recouvert de nuages. Vous ne voyez plus la direction du soleil. "; 5 : print "Votre visage souffre de ce froid sec, et vous sentez votre peau tirer douloureusement. "; 6 : print "Partout o@`u vous pouvez porter le regard, tout est blanc. "; 7 : print "Les flocons tombent dru, maintenant. Vous ne pouvez pas voir distinctement les choses @`a moins de dix m@`etres. "; } if (various>7 && location~=incabane) {i=random(10);switch(i) { 0 : print "C'est une v@'eritable temp@^ete de neige qui souffle depuis le nord. Devant vous, dans un n@'eant gris et noir, vous voyez des volutes de neige et de glaces tourbilloner. "; 1 : print "C'est une v@'eritable temp@^ete de neige qui souffle depuis le nord. Devant vous, dans un n@'eant gris et noir, vous voyez des volutes de neige et de glaces tourbilloner. "; 2 : print "Vos doigts sont gel@'es. Souffler dessus ne fait qu'accentuer les br@^ulures, alors vous les repliez fermement dans vos manches. "; 3 : print "Le froid s'insinue au travers de vos v@^etements. Un frisson parcourt votre corps. "; 4 : print "Vous claquez l@`egerement des dents. "; 5 : print "Vous tremblez par @`a coups, de fa@@con violente, sous l'emprise du froid. Les muscules de votre dos vous font particulierement souffrir. "; 6 : print "Une fine couche de glace se mat@'erialise dans vos sourcils. "; 7 : print "En avan@@cant, vous devez tracer p@'eniblement un chemin dans une couche de neige @'epaisse qui vous arrive au mollet. "; 8 : print "Les flocons tombent, absorbant tout bruit. "; 9 : print "Le sol couvert de neige crisse sous vos pieds alors que vous tracez votre piste dans des @'etendues d@'esol@'ees d@'epourvues de repr@`eres. "; 10 : print "Vous avez tr@'es froid. "; }} if (various>29) {direc=direc+1;} switch(direc) { 2 : print "^Le froid vous fait perdre des forces. "; 4 : print "^Vous souffrez du froid de tous vos membres. "; 5 : print "^Votre corps n'est qu'une immense br@^ulure d'un froid mordant et sans merci. Il vous faut, rapidement, trouver un abri chaud. "; 7 : print "^Vos muscles s'engourdissent. Vous sentez le froid de moins en moins, comme s'il vous poss@'edait. Une euphorie @'etrange vous gagne. Vous avez envie de dormir. "; 9 : print "Vous vous @'ecroulez dans la neige, le visage tourn@'e sur le sol. Lachesis...pourquoi ne vous a t il pas secouru? ";Fin(7); } various=various+1; } }], tombing, has scenery female; Object snow2 "Une Vall@'ee Recouverte de Neige" with description "Autour de vous, tout est blanc. Quelques arbustes morts transpercent le manteau de neige, et la ligne de chemin de fer est completement dissimul@'ee sous les flocons. Vous progressez lentement, tra@@cant une piste de neige au creux de ce qu'il semble @^etre une vall@'ee dont vous devinez les flancs abrupts. ", before [;Go : give hiddenrail concealed;give groundsnow ~concealed;], n_to perdu, w_to perdu, nw_to snow3, ne_to perdu, e_to perdu, s_to perdu, se_to perdu, sw_to perdu, has scenery; Object snow3 "De Gigantesques Glaciers" with description "Vous remontez et marchez encore pour ce qu'il vous semble @^etre des heures.^Au travers des flocons, vous observez une structure immense qui vous laisse un instant stup@'efaite : un gigantesque glacier, aux dimensions d'un iceberg, coule depuis une montagne gigantesque perdue dans les nuages. De pr@`es, ce glacier, tel une rivi@`ere fig@'ee, semble rebondir depuis le pied de la montagne et former une voute haute comme l'Arche de la D@'efense, sous laquelle vous continuez, inexorablement, @`a tracer une piste qui s'efface rapidement sous la neige tombante, et sous laquelle, les rails qui sont votre seule piste, ont @'egalement disparu. ", before [;Go : give hiddenrail concealed;give groundsnow ~concealed;], n_to perdu, w_to perdu, nw_to perdu, ne_to intersection, e_to perdu, se_to perdu, sw_to perdu, s_to perdu, has scenery; Object groundsnow "neige sur le sol" with name 'neige' 'sur' 'le' 'sol' 'rails', description "La neige @`a cet endroit forme un petit monticule. Dessous, toujours les rails ou un rocher? Avez vous perdu votre piste? ", found_in snow2 snow3, before [;Take,Push,Pull,Dig : print "Vous retirez la neige et creusez un peu...vous d@'ecouvrez les rails qui forment une courbe l@`eg@'ere. Ils ne vont plus vers le nord ! Dire que vous alliez vous perdre. La pens@'ee d'@^etre livr@'ee @`a vous m@^eme dans ce froid ach@`eve de vous frigorifier. ";give self concealed;give hiddenrail ~concealed;return 2;], has scenery static female; Object hiddenrail "rails" with name 'rails' 'aiguillage' 'chemin' 'de' 'fer', description [;if (location==snow2) {print "Les rails mis @`a nu par vos petites mains habiles mais gel@'ees bifurquent sensiblement et se lancent vers le nord ouest. ";} else {print "Les rails mis @`a nu par vos petites mains habiles mais gel@'ees bifurquent sensiblement et se lancent vers le nord est. ";}], found_in snow2 snow3, has static pluralname concealed; Object intersection "Encercl@'ee de Montagnes" with description"De l'autre cot@'e du glacier, vous vous apercevez que vous @^etes entour@'ee d'une colossale cha@^ine de montagnes, abruptes comme des barri@`eres lev@'ees au del@`a des nuages, et escarp@'ees et fines comme si elles avaient @'et@'e taill@'ees au sabre.^Ces immenses structures vous donnent un peu de r@'epit, car ici le vent est moins continuement fort et les flocons ne tombent plus en tout sens.^On devine que la voie ferroviaire est d@'egag@'ee, filant plein nord droit vers les montagnes. ", before [;Go : if (noun==cabane) {<>;}], n_to tunnel, sw_to snow3, w_to perdu, nw_to perdu, ne_to perdu, e_to perdu, se_to perdu, s_to perdu, in_to portecabane, has scenery; Object portecabane "porte @'epaisse" with name 'porte' 'cabane' 'epaisse' 'bois', description "L'unique ouverture de cet abri est une porte @'epaisse, orn@'ee d'une @'epaisse serrure de m@'etal. ", when_open "La porte de la cabane est ouverte, laissant entrer le froid @`a l'interieur de l'abri", with_key clef, found_in intersection incabane, door_dir [;if (location==intersection) {return in_to;} else {return out_to;}], door_to [;if (location==incabane) {return intersection;} else {return incabane;}], has female door static scenery openable lockable locked; Object incabane "A l'abri" with description "La cabane a d'@'epais murs de bois et un sol de terre battue bien isol@'e. Elle semble avoir connu beaucoup de temp@^etes et de visiteurs, mais aussi leur gratitude d'avoir trouv@'e un abri pour se prot@'eger du terrible froid de ce pays inconnu.^Une table simple est pos@'ee au milieu, accompagn@'ee d'une paire de chaises bancales. Un rocking-chair recouvert de peau de mouton repose @`a cot@'e d'une chemin@'ee vide et nettoy@'ee.^Il y a @'egalement un gros tas de bois contre un mur, surmont@'e d'un petit panneau. ", out_to portecabane, has scenery; Object rockingchair "rocking chair" incabane with name 'rocking' 'chair' 'chaise', description "C'est un grand rocking-chair solide et lourd, recouvert d'une peau de mouton tr@'es confortable. ", before [;Take : print "Vous ne pourrez la prendre, mais il peut-@^etre la bouger... ";return 2; Enter : if (rockingchair.poussed==1) {print "Vous vous hissez debout sur le rocking chair, puis vous grimpez sur le toit de la cabane. Faisant cela, le rocking chair bascule et tombe le dossier dans la neige.^^Vous glissez quelque peu sur le toit pentu, et la t@^ete vous tourne d'un vertige auquel vous avez @'et@'e toujours sensible. ";PlayerTo(toit);return 2;} Push, Pull : if (plot_depth>54) {if (rockingchair in incabane) {if (portecabane has open) {print "Vous tirez et poussez la lourde chaise pour la faire passer au dehors. ";move rockingchair to intersection;return 2;} else {print "Mmm...vous ne pourrez la pousser bien loin, vu que la porte est ferm@'ee. ";}} else if (rockingchair.poussed==1) {print "Non, elle est bien l@`a o@`u elle est, pas la peine de la pousser plus. ";return 2;} else {print "Vous calez la chaise dans la neige, @`a cot@'e du mur de la cabane l@`a o@`u le toit est le plus bas. ";rockingchair.poussed=1;return 2;}} else {print "La chaise est bien l@`a o@`u elle est pour le moment. ";return 2;}], poussed, has supporter static enterable; Object tablec "table" incabane with name 'table', description "Une solide table de b@^ucheron. ", has female scenery supporter static enterable; Object bobineoc "bobine de fil orange" tablec with name 'bobine', description "Une bobine de fil orange, tr@'es semblable @`a celles que vous aviez utilis@'e chez Atropos... ", has container open female leger; Object filorange "fil orange" bobineoc with name 'fil' 'orange', description "Du fil orange, apparemment tr@'es r@'esistant. ", article "du", before [;Cut : if (second==ciseaux) {if (self.couped==1) {print "Vous avez d@'ej@`a coup@'e un bout. ";return 2;} else {print "Clac, vous coupez un bout de fil orange. ";move bforange to location;self.couped=1;return 2;}} else {print "Avec quoi? ";return 2;} Take : print "Vous en d@'eroulez un bout, mais vous ne pourrez pas tout emporter, et vous en servir utilement. ";return 2;],couped, has static scenery; Object bforange "bout de fil orange" with name "bout" "fil" "orange", description "Un bout coup@'e de fil orange", has fil leger; Object panneauc "panneau" incabane with name 'panneau' 'pancarte' 'affiche' 'signe', description [;print "Un bout de tissu brun clair, qui d@'eclare en belles lettres :^^";style underline;print "O voyageur fatigu@'e, toi que le feu de ce bois vient sauver du froid, n'oublie pas celui qui lui-m@^eme sauv@'e l'a coup@'e, et celui que tu sauveras en renouvellant le tas. ";style roman;], has leger; Object tasbois "tas de bois" incabane with name 'tas' 'de' 'bois', description "Un grand tas de bois sec est pos@'e contre la paroi, non loin de la chemin@'ee. ", before [;Take : if (self.boised==1) {print "Une buche, ca vous suffira pour l'instant. ";return 2;} else {print "Vous reperez une belle buche dans le tas et vous la posez sur la table. Ca va faire super pour la collec, et pas trop entamer le tas. ";move buche to tablec;self.boised=1;return 2;}], boised, has scenery static; Object buche "buche" with name 'bois' 'buche', description "Une belle buche de bois bien sec. Ca c'est de la b@^uche. De la super b@^uche, m@^eme. ", has female; Object cheminee "chemin@'ee" incabane with name 'foyer' 'cheminee', description "C'est une chemin@'ee assez large, dont le conduit d'@'echappement de la fum@'ee se s@'epare en trois parties longeant le mur afin de disperser la chaleur @`a l'interieur au maximum. ", has scenery container female open; Object cabane "solide cabane" intersection with name 'solide' 'cabane' 'hutte' 'bois', description "Non loin du chemin de fer, vous voyez une cabane de bois, aux murs apparemment @'epais, et qui a bien tenu le passage du temps. Aucune fen@^etre, mais une porte solide et un toit d'une seule pente plut@^ot raide et haute qui la prot@`ege d'une surcharge de neige. ", has female static; Object interieurpuits "puits" intersection with name 'interieur' 'du' 'puits' 'dans' 'ecroule' 'pierre' 'portique', description "Un petit puits de pierre @`a moiti@'e @'ecroul@'e se tient pr@`es de la cabane. Son portique est pratiquement d@'etruit, et son dernier utilisateur a judicieusement tir@'e la corde bien loin du rebord pour ne pas qu'elle tombe. Vous voyez un petit objet flotter, cinq m@`etres plus bas, dans l'eau couverte d'une fine pellicule de givre. ", before [;Jump : if (noun==interieurpuits) {print "C'est pas tr@'es malin ! Je pourrais dire ok, vous le faire faire et vous afficher un message de votre mort lente par noyade et gel, mais on va vous @'epargner une sauvegarde et faire comme si vous n'aviez rien tap@'e, ok? ";return 2;} Go : if (noun==interieurpuits) {print "C'est pas tr@'es malin ! Je pourrais dire ok, vous le faire faire et vous afficher un message de votre mort lente par noyade et gel, mais on va vous @'epargner une sauvegarde et faire comme si vous n'aviez rien tap@'e, ok? ";return 2;} Receive : if (noun==cordechapka) {if (interieurpuits.puised==1) {print "Mmm...^";} else {print "Vous plongez la corde dans le puits. Manoeuvrant habilement, vous faites descendre un peu dans l'eau votre chapka et la positionnez sous la planche de bois. Tirant doucement, vous remontez la corde, la chapka...et une grosse clef pendue @`a une planche de bois. ";give chapka ~worn;move cordechapka to intersection;move clef to intersection;remove floating;interieurpuits.puised=1;return 2;}} else if (noun~=corde) {print "Vous ne voulez pas perdre ",(the) noun," en le jetant b@^etement dans le puits !";return 2;}], puised, has static open container; Object floating "objet flottant" interieurpuits with name 'objet' 'flottant' 'bois', description "Une sorte de petite planche en bois...avec...autre chose, ah ! Avec ce givre vous ne voyez rien, d'autant plus que de nombreux flocons tombent dans le puits. Bon, c'est cinq m@`etres plus bas, au fond du puits, flottant sur l'eau. ", before [;Take : print "Ahem, c'est un peu hors de votre port@'ee. Avec toute la bonne volont@'e possible, vous tendez le bras mais il vous manque au moins quatre bons m@`etres pour l'atteindre. ";return 2;], has scenery; Object clef "clef" with name 'clefs' 'planche' 'clef', description "Une grosse clef de m@'etal rouill@'e, accroch@'ee @`a une planche @'epaisse grosse comme un battoir par un anneau de cuir. ", has female leger; Object corde "longue corde" intersection with name 'longue' 'corde', description "Une longue corde qui sent le moisi et la terre. Elle devait @^etre autrefois attach@'ee @`a un seau, mais l'extr@'emit@'e a pourri et le seau doit @^etre h@'elas au fond du puits... ", before [;Tie : if (noun==chapka && second==corde) {print "Ok, vous attachez la chapka par les oreillettes à la longue corde. ";remove chapka;remove self;move cordechapka to location;return 2;} else if (noun==corde && second==chapka) {print "Ok, vous attachez la chapka par les oreillettes à la longue corde. ";remove chapka;remove self;move cordechapka to location;return 2;} else {print "Mmm, vous arrivez pas vraiment. ";return 2;}], has female; Object cordechapka "longue corde (attach@'ee @`a une chapka)" with name 'longue' 'corde' 'attachee' 'chapka', description "Une longue corde qui sent le moisi et la terre. A son extremite, une chapka est attach@'ee. ", before [;Untie : if (noun==chapka || noun==corde) {print "Ok, vous d@'etachez la chapka de la corde. ";remove cordechapka;move corde to location;move chapka to location;return 2;} else {print "Mmm ? ";return 2;}], has female; Object tunnel "Un Tunnel Vers le N@'eant" with description "Vous @^etes @`a l'entr@'ee d'un tunnel obscur et haut, dans lequel s'engouffre la voie ferr@'ee. Il semble avoir @'et@'e creus@'e dans la roche dure et aiguis@'ee de ces @'etranges montagnes, puis recouvert d'un pavage de pierre de taille. Plus au sud, vous distinguez une petite cabane de bois. ", before [;Go : if (noun==in_obj || noun==n_obj) {if (self.avertissed==1) {print "^^Vous marchez quelques minutes dans les t@'en`ebres, vous guidant @`a t@^atons contre le mur. Vous butez de nombreuses fois contre les planches de la voie de chemin de fer. ";attend();print "Un bruit @'etrange mais redout@'e r@'esonne de plus en plus : un train approche !";attend();print "^Vous ne le verrez jamais arriver, car ce myst@'erieux convoi progressait phares @'eteints. ";attend();print "Et personne ne saura jamais quel a @'et@'e votre terrible destin dans ce pays inconnu. ";attend();Fin(99);} else {style underline;print "Une sourde intuition tiss@'ee en vous vous sugg@`ere que c'est la bonne direction, mais le mauvais moyen d'y aller. ";self.avertissed=1;style roman;}}], avertissed, has scenery; Object toit "Encercl@'ee par les Montagnes (sur le toit de la cabane)" with description "Le toit de la cabane n'est pas tellement pentu, mais glissant de neige, et, muscles tendus au bord de la crampe vous ma@^itrisez votre @'equilibre.^^Autour, c'est un paysage de neige domin@'e par ces augustes montagnes.^Vous ne vous saviez pas si sensible aux hauteurs, et vous tremblez de votre position. ", before [;Go : print "Et bien ma ch@`ere, je crois que vous @^etes prisonni@`ere de votre position. Vous ne pouvez aller nulle part, et quand @`a sauter au sol, c'est une option qui vous laisse les jambes tremblantes de terreur. ";return 2; Jump : if (loco in intersection) {print "Rassemblant votre courage, vous bondissez sur le train. ";attend();print "^Vous rouvrez vos yeux, tremblante, alors que vous @^etes allong@'ee dans la neige recouvrant le toit d'un wagon. ";StopDaemon(loco);PlayerTo(toitwagon);toitwagon.avanced=3;toitwagon.trained=0;StartDaemon(toitwagon);return 2;} else {print "Sauter du toit? Sur le sol? Certainement pas ! ";return 2;}], has scenery; Object toitwagon "Sur le toit du wagon" with description [;print "Vous @^etes sur le toit en zinc d'un wagon, glissant car recouvert d'un givre @'epais qui vous glace, mais aussi de neige consolid@'ee qui s'effrite sur votre passage et vole dans vos yeux. ";switch(toitwagon.avanced){ 2 : print "^Vous @^etes au tiers avant du toit du wagon : vous voyez une ouverture non loin.. "; 3 : print "^Vous @^etes exactement au milieu du toit du wagon. "; 4 : print "^Vous @^etes au tiers du toit du wagon, sur l'arri@`ere. "; 5 : print "^Vous @^etes au bout du wagon, sur son arri@`ere. Une petite @'echelle am@'enag@'ee vous permet de descendre. ";move echellew1 to toitwagon; } ], before [;Go : if (noun==n_obj) {if (toitwagon.avanced~=1) {print "Vous progressez difficilement vers l'avant du wagon, rampant pour assurer vos prises, luttant contre le vent glac@'e provoqu@'e par la vitesse du train. ";toitwagon.avanced=toitwagon.avanced-1;} else {print "Vous continuez vers le nord, centim@`etre par centim@`etre. La pression de l'air dans le tunnel, le train approchant, s'@'echappe et provoque une forte perturbation qui vous projette en arri@`ere, glissant sur le toit du train. ";toitwagon.avanced=3;}} else if (noun==s_obj) {print "Vous rampez vers l'arri@`ere, glissant @`a chaque centim@`etre gagn@'e, pouss@'ee par le vent glacial provoqu@'e par la vitesse toujours croissante du train. ";toitwagon.avanced=toitwagon.avanced+1;} else if (noun==echelle || noun==d_obj) {EchelleW();}], each_turn [;switch(toitwagon.trained) { 0 : print "^Le train file tout droit vers le nord, en reprenant un peu de vitesse. "; 1 : print "^Le train s'approche de la montagne qui grandit de plus en plus. "; 2 : print "^Le train est juste @`a cot@'e du tunnel dans la montagne dans lequel il s'engouffre dans un bruit dantesque. "; 3 : print "^Le rebord du tunnel sera sans merci : vous @^etes fauch@'ee alors que le train acc@`elere encore et encore, heurtant fatalement la paroi de la montagne, puis le sol. ";attend();print "^^La neige recommence @`a tomber, recouvrant lentement votre sang et votre corps dans l'oubli.^^Pourquoi Lachesis ne vous avait il pas pr@'evenue? "; Fin(7); } toitwagon.trained++; ], trained, avanced, n_to toitwagon, s_to toitwagon, d_to [;if (toitwagon.avanced==5) {return echelle;}], has scenery; Object echellew1 "echelle" with name 'echelle' 'coursive' 'ouverture', description "Une echelle qui descend depuis le toit du wagon jusqu'@`a la coursive entre deux wagons. ", before [;Enter : EchelleW();return 2;], has open container enterable female; Object loco "convoi" with name 'train' 'convoi' 'locomotive' 'wagon' 'wagons', description "C'est un convoi de voyageurs, compos@'e de deux wagons et d'une locomotive @`a vapeur d'acier profil@'e, progressant @`a vive allure vers le nord. De hautes rambardes lat@'erales pr@'eviennent les voyageurs de tomber lors de leur passage entre les wagons. ", before [;Go, Jump : if (noun==loco) {print "Vous tentez de monter en marche, mais c'est peine perdue. Le train avance trop vite pour vous, m@^eme s'il n'y avait pas la neige pour empecher vos d@'eplacements, et de plus vous ne voyez aucun moyen de vous aggriper au train : aucune porte ouverte, aucun rebord @`a saisir. ";return 2;} ], daemon [; if (loco.charbon==0) {move loco to snow2;} if (loco.charbon==2) {move loco to snow3;} if (loco.charbon==4) {move loco to intersection;} if (loco.charbon==6) {move loco to tunnel;} if (loco.charbon==8) {remove loco;} if (loco.charbon==16) {loco.charbon=0;} switch(location){ snow2 : if (loco in snow2) {print "^Vous voyez un superbe train aux wagons profil@'es, @'etincelant, filer au travers de la plaine rase, soulevant des gerbes de neige, dans un silence inhabituel, et crachant non pas de la fum@'ee de charbon, mais de la vapeur blanche, comme s'il @'etait anim@'e par quelque fant@^ome. ";loco.charbon==5;} snow3 : if (loco in snow2) {print "^Vous sentez les rails trembler... ";} else if (loco in snow3) {print "^Vous voyez un superbe train aux wagons profil@'es, @'etincelant, bondir sous les glaciers comme un animal gracieux, soulevant des gerbes de neige, dans un silence inhabituel, et crachant non pas de la fum@'ee de charbon, mais de la vapeur blanche, comme s'il @'etait anim@'e par quelque fant@^ome. ";loco.charbon==7;} intersection : if (loco in snow3) {print "^Vous sentez les rails trembler... ";} else if (loco in intersection) {print "^Vous voyez un superbe train aux wagons profil@'es, @'etincelant, passer doucement devant votre cabane en soulevant des gerbes de neige, dans un silence inhabituel, et crachant non pas de la fum@'ee de charbon, mais de la vapeur blanche, comme s'il @'etait anim@'e par quelque fant@^ome.^En passant, il carresse le bord du toit de votre cabane, faisant tomber quelques stalactites. ";} incabane : if (loco in snow3) {print "^Vous sentez les rails trembler au dehors... ";} else if (loco in intersection) {print "^Vous entendez un bruit @'etrange au dehors... ";} tunnel : if (loco in intersection) {print "^Vous sentez les rails trembler... ";} else if (loco in tunnel) {print "^Vous voyez un superbe train aux wagons profil@'es, @'etincelant, reprendre de la vitesse, soulevant des gerbes de neige, dans un silence inhabituel, et crachant non pas de la fum@'ee de charbon, mais de la vapeur blanche, comme s'il @'etait anim@'e par quelque fant@^ome. ";loco.charbon==9;} toit : if (loco in snow3) {print "^Vous sentez les rails trembler... ";} else if (loco in intersection) {print "^Vous voyez un superbe train aux wagons profil@'es, @'etincelant, passer doucement devant votre cabane en soulevant des gerbes de neige, dans un silence inhabituel, et crachant non pas de la fum@'ee de charbon, mais de la vapeur blanche, comme s'il @'etait anim@'e par quelque fant@^ome.^En passant, il carresse le bord du toit de votre cabane, faisant tomber quelques stalactites. En un bond, vous serez sur le toit. ";} } loco.charbon++; ], charbon, has scenery; Object trainstop "Wagon d'un Train Inconnu" with description "Un wagon am@'enag@'e de larges fauteuils confortables donnant sur des grandes baies vitr@'ees. Les murs sont dress@'es dans un m@'etal ti@`ede et uniforme, lisse et brillant. Particuli@`erement propre, la facture luxueuse et technologique est @'egalement @'etrange, comme si le train devait accueuillir d'autres voyageurs que les gens normaux. Malgr@'e le silence et l'absolue immobilit@'e, on y ressent une puissance contenue, comme dans un animal en sommeil. ", out_to quais, d_to quais, has scenery; Object quais "Une Infinit@'e de Quais" with description "Au milieu de l'immense caverne souterraine se trouve un grand bloc de b@'eton circulaire, recouvert d'un pavage marbr@'e vert et noir, sur lequel s@'etendent les milliers de quais accueillant les trains allant et venant de tous cot@'es. Au milieu de ce quai, un tube transparent contenant un ascenseur s'@'eleve jusque vers le ciel de roches, le traversant m@^eme. ", each_turn [i;i=random(2);switch(i) { 1 : print "Au dessus de vous, une baleine tournoie et chante, vous montrant son ventre blanc. ";} ], has scenery; Object caisses "caisses" quais with name 'caisse' 'caisses' 'tas', description "Des caisses de bois sont empil@'ees ici, environ une dizaine. ", before [;Enter : if (papiers in caisses) {print "Pas possible, elles sont pleines de papiers. ";return 2;}], each_turn [;if (player in caisses && plot_depth==58) {Depart();}], has openable enterable static female pluralname container; Object papiers "dossiers" caisses with name 'papiers' 'dossiers' 'dossier' 'papier', description "Des milliers et des milliers de dossiers r@'edig@'es dans une langue @'etrange, des papiers tr@'es semblables @`a ceux que vous avait pr@'esent@'e le ~commercial~ rencontr@'e @`a l'epsilon bar. Mmm... ", before [;Take,Push,Pull : if (noun==papiers) {if (papiers in caisses) {move papiers to quais;print "Vous deplacez rapidement les dossiers @`a l'ext@'erieur de la caisse. ";return 2;} else {print "Pfff...@`a quoi bon? ";return 2;}}], has pluralname static; Object roi "vagabond" quais with name "vagabond" "roi" "clodo" "clochard" "planete", description "Un homme roux, par particulierement frais, affal@'e et titubant, braillant des inepties. Grand et carr@'e, mais mince, il y a du Kenneth Branagh dans son visage, et dans ses yeux, une intelligence si vive qu'on le croirait victime de celle-ci. ", life [; Answer,Ask,Tell: print "~Chuis le roi de cet plan@`ete, et ouais ! Le roi. Toi, t'es mon sujet. Si t'as besoin, @'ecris moi une lettre. "; Attack : "Nan, vous frappez les hommes @`a terre. "; Kiss: "Non. Raison : l'odeur. "; Show, Give: "~Je suis un Roi, mais un Roi au dessus de ces choses. Merci, mais garde le. Moi je garde le souvenir de ton geste, fid@`ele sujet. "; ], each_turn [i;i=random(10);switch(i) { 0 : print "Le vagabond d@'eclare : ~Bonjour, je me pr@'esente. Je suis Fran@@cois, futur pr@'esident de notre pays. Certes, vous n'avez pas vot@'e encore pour moi, mais je consid@`ere vos votes acquis. ~ "; 1 : print "Le vagabond d@'eclare : ~Il y a trop d'injustices sur cette plan@`ete. Et moi, Roi de cette Plan@`ete, je compte bien les @'eliminer !~ "; 2 : print "Le vagabond d@'eclare : ~Bonjour, je me pr@'esente. Je suis Fran@@cois, futur pr@'esident de notre pays. Certes, vous n'avez pas vot@'e encore pour moi, mais je consid@`ere vos votes acquis. ~ "; 3 : print "Le vagabond d@'eclare : ~Parlons des m@'edicaments. Il y a des milliards...non, pas des milliards...on va dire, des millions...oui, des millions qui tombent dans les mains des groupes pharmaceutiques...est-ce-normal? Mmm...?~ "; 4 : print "Le vagabond prend une bouteille de J&B de sa poche int@'erieure et en prend une petite gorg@'ee avant de la reboucher et de la remettre au m@^eme endroit. "; 5 : print "Le vagabond d@'eclare : ~Trop d'argent dans l'arm@'ee. Trop d'argent ! En tant que pr@'esident, mon premier acte sera de...mmm...bon, je vais faire une pause l@`a.~ "; 6 : print "Le vagabond d@'eclare : ~Chers sujets...je vous aime. Je vous aime de tout mon coeur. Si vous saviez combien je vous aime, ha ha !~ "; 7 : print "Le vagabond d@'eclare : ~Si tous les peuples de la plan@`ete savaient tout l'amour que j'ai pour vous, mes sujets, alors il n'y aurait plus de guerre, car mon amour est tout !~ "; 8 : print "Le vagabond d@'eclare : ~J'aime vous tous.~ "; 9 : print "Le vagabond d@'eclare : ~Vous avez eu raison de voter pour moi. Je ne suis pas comme les autres politiciens. Moi, je n'ai rien. Je ne veux rien. Je veux votre amour - et votre confiance. ~ "; 10 : print "Le vagabond prend une bouteille de J&B de sa poche int@'erieure et en prend une petite gorg@'ee avant de la reboucher et de la remettre au m@^eme endroit. "; }], frapped, has animate; Object lift "ascenseur" quais with name 'ascenseur' 'cabine', description "La cabine d'ascenseur est elle aussi transparente, sans aucune commande. ", before [;Enter : if (player in lift) {print "Vous y @^etes d@'ej@`a, miss ! ";return 2;} else {print "La porte de la cabine se referme sans un bruit et celle-ci se d@'eplace doucement. ";PlayerTo(lift);move lift to voute;return 2;}], each_turn [;if (lift.monting~=0 && (lift in voute) && lift.descending==0) {print "L'ascenseur vous emporte toujours plus haut vers le plafond de la voute. ";lift.monting--;} if (lift.monting==0 && (lift in voute) && lift.descending==0) {print "Vous @'emergez au dessus de la roche, et la cabine s'ouvre de nouveau. ";move lift to gare;lift.descending=10;PlayerTo(gare);} if (lift.descending~=0 && (lift in voute) && lift.monting==0) {print "L'ascenseur vous emporte toujours plus bas vers les quais. ";lift.descending--;} if (lift.descending==0 && (lift in voute) && lift.monting==0) {print "Vous arrivez sur les quais, et la cabine s'ouvre de nouveau. ";move lift to quais;lift.monting=10;PlayerTo(quais);} ], monting, descending, has enterable open container static transparent; Object voute "terminus des r@'ealit@'es (dans l'ascenseur)" with description "Sous la vo@^ute de roche. Des baleines passent pr@'es de vous et vous observent de leurs petits yeux noirs. Vous embrassez mieux, avec toujours autant d'effaremment, le tentaculaire complexe ferroviaire plus bas, fourmilli@`ere de convois. ", has scenery; Object gare "Gare des R@'ealit@'es" with description "Encore un hall immense, plus grand encore que la biblioth@`eque d'Atropos, soutenu par des colonnes doriques cisel@'ees, larges comme des immeubles. Le dallage de marbre est impeccable de propret@'e, et le plafond s'ouvre une verri@`ere au dessus des nuages de neige, o@`u brille un soleil p@^ale entre des cirrus d@'echir@'es.^^Non loin de l'ascenseur est am@'enag@'e un comptoir circulaire de bois poli. ", has scenery; Object maikal3 "gros bonhomme" gare with name "gros" "bonhomme" "toque" "fourrure" "type" "homme" "gras", description "Un type rond et grassouillet, nerveux et potel@'e, le type de l'a@'eroport. Il porte une gabardine de cuir matelass@'ee et une toque de fourrure grise. Deux yeux chassieux sous des sourcils fournis regardent nerveusement de tous cot@'es dans un visage bourrel@'e de graisse. Depuis votre derri@`ere rencontre, il semble avoir un peu maigri et fait l'acquisition d'un long manteau de fourrure qui traine jusqu'@`a terre. ", life [; Answer, Ask, Tell: print "^L'homme tourne des yeux narquois vers vous, et semble jauger votre apparence.^~Ah, Mademoiselle. Je vois que vous ne manquez pas de ressources. Mais voyez vous, o@`u que nous soyions dans l'univers, il faut bien t@^ot ou tard @^etre stopp@'e par une stupide administration !~ "; ], each_turn [k; k = random(4); switch(k) { 1 : print "^Le grassouillet se frotte les mains nerveusement en regardant de droite @`a gauche avec des yeux col@`ereux. ^"; 2 : print "^Le gros bonhomme lance : ~Je vais attendre jusqu'@`a quand, nom de nom !~^~Jusqu'@`a ce que l'on vienne vous cherchez - ou que vous trouviez ce billet. ~ "; 3 : print "^~Je tiens mon billet de Douglas lui-m@^eme, le savez vous petit bureaucrate insolent?~^~Comme tous ceux qui viennent par ici, monsieur.~ "; 4 : print "^~C'est un scandale ! Appelez moi Douglas imm@'ediatement.~^~Il arrive monsieur, il arrive.~ "; } ], has animate; Object employe "employe" gare with name "employe" "jeune" "homme" "type" "uniforme" "homme" "noir" "orange" "traitre", description[;print "Un homme fr@^ele et malingre aux grands yeux noirs, d'une vingtaine d'ann@'ees. V@^etu d'un uniforme orange qui s'ouvre sur une chemise @`a carreaux rouges. Vif et malicieux, il semble beaucoup plus intelligent qu'il ne semble le montrer. ";if (nuit==99) {print "Avec horreur, vous voyez un filament orange aller et venir du corps du jeune homme, comme un serpent mauvais ! Cet homme souriant n'est autre qu'un agent de Douglas ! ";}], life [; Answer, Ask, Tell: print "^~Hum. Salut~^~Bonjour Mademoiselle. Puis-je voir votre billet?~ ";return 2; Show, Give: if (noun == billet) {BilletGare();return 2;} else {print "~Votre *billet* mademoiselle.~^~Cherchez pas, miss,~ fait le gros type ~c'est un robot. ~ ";return 2;} ], each_turn [k; k = random(4); switch(k) { 1 : print "^L'employ@'e de la gare se gratte le nez. ^"; 2 : print "^L'employ@'e de la gare @'eternue, puis se mouche et demande ~Pardon, vous disiez quelque chose ?~ "; 3 : print "^L'employ@'e de la gare baille d'un ennui mortel. "; 4 : print "^L'employ@'e de la gare fredonne la musique du ~Parrain~. "; } ], has animate; Object employe2 "employe" with name "employe" "jeune" "homme" "type" "uniforme" "homme" "noir" "orange" "traitre", description [;print "Un homme fr@^ele et malingre aux grands yeux noirs, d'une vingtaine d'ann@'ees. V@^etu d'un uniforme orange qui s'ouvre sur une chemise @`a carreaux rouges. Vif et malicieux, il semble beaucoup plus intelligent qu'il ne semble le montrer. ";if (nuit==99) {print "Avec horreur, vous voyez un filament orange aller et venir du corps du jeune homme, comme un serpent mauvais ! Cet homme souriant n'est autre qu'un agent de Douglas ! ";}], life [; Answer, Ask, Tell: print "^~Vous avez d@^u faire un sacr@'e chemin pour venir ici toute seule. F@'elicitations. ~ "; ], each_turn [;if (player in lift) {if (employe2.talked==10) {print "L'ascenseur s'ouvre en bas sur les quais. Absorb@'ee dans votre contemplation des baleines volantes, vous n'avez pas remarqu@'e la vingtaine d'homme en noir qui entourent maintenant l'ascenseur.^^Vous regardez d'un air d@'esesp@'er@'e l'employ@'e, mais il vous rend un sourire cruel. ";Fin(5);} switch(employe2.talked) { 0 : print "^Le jeune homme vous tourne le dos et regarde, mains dans le dos, l'immensit@'e de la caverne.^~Je travaille pour Douglas, vous savez. Enfin, (il abaisse la voix) Douglas, c'est son nouveau nom. Autrefois c'@'etait Clothos. Je ne dis pas que cela me pla@^it. C'est juste mon travail. ~ "; 1 : print "^L'employ@'e de la gare @'eternue et sort un mouchoir pour s'essuyer. Il garde le mouchoir @`a la main et vous dit : ~Je vais @^etre franc avec vous. Je sais que Douglas vous cherche. ~ ";move mouchoir to lift; 2 : print "~Jusqu'@`a pr@'esent vous lui avez gliss@'e entre les doigts. Je vous souhaite que ca dure le plus longtemps possible, mais je crains qu'il y ait des choses in@'evitables.~ "; 3 : print "~Malgr@'e l'extr@^eme multiplicit@'e des r@'ealit@'es possibles. ~ "; 4 : print "~Je vais @'egalement, du haut de ma modeste exp@'erience, vous donner deux conseils :~ "; 5 : print "~Le premier, c'est que si toutefois vous deviez tomber entre ses mains, ne luttez pas et acceptez ce qu'il vous offrira. Mieux vaut vivre de compromis que...enfin vous connaissez la suite.~ "; 6 : print "~Regardez moi. (soupir) Je ne suis pas @`a plaindre @`a son service. J'ai m@^eme la libert@'e de le critiquer. Je vois et sais des choses que peu peuvent voir ou savoir.~ "; 7 : print "~Mon deuxi@`eme conseil est @`a prendre avec la plus extr@^eme rigueur, car selon toute probabilit@'e (il rit tristement) c'est en ce point que vous vous perdrez. ~ "; 8 : print "~Mon conseil le voici : ne faites confiance en ";style underline;print "personne. ";style roman;print "^Personne.~ "; 9 : print "~A ce propos...~ "; } employe2.talked++;} ], talked, has animate; Object mouchoir "mouchoir en tissu" with name "tissu" "mouchoir" "morve" "plein", description "Un petit mouchoir en tissu orange et blanc, souill@'e quelque peu par les fluides corporels de votre guide. ", after [;Take : print "~Hey, mon mouchoir ! Bon, prenez le si vous en avez besoin...~^";], has leger; Object exterieurtrain "ext@'erieur" with description "Une temp@^ete, et au del@`a, un n@'eant qui vous glace les sangs. ", found_in interw3 interw23 interw12 interw1 echelleloco toit1 toit2, each_turn [i;i=random(10);print "^";switch(i) { 0 : print "Une temp@^ete de pluie glac@'ee tonne autour de vous, brouillant votre vision et @'ecrasant tous les autres bruits. "; 1 : print "Une temp@^ete de pluie glac@'ee tonne autour de vous, brouillant votre vision et @'ecrasant tous les autres bruits. "; 2 : print "Un coup d'oeil sur le paysage vous paralyse de surprise et d'effroi, car tout n'est qu'un n@'eant sans couleur dans lequel r@'esone une temp@^ete immense au travers de laquelle votre train s'enfonce @`a toute vitesse. Mais o@`u @^etes vous donc? "; 3 : print "Un @'eclair aveuglant frappe le zinc du toit de votre wagon, et y trace une longue z@'ebrure pendant quelques secondes durant lesquelles vous ne voyez plus rien. "; 4 : print "La pluie glaciale tombe en long traits continus qui sont autant de meutrissures et cr@'e@'eent sur le sol un matelas d'eau rendant le sol effroyablement glissant. "; 5 : print "Le train augmente de vitesse, allongeant les traits de pluie comme des lances, mais vous ne voyez que le n@'eant vers sa destination : pire que cela, vous avez l'impression que les rails ont disparu ! "; 6 : print "Un coup de tonnerre effroyable retentit longuement comme une dizaine de canons tir@'es @`a la suite, et de plus en plus proches, vous assourdissant totalement pendant de longues secondes douloureuses. "; 7 : print "Un rideau d'@'eclairs tranche la pluie et encercle le train de part et d'autre comme une haie d'honneur d@'ementielle. "; 8 : print "Une rafale de vent vous soul@`eve et vous transporte sur quelques centim@`etres. Un peu plus, et c'@'etait le grand saut. "; 9 : print "Des tornades titanesques, gorg@'ees d'eau et d'@'electricit@'e, carressent le train qui chavire comme un bateau dans la temp@^ete. "; 10 : print "Des tornades titanesques, gorg@'ees d'eau et d'@'electricit@'e, carressent le train qui chavire comme un bateau dans la temp@^ete. "; } ], has scenery; Object interw3 "Arri@`ere du train" with description "A l'arri@`ere du train il y a une simple rambarde moins grande que la moiti@'e d'un homme pour vous empecher de tomber, sinon, c'est la voie de chemin de fer, et @`a cette vitesse, la mort assur@'ee. ", before [;Go: if (noun==n_obj) {print "Mais Douglas vous attendait dans l'encadrement de la porte. ";attend();print "A peine avancez vous le bras pour le repousser qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);}], n_to sas3 has scenery; Object sas3 "porte arri@`ere du wagon de queue" with name 'porte' 'arriere' 'wagon' 'queue', found_in wagon3, article 'la', description "Un sas de m@'etal, donnant @`a l'arri@`ere du convoi. ", door_dir [;if (location==wagon3) {return s_to;} else {return n_to;}], door_to [;if (location==wagon3) {return interw3;} else {return wagon3;}], has female door static openable lockable; Object wagon3 "Wagon du train 968 (wagon de queue)" with description "Une coursive tranche deux rang@'ees de deux fauteuils chacune, fauteuils recouverts d'un velours gris et grossier. Un petit sas @`a bagage de part et d'autre du wagon donne sur une porte avant et une porte arri@`ere. De grandes fen@^etres sur les paroi lat@'erales donnent sur l'ext@'erieur. ", before [;Go: if (noun==s_obj && (clothosfinal in wagon3)) {print "Douglas fait obstruction @`a votre passage. ";attend();print "A peine avancez vous le bras pour le repousser qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);}], s_to sas3, n_to sas32, has scenery; Object sas32 "porte avant du wagon de queue" with name 'porte' 'avant' 'wagon' 'queue', description "Un sas de m@'etal, donnant depuis le wagon de queue du convoi sur l'espace entre les deux derniers wagons. ", found_in wagon3 interw23, article 'la', door_dir [;if (location==wagon3) {return n_to;} else {return s_to;}], door_to [;if (location==wagon3) {return interw23;} else {return wagon3;}], has female door static openable lockable; Object interw23 "Entre deux wagons" with description "Les wagons sont s@'epar@'es par un espace non prot@'eg@'e et normalement interdit aux passagers. Le vent induit par la vitesse du convoi manque de vous faire perdre, @`a tout instant, l'@'equilibre.^Un complexe m@'ecanisme d'engrenages et de tuyaux relie les deux wagons, sous lequel, frolant la voie ferr@'ee de quelques centim@'etres, un levier tordu est scell@'e par un dispositif de s@'ecurit@'e. ", s_to sas32, n_to sas23, has scenery; Object sas23 "porte arri@`ere du wagon du milieu" with name 'porte' 'arriere' 'wagon' 'milieu', description "Un sas de m@'etal, donnant depuis le wagon du milieu du convoi sur l'espace entre les deux derniers wagons. ", found_in wagon2 interw23, article 'la', door_dir [;if (location==wagon2) {return s_to;} else {return n_to;}], door_to [;if (location==wagon2) {return interw23;} else {return wagon2;}], has female door static openable lockable; Object wagon2 "Wagon du train 968 (wagon du milieu)" with description [;print"Une coursive tranche deux rang@'ees de deux fauteuils chacune, fauteuils recouverts d'un velours gris et grossier. Un petit sas @`a bagage de part et d'autre du wagon donne sur une porte avant et une porte arri@`ere. De grandes fen@^etres sur les paroi lat@'erales donnent sur l'ext@'erieur. ";if (wagon2.avertissed~=1) {style underline;print "^^La fen@^etre, Margot. Je n'ai pas pu l'ouvrir plus. ";wagon2.avertissed=1;style roman;}], before [;Go: if (noun==s_obj && (clothosfinal in wagon3)) {print "Douglas fait obstruction @`a votre passage. ";attend();print "A peine avancez vous le bras pour le repousser qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);}], each_turn [;if (clothostoit in toit2) {remove clothostoit;clothosfinal2.baratined=0;various=0;move clothosfinal2 to wagon3;remove echelleloco;StartDaemon(clothosfinal2);}], avertissed, s_to sas23, n_to sas21, has scenery; Object windowtrain "fen@^etre" with name 'fenetre' 'vitre', description "C'est une fen@^etre dont le dispositif de fermeture a @'et@'e endommag@'e. Elle donne sur l'ext@`erieur. ", before [;Open,Close : if (location~=wagon2) {print "Cette fen@^etre ne s'ouvre que de l'int@'erieur ! ";return 2;}], found_in wagon2 toit2, door_dir [;if (location==toit2) {return in_to;}], door_to [;if (location==toit2) {return wagon2;}], has female door static openable; Object toit1 "Sur le Toit du Wagon du train 968 (wagon de t@^ete)" with description "Un dispositif @'electrique reli@'e @`a un @'enorme cat@'enaire datant du si@`ecle dernier, et sans utilit@'e pour ce convoi au diesel, est install@'e sur le toit plat et glissant du wagon.^Les nombreux cahots, le gel et la disposition du toit sont autant de pi@`eges que vos jambes tremblantes ont du mal @`a d@'ejouer pour vous empecher de tomber plus bas.^A l'avant du wagon, vous pouvez voir une @'echelle qui vous permettra de descendre, et, @`a l'arri@`ere, vous pouvez tenter d'aller, @`a vos risques et p@'erils, sur le toit du wagon du milieu. ", before [;Go, Jump : if (noun==s_obj) {if (clothosfinal in location) {Fight();} else {print "Au moment o@`u vous prenez votre @'elan pour sauter sur l'autre wagon, vous apercevez la silhouette de Douglas, d@'egoulinante de pluie, monter les derniers @'echelons @`a l'avant du wagon.^^";if (chapeau.envoled~=1) {chapeau.envoled=1;move chapeau to wagon2;} Fight();}} else if (noun==s_obj && (clothosfinal in wagon3)) {print "Douglas fait obstruction @`a votre passage. ";attend();print "A peine avancez vous le bras pour le repousser qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);}], s_to toit2, d_to interw1, has scenery; Object toit2 "Sur le Toit du Wagon du train 968 (wagon du milieu) (accroch@'ee d@'esesp@'erement au rebord)" with description "Accroch@'ee @`a la rambarde du toit en zinc par vos petits doigts et vos derni@`eres forces, vous @^etes malmen@'ee par le train bringuebalant et filant @`a toute vitesse, les rafales de vent et la pluie torrentielle. ", each_turn [i;i=random(5);switch(i) { 0 : print "Vos doigts douloureux fatiguent et glissent de votre prise...dans un sursaut d'effort, vous changez votre accroche et vous tentez en vain de vous hisser. "; 1 :print "Vos doigts douloureux fatiguent et glissent de votre prise...dans un sursaut d'effort, vous changez votre accroche et vous tentez en vain de vous hisser. "; 2 : print "La pluie vous bat le corps de tous les cot@'es, comme si elle voulait consciemment vous faire lacher prise. "; 3 : print "Le train prend un virage tr@'es s@'err@'e et se penche de votre cot@'e...votre corps s'@'eloigne de la paroi du wagon et vous @^etes accroch@'ee dans le vide de tout votre poids...avant de revenir vous @'ecraser contre le rebord. "; 4 : print "Une rafale plus forte que les autres vous soul@`eve et vous lachez prise d'une main ! Vous criez @`a l'aide alors que vous sentez la fin venir, mais par un subit changement de direction, le vent vous rejette violemment contre le rebord du train o@`u vous vous accrochez avec la force du d@'esespoir. "; 5 : print "Vous sentez que vous glissez de plus en plus...vous ne tiendrez pas longtemps ! L'heure est grave !"; } direc++; if (direc>16) {print "Et vous l@^achez prise, d@'efinitivement. ";attend();print "^^Vous tombez interminablement dans les limbes de l'oubli. ";attend();print "^^Personne ne saura jamais ce qu'il vous sera arriv@'e. ";attend();print "Le reste de l'histoire, donc, vous appartient. ";attend();Fin(99);}], in_to windowtrain, has scenery; Object sas21 "porte avant du wagon du milieu" with name 'porte' 'avant' 'wagon' 'milieu', description "Un sas de m@'etal, donnant depuis le wagon du milieu du convoi sur l'espace entre les deux premiers wagons. ", found_in wagon2 interw12, article 'la', door_dir [;if (location==wagon2) {return n_to;} else {return s_to;}], door_to [;if (location==wagon2) {return interw12;} else {return wagon2;}], has female door static openable lockable; Object interw12 "Entre deux wagons" with description "Les wagons sont s@'epar@'es par un espace non prot@'eg@'e et normalement interdit aux passagers. Le vent induit par la vitesse du convoi manque de vous faire perdre, @`a tout instant, l'@'equilibre.^Un complexe m@'ecanisme d'engrenages et de tuyaux relie les deux wagons, sous lequel, frolant la voie ferr@'ee de quelques centim@'etres, un levier tordu est scell@'e par un dispositif de s@'ecurit@'e. ", s_to sas21, n_to sas12, has scenery; Object sas12 "porte arri@`ere du wagon du t@^ete" with name 'porte' 'arriere' 'wagon' 'tete', description "Un sas de m@'etal, donnant depuis le wagon de t@^ete du convoi sur l'espace entre les deux premiers wagons. ", found_in wagon1 interw12, article 'la', door_dir [;if (location==wagon1) {return s_to;} else {return n_to;}], door_to [;if (location==wagon1) {return interw12;} else {return wagon1;}], has female door static openable lockable; Object wagon1 "Wagon du train 968 (wagon de t@^ete)" with description "Une coursive tranche deux rang@'ees de deux fauteuils chacune, fauteuils recouverts d'un velours gris et grossier. Un petit sas @`a bagage de part et d'autre du wagon donne sur une porte avant et une porte arri@`ere. De grandes fen@^etres sur les paroi lat@'erales donnent sur l'ext@'erieur. ", before [;Go: if (noun==s_obj && (clothosfinal in wagon3)) {print "Douglas fait obstruction @`a votre passage. ";attend();print "A peine avancez vous le bras pour le repousser qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);}], s_to sas12, n_to sas1, has scenery; Object sas1 "porte avant du wagon du milieu" with name 'porte' 'avant' 'wagon' 'tete', description "Un sas de m@'etal, donnant depuis le wagon du t@^ete du convoi sur l'espace entre celui-ci et la locomotive. ", found_in wagon1 interw1, article 'la', door_dir [;if (location==wagon1) {return n_to;} else {return s_to;}], door_to [;if (location==wagon1) {return interw1;} else {return wagon1;}], has female door static openable lockable; Object interw1 "Devant la locomotive" with description "Le wagons est s@'epar@'e de la locomotive diesel par un espace non prot@'eg@'e et normalement interdit aux passagers , qui ne pr@'esente aucune ouverture de votre cot@'e. Le vent induit par la vitesse du convoi manque de vous faire perdre, @`a tout instant, l'@'equilibre.^Un complexe m@'ecanisme d'engrenages et de tuyaux relie les deux wagons, sous lequel, frolant la voie ferr@'ee de quelques centim@'etres, un levier tordu est scell@'e par un dispositif de s@'ecurit@'e.^Une @'echelle permet de grimper sur le toit du wagon. ", s_to sas1, has scenery; Object lachesistoit "Lachesis" with name "lachesis" "masque" "homme" "type" "grand" "cape" "gants", description "Un grand homme (ou une grande femme, vous ne pouvez savoir), immobile et silencieux, assis en tailleur sur un piedestal de pierre. Un masque ovale et lisse, sans ouverture, avec deux minces fentes (mais peut-@^etre sont-elles peintes) pour les yeux. Il porte une simple tunique blanche et marron, et des bottes souples. Ses mains sont gant@'ees d'un cuir pr@'ecieux. Une longue cape verte lui recouvre le dos et les @'epaules. ", life [; Answer, Ask, Tell: print "~Lachesis, courage !~ criez vous. "; ], has animate proper scenery; Object lachebfvert "bout de fil vert" with name 'bout' 'fil' 'vert', description "Un bout coup@'e de fil vert", initial "Dans la main de Lachesis, vous pouvez voir un bout de fil vert. ", has fil leger; Object clothostoit "Douglas" with name "homme" "Douglas" "d" "D" "douglas" "clothos" "noir" "sombre" "impermeable" "main", description "C'est un homme au petit visage rond, sans vraiment d'@^age pr@'ecis, peut-@^etre la trentaine, peut-@^etre plus. Il est v@^etu d'un costume sobre mais de grande classe, d'un brun sombre. Ses cheveux sont liss@'es et plaqu@'es dans une raie sur le cot@'e sage, et une fine moustache tr@'es bien entretenue prend naissance sur sa l@`evre sup@'erieure. Son regard est transper@@cant. ", each_turn [;switch(direc) { 1 : print "Douglas s'agenouille devant vous et vous observe. ~Mmm, votre ent@^etement sera votre perte. ~ "; 2 : print "Douglas dit encore : ~Il vous suffit simplement pour @'echapper au vide de prendre ma main...~^^Mais, tombant du ciel, sa cape claquant au vent, Lachesis surgit dans un @'eclair et frappe Douglas de sa main gant@'e, le poussant contre un cat@'enaire ! ";move lachesistoit to toit2; 3 : print "Alors que Lachesis se penche vers vous pour vous secourir, Douglas fond sur lui en hurlant : ~DE QUEL DROIT, FRERE !~ et le frappe si fort au visage que le grand Lachesis recule en titubant. "; 4 : print "Dans la pluie, le vent et le tonnerre, les deux fr@`eres se jettent l'un sur l'autre comme des lions : Lachesis masque sa position d'un mouvement ample de sa cape et, surgissant @`a l'improviste, donne un nouveau coup @`a Douglas dont la bouche laisse couler un filet de sang. "; 5 : print "Douglas se baisse et arrache un cable @'electrique fix@'e au sol, balayant les jambes de Lachesis qui tombe @`a la renverse, tout pr@`es de vous. ";move lachebfvert to toit2; 6 : print "Douglas s'agenouille sur son fr@`ere et enchaine coup de poing sur coup de poing, en plein dans le visage, sur un Lachesis inerte. "; 7 : print "Lachesis repousse son fr@`ere d'un coup de pied et se remet @`a genoux, p@'eniblement. ";if (lachebfvert in toit2) {remove lachebfvert;} 8 : print "~Alors mon fr@`ere,~ nargue Douglas plein de sarcasme. ~On dirait que tes petites aiguilles ne vont plus te sauver cette fois-ci. Il @'etait grand temps que la r@'ealit@'e laisse place @`a un unique architecte, en l'occurence le meilleur. ~ Lachesis secoue la t@^ete, comme pour recouvrer ces esprits. "; 9 : print "~Ne me dis pas, @^o grand gardien de la tapisserie, que tu n'as pas lu ta propre fin sur celle-ci, la fin qui raconte comment ton fr@`ere t'a fait basculer dans le n@'eant et dans l'oubli? Tu le sais bien, puisque c'est @`a cause de cela que tu as su quels @'etaient mes v@'eritables plans et que nous nous sommes battus pour la premi@`ere fois. ~ "; 10 : print "Lachesis se pr@'ecipite comme un damn@'e sur son fr@`ere, poing en avant, mais celui-ci s'@'ecarte rapidement et poursuit, hurlant dans la temp@^ete : ~Ce moment est venu, mon fr@`ere, et selon toute apparence, je serai moins mis@'ericordieux que la derni@`ere fois !~ "; 11 : print "Lachesis donne des coups de pied et des coups de poings, mais aucun ne touche Douglas, et la bataille se perd dans la tourmente, hors de votre vision. ";remove lachesistoit; 13 : print "Vous voyez une ombre indistincte revenir vers vous. "; 14 : print "Douglas s'agenouille pr@`es de vous, et vous tend la main, curieux de savoir si vous pr@'efererez vous jetez dans le vide ou le rejoindre. ";}], before [;Take : print "A peine avancez vous le bras qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);], life [; Answer,Ask,Tell: print "~Soyez raisonnable, Mademoiselle, donnez moi la main. ~ "; Attack,Kiss,Show, Give : print "A peine avancez vous le bras qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5); ], has animate proper scenery; Object clothosfinal "Douglas" with name "homme" "Douglas" "d" "D" "douglas" "clothos" "chapeau" "noir" "sombre" "impermeable" "main", description "C'est un homme au petit visage rond, sans vraiment d'@^age pr@'ecis, peut-@^etre la trentaine, peut-@^etre plus. Il est v@^etu d'un costume sobre mais de grande classe, d'un brun sombre. Ses cheveux sont liss@'es et plaqu@'es dans une raie sur le cot@'e sage, et une fine moustache tr@'es bien entretenue prend naissance sur sa l@`evre sup@'erieure. Son regard est transper@@cant. Il porte habituellement un chapeau noir @`a larges bords, ainsi qu'un imperm@'eable noir. ", daemon [i; if (((clothosfinal in wagon2) && (player in wagon2)) && (chapeau.envoled~=1)) {print "Une rafale violente venue de la fen@^etre entrouverte fait rouler le chapeau de Douglas @`a terre. ";move chapeau to wagon2;chapeau.envoled=1;} if ((parent(clothosfinal)==parent(roi) && roi.frapped~=1) && location==parent(roi)) {print "Le vagabond se l@`eve, ivre mort, et aggripe les v@^etements de Douglas : ~Ah, ca, toi, je te reconnais mon pote. C'est toi qui file les billets @`a tous ces pauvres types, pas vrai. Putain, on peut dire que tu les as bien anarqu@'es !~^~Silence, mis@'erable~, tonne Douglas en tentant d'@'echapper @`a la prise du so@^ulot.^~H@'e, de toutes fa@@cons, il y a tellement de trains, partout, pourquoi ils font pas comme nous, en en prenant au hasard?~^^Douglas frappe d'un air mauvais de son poing la machoire du vagabond qui retombe contre son si@`ege, et rel@`eve des yeux haineux vers vous.^";roi.frapped=1;} if (parent(clothosfinal)~=location) {various--;if (various==0) { if (location~=toit1) {print "La porte s'ouvre @`a la vol@'ee et l'homme en noir appara@^it dans le cadre. ";} else {print "Montant lentement les barreaux de l'@'echelle, Douglas @'emerge dans la temp@^ete terrible et se l@`eve, marchant droit sur le toit. ";if (chapeau.envoled~=1) {chapeau.envoled=1;move chapeau to wagon2;}} move clothosfinal to location;various=3;}} if (parent(clothosfinal)==location) {switch(location) { interw1,interw12,interw23,interw3,echelleloco,toit1 : i=random(5);switch(i) { 0 : print "Douglas vous crie dans la furie des @'el@'ements : "; 1 : print "Votre ennemi s'approche et hurle dans la temp@^ete : "; 2 : print "Douglas vous d@'eclare, sa voix grave couvrant la fureur et le bruit : "; 3 : print "Douglas vous pointe de l'index et vous crie, battu par la pluie et le vent : "; 4 : print "L'homme en noir vous poursuit encore et vous lance dans une voix couverte par le tonnerre et la pluie : "; 5 : print "Douglas vous crie dans la furie des @'el@'ements : "; } default : i=random(5);switch(i) { 0 : print "Douglas vous sussure d'une voix suave : "; 1 : print "Tirant sur ses gants, l'homme en noir vous d@'eclare sombrement : "; 2 : print "L'homme en noir avance une main crisp@'ee pr@^ete @`a se refermer sur votre gorge : "; 3 : print "Douglas vous dit d'un ton d@'esinvolte, vous observant : "; 4 : print "Les yeux dans le vague, Douglas d@'eclare : "; 5 : print "Douglas vous sussure d'une voix suave : "; }} print "~ "; switch(various) { 0 : print "Il est inutile de vous enfuir ou de r@'esister, Margot. Vous n'irez pas loin, et o@`u vous irez, je vous retrouverai. "; 1 : print "Ne me rendez pas les choses difficiles. Je ne veux pas vous faire de mal. "; 2 : print "Etrange chose que le destin, n'est ce pas? Une sorte d'esprit malin qui met toujours hors de port@'ee ce que nous d@'esirons le plus. "; 3 : print "Pourquoi vous opposer @`a moi? C'est futile. Nous perdons du temps, tous les deux. "; 4 : print "Margot cessez de faire l'enfant ! Vous @^etes en train de refuser quelque chose - et de risquer votre vie- dont vous ne connaissez m@^eme pas le go@^ut ! Est ce raisonnable? "; 5 : print "Je vous savais marchant dans les contr@'ees enneig@'ees, je vous ai m@^eme suivi chez ces mis@'erables tisserands de pacotille. J'aurais pu vous tomber dessus @`a chaque instant, ma ch@'ere. La partie n'a que trop dur@'e, mettez-y un terme !"; 6 : print "Ce qui fait votre force, c'est votre extr@^eme ignorance de mes capacit@'es, le saviez vous? Si vous connaissiez l'@'etendue de mon pouvoir... "; 7 : print "Vous m'agacez, Margot. "; 8 : print "Margot finissons-en, suivez moi et partons. "; 9 : print "Et o@`u croyez vous que ce train vous m@`ene, petite arrogante? Chez vous? Ha ha ha ! "; 10 : print "Douglas en un bond est sur vous. Il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);} print "~ "; various++;} ], before [;Take : print "A peine avancez vous le bras qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);], life [; Answer,Ask,Tell: print "~Soyez raisonnable, Mademoiselle, donnez moi la main. ~ "; Attack,Kiss,Show, Give : print "A peine avancez vous le bras qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5); ], has animate proper; Object clothosfinal2 "Douglas" with name "homme" "Douglas" "d" "D" "douglas" "clothos" "noir" "sombre" "impermeable" "main", description "C'est un homme au petit visage rond, sans vraiment d'@^age pr@'ecis, peut-@^etre la trentaine, peut-@^etre plus. Il est v@^etu d'un costume sobre mais de grande classe, d'un brun sombre. Ses cheveux sont liss@'es et plaqu@'es dans une raie sur le cot@'e sage, et une fine moustache tr@'es bien entretenue prend naissance sur sa l@`evre sup@'erieure. Son regard est transper@@cant. Son long impermeable est d@'echir@'e sur le bas, et du sang coule au coin de sa bouche. ", daemon [;various++; if (parent(clothosfinal2)==location && clothosfinal2.inseminated==1) {print "Douglas *sent* quelque chose et se retourne vivement vers vous. Dans ses yeux, de la col@`ere, mais de la peur. ~Qu'as tu...~...^^Il se t@^ate le ventre, un pli soucieux barre son front...et soudain dans un @'eclat de sang une branche de laurier sauce, pouss@'ee en lui, lui d@'echire les entrailles.^^Il tombe @`a genoux dans la douleur, et une autre branche, plus grande, lui transperce le dos.^^";attend();print "A quatre pattes, il vomit du sang dans une puanteur de tripes et de chair @`a vif @'ecoeurante. ";attend();print "Il rel@`eve la t@^ete dans un rictus ensanglant@'e...~Il t'en faudra plus...~ dit il, mais il est vraiment mal en point. Il se rel@`eve, crisp@'e par la douleur, et casse la plus grosse des branches. ";move branche to location;attend();print "Il se rel@`eve ensuite sur ses deux jambes, et ferme les yeux en signe de concentration. Les petites branches qui le transpercent de part en part cessent de grandir, mais les feuilles continuent de pousser. Douglas reste dans sa concentration, immobile comme un buisson ensanglant@'e. ";clothosfinal2.inseminated=2;} if (parent(clothosfinal2)==location && clothosfinal2.bruled==1) {if (clothosfinal2.inseminated==2) {print "Les flammes prennent sur le tissu du manteau, mais rapidement elles s'@'etendent dans un cr@'epitement infernal sur toutes les feuilles charg@'ees d'huile du laurier grandit en Douglas.^^";attend();print "En quelques secondes, Douglas devient une tornade de feu qui embrase fauteuils et murs, dans un hurlement de douleur indescriptible.^^Douglas tombe @`a genoux et l@`eve les bras au ciel, mais quelle instance prendra en piti@'e la douleur d'un fratricide?^^Embras@'e, ses deux yeux vous fixent avec une haine divine et il rampe maladroitement vers vous, vous vous saisir et vous consumer. ";StopDaemon(clothosfinal2);remove clothosfinal2;move clothosfeu to location;plot_depth++;}} if (various>5) { if (location==wagon2 || location==wagon3) {move clothosfinal2 to location;} } if (various>20 && parent(clothosfinal2)==location) {print "~Il suffit. Viens maintenant !~.^^En un bond leste il est sur vous. Vous tentez de le repousser, mais @`a peine avancez vous le bras qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);}], each_turn [;if (clothosfinal2.inseminated~=1 && clothosfinal2.inseminated~=2) {switch(clothosfinal2.baratined) { 0 : print "^Vous voyez Douglas essuyant le coin de sa bouche ensanglant@'e avec un mouchoir gris. "; 2 : print "^Il continue @`a examiner le sang qui coule, mais vous aper@@coit et vous lance sarcastiquement : ~Enfin, voil@`a une bonne chose de faite. ~ "; 4 : print "^~Mais t'inquietes pas, la journ@'ee n'est pas finie. ~ "; 6 : print "^~Mmm il m'a fait sacr@`ement mal. Bon reste ici quelques minutes, de toute fa@@con tu pourras pas aller loin. ~ "; 8 : print "^~Tu as vu ce qu'il arrive @`a ceux qui s'opposent @`a moi? Prends en de la graine. ~ "; 10 : print "^~En fait, je pense que si j'@'etais comme attir@'e par toi c'@'etait aussi pour le combat que j'ai eu tant@^ot avec mon fr@`ere. Non pas que, maintenant que je suis d@'ebarrass@'e de cette vermine, je n'ai plus inter@^et en toi, au contraire !~ "; 12 : print "^~Ne bouge pas, ok? Je viens te chercher dans quelques minutes. ~ "; } clothosfinal2.baratined++;} ], before [;Go : if (clothosfinal2.inseminated==2 && clothosfinal2.bruled~=1) {print "^~Attends, toi...je vais pas te laisser partir comme @@ca~ r@^ale votre ennemi.^Dans un sursaut de douleur, Douglas produit des dizaines de filaments oranges qui se jettent sur vous, @`a peine avez vous fait un pas en arri@`ere ! ";Fin(5);return 2;} else {if (noun==s_obj) {if (location==wagon2 || location==wagon3) {print "Douglas vous fait obstacle. ";attend();print "Vous tentez de le repousser, mais @`a peine avancez vous le bras qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);return 2;}}} Take : print "A peine avancez vous le bras qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);return 2;], life [; Answer,Ask,Tell: print "~Soyez raisonnable, Mademoiselle, donnez moi la main. ~ "; Attack,Kiss,Show, Give : print "A peine avancez vous le bras qu'il saisit votre poignet et un filament orange part depuis sa manche et s'enroule autour de votre bras comme un serpent. La seconde suivante, il est sur votre cou. ";Fin(5);return 2; ], baratined, inseminated, bruled, has animate proper; Object clothosfeu "Brasier (Douglas br@^ulant)" with name "homme" "Douglas" "incendie" "flammes" "douglas" "clothos" "wagon" "feu" "brasier", description "Un v@'eritable brasier s'est empar@'e du wagon, et tout se consume dans une odeur atroce, y compris le corps rougeoyant de Douglas qui se tra@^ine lentement vers vous dans une crispation de haine. ", each_turn [i;i=random(5);switch(i){ 0 : print "^La tornade de feu tourbillonne dans le wagon et s'empare de tous les fauteuils un par un. "; 1 : print "^La tornade de feu tourbillonne dans le wagon et s'empare de tous les fauteuils un par un. "; 2 : print "^Le corps crisp@'e de Clothos rampe lentement vers vous, les yeux br@^ul@'es mais sentant votre vie, une main @'emaci@'ee tendue en avant. "; 3 : print "^Les flammes font exploser les fen@^etres et s'enfuient au dehors, alors que Douglas pousse un long r@^ale de douleur. "; 4 : print "^Tout s'embrase dans un souffle terrifiant. "; 5 : print "^Tout s'embrase dans un souffle terrifiant. "; } ], before [;Go : if (noun==s_obj) {print "Ce brasier vous en emp@^eche, Margot !";}], has animate proper scenery; Object levier "levier" with name 'levier' 'mecanisme', description "C'est le levier qui d@'eclenche le m@'ecanisme de s@'eparation des trains. ", found_in interw23 interw12, before [;Push,Pull : if (second==branche) {HappyEnd();return 2;} else {print "Votre bras est beaucoup trop court ! Il vous manque trente bons centim@`etres pour l'atteindre. ";return 2;}] has static; Object echelleloco "echelle" interw1 with name 'echelle' 'coursive' 'ouverture', description "Une echelle qui descend depuis le toit du wagon jusqu'@`a la coursive entre le wagon de t@^ete et la locomotive. ", after [;Enter : PlayerTo(toit1);return 2;], has open enterable supporter female static; Object chapeau "chapeau noir" with name 'grand' 'chapeau' 'noir', description "Le grand chapeau de feutre noir avec lequel vous avez d@'ej@`a vu Douglas. Quand vous le touchez, il enduit vos doigts d'une substance noir@^atre, comme de l'encre...@'etrange... ", envoled, has clothing leger; Object branche "branche" with name 'branche' 'laurier' 'sauce', description "Une grande branche de laurier sauce d'un m@`etre cinquante, bien solide. ", has female; ! ---------------------------------------------------------------------------- ! Scenes Cinematiques ! ---------------------------------------------------------------------------- [ Initialise; lookmode=2; location=chambrehome; pagetitre(); give player light; introduction(); reveil(); ]; [ pagetitre i; @erase_window -1; print "^^^^^^^^^^^^^^^^^^^^^^^^"; i=0->33; if (i>30) i=(i-30)/2; font off;spaces(i); PrintWidth("F.I.L.A.M.E.N.T.S",i,39); new_line;new_line; print "^^^^^^^ par JB Ferrant, lejibe@@64hotmail.com"; style underline;font on; box " Ce que le monde sait, c'est qu'ils @'etaient trois," " Athropos, Lachesis et Clothos" " et que leur business marchait plut@^ot bien." " " " Ce qui n'a jamais @'et@'e su, c'est qu'un jour Clothos" " arracha la silhouette de son fr@`ere et quitta l'affaire" " pour se mettre @`a son propre compte." " " "Et dans le plus grand secret, depuis ce jour, ils m@`enent," " chacun de leur cot@'e, leur petite entreprise. "; @read_char 1 -> i; @erase_window -1; ]; [ PrintWidth s w l t; t=(w/2)-(l/2); spaces t; print (string) s, "^"; ]; [ introduction i; @erase_window -1; style underline; print "^^^^ ...de nos jours...^"; print " ...@`a Paris...^"; attend(); print "^^^^^"; font off;style roman;font on; print "F.I.L.A.M.E.N.T.S est une fiction interactive qui vous propose de prendre le r@^ole de Margot dans son intrigue amoureuse.^^La plupart des d@'etails n@'ecessaires @`a la r@'esolution des @'enigmes ou @`a la compr@'ehension des motivations des personnages sont contenus dans le jeu.^Dans un premier temps, il vous sera impossible de mourir mais des situations dangeureuses, qui seront soigneusement signal@'ees, peuvent survenir...nous vous recommandons donc la plus grande prudence dans les choix que vous prendrez en ces instants.^^Si vous vous sentez perdu(e) ou bloqu@'e(e), n'h@'esitez pas @`a regarder autour de vous et si vous avez la chance d'avoir un compagnon lors de votre aventure, demandez lui comment il consid@`ere la situation.^^^^Pour conna@^itre le fonctionnement du jeu, tapez ~aide~ @`a n'importe quel moment de celui-ci.^^^^Je vous souhaite de passer un tr@'es bon moment dans l'aventure de F.I.L.A.M.E.N.T.S. "; @read_char 1 -> i; @erase_window -1; ]; [ reveil; style underline; print "^^^^Allez Margot, va falloir se lever. Je crois que ce coup ci tu vas pas y couper : mmm y a de la lumi@`ere, du bruit en bas, je crois bien que c'est parti pour l'avant dernier jour d'@'ecole de l'ann@'ee.^^"; style roman; print "(Vous vous levez rapidement et vous enfilez le jean de la veille).^^"; ]; [ ecole; print "^^^^Dans vos souvenirs d'@'ecole, Paris a toujours @'et@'e une enfilade de matins gris. "; attend(); print "^Vous, vous aviez la musique pour ouvrir des fen@^etres sur des bonheurs lumineux. Comme tous les matins, vous longez d'un rythme tranquille les rues bruyantes de voitures, mais vous, vous ne les entendez pas, parce que sur vos oreilles, il y a votre walkman, et dans votre walkman, il y a Muse :^^^^"; attend(); style underline; print "Birds flying high^You know how I feel^Sun in the sky^You know how I feel^Reeds driftin' on by^You know how I feel^It's a new dawn^It's a new day^It's a new life^For me^And I'm feeling good...^^";attend(); style roman; print "Votre lyc@'ee.^Ouaou.^Ouaou, parce qu'en apparence c'est la classe, mais en fait, c'@'est un ghettos de petits jeunes qui se la jouent, et vous, Margot, vous en savez quelque chose, puisque vous m@^eme, vous y zonez. Ca doit bien laisser des marques quelque part, probablement. "; attend(); print "Quoique, on ne vous y aime pas tellement, finalement. Et quand il n'y a pas des jeunes de votre @^age pour faire passer l'amertume des cours, la scolarit@'e devient une prison.^^Mais vous vous @'etiez libre tout ce temps, et vous savez pourquoi vous vous sentiez si bien?"; attend(); style underline; print "^^Fish in the sea^You know how I feel^River running free^You know how I feel^Blossom in the tree^You know how I feel^It's a new dawn^It's a new day^It's a new life^For me^And I'm feeling good...^^"; style roman;attend(); print "Des petites touches de piano comme la pluie qui r@'esonne sur la vitre brouill@'ee d'eau et de bu@'ee, tout au fond de la classe, loin des autres.^Il y a bien un cours d'anglais, mais @`a quoi bon? L'@'ecole se termine dans deux jours. Un @'et@'e qui s'annonce pluvieux et triste. Plus on s'approche de la fin du supplice, plus celui-ci vous semble long.^^ Vous sortez la derni@`ere de la classe, @'evitant soigneusement vos camarades exalt@'es par l'approche des vacances, bien isol@'ee dans votre bonheur...^^"; style underline;attend(); print "Stars when you shine^You know how I feel^Scent of the pine^You know how I feel^Yeah freedom is mine^And I know how I feel^It's a new dawn^It's a new day^It's a new life^For meee...^^And I'm feeling good^^"; style roman;attend(); print "Mais finalement, vous ne vous sentez pas si d@'etendue que cela. "; attend(); print "^^Il y a ce type, dans votre classe. "; attend(); print "^Ca fait en fait environ une dizaine d'ann@'ees que la force des choses a bien voulu que vous soyiez tous deux jet@'es dans la m@^eme section au d@'ebut de chaque cycle scolaire. Il s'appelle Xavier. Il est vraiment pas mal ! Et toutes les filles sont folles de lui (ce qui lui donne un charme tout @`a fait "; style underline; print "d@'elicieux et coupable"; style roman; print "), et m@^eme si vous trouvez qu'@^etre amoureux est un truc de has been, aujourd'hui, vous vous @^etes r@'esolue @`a lui faire conna@^itre vos sentiments.^"; attend(); print "Enfin une r@'esolution, c'est beaucoup dire.^C'est plut@^ot un dialogue int@'erieur et des promesses que vous ne saurez pas tenues, destin@'ees @`a saupoudrer d'une innacessible r@'ealit@'e des fantasmes plus secrets.^Pour vous changer les id@'ees, vous rembobinez votre radio-cassette sur le d@'ebut de "; style underline; print "Feeling Good. "; style roman; print " Levant les yeux, devant vous,"; style underline; print " Xavier.^"; style roman; print "Devant votre @'ecole, @`a attendre. Seul. Un l@'eger tremblement vous fait glisser votre walkman @`a terre. Vous le ramassez doucement. Allez Margot, courage. Ce n'est que du saupoudrage de r@'ealit@'e.^^^"; plot_depth=plot_depth+1; move xavier to school; ]; [ jonas_arrive; print "Xavier abandonne finalement le d@'ecrochage de sa boucle et l'enfourne dans son sac @`a rollers. Il se retourne vers vous et vous tape amicalement sur le bras :^~Ecoute Margot, c'est bien cool tout ca, mais je suis vraiment en retard. On en parle samedi soir chez C@'ecile, ok?~^"; attend(); style underline; print "Chez C@'ecile?^"; style roman;attend(); print"Il vous quitte sur la seconde et part sans se retourner.^On dira que c'est une demi-victoire, Margot. Tu lui as parl@'e, apr@`es tout. La derniere fois c'@'etait au mois de janvier, non? En tout cas, de pr@'es, il est encore plus super mignon.^^Vous m@'editez encore quelques minutes sur la mis@`ere de votre vie amoureuse, jusqu'@`a ce que l'on vienne vous demander de sortir de l'@'etablissement, car celui ci ferme.^En ce d@'ebut d'apr@`es midi, tout vous semble si tranquille. "; attend(); print "^^ ~Hey Margot, salut !~^"; style underline; print "Cette voix. "; attend(); print "^Loser.^"; style roman;attend(); print "^^Loser, c'est votre pote.^Enfin, pas vraiment.^Disons que, officieusement, plut@^ot oui. C'est difficile @`a dire en fait, parce que l'admettre c'est se choper la honte, et le nier trop violemment, comme vous le faites parfois, vous travaille un peu la conscience.^Dans les faits, Jonas Lousain est le dernier des nuls-paum@'es-zonards @`a deux euros qu'il vous ait @'et@'e donn@'e de rencontrer.^^Toujours @`a cot@'e de la plaque, plongeant dans des ab@^imes de r@'eflexion pour la moindre d@'ecision, sans ami, Loser @'etait le prince des nuls dans la mesure o@`u il ne pouvait m@^eme pas @^etre totalement nul sp@'ecifiquement dans son style ou ses performances intellectuelles, non, il @'etait m@^eme m@'ediocre dans sa recherche (malgr@'e lui, h@'elas) de la nullit@'e-attitude et ne pouvait m@^eme pas developper un style nul en soit.^Et pourtant... "; attend(); print "^^...pourtant un jour vous avez d@'ecouvert en Jonas Lousain un tr@'esor.^Vous aviez, pour des raisons d@'eontologiques, s@'ech@'e le cours de piscine et vous aviez rencontr@'e Lousain le Loser (qui lui avait interdit de piscine pour ~short de bain trop long~) au rayon Ind@'ependants de la FNAC. Et d@'ecouvert ce jour que ce type qui @'ecoutait nuit et jour de la musique de daube genre Menelik ou la derni@`ere compil de ~La Plus Grande Discoth@`eque Du Monde~, le faisait"; style underline; print " en connaissance de cause,"; style roman; print " car il se passionait tout comme elle pour la musique, et plus qu'un aficionado, il en @'etait une encyclop@'edie.^Enfin quelqu'un, m@^eme si c'@'etait ~lui~, pour discuter des heures durant de la subtile diff@'erence entre le ska-punk et le hardcore m@'elodique ou d@'ebattre sans fin pour savoir quel est la meilleure chanson de tous les temps (Creep de Radiohead, bien s@^ur, et pas Billy The Funkyman comme il dit l'autre).^"; attend(); print "^^Evidemment, @^etre la potesse de Loser, ca vous classe, et malgr@'e tous vos efforts (~non, non, j'l'connais pas~) vous avez @'et@'e rapidement catalogu@'ee dans le m@^eme registre que lui et bon, il a bien fallu assumer. De toute facon, tous les jeunes de votre @^age sont des nuls.^^ Apr@`es avoir n@`eanmoins v@'erifi@'e qu'il n'y avait personne aux alentours, vous lui lancez avec un regard sombre. Il l@`eve la main pour toper dans la v@^otre, mais vous restez les bras ballants devant lui. "; attend(); print "Il abandonne sa tentative et d@'eclare :^ ~Alors Margot, ca explose?~^ ~Non.~^ ~Ca groove alors?~^ ~Non.~^ ~Ca bismuth?~^ ~Non.~^ ~Ca pulse?~^^ Vous ne r@'epondez plus, ce qui le d@'ecourage un peu. Il poursuit cependant :^^ ~Tu sais quoi? C@'ecile fait une m@'ega soir@'ee jeudi soir chez elle pour f@^eter la fin des cours.~ ^^Votre coeur bondit : ~Tu veux dire, samedi soir?~^ ~Ah Ouais. Samedi. J'ai du mal pour les jours. Sauf le mardi. Le mardi, c'est cool.~^^"; attend(); print "Cecile la star du Lyc@'ee qui fait une soir@'ee. Peu de chances que vous soyiez invit@'ee. Mais Xavier, lui, l'est, de toute @'evidence. La pens@'ee de donzelles excit@'ees se pavanant devant votre amoureux secret vous contrarie.^^ Jonas ajoute :^ ~Et devine qui va faire le super D.J. de ce programme inoubliable?~^ (il pointe son torse avec le pouce comme pour vous donner un indice).^^ ~Marc le Molosse?~ demandez vous sans conviction, en pensant aux donzelles.^ ~Mais nooon !~r@'epond-il en pointant ses deux index fr@'en@'etiquement sur lui.^ ~C@'edric-t@^ete-de-crayon?~ proposez vous en maudissant toutes les C@'eciles de la terre.^ ~Moi.~^^ (vous riez) ~Excuse moi Jonas, mais j'y crois pas trop.~^^ ~C'est pourtant la v@'erit@'e.~^^";attend(); print "Un cliquetis d'intelligence f@'eminine s'agite dans votre cerveau. Jonas faisait une porte d'entr@'ee id@'eale pour cette soir@'ee. Et coup de bol, Jonas vous aimait bien. Vous lui dites, mieleuse :^ ~Ca me plairait pas mal de te guider un peu dans cette composition musicale...~^ ~Ouais, justement j'avais pens@'e a une assistante.^ ~Quoi? Une assistante? Moi qui t'ai tout appris?~^ ~Me fais pas rire.~^^ Le temps n'est plus @`a la plaisanterie, Margot, et les l@`evres serr@'ees vous acceptez votre r@^ole d'assistante en silence. Jonas prend un air solennel et dit en bombant le torse :^ ~Je voudrais r@'ealiser le meilleur mix de tous les temps pour cette soir@'ee, @^o assistante. Et pour cela, que me conseillerais-tu?~^ ~D'excellents morceaux~, r@'epondez vous logiquement.^ ~Bien pens@'e. Et pour cela, nous devrions prendre conseil aupr@`es de Rando, le disquaire de Belleville. C'est un pro. Qu'en penses tu?~^ ~C'est un bon d@'ebut. Allons-y.~^ ~Apr@`es vous, assistante. Je vous suis.~^^Vous soupirez. C'est pas encore gagn@'e.^^"; move jonas to location; StartDaemon(jonas); ]; [quest4dj; print " ^^Vous sortez du ~Mix Magique~ dans le silence.^^~Il m'a donn@'e envie, l'autre Rando, avec son Dan The Automator,~ avouez vous. Mais avoir DJ Shadow pour seul espoir, c'est pas gagn@'e.^^~Ouais,~ r@'epond Jonas. D'autant plus que c'est pas donn@'e, l'Elys@'ee Montmartre.~^^Vous clignez des yeux en essayant de comprendre le lien logique. Jonas vous explique :~Ben ouais, DJ Shadow est en concert ce soir et demain l@`a bas. Mais c'est pas donn@'e.~^^Ouaou, mais c'est une super nouvelle, cela ! Vous avez peut @^etre une chance ! Il aurait pu @^etre @`a New York ou @`a Berlin, et il est @`a quelques stations de m@'etro ! Tapant dans le bide de Jonas, vous lui expliquez que vous n'avez rien @`a perdre @`a tenter de l'approcher, ~en plus, l'Elys@'ee Montmartre, c'est carr@'ement plus pr@'es que New York, d@'ebilou !~^^~Ouais~, acquiesce simplement Jonas.^^Mais vous n'@^etes pas s@^ure qu'il ait saisi la relation de cause @`a effet.^^";plot_depth=plot_depth+1; ]; [badaboum; print "^^Vous forcez la porte en faisant levier avec la barre de fer. Vous appuyez du poids de vos deux corps. Et dans un claquement sec, la haie s'ouvre grand, et, emport@'es par votre @'elan, vous plongez vers le contrebas ! D@'egringolade... "; attend(); print "^^Boum - Un rocher dur. "; attend(); print "^^Ouch - Des ronces. "; attend(); print "^^Aie - Des orties. "; attend(); print "^^Ouille - Des outils pointus. "; attend(); print "^^Et voil@`a. Vous @'etes mort. Fini. Vous avez perdu. On peut pas dire qu'on vous avait pas pr@'evenu. C'est bien dommage. J'esp@`ere que vous aviez sauvegard@'e. Voulez vous recommencer? (O/N)"; attend(); style underline; print "^^(Je plaisantais bien s@^ur)"; style roman; print "^^Apr@'es avoir rebondi sur tout un tas d'objets pointus et dangeureux, et soigneusement @'evit@'e dans votre chute les tapis d'herbe molle et le vieux sommier abandonn@'e l@`a, vous tombez une derni@`ere fois sur le b@'eton rugueux d'une arri@`ere cour.^Jonas se rel@`eve doucement en murmurant : ~ouille...aie...~. ^^"; PlayerTo(derriereem);elymentrance=1; ]; [montesurscene; if (plot_depth<6) {print "^^Vous grimpez sur des @'enormes caissons de basse.^^Accroupi derri@`ere une platine, vous voyez un type blafard et malingre qui bidouille des fils. ";move dj_shadow to scene; } else { print "^Vous vous approchez du type aux lunettes devant sa collection d'enregistrements. "; } ]; [OuvertureCd; if (plot_depth==12) { print "Vous ouvrez le boitier... "; attend(); style underline; print "^^Pas de CD.^^"; style roman; attend(); print "Pas de CD. Mais par contre un petit feuillet tombe par terre @`a vos pieds. "; move feuillet to chambrehome; plot_depth=plot_depth+1; } else { print "Y a rien dans ce boitier ! Une belle arnaque ! "; } ]; [ArriveeRepas; print "Vous penetrez dans une pi@`ece aux couleurs surr@'eelles.^"; attend(); print "Vous @^etes dans une pi@`ece grande et toute en teintes bleut@'ees, nimb@'ee d'une musique qui vous semble @`a la fois proche et lointaine.^~Whaaa !~ s'exclame Jonas, ~ je savais pas que c'@'etait aussi cool d'@^etre @'epicier !~ "; style underline; print "^^Mais vous avez la claire sensation que tout est loin d'@^etre normal ici. "; style roman; attend(); print "^^De nombreuses personnes semblent d@^iner ici, sans prendre compte de votre intrusion. Le circonspect majordome vous ayant conduit ici se tient devant deux chaises vides sur la table centrale, o@`u se tient d@'ej@`a un curieux personnage. D'un geste, le majordome vous invite @`a prendre place. Deux soupi@`eres fumantes attendent devant les places vides. Votre h@^ote, un homme @`a la moustache fine comme un trait d'esprit, vous fixe d'un regard p@'enetrant.^^"; plot_depth=plot_depth+1; give portesyn ~open; ]; [DialogueDouglas; print "A peine avez vous tremp@'e vos l@`evres dans la soupe, votre sombre h@^ote d@'eclare rapidement, d'un ton imp@'erieux : ~Mon nom est Douglas et j'ai votre enregistrement. Que seriez vous pr@^ets @`a donner en @'echange?~ "; attend(); print "^^Vous essuyez vos l@`evres sur une serviette finement tiss@'ee, mais avant m@^eme que vous puissiez r@'epondre, Jonas dit : ~Chais pas, je donnerais ma game boy color, par exemple.~^^Mais Douglas n'a d'yeux que pour vous et votre r@'eponse.^^~Nous n'avons pas beaucoup d'argent,~ expliquez vous. "; attend(); print "^^~Et je n'en attends pas de vous.~ vous r@'epond-il du tac au tac. ~J'ai peu d'inter@^et...dans l'argent. J'aurais besoin...j'aurais besoin que l'on me rende un... "; style underline; print "service"; style roman; attend(); print ". Mais je ne sais pas si je m'adresse aux bonnes personnes. Vous @^etes un peu "; style underline; print "jeunes"; style roman; print ".^^~Quel type de service?~ demandez vous tandis que Jonas aspire bruyamment le potage. ^Douglas @'ecarte les doigts pos@'es sur la table et inspire. ~Suivez moi, si vous en @^etes capables.~. Il se l@`eve brusquement et quitte la salle par une porte sur le cot@'e nord dissimul@'ee dans la paroi. "; remove clothos; move portepassage to diningroom; plot_depth=plot_depth+1; ]; [Surprise; print "^^Une main lourde se pose soudainement sur votre @'epaule et vous vous sentez sur le point d@'efaillir de frayeur. La silhouette haute, magn@'etique, mais obscure de Douglas semble vous engloutir alors qu'il jubile encore du pi@`ege qu'il vient de refermer sur vous. Il plonge une main gourmande dans une urne de bronze reponsant sur un piedestal, et en extirpe une pleine poign@'ee d'un sable brillant qu'il vous projette dans les yeux.^^D@'esorient@'es, des larmes plein de vos yeux br@^ul@'es par cette poussi@`ere @'etrange, vous tombez @`a genoux.^^"; attend(); print "Douglas vous remet sur pied et pousse un lourd vantail de pierre derri@`ere lui.^^~Suivez moi encore~ vous invite-t-il enfin, avant de dispara@^itre de nouveau derri@`ere cette nouvelle porte.^^"; PlayerTo(portecaverne); various=0; ]; [fuite; print "Comprenant que cette histoire vous a men@'e un peu trop loin, vous tournez les talons sans un mot et commencez @`a partir. Mais Douglas vous retient fermement par le poignet : ~Allons voyons, il est trop tard pour reculer, maintenant !~^^Vous vous debattez furieusement alors que grandit votre anxi@'et@'e.^^Derri@`ere, Jonas, apparemment peu conscient de la gravit@'e de la situation, vous observe en fron@ccant les sourcils.^^Votre coeur bat @`a toute vitesse et d'un grand mouvement vous @'echappez @`a la poigne de Douglas.^^"; style underline; print "Mais qu'est ce que je fais dans cette gal@`ere?"; attend(); style roman; print "^^Vous tr@'ebuchez @`a quelques m@`etres de la maison carr@'ee. Sur le sol, vous vous retournez et vous voyez l'ombre gla@ccante de Douglas se pencher sur vous. Au del@`a, un grand bonhomme vient poser la main sur l'@'epaule de Jonas.^^Des @'eblouissements de lumi@`ere vous aveuglent de plus en plus alors que vous tremblez de tout votre corps.^^"; attend(); print "^^...et tout devient sombre et silencieux. "; attend(); style underline; print "^^Vous avez la sensation indistincte que l'on vous transporte. "; attend(); print "^^Vous percevez des murmures de voix famili@`eres. "; attend(); print "^^Vous vous endormez. "; attend(); @erase_window -1; print "^^^^Allez Margot, va falloir se lever. Je crois que ce coup ci tu vas pas y couper : mmm y a de la lumi@`ere, du bruit en bas, je crois bien que c'est parti pour le dernier jour d'@'ecole de l'ann@'ee.^^"; style roman; print "(Vous vous levez rapidement et vous enfilez le jean de la veille).^^"; attend(); print "^^Hum. Le Jean est en l'occurence pli@'e sur votre lit. Cela ne vous ressemble pas. Qu'avez vous fait la veille...ah. Xavier. Cecile. Rando. Dan The Automator. Le syndicat...des @'epiciers?! Douglas...la caverne souterraine et les souvenirs perdus...vous n'@^etes pas, toutefois, totalement sur de la r@'ealit@'e de cette derni@`ere partie. Loser saura vous renseigner la dessus.^^"; nuit=0; StopDaemon(jonas); remove jonas; plot_depth=plot_depth+1; give portesyn ~open; give portesyn locked; remove chair; remove potage; while(child(player)~=0) {remove child(player);} while(child(sacmargot)~=0) {remove child(sacmargot);} move walkman to player;give walkman worn; move sacmargot to chambrehome; move pioche to sentierhaut; move manche to sentierhaut; playerTo(chambrehome); ]; [Lendemain; print "Et voil@`a. Encore une matin@'ee nulle. Au moins, l'@'ecole est bient@^ot termin@'ee. Fini pour deux mois.^^Tout serait tellement super cool si tout le monde ne parlait pas de la fameuse soir@'ee de C@'ecile...et murmurait sur le fait qu'on vous avait vu bien souvent ces derniers temps avec Loser.^^Vous avez @`a peine conscience des derni@`eres heures qui passent - plong@'ee dans la musique de votre walkman.^Sortant de classe, vous scrutez les alentours pour trouver Xavier, mais vous le voyez franchir bien loin le coin de la rue au bras de C@'ecile, ce qui a tout lieu de vous assombrir. Votre regard tombe alors sur Jonas, qui essaie pour la dixi@`eme fois de faire glisser une pi@`ece de 1 euro dans un distributeur de boisson.^^~Hey Hey Hey Miss, dit-il en vous tapant dans la main. Yo. Alors maintenant on est des super aventuriers, t'as vu @@ca, hier soir? C'@'etait bien cool !~^~Excuse moi, Loser, expliquez vous, mais je n'ai pas vraiment de souvenir. Il s'est pass@'e quoi exactement~?^~H@'e ben, soupire Jonas, on est all@'e voir Rando juste apr@'es midi et...~^~Non, cr@'etin, plaisantez vous, apr@'es la valise, les @'eprouvettes, et la caverne des souvenirs.~^~Bof, fait Jonas, vu que t'@'etais KO et que finalement ce Douglas n'est pas un mauvais bougre, il t'a transport@'e @`a l'ext@'erieur avec moi (c'@'etait pas bien loin, on s'est mont@'e la t@^ete je pense), a appel@'e un taxi et l'a pay@'e pour nous raccompagner tous les deux. Elle est cool, ta reum, elle s'est fait du souci pour toi.~^~Et c'est tout? J'@'etais morte de trouille,~ avouez vous.^~Moi aussi, j'ai eu peur, mais apr@'es coup. Mais vu que Douglas s'est montr@'e r@'eglo, finalement y avait pas trop de risques.~^^Un groupe de jeunes vous montre alors du doigt et vous crient : ~Ouh les amoureux ! Margot est la petite copine @`a Loser !~^^Vous soupirez, adressez un regard neutre @`a Jonas qui hausse les @'epaules, et quittez l'@'ecole rapidement, alors que celle-ci ferme.^^Quels cr@'etins. "; style underline; print "^Vous vous prendriez bien un petit caf@'e.^^"; style roman; plot_depth=plot_depth+1; ]; [Commercial; print "^Vous vous asseyez tranquillement @`a votre place habituelle.^Vous venez souvent ici. Ces endroits o@`u l'on se croise, o@`u les gens semblent les m@^emes sans l'@^etre tout @`a fait. Cette ambiance de convivialit@'e qui semble avoir toujours exist@'e. Ce sentiment d'avoir v@'ecu, d'@^etre plus adulte.^^On vous apporte un caf@'e sans que vous l'ayiez command@'e. Vous prenez le temps de le savourer en faisant le point sur ce qu'a @'et@'e votre vie jusqu'@`a pr@'esent, et pour ce que vous y songez dans l'entrelacs brumeux du fumet de votre caf@'e, une s@'er@'enit@'e vous envahit doucement. "; attend(); style underline; print "^^Ainsi, des gens creusent la roche calcaire sous Paris pour en extraire les souvenirs perdus. "; attend(); style roman; print "^^Un homme s'assied @`a votre table et r@`egle votre commande. "; move cedric to epsilon; plot_depth=plot_depth+1; various=0; ]; [PrendreDossier i; print "Vous avancez votre main du pack "; if (i==1) {print "~classique~ ";} if (i==2) {print "~deluxe~ ";} if (i==3) {print "~surprise~ ";} print " mais votre interlocuteur pose la sienne @`a plat sur le document. ~Une derni@`ere fois avant que vous ne profitiez de cette offre exceptionnelle - je vous recommande de bien r@'eflechir et d'@'etudier ces dossiers. Apr@'es, vous pourrez toujours "; style underline; print "annuler"; style roman; print " votre d@'ecision, mais en aucun cas en choisir une autre.~^^Il retire sa main du pack "; if (i==1) {print "~classique~ ";} if (i==2) {print "~deluxe~ ";} if (i==3) {print "~surprise~ ";} print " et le replace au m@^eme niveau que les deux autres dossiers, comme pour vous inciter @`a consid@'erer les autres propositions. "; if (i==1) {various=1;} if (i==2) {various=2;} if (i==3) {various=3;} ]; [Destin i; print "L'homme soupire et se mure un instant dans un silence de statue.^^~Apparemment, dit-il enfin, votre d@'ecision semble prise.~^^Il retire le dossier de vos mains et replace les trois dans sa sacoche. Il se l@`eve en posant sa carte de visite sur la table, les l@`evres pinc@'ees, presque soucieux.^^~Qu'il en soit ainsi, comme ils disent. Votre offre prend effet dans une minute trente secondes. Vous avez vingt quatre heures @`a compter d'aujourd'hui pour annuler votre d@'ecision, autrement nous consid@'ererons votre forfait acquis et il ne pourra en aucun cas @^etre remplac@'e -"; style underline; attend(); print " par nos services, tout du moins. "; style roman; print "~^^Il fait deux pas, se retourne encore, et dit : ~Bonne chance~. Il s'approche de l'entr@'ee, bouscule un curieux individu qui vient de rentrer, et vous lance deux yeux r@'esign@'es : ~J'ai @'et@'e heureux d'avoir @'et@'e votre angent - votre agent.~ le devinez vous murmurer.^^Mais vous ne le voyez m@^eme pas disparaitre par la porte, car la personne qui l'a bouscul@'e s'assied soudainement @`a sa place, en face de vous, et vous d@'evisage en silence. Vous le regardez dans les yeux sans vraiment comprendre et il vous dit enfin :^^~Je ne peux pas m'empecher de penser @`a toi, en ce moment. Enfin, plut@^ot, "; style underline; print "tout le temps. "; remove dossiers; remove dossierc; remove dossierd; move cartevisite to player; style roman; if (i==1) {Fin(2);} if (i==2) {XavierLove();} ]; [XavierLove; print "^^Vous vous frottez les yeux avec incredulit@'e. "; style underline; print "^^Xavier. "; style roman; attend(); @erase_window -1; print "^^^^Xavier @'etait amoureux secretement de vous depuis si longtemps. "; attend(); print "^^Il ne l'avait simplement pas r@'ealis@'e. "; attend(); print "^^Vous avez pass@'e des heures @`a vous parler - enfin, surtout vous, vous lui racontiez tout ce que vous aviez sur le coeur depuis si longtemps, dans quelles subtilit@'es et quelles dimensions vous l'aimiez...depuis si longtemps aussi. Et il vous @'ecoutait, subjugu@'e, silencieux. "; attend(); print "^^Vous @^etes aussi all@'e chez lui; c'@'etait la premi@`ere fois que vous alliez chez un gar@@con comme cela, et vous @'etiez un peu intimid@'ee - malgr@'e votre air blas@'e que vous essayiez tout le temps d'afficher.^Enfin, vous @^etes souvent all@'e chez Jonas en fait, avec ses autres losers de potes, et c'@'etait tellement crado que le jeu en vogue @'etait le : ~qui s'y colle vivant~. Il consistait @`a jeter quelque chose de vivant (hamster, soi-m@^eme, un pote) contre une paroi et que cette chose reste attach@'ee. Une fois, Loser s'est coll@'e contre un mur et y a laiss@'e la moiti@'e de ses vetements, qui doivent encore y @^etre.^Vous vous souvenez avoir ri avec attendrissement @`a cette pens@'ee alors que vous regardiez les murs blancs avec des posters de dauphin (tiens, il doit @'ecouter Robert Miles) et le parquet immacul@'e de l'appartement de Xavier. Le monde semblait si beau, m@^eme les souvenirs des plans loose de Loser. "; attend(); print "^^Et il y a eu la soir@'ee chez C@'ecile. "; attend(); print "^^Vous n'etiez pas invit@'ee, mais c'@'etait encore mieux : vous @^etes arriv@'ee devant la somptueuse demeure @`a Neuilly au bras de Xavier et le monde vous a jalous@'e, et personne n'a compris. "; attend(); print "^^Pass@'ee la sensation coupable de consommer votre amour dans la jalousie des autres, la soir@'ee avait d@'emarr@'ee sur un ~Right Here, Right Now~ bien senti de Loser, qui fit enchainer @`a Fatboy Slim une s@'erie de singles somptueux, une playlist qui @'etait ce soir l@`a un art en soi. "; attend(); print "^^M@^eme Rando s'@'etait point@'e @`a un moment avec son short miteux et ses sandales, mais comme il avait l'air branch@'e, personne ne demanda qui l'avait invit@'e. Vous vous souveniez alors avoir d@'efinitivement perdu Jonas des yeux. Mais cela n'avait pas d'importance. "; attend(); print "^^Vous @'etiez dans les bras de Xavier. Et il vous semblait plus beau que jamais. "; attend(); @erase_window -1; plot_depth=plot_depth+1; style underline; print "^^^^Allez Margot, va falloir se lever. Je crois que ce coup ci tu vas pas y couper : mmm y a de la lumi@`ere, du bruit en bas....^^"; style roman; print "Vous riez un moment dans votre lit. L'@'ecole est bien finie. Et hier, Xavier vous avait enlac@'ee encore et encore avant de vous quitter sur le pas de votre porte. Non, il ne disait pas grand chose, mais ses baisers @'etaient doux. Mais il ne disait pas grand chose. Et pass@'e le plaisir coupable de se savoir la reine du King adul@'e, vous aviez un tout petit go@^ut @'etrange sur la langue...puis vous repensiez @`a ses yeux si mignons, et vous retombez amoureuse @`a chaque fois.^^On vous appelle en bas.^^Vous vous cachez la t@^ete sous l'oreiller. Les yeux de Xavier.^^"; attend(); print "On vous appelle encore.^^"; style underline; print "Ah ils sont trop chiants, mes vieux.^^"; style roman; print "(Vous vous levez rapidement et vous enfilez le jean de la veille.)^^"; playerTo(chambrehome); ]; [Baleine; print "Vous entendez un craquement dantesque suivi de cris d'effroi. Vous d@'egringolez les marches et vous frayez un chemin dans la foule...^^"; attend(); print "Jonas est introuvable, la confusion r@`egne, des vigiles forcent les gens @`a atteindre la sortie. Vous luttez, mais plus fort que vous vous pousse.^^~Un squelette de baleine s'est effondr@'e~^^~Un pauvre type s'est tout pris sur la t@^ete.~^^~Un jeune qui...~^^~Non, un blond...~^^"; attend(); @erase_window -1; print "^^^^Vous avez longtemps attendu avec angoisse @`a l'entr@'ee du mus@'ee.^^Une ambulance @'etait arriv@'ee apr@`es un moment interminable. On y avait charg@'e une civi@`ere recouverte d'une couverture. Il n'y avait plus de place pour le doute. Vous sentez na@^itre en vous une peine inexprimable. "; attend(); print "^^Le corps secou@'e de sanglots silencieux, vous songez avec amertume @`a l'inefficacit@'e du destin @`a rendre les gens r@'ellement heureux. S'il y existait un service apr@`es vente, il y aurait pas mal de m@'econtents.^^"; attend(); style underline; print "Ce seraient des m@'econtents stupides. On a toujours ce que l'on a voulu. "; style roman; print "^^Vous sursautez. Cette r@'eflexion semble avoir @'et@'e formul@'ee @`a l'interieur de vous par une voix qui pourtant vous semblait @'etrang@`ere.^^Apr@`es quelques minutes, la foule se disperse et les autorit@'es s'@'eloignent. "; PlayerTo(jardinplantes); plot_depth=plot_depth+1; ]; [DialogueTelCom; print "^^Le t@'el@'ephone est imm@'ediatement d@'ecroch@'e :^^~Allo? Ah, Mademoiselle Margot. Est ce que tout va pour le mieux? Votre commande vous a-t-elle satisfaite?~^^~Jonas est mort !~ lui criez vous au t@'el@'ephone. ~Vous qui travaillez pour le Destin, vous deviez le savoir, salaud ! Pourquoi vous ne me l'avez pas dit?~^^~Mais ce n'@'etait pas le propos. Je vous signale d'ailleurs que...~^^~Et bien si vous pouvez changer le coeur et l'amour des gens, vous pouvez changer cela, non !~^^~JE VOUS SIGNALE, MADEMOISELLE, QUE C'EST PRECISEMENT VOTRE DECISION QUI A INFLECHI LE DESTIN !~^^Vous ne comprenez pas bien, et comme l'avenant bonhomme s'est mis @`a hurler s@'everement de son cot@'e aussi, vous vous murez dans le silence. Il explique : ~J'@'etais...bien embet@'e. Je pensais que vous alliez choisir la formule surprise, c'@'etait celle avec Jonas, parce que vous @'etiez proches. Mais vous ne l'auriez pas fait. Et vous ne l'aviez pas fait, de toutes fa@@cons, et c'est cela qui compte. Il a fallu prendre des mesures.~ "; attend(); print "^^~De son cot@'e, Jonas vous avait choisi. D'une part il @'etait malheureux et d'autre part nous avions une"; style underline; print " obligation"; style roman; print " de livraison. Je ne vais pas entrer dans les termes techniques, mais dans ce type de situation, nous avons nos propres solutions. Sachez qu'il est heureux, de son cot@'e. Et que nous avons tout fait dans les meilleures conditions possibles. ~^^~Mais je suis pas heureuse s'il n'y a pas Jonas !~ vous entendez vous dire.^^~Mais sans l'amour de Xavier non plus.~^^~Je me fiche de l'Amour quelqu'il soit si je n'ai pas l'amiti@'e de Jonas!~^^~Cela veut-il dire que vous annulez le forfait choisi? Je vous pr@'eviens : cela ne changera rien au destin actuel de votre ami.~^^~ALLEZ VOUS FAIRE VOIR AVEC VOS FORFAITS ! JE ME SUIS FAIT AVOIR ! VOUS ETES UN ESCROC !~^^Vous entendez qu'il discute avec un tiers, et s'adresse @`a lui avec respect. Puis il conclut : ~Je vois. Des dispositions seront prises. Adieu Mademoiselle.~^^Il raccroche soudainement, et au m@^eme moment un @'eclair d@'echire les lourds nuages noirs qui viennent de s'accumuler.^"; plot_depth=plot_depth+1; nuit=2; ]; [Laius i; if (i==0) { print "^^~Vous voil@`a sortant tel un diable de votre boite.~ dites vous avec m@'epris. Il semble sourire de l'image, croisant les bras et s'approchant de vous, si pr@'es que son chapeau vous abrite presque de la pluie redoublante au dehors.^^~Qu'avez vous fait @`a Jonas? Je sais que vous @^etes l@`a dessous?~^^~Ne vous m@'eprenez pas, Mademoiselle. Je suis l'homme des solutions, pas des probl@`ematiques. Et je poss@`ede la solution...@`a votre probl@`eme du moment.~^^Il tire par @`a-coups une enveloppe de sa poche int@'erieure, la d@'echire et vous tend son contenu, une sorte de billet d'avion dont vous ne pouvez lire le lib@'ell@'e. "; direc=direc+1; move billet to mystreet; } if (i==1) { print "^^Douglas retire rapidement le billet de vos doigts, et une rafale de vent vous repousse en arri@`ere.^^~Pas si vite !^^Vous tendez la main mais vous ne savez m@^eme pas ce que vous allez saisir. ~^^~C'est un billet pour o@`u?~ demandez vous dans la pluie.^^~C'est un billet pour Paris. Le Paris d'une autre r@'ealit@'e, celle o@`u Jonas a surv@'ecu. Afin de satisfaire l'immense diversit@'e des aspirations de chacun, il a fallu cr@'eer des embranchements de r@'ealit@'e. Vous croyez avoir le choix, mais tous les choix sont toujours pris. La question est : o@`u voulez vous @^etre? Ici bas, dans les bras de Xavier, ou "; style underline; print "l@`a bas?~ "; style roman; direc=direc+1; } if (i==2) { print "^^Il vous repousse de son autre bras, les narines dilat@'ees par sa propre excitation.^^~Pas si vite. Vous aviez fait un choix un peu prompt, auparavant, n'est ce pas? Donnez vous le temps de r@'efl@'echir. Ces billets co@^utent cher, vous savez. Je ne crois pas que vous aurez l'occasion de vous payer le voyage retour.~^^Il sourit du sourire que vous d@'etestez le plus.^^~Combien cela co@^ute?~ demandez vous haletante de col@`ere.^^~Ce n'est pas quantifiable. Il faut avoir des ressources exceptionnelles pour s'en procurer un - en fait, le fait seul de savoir que ce type de...laissez passer existe est inestimable.~^^~Alors je ne pourrais jamais vous l'acheter ! A quoi jouez vous !~^^~Du calme. Je n'ai jamais parl@'e d'achat. Je vous le"; style underline; print " donne.~ "; style roman; direc=direc+1; } if (i==3) { print "^^~Pas si vite. Nous avions un march@'e, vous en souvient-il?~^^Vous regardez Douglas avec des yeux furieux. Jamais d'argent, toujours des actes et des pactes. Il se penche vers vous et vous murmure :^^~Ce billet vous attendra sur la table de la maison carr@'ee, au fond de la vall@'ee souterraine. Ne me d@'ecevez pas cette fois-ci.~^^Il rempoche le billet, s'@'eloigne, et, @`a la faveur d'un @'eclair aveuglant, disprait dans un coin de rue. Quelques secondes plus tard, la pluie s'arr@^ete, et, doucement, les lourds nuages se dissipent dans un ciel clair. "; remove clothos2; move billet to tablebrut; nuit=0; give portesyn ~locked; give portesyn open; plot_depth=plot_depth+1; } ]; [Sautdelafoi; print "Vous fermez les yeux, et apr@`es un infime instant d'h@'esitation, vous vous laissez tomber dans le vide.^^"; attend(); print "L'air siffle @`a vos oreilles, le bruit de l'avion semble s'@'eloigner, mais tout devient subitement calme et silencieux.^^"; attend(); print "Vous avez la sensation indistincte de percer des couches d'air de plus en plus denses, un air froid et humide. Vous n'ouvrez pas les yeux, vous vous laissez porter sur le dos par cette chute silencieuse, comme berc@'ee.^^"; attend(); style underline; print "Merci de m'avoir fait confiance. "; style roman; attend(); print "^^~Je n'avais pas trop le choix~, pensez vous @`a l'attention du murmure de pens@'ee. "; attend(); style underline; print "^^Il y a toujours le choix. Tu aurais pu choisir de mourir. "; attend(); style roman; print "^^~Jamais je ne choisirai de mourir. Il faut @^etre fou pour faire ce choix.~ "; attend(); style underline; print "^^Pas forc@'ement fou. En temps de guerre, on choisit parfois la mort plut@^ot que de tomber entre les mains de l'ennemi. "; style roman; attend(); print "^^~Certes, mais nous ne sommes pas en temps de guerre.~ "; style underline; attend(); print "^^Justement, si. "; attend(); style roman; print "^^La voix grave et lointaine r@'esonne encore dans votre esprit quand vous vous apercevez que vous @^etes allong@'ee sur le ventre sur un tas d'herbe moelleux. Combien de temps a dur@'e votre chute, et dans quelles circonstances s'est elle d@'eroul@'ee, voil@`a encore un bon gros tas de myst@'ere @`a mettre au cr@'edit de votre invisible ange gardien.^^Un ange guerrier, murmurez vous pour vous m@^eme.^^Vous vous @'etirez longuement et regardez aux alentours.^^Vous n'@^etes plus @`a Paris.^^Vous devez d'ailleurs en @^etre tr@'es, tr@'es loin. "; while(child(player)~=0) {remove child(player);} move walkman to player;give walkman worn; PlayerTo(seaside); ]; [PrendreBillet; print "^Vous vous baissez pour prendre le billet tant recherch@'e. Et ben. On pourra pas dire que vous n'avez pas remu@'e ciel et terre pour ce bout de papier. "; attend(); print "^Mais une main gant@'ee a d@'ej@`a saisi le billet entre deux doigts. Accroupi mais grande, elle tourne la t@^ete vers vous : un masque de cuir ovale, uniforme, marron, avec deux seules minces fentes pour les yeux, mais @`a travers desquelles vous ne voyez que le n@'eant, la recouvre enti@`erement. "; attend(); print "^Vous reculez de surprise devant cette silhouette venue de nulle part, grande et impressionnante. Elle se l@`eve, obscurcissant le soleil, et tous les oiseaux s'envolent dans des battements d'ailes incessants. Son visage, ses mains, sont completements recouvertes de cuir, et une longue cape d'un vert sombre flotte dans la brise du haut du clocher. Elle tient le billet dans sa main et fait un pas vers vous. "; attend(); print "^Vous reculez encore de frayeur, mais c'est le pas de trop, et si la figure vous tend un bras pour vous rattraper, c'est d@'ej@`a trop tard : vous tombez dans le vide !"; attend(); print "^^Et vous sombrez dans le n@'eant. "; attend(); print "^^Mais ce n'est pas, semble-t-il, la fin pour autant. "; attend(); style underline; print "^^Pas encore, manifestement,"; style roman; print " semble plaisanter la voix qui vous est famili@`ere @`a pr@'esent. "; attend(); print "^^Vous vous reveillez dans un endroit @`a l'odeur d@'eplaisante. Le temps de vous extirper de la meule de foin, vous comprenez que votre chute a heureusement @'et@'e adoucie par le tas de paille. Vous m@'editez quelques instants sur la myst@'erieuse apparition et votre bienheureuse fortune, puis vous retirez m@'eticuleusement les brins de paille qui vous recouvrent. "; PlayerTo(sidechurch); remove billet; plot_depth=plot_depth+1; ]; [Lysdonne; print "Vous posez le Lys sur le plan de travail d'Atropos.^Il l@`eve la t@^ete vers vous, une expression qu'il force impassible, pour mieux vous sonder. Vous d@'etournez votre regard avec un certain air de victoire et d@'eclarez :^~Ouais, ca a pas @'et@'e facile. On peut pas dire que vous m'avez super aid@'e.~^^Apr@'es un petit moment de silence, Atropos respire le parfum du Lys, en contemple la forme @'el@'egante.^~Et bien mademoiselle, vous @^etes dou@'ee. F@'elicitations !~^^~Ouais, ouais, c'est pas gagn@'e. Encore 999 @`a faire. Enfin, vu que j'ai cueilli celui-ci, va falloir que je le refasse.~^~Le plus dur est fait, n'est ce pas,~ vous dit le vieux bonhomme avec un clin d'oeil. ~Certes Lachesis m'a invit@'e @`a ne point t'aider dans l'art du tissage, mais il est ridicule de ne pas te rendre la vie facile. Je vais completer la boite @`a couture de fils et d'@'etoffes. Viens me voir quand tu auras faim et soif, nous d@'ejeunerons ensemble, ca m'@'eclaircira les id@'ees de parler un peu. Je ferai installer un lit confortable dans ton atelier. Et si tu as besoin d'autre chose...~^^~Oui, je voudrais une chaine hi-fi super classe et tous les titres rock ind@'ependants et toutes les int@'egrales...^^~Oula...~^^~...toutes les int@'egrales de Radiohead et de PJ Harvey, et tous les lives...~^^~Hey, ca ira, non? Tu comptes pas rester dix mille ans ici non plus?~^^Vous @'eclatez de rire, tous les deux. "; attend(); print "^^Et donc vous vous @^etes mise @`a l'ouvrage. "; attend(); print "^^Vous travailliez la journ@'ee, @`a la lumi@`ere tranquille des chandelles de votre atelier, fredonnant les musiques que donnait la radio que vous avait tiss@'e Atropos, pench@'ee sur vos ouvrages.^Votre quotidien est vite devenu efficace et agr@'eable, une fois les bons gestes acquis ;^Selectionner une belle fleur, couper les fils, tisser.^Le soir, @`a la lumi@`ere d'une @'enorme lune qui @'eclairait un ciel brillamment @'etoil@'e, vous festoyiez aux cot@'es d'Atropos sur une longue table recouverte de nourritures d@'elicieuses, fumantes et savoureuses, @'eclair@'ee de flambeaux odorants, sous les platanes. Votre lit @'etait moelleux et d@'elicat, et les nuits aussi douces que les journ@'ees.^^Atropos parlait souvent de points techniques concernant ce que vous aviez tiss@'e, @`a mesure que le jardin mort laissait petit @`a petit place @`a un Eden multicolore : tant@^ot le fil utilis@'e l@`a @'etait trop court, tant@^ot, le coup d'aiguille n'avait pas @'et@'e assez vif...perfectionnant un art que vous aviez lentement appris par la pratique.^^"; attend(); print "Atropos @'evoquait souvent d'un ton las la relation entre Lachesis et Douglas par petites phrases qui vous laissaient sur votre faim : ~Ces deux l@`a sont des fr@`eres, vous y croyez? Quelle tristesse. ~ et puis il changeait de sujet, vous demandant, par exemple, selon quels fils vous tisseriez une de vos chansons pr@'ef@'er@'ees. "; attend(); print "Un soir, @'epuis@'ee d'avoir tiss@'e toute la journ@'ee, vous avez pris le morceau de fusain avec lequel vous notiez sur le mur votre progression et vous avez inscrit le milli@`eme petit trait.^^Et vous vous @^etes endormie sur votre lit la seconde qui suivit. "; attend(); move radio to study; move superlit to study; remove filblanc; remove filvert; remove filviolet; remove filbleu; remove filrouge; remove filjaune; plot_depth=plot_depth+1; move lachesis to sentierjardin; give lachesis ~scenery; PlayerTo(study); move sac to anti; ]; [FeuBrule; print "Vous passez l'aiguille au travers du tissu, et le fil orange y disparait.^^Une flamme vivace cr@'epite alors dans la chemin@'ee, et la buche de bois sec prend rapidement feu.^Dehors, le vent siffle et redouble de violence, mais dans votre abri maintenant chauff@'e, vous vous sentez plus prot@'eg@'ee que jamais.^^"; attend(); print "Ainsi vous vous installez, tranquille, sur le rocking chair, @`a la chaleur des flammes, tandis que vous faites s@'echer non loin votre manteau et votre chapka tremp@'es de neige et de glace. "; attend(); print "^^Vous sommeillez un peu dans le cr@'epitement des flammes et la musique de votre walkman qui passe ~frosty~ de Bjork. "; attend(); style underline; print "Evidemment, vous ne faites pas tout cela pour Jonas.^"; attend(); print "Il y a eu un d@'eclic, imperceptible, dans les rouages de votre destin@'ee et soudain tout a @'et@'e organis@'e pour que Douglas vous rencontre. Et une fois dans ces filets, tout le reste, c'est une bataille contre lui.^"; attend(); print "Ce triste individu tend la main pour vous soulager de maux qu'il provoque. Il y a un Douglas derri@`ere chacune de vos @'epreuves. Le froid, c'est lui.^"; attend(); print "Et rejoindre Jonas, c'est lui montrer que vous @^etes ma@^itresse de votre destin.^"; attend(); style roman; print "^Vous vous endormez, berc@'ee dans le rocking chair. Vous faites un r@^eve curieux et un peu oppressant, empli de chants de baleine, dans lequel vous suivez un guide sans visage dont vous savez qu'il vous conduit @`a votre perte.^^Vous vous reveillez longtemps apr@`es, dans une odeur de fum@'ee froide alors que les derniers morceaux de la buche se consument. Des rayons de soleil filtrent au travers des planches lat@'erales de la cabane.^^Il vous semble entendre trembler au dehors les rails. "; attend(); remove buche; remove neige; neige.tombing=1; StartDaemon(loco); plot_depth=plot_depth+1; loco.charbon=0; ]; [EchelleW; print "Vous descendez en tombant de l'@'echelle alors que le train s'engouffre dans le tunnel et qu'un bruit de tous les diables r@'esonne autour de vous.^^"; attend(); print "Tremblante de cette @'epreuve, @`a genoux, l'adr@'enaline vous tape sur les reins et vous enserre le coeur comme un @'etau.^Nom de nom, pensez vous avec col@`ere, marcher dans la neige, sauter sur le toit d'un train, se pr@'ecipiter ainsi et puis quoi encore ensuite? Expirant votre @'emotion reprenant votre calme, vous poussez la porte du wagon qui se referme en vous isolant dans une bulle de silence.^^"; attend(); remove toitwagon; print "Le wagon est compos@'e d'une vingtaine de si@`eges larges et confortables, tous vides. Vous en choisissez un pr@`es de la fen@^etre et vous @'evacuez vos derniers relents de stress.^Le train prend une acc@'eleration constante.^^Un couple entre alors par l'avant du wagon : lui, c'est un m@'editerran@'een aux yeux noirs et au nez fin et crochu, avec des cheveux fris@'e sous un petit chapeau gris, guitare @`a la main. Elle, c'est une tignasse brune sur un visage aux traits taill@'es, mais avec un beau sourire.^^"; attend(); print "~Mesdames et Messieurs bonjour - bon, il n'y a pas grand monde - un petit air pour la route. ~^^Il fait r@'esonner deux petits accords de guitares, et ils chantent de concert une chanson dont le refrain se termine par ~US go home !~, mais votre attention est vite d@'etourn@'ee alors que vous jetez un oeil par la fen@^etre, car ce que vous voyez alors vous coupe le souffle. "; attend(); print "^En effet le train progresse dans une caverne colossale creus@'ee dans la cha@^ine de montagne, mais une caverne fortement @'eclair@'ee, si grande que la roche semble une voute c@'eleste, une voute qui aurait pu sceller Paris. Au pied de cette voute, des milliers de tunnels s'ouvrent sur tout autant de voies qui se ramifient en aiguillages, jusqu'@`a ce que le sol tout entier de ce gigantesque lieu ne soit qu'un entrelacs de voies ferroviaires convergent vers le centre, sous le sommet de la vo@^ute.^^Un ballet incessant de trains s'organise ici, ils vont et viennent, se croisent et se positionnent, mais nombre d'entre eux semblent compl@`etement vides.^^Encore plus extraordinaire, vous voyez des baleines @'evoluer contre le plafond de la vo@^ute en silence, dans l'espace, battant de leurs grandes queues une eau invisible, en troupeau ou bien plus seules. "; attend(); print "^^Stup@'efaite, vous n'avez m@^eme pas remarqu@'e que le couple avait fini sa chanson, et @'etait pass@'e dans un autre compartiment. Dommage, vous leur auriez bien laiss@'e une pi@`ece.^^Apr@'es quelques minutes, le train ralentit doucement et finit par stopper. "; attend(); PlayerTo(trainstop); plot_depth=plot_depth+1; lift.monting=10; ]; [BilletGare; print "^Le gros bonhomme dont vous avez auparavant crois@'e le chemin ouvre des yeux tous ronds en voyant que vous d@'etenez un billet, le laissant balbutiant : ~Mais...mais...~^^~A-ha !~s'exclame l'employ@'e de la gare en saisissant le billet,~voil@`a quelque chose de concret. Vol 968...(il consulte un registre) voui...il y a une correspondance ferroviaire...~^^~Une correspondance ferroviaire?~ s'enquiert le gros type.^L'employ@'e prend des notes, se retourne, et d@'ecroche un t@'el@'ephone :"; attend(); print " ~Allo oui, j'ai ici une personne qui cherche @`a emprunter la correspondance du vol 968...oui, il me semble...oui, un instant, (se retournant vers vous :) votre pr@'enom mademoiselle?~^~Margot~^~Demandez s'il y a pour Maikal, aussi, demande le gros type, demandez !~^^L'employ@'e hausse les @'epaules et r@'ep@'ete votre nom, @`a la plus grande indignation de Maikal. Il raccroche et vous d@'eclare en contournant le comptoir : ~Vous arrivez @`a point, comme il est toujours le cas ici. Votre train part incessamment...Non, pas vous, Monsieur. ~^~Mais...j'avais le m@^eme avion que cette fille ! ~^~Vous n'avez pas de billet, je ne peux rien garantir de ce qu'il peut vous arriver.~^~C'est un SCANDALE !~^L'employe entre dans l'ascenseur et vous invite @`a le suivre, puis ajoute enfin :~Mais de toute fa@@con, Monsieur, vous @^etes libre de prendre le train de votre choix. Si votre r@'ealit@'e de destination ne vous convient pas, ou alors est d@'ej@`a occup@'ee par un autre vous-m@^eme, vous ne viendrez pas vous plaindre !~^^Maikal semble prendre son mal en patience et se renfrogne. "; remove employe; remove billet; move employe2 to lift; employe2.talked=0; plot_depth=plot_depth+1; ]; [EmployeBrule; print "Vous plantez votre aiguille dans le mouchoir et la combinaison orange de l'homme s'enflamme d'un coup. Poussant des cris de rage, il s'en s@'epare rapidement, mais un cr@'epitement plus fort se fait @'egalement sentir, et un instant, l'on peut voir un filament orange se tortiller autour du cou de l'homme et mourir dans la chaleur.^^"; attend(); print "L'homme pi@'etine la combinaison br@^ulante et @'eteint le feu en quelques secondes. Puis il l@`eve sur vous des yeux pleins de gratitude et tombe @`a genoux :^~Mon Dieu, mademoiselle, j'allais vous trahir, pardonnez moi.~ "; attend(); print "^^~Mais vous venez de me lib@'erer, mademoiselle, et je vous dois tout. Les filaments oranges, ce ne sont pas des filaments, mais des cha@^ines, des cha@^ines ! plus solides que l'acier qui emprisonnent sa volont@'e dans la v@^otre. La vie @'eternelle, certes, les mondes et leurs r@'ealit@'es, certes, mais les cha@^ines ! Mademoiselle, vous @^etes mon sauveur et je vous dois tout. ~^^"; attend(); print "~J'allais vous trahir. En bas vont arriver des dizaines d'agents de Clothos - nous allons descendre quand m@^eme, et vous allez vous cacher, compris? Quand ils seront partis, venez me rejoindre et je vous conduirais @`a votre train, le vrai train, ne vous inquietez pas. Et puis je prendrais le mien - en fait n'importe lequel, celui qui m'emmenera plus loin de Douglas qu'ailleurs. ~^^Vous prenez enfin la parole devant ce d@'eluge d'@'emotions et vous dites :^~Alors ne prenez pas de train et allez vers le Sud, dans la biblioth@`eque d'Atropos. Vous trouverez un homme @'etrange, avec un masque, qui s'appelle Lachesis et qui est l'ennemi de Douglas. Il vous aidera.~^^~Vous @^etes mon sauveur. ~ "; attend(); print "^Il se tourne vers un mur et actionne une partie secr@`ete de l'ascenseur. Vous descendez @`a toute vitesse et vous vous retrouvez bient@^ot sur les quais.^^~Vite, cachez vous !~ vous crie-t-il en courant sur les quais pour interceptez vos poursuivants. "; remove roi; move lift to quais; lift.monting=10; lift.descending=0; plot_depth=plot_depth+1; remove employe2; PlayerTo(quais); ]; [Depart; print "Votre ami l'employe revient rapidement, suivi d'une dizaine d'ombres silencieuses, hommes en noir uniformes et sans pr@'esence. Il leur montre le haut de la vo@^ute :^~Elle est l@`a haut, messieurs. Elle ne peut plus s'enfuir. ~^Les ombres hochent la t@^ete et s'installent dans l'ascenseur, qui s'@'eleve doucement.^^Vous sortez rapidement de votre cachette et rejoignez l'employe. ";attend();print "^^Vous prenant la main, il vous guide sans un mot dans le d@'edale de quais, puis vous invite @`a monter dans le dernier wagon d'un train compos@'e de trois, @`a la locomotive profil@'ee qui tr@'epigne d@'ej@`a de puissance contenue.^^~Nous nous s@'eparons ici, mademoiselle. Je ne vous oublierais pas. ~^~N'oubliez pas Lachesis, surtout.~ lui glissez vous avant d'agiter la main en adieu alors que le train s'@'eloigne en sifflant.^Il reste sur le quai en vous souhaitant au revoir de la main, puis se retourne rapidement.^^De votre cot@'e, vous rentrez dans le train. "; attend(); style underline; print "^^Enfin sur le chemin du retour, pour de bon. "; style roman; attend(); print "Vous vous installez tranquillement dans un des sieges du wagon, un wagon plus simple, avec de plus petits si@`eges, plus proches des trains que vous avez toujours connu, un peu comme un T.E.R. moderne.^Une fois de plus, il n'y a pas @^ame qui vive dans le train. "; attend(); print "^^Le train passe dans un des tunnels de la vo@^ute, et les veilleuses se mettent en marche. Un sentiment longtemps oubli@'e de s@'ecurit@'e et de bien @^etre vous saisit. ^^"; attend(); print "Un vagabond ouvre la porte et passe de fauteuil en fauteuil, soliloquant un @'etrange r@'ecit : ~Ma famille est venue de Roumanie en 1920, et d@'ej@`a, les bolcheviques ainsi que leurs complices les socialistes, ont tout fait pour nous nuire. D'abord @`a la maternelle, o@`u l'on me rouait de coups, puis plus tard, avec des gaz invisibles qui m'ont fait perdre toutes mes dents - et mon travail. Et si je passe aujourd'hui parmi vous mesdames et messieurs c'est pour vous pr@'evenir de la menace que font peser sur vous et vos enfants les bolcheviques et leurs complices les socialistes.~ "; attend(); print "^^Il quitte aussit@^ot votre wagon et vous pensez que les voies entre les r@'ealit@'es sont parcourru par des @'egar@'es qui ont perdu la raison.^^Mais une voix terrible, qui fait chavirer votre coeur, retentit calmement tout @`a cot@'e de vous :^^~Pas seulement des @'egar@'es, apparemment. Des fugitifs et des voleurs. ~^^Vous vous levez d'un bond de terreur, et vous voyez Douglas, seul, au fond du wagon. "; attend(); print "^De sa voix suave il poursuit : ~Vous comprenez maintenant que je ne suis pas de ceux qui l@^achent prise. En fait...plus vous avez r@'esist@'e, plus m'avez convaincu qu'@`a tout prix, vous deviez rejoindre mes rangs. Venez avec moi...~^^Il vous tend la main. "; move clothosfinal to wagon3; move roi to wagon1; various=0; StartDaemon(clothosfinal); PlayerTo(wagon3); ]; [Fight; print "D'un grand bond vous sautez sur le toit du deuxi@`eme wagon, mais vous vous receptionnez mal et vous tombez @`a la renverse en vous faisant tr@'es mal @`a la cheville.^^Vous vous agenouillez @`a demi, la vision brouill@'ee par la pluie, pour voir une ombre s'approcher r@'egulierement de vous. "; attend(); print "Douglas est sur le bord du wagon, et il vous crie dans la temp@^ete : ~J'esp@`ere que vous comprenez dans quelle extr@`emit@'e vous vous retrouvez, demoiselle !~^^~Je sais qui vous @^etes, sale type ! Lachesis m'a tout dit !~ "; attend(); print "Douglas s'approche encore de vous et une moue de col@`ere extr@^eme d@'efigure son visage illumin@'e par la myriade d'@'eclairs. On dirait qu'il se retient d'@'eclater, de vous jeter dans le vide, ou de vous frapper.^^~Je ne connais pas de Lachesis.~^^~Ton fr@`ere !~^^~Mon fr@`ere. Ha ha ! Mon fr@`ere ! NON ! Lachesis n'est pas mon fr@`ere !~^^Et comme si les @'el@`ements ponctuaient la passion de Douglas, le tonnerre et les @'eclairs secouent le convoi comme jamais. "; attend(); print "^^~Petite, tu fais confiance aux types qui portent des masques?~^~Clothos - tu t'appelles Clothos. ~^^~Soit, tel est mon nom. J'esp@`ere que ces minables tisserands de bas @'etage ne t'ont pas mis en t@^ete des choses d@'eplaisantes. Car il ne sont rien. ~^^~Atropos et Lachesis...~^"; attend(); print "~SILENCE !~ hurle Douglas @`a pleins poumons, couvrant les @'el@`ements en furie. ~Ne prononce plus ce nom devant moi ! Puisque tu veux tout savoir, petite @'ecervel@'ee, puisque le grand Lachesis est devenu ton Dieu, sache ceci, sache qu'autrefois Lachesis @'etait oui, mon fr@`ere, mais plus que cela, un homme aux yeux clairs, et si aujourd'hui il porte un masque, c'est parce qu'il n'est plus qu'une boule de n@'eant, un rien soutenu par des tissus et des masques, car il s'est oppos@'e @`a moi, @`a ma vision moderne, @`a mon architecture de la r@'ealit@'e ! Et aujourd'hui il se terre, le mis@'erable, dans sa belle biblioth@`eque, HA ! Mais il ne peut rien. Il tisse, voyez vous? Et il tisse quoi, des fleurs? Moi, sans ces vulgaires aiguilles et ces dispositifs grossiers, les @'el@'ements sont @`a ma merci, car je fa@@conne l'univers, l'univers et les AMES !~^^Et pour mieux ponctuer son terrible monologue et son ultime argument, il l@`eve les bras vers le ciel de n@'eant et un @'eclair vient frapper l'espace entre vous et lui, vous projetant encore en arri@`ere.^^"; attend(); print "Vous glissez malgr@'e vous, vous glissez hors du train, abasourdie et perdue, vous raccrochant au dernier moment @`a la rembarde du toit, les pieds dans le vide hurlant. "; StopDaemon(clothosfinal); remove clothosfinal; direc=0; move clothostoit to toit2; PlayerTo(toit2); plot_depth++; ]; [HappyEnd; plot_depth++; if (ratp>44) {plot_depth++;} print "^^A l'aide de la branche de laurier, vous poussez le levier, qui se d@'ebloque, lib@'erant le m@'ecanisme. "; attend(); print "^^Le wagon en feu s'@'eloigne de quelques centim@`etres...et la porte s'ouvre une derni@`ere fois, laissant apparaitre sur le seuil la silhouette enflamm@'ee de votre @'eternelle n@'em@'esis.^^Douglas, dans les flammes, la chair carbonis@'ee, @'etend une main crochue vers vous de laquelle s'@'echappent des dizaines de petits filaments oranges qui meurent instantan@'ement dans les propres flammes de leur cr@'eateur.^^"; attend(); print "La temp@^ete rugit plus fort que jamais, mais, accroch@'ee @`a la porte du wagon, vous ne d@'etachez pas vos yeux de ceux de Douglas, r@'eduit @`a presque rien, et sur le point de s'@'echouer @`a jamais, comme son fr@`ere, dans le n@'eant d'entre les r@'ealit@'es.^^Le wagon se consume enti@`erement @`a mesure qu'il prend de la distance, la charpente m@'etallique c@'edant sous son propre poids fondu, et le Diable disparait au travers de la pluie, dans les flammes, ses deux yeux noirs de haine braqu@'es @`a jamais sur vous. "; attend(); print "^^Vous rentrez dans le wagon, les jambes chancelantes... "; attend(); print "^Le vagabond se dresse sur son si@`ege : ~Hey, on arrive bient@^ot tu penses?~^^Vous ne le savez pas, mais vous le sentez.^Le tumulte sourd de l'orage s'est soudainement tu, comme pour c@'el@`ebrer le deuil des fr@`ere mythiques. De petites gouttes tombent sur les vitres, et le paysage se compose brutalement, comme une mosaique r@'evel@`ee : des immeubles, des tours, des maisons, des arbres...des nuages et m@^eme un cr@'epuscule avanc@'e prend doucement la place du n@'eant.^^~Hey Mademoiselle, ca vous dirait d'@^etre ministre sous ma pr@'esidence? Z'avez l'air d'@^etre courageuse...~^^Vous souriez et lui r@'epondez en lui tapant sur l'@'epaule : ~Non, mon gars : je ne travaille pour personne. ~^^Vous ouvrez la fen@^etre alors que le train ralentit pour go@^uter l'air tiede du soir d'@et@'e. "; attend(); print "A t@^atons, vous enclenchez votre walkman. Vous reconnaissez les alentours. Tout est si paisible. "; attend(); print "^^C'est la gare d'Austerlitz. Non loin, vous devinez les hauts arbres du jardin des plantes. Sur le quai, vous pouvez m@^eme voir la silhouette d@'eguingand@'ee de votre Loser d'ami, ondulant sur sa musique, et pour lequel vous avez travers@'e tant d'@'epreuves. Qu'est ce qu'il a l'air idiot. "; attend(); print "^Le train ralentit encore et longe le quai d'arriv@'ee. Tout est si tranquille que chaque soupir est une gorg@'ee de bonheur. La vie est vraiment belle. "; attend(); @erase_window -1; style underline; print "^^^^^^Birds flying high you know how I feel"; attend();print "^Sun in the sky you know how I feel "; attend();print "^Reeds driftin' on by you know how I feel"; attend();print "^^It's a new dawn "; attend();print "^It's a new day "; attend();print "^It's a new life"; attend();print "^For me "; attend();print "^And I'm feeling good "; attend();print "^^Fish in the sea you know how I feel "; attend();print "^River running free you know how I feel "; attend();print "^Blossom in the tree you know how I feel "; attend();print "^^It's a new dawn "; attend();print "^It's a new day "; attend();print "^It's a new life"; attend();print "^For me "; attend();print "^And I'm feeling good "; attend();print "^^Dragonfly out in the sun you know what I mean, don't you know "; attend();print "^Butterflies all havin' fun you know what I mean "; attend();print "^Sleep in peace when day is done "; attend();print "^And this old world is a new world "; attend();print "^And a bold world "; attend();print "^For me "; attend();print "^^Stars when you shine you know how I feel "; attend();print "^Scent of the pine you know how I feel "; attend();print "^Oh freedom is mine "; attend();print "^And I know how I feel"; attend();print "^^It's a new dawn "; attend();print "^It's a new day "; attend();print "^It's a new life"; attend();print "^For me "; attend();print "^And I'm feeling good "; attend(); @erase_window -1; print "^^^^~Hey Loser.~^^";attend(); print " ~Oua, Margot, qu'est-ce tu fais dans ce train?~ ";attend(); print "^^~Et toi, tu fais quoi @`a Austerlitz, on peut savoir?~ ";attend(); print "^^ ~Ben, je me balade. ~ ";attend(); print "^^~Super Classe la balade. ~ ";attend(); print "^^ ~Yo, charrie pas, hein. J'ai eu une journ@'ee difficile.~ ";attend(); print "^^~Ah, vraiment?~^^";attend();style roman; print "^^^^^"; print " FIN";style underline; print " (le reste de l'histoire vous appartient)";style roman; print "^^^^^^^Ce jeu est sp@'ecialement d@'edi@'e @`a l'attention de tous mes amis et tr@'es sp@'ecialement pour Pauline, mon amour. "; Fin(99); ]; [PointsSub i; style underline; print "Vous avez compl@'et@'e "; i=(plot_depth*100/61); print i; print "% du jeu.^"; if (i>99 && ratp>44) {print "^^Toutes nos f@'elicitations.^^Nous esp@'erons que vous avez pass@'e un bon moment avec Margot et Jonas.^";} else if (i>99) {print "^^Toutes nos f@'elicitations.^^N@'eanmoins, vous @^etes pass@'e @`a cot@'e du dernier point @`a gagner du jeu. Consultez la documentation pour plus d'informations ;-) ";} style roman; ]; [Fin i; if (i==1) {print "Vous sortez du Syndicat des Epiciers. Ces types @'etaient vraiment trop bizzares.^^Tant pis, pas de CD de Dan The Automator. Vous trouverez bien autre chose qui conviendra. C'est ce dont vous convenez, du moins, avec Loser, avant de vous quitter dans la nuit tombante, qui semble vous nimber d'oubli. "; attend(); print "^^Les jours ont pass@'e... "; attend(); print "^^La soir@'ee chez C@'ecile a bien eu lieu. Et vous @'etiez pr@'esente. Mais rien de particulier ne s'y est pass@'e. "; attend(); print "^^Le reste de l'histoire vous appartient. "; attend(); @erase_window -1; style underline; print "^^^~Regarde, Lachesis. Tu as vu ce petit fil noir? Il s'@'ecarte de la trame, ce n'@'etait pas pr@'evu. Nous ne la rencontrerons pas, je pense.~^^~Nous comptions sur elle, c'est dommage.~^^~C'est ce qu'a du se dire ton cher fr@`ere. Et en ceci, cela vaut mieux pour elle.~ ";} if (i==2) {print "^^L'histoire ne retiendra ni le nom de cet homme, ni votre idylle. "; attend(); print "^^Mais cela ne veut pas dire que vous n'avez pas v@'ecu heureux ensemble pour autant, et pour longtemps. "; attend(); print "^^Le reste de l'histoire vous appartient. "; attend(); @erase_window -1; style underline; print "^^^~Regarde, Lachesis. Tu as vu ce petit fil noir? Il s'@'ecarte de la trame, ce n'@'etait pas pr@'evu. Nous ne la rencontrerons pas, je pense.~^^~Nous comptions sur elle, c'est dommage.~^^~C'est ce qu'a du se dire ton cher fr@`ere. Et en ceci, cela vaut mieux pour elle.~ ";} if (i==3) {print "^^Et vous sombrez dans le n@'eant. "; attend(); print "^^L'histoire n'en dit pas plus sur le devenir de Margot et de Jonas. "; attend(); print "^^Leurs proches ne les ont jamais revus. "; attend(); print "^^Il parait cependant qu'ils ont r@'eussi une sorte d'examen d'entr@'ee. "; attend(); print "^^A l'heure qu'il est, ils doivent certainement exercer un travail des plus interressants. "; attend(); @erase_window -1; style underline; print "^^^~Quel dommage, Atropos. Regarde ce fil noir qui s'@'echappe de notre tenture. Que de peine je ressens.~^^~Ton fr@`ere a mis en oeuvre des moyens que nous n'avons pas. Des moyens qui sont ses ambitions, et les uns sont les cha@^ines de l'autre. Tous les jours nous y avons travaill@'e.~^^~En vain. Je croyais en ce motif. J'avais des plans pour elle.~^^~Prends garde de ne pas raisonner comme ton fr@`ere. Les motifs et les fils ne sont pas des outils, nous sommes les outils destin@'es @`a l'harmonie de l'ensemble.~ ";} if (i==4) {print "^^Vous toisez d'un long regard Douglas et vous poussez la porte de votre chez vous. L'homme v@^etu de noir ne d@'etache pas son regard intense de chacun de vos gestes, et une fois que vous avez repouss@'e la porte sur lui, vous le devinez encore immobile @`a attendre votre retour.^^Mais vous ne reviendrez pas vers lui. "; attend(); print "^^Vous n'entendrez plus jamais parler de lui. "; attend(); print "^^Xavier n'est pas rest@'e amoureux longtemps de vous. Votre rupture a @'et@'e prompte et bilat@'erale, comme si vous @'emergiez tous deux d'un r@^eve anormal. "; attend(); print "^^Vous avez longtemps v@'ecu par la suite tr@'es heureuse, et sans histoire d'amour. "; attend(); print "^^Le reste de l'histoire vous appartient. "; attend(); @erase_window -1; style underline; print "^^^^~Encore sur ce fil noir, Lachesis?~^^~Il l'a approch@'e par deux fois, p@`ere. Mais regardez...il s'@'evade, il @'echappe @`a son emprise.~^^~Tout va pour le mieux, alors.~^^~Je ne me satisferais pas de si peu. Le motif n'est pas beau ainsi.~^^~Mais si tu le modifiais, il perdrait en v@'erit@'e ce qu'il gagnerait en beaut@'e.^^Et n'oublie jamais : le bonheur est important, mais la v@'erit@'e, la v@'erit@'e est belle !~ ";} if (i==5) {print "^^Et vous sombrez dans le n@'eant. "; attend(); print "^^L'histoire n'en dit pas plus sur le devenir de Margot. "; attend(); print "^^Ses proches ne l'ont jamais revue. "; attend(); print "^^Il parait cependant qu'ils a r@'eussi une sorte d'examen d'entr@'ee. "; attend(); print "^^A l'heure qu'il est, elle doit certainement exercer un travail des plus interressants. "; attend(); @erase_window -1; style underline; print "^^^~Quel dommage, Atropos. Regarde ce fil noir qui s'@'echappe de notre tenture. Que de peine je ressens.~^^~Ton fr@`ere a mis en oeuvre des moyens que nous n'avons pas. Des moyens qui sont ses ambitions, et les uns sont les cha@^ines de l'autre. Tous les jours nous y avons travaill@'e.~^^~En vain. Je croyais en ce motif. J'avais des plans pour elle.~^^~Prends garde de ne pas raisonner comme ton fr@`ere. Les motifs et les fils ne sont pas des outils, nous sommes les outils destin@'es @`a l'harmonie de l'ensemble.~ ";} if (i==6) {print "^^Et vous sombrez toute enti@`ere dans le n@'eant de l'horrible cr@'eature. "; attend(); print "^^Personne ne vous retrouvera jamais, vivante ou morte. "; attend(); print "^^Et peu sauront ce qu'il vous est v@'eritablement arriv@'e. "; attend(); @erase_window -1; style underline; print "^^^~Le fil vient de se rompre, P@`ere.~^^~C'@'etait impr@'evu?~^^~Pr@'evisible. Mais...nullement esp@`er@'e.~^^~L'espoir est une notion amusante...et exotique quand @'evoqu@'e par des gens comme nous. Allez. Oublie ce fil. Nous ne sommes pas responsables.~^^~Mon fr@`ere l'a approch@'ee. A partir de l@`a, notre responsabilit@'e rentre en jeu.~^^~Et bien, c'est trop tard.~ ";} if (i==7) {print "^^Mais vous n'aurez jamais la r@'eponse. "; attend(); print "^^Les neiges glaciales de ce pays inconnu seront votre linceuil. "; attend(); print "^^Et peu sauront ce qu'il vous est v@'eritablement arriv@'e. "; attend(); @erase_window -1; style underline; print "^^"; } print "^^"; print "-------------------^"; ; print "-------------------"; deadflag=true; ]; ! ---------------------------------------------------------------------------- ! Dialogues ! ---------------------------------------------------------------------------- [DialogueLachesis; if (plot_depth==53) { print "Lachesis porte @`a bout de bras un grand sac @`a dos de marche.^Il vous donne l'autre bras que vous passez sous le v@^otre, et vous avancez lentement vers le nord.^^A son approche, les arbres et les haies se plient et se rel@`event, comme si elles @'etaient vivantes, am@'enageant un passage suffisamment large pour marcher @`a deux de front.^^La pr@'esence de Lachesis @`a vos cot@'es est rassurante.^Son visage, imp@'enetrable, est invariablement fix@'e devant lui.^^Vous arrivez de l'autre cot@'e, sur une immense @'etendue d'herbe courte, un peu vallonn@'ee. Le vent l@'eger et doux fait voler la cape de votre protecteur, et dessine sur les collines herbues des vagues invisibles et immenses.^^Derri@`ere vous, la biblioth@`eque gigantesque se rapetisse pour disparaitre enfin, minuscule @'echarde derri@`ere une colline. Le terrain ici se fait plus plat, plus dur, et plus sec, et l'air plus froid. L'herbe grasse est un peu jaunie.^^Lachesis laisse tomber son grand sac @`a terre, pr@`es de la fin d'une ligne de chemin de fer.^^Le temps que sa cape ondule sous un bref coup de vent frais, il vous fixe de nouveau, puis s'agenouille devant vous. Il est si grand que m@^eme @`a genoux il vous arrive presque @`a l'@'epaule.^^"; attend(); style underline; print "Je vais te laisser ici. "; attend(); print "^Dans le sac, tu trouveras ton billet - et de quoi te tenir chaud. Tu en auras besoin, car ta route, maintenant, va vers le nord, et vers le froid. Suis ce chemin de fer sans t'en @'eloigner, m@^eme de quelques pas. Tu arriveras sur une gare dans laquelle tu pourras changer ton billet d'avion pour un billet de train, de m@^eme destination. "; attend(); print "^^Sois prudente. Je n'ai pas les mots et l'@'emotion d'Atropos, mais tu m'es ch@`ere, et je regretterais de te perdre. "; attend(); style roman; print "^^Il se rel@`eve et vous regarde encore. Sa voix douce et chaude vibre encore dans votre esprit : "; style underline; print "^^J'ai connu Douglas sous un autre nom et ce nom @'etait Clothos. Mais il a d'autres noms encore, les noms qu'on donne @`a celui qui survient de nulle part et propose pactes et contrats @`a ceux qui d@'esirent les choses qu'ils ne peuvent s'approprier. Il les choisit - et il t'a choisi. Sois prudente, Margot, car m@^eme si aux instances sup@'erieures tu ne lui es plus en rien redevable, il n'est pas homme @`a abandonner ce qu'il croit lui revenir de plein droit. "; attend(); print "^^C'est un homme maladroit, sensible aux illusions. Cela ne veut pas dire que je lui pardonne en rien ce dont il est responsable. "; attend(); style roman; print "^^~Atropos m'a dit que vous lisiez dans l'avenir. Vous avez vu qu'il reviendrait me chercher?~ "; style underline; print "^^Clothos, h@'elas, n'est pas de ceux dont la Grande Tapisserie peut nous conter le devenir. Je sais qu'il reviendra parce que je le connais.^^Parce que c'est mon fr@`ere. "; style roman; print "^^Lachesis vous pose la main sur l'@'epaule et s'@'eloigne d'un pas r@'egulier et lent.^^~Adieu, Lachesis !~ criez vous dans le vent. Mais l'homme sans visage ne se retournera pas. "; move sacados to endvoie; move psable to sacados; move billet to sacados; plot_depth=plot_depth+1; remove lachesis; PlayerTo(endvoie); } else if (plot_depth==52) {style underline;print "^^Va faire tes adieux @`a Atropos. Vite. ";style roman;} else if (plot_depth==51) {print "Vous interpellez Lachesis, immobile comme une statue dans ce jardin d'Eden :^~Alors mon vieux, je t'@'epate grave, pas vrai?~^Lachesis ne r@'epond pas, et, @'etendant la main, vous invite @`a vous promener @`a ses cot@'es dans votre cr@'eation. "; attend(); print "^^Il s'arr@^ete dans un carr@'e de coquelicots et s'accroupit pour en carresser un. Vous froncez des sourcils : vous n'avez pas, vous-semble-t-il, tiss@'e de coquelicots, et encore moins autant que cela !^Comme s'il avait compris votre interrogation, Lachesis saisit votre main et montre de son index gant@'e une petite blessure que vous vous @'etiez inflig@'e @`a vos premiers essais : l'aiguille avait tir@'e de votre index une goutte de sang qui avait @'et@'e absorb@'ee par votre @'etoffe. "; attend(); style underline; print "^^Le sang, c'est l'@^ame. Atropos voit en toi un fil noir, mais regarde : ce sont des fleurs que ton sang tisse. "; style roman; attend(); print "^^Il se rel@`eve et plonge son regard peint dans le v@^otre, sondant votre @^ame d'une pr@'esence chaleureuse. Il reprend sa marche, carressant les fleurs et soulevant les branches basses des hauts buissons color@'es. "; style underline; print "^^F@'elicitations, Margot. C'est un magnifique jardin dans lequel j'aurais grand plaisir, @`a toute occasion, de profiter de ton souvenir. Tu t'es acquitt@'e de la t@^ache que je t'avais confi@'ee. Avant de te rendre le billet, et de t'indiquer ta nouvelle route, certaines choses doivent @^etre dites.^^Ce n'est pas par lubie arbitraire que je t'ai demand@'e ce long et p@'enible labeur.^Vois-tu, en volant ce billet artis@'e par Douglas, et, plus grave, en en faisant usage, tu as contract@'e aupr@`es de lui une dette inquantifiable, et ce dont tu lui est redevable, il te poursuivra pour te le faire payer jusqu'au dernier instant.^^En t'obligeant @`a me payer par le travail, ton travail de cr@'eation, une chose qui ne m'appartenait pas, j'ai rachet@'e cette dette, t'en lib@'erant par la m@^eme occasion. "; attend(); style roman; print "^^~Mais,~ demandez vous, ~c'est @`a Douglas que je dois quelque chose. ~ "; style underline; print "^^Certes, mais aux yeux des instances qui jugeront des d@'ebiteurs et des cr@'editeurs, Douglas et moi repr@'esentons la m@^eme entit@'e.^^Peu importe.^^Margot, va faire tes adieux @`a Atropos et reviens me voir. Il faut te mettre en route sans attendre. "; style roman; plot_depth=plot_depth+1; } else { if (ratp==45) { print "~Mais ca sert @`a quoi tout ce fatras? ~ "; print "^^Lachesis reste immobile et silencieux.^>"; attend(); style underline; print "^^Attends. "; style roman; print "^^Vous vous avancez, surprise. Lachesis vient de d@'ecroiser les jambes, et il descend de son piedestal.^Debout, il est si grand que vous lui arrivez @`a peine au torse. Il pose longuement ses yeux inexpressifs sur vous, puis se retourne vers le mur oppos@'e @`a la porte, sur lequel s'ouvre une porte secrete. "; style underline; print "^^Suis moi. "; style roman; print "^^Et vous le suivez, traversant le passage secret, et vous arrivez dans un lieu dantesque et encore plus inimaginable que l'immense biblioth@`eque. "; attend(); print "^^Vous vous tenez debout avec Lachesis devant un pr@'ecipice infini, toujours abrit@'ee sous le d@^ome cristallin. Devant vous, @`a des distances qu'il est malais@'e d'@'evaluer car tout est si grand, pend dans cet infini une tapisserie gigantesque compos@'ee de milliards et de milliards de motifs tous diff@'erents.^Des millions d'aiguilles, de navettes, de m@'etiers @`a tisser mobiles passent et repassent comme des ouvriers affair@'es, changeant les motifs sans interruption. ^Lachesis avance sa main vers vous et d@'epose un peu de sable dans vos yeux. La tenture devient vivante, brillante, et s'@'etend alors dans des dimensions nouvelles, autres que celles donn@'ees par votre perception visuelle.^^La t@^ete qui tourne, il vous semble percevoir un instant, le coeur battant @`a tout rompre, un m@'etier @`a tisser grand comme...comme un soleil.^^Lachesis tourne la t@^ete vers vous et vous rattrape alors que vos jambes vous @'echappent. Vous entendez sa voix, douce et calme, et grave. "; attend(); style underline; print "^^Ce m@`etier @`a tisser est un principe de vie qui est l'oeuvre d'Atropos, Atropos l'ancien, le P@`ere. Et nous instrumentons la r@'ealit@'e @`a travers lui.^^Celui que vous appelez Douglas en @'etait le Gardien, tout comme je le suis maintenant. Il a depuis trouv@'e...son propre principe de vie, et, h@'elas, sa propre fa@@con d'artiser la r@'ealit@'e...^^Gr@^ace @`a l'astuce d'Atropos, il nous est ais@'e de trouver quel est le meilleur destin de chacun pour l'harmonie globale de la r@'ealit@'e. Il nous faut trouver les plus beaux motifs, et les assembler, voil@`a tout.^^Les r@'ealit@'es sont multiples, mais l'@^ame, Margot, l'@^ame est unique.^^Ce que vous contemplez, si vous n'aviez pas la protection du sable, vous ferait perdre la raison car vous assimileriez l'existence de milliers d'@^ames malgr@'e vous.^^Il arrive parfois que de pauvres vagabonds errants soient pris malgr@'e eux dans nos transports sp@'eciaux entre les r@'ealit@'es et parviennent jusqu'ici. Il arrive m@^eme qu'ils contemplent cette tenture. Ils deviennent alors fous et repartent d'o@`u ils viennent pour errer le restant de leur vie.^^Vous savez tout, maintenant.^^Je vous laisse @`a votre qu@^ete. "; style roman; print "^^Il revient dans l'alcove et la porte se referme sur le mur. Le temps de vous debarrasser du sable dans vos yeux, Lachesis a repris sa position de statue.^^"; } else { print "^"; switch(ratp) { 0 : print "~AHEM~ "; 1 : print "~Allez sois cool, rends moi mon billet. ~ "; 2 : print "~Hey Monsieur Masque. Il me semble que je t'ai demand@'e quelque chose. ~ "; 3 : print "~C'est malpoli d'ignorer les gens comme cela. ~ "; 4 : print "~Tr@'es malpoli. ~ "; 5 : print "~Pfff je m'ennuie @`a mort. Y a un caf@'e pas loin? ~ "; 6 : print "~Tu sais jouer au babyfoot? Tu devrais. C'est cool. ~ "; 7 : print "~Jolie Cape. ~ "; 8 : print "~C'est pour la pluie, la cape? Ou alors t'es fan de Batman? ~ "; 9 : print "~En fait, c'est ultra ringard la cape. J'osais pas te le dire. ~ "; 10 : print "~Sap@'e comme @@ca, tu te choperais la grosse te-hon si t'@'etais @`a Paris. ~ "; 11 : print "~Tu connais M.A.S.K. ? T'es fan? ~ "; 12 : print "~Tu peux peut @^etre pas parler? Essaie de bouger un doigt pour me dire que tu m'entends !~ "; 13 : print "~J'ai visit@'e les alentours. On peut pas dire que c'est la jungle urbaine. ~ "; 14 : print "~Pas mal la biblioth@`eque. Chuis presque @'epat@'ee. ~ "; 15 : print "~Tu boudes peut @^etre? Bon allez, je retire. T'es pas un faux-jeton. Mais tu m'as bien arnaqu@'ee. ~ "; 16 : print "~Lachesis, ca fait un peu nana comme nom, pas vrai? ~ "; 17 : print "~Avec un nom pareil, ca a pas du @^etre facile tous les jours dans la cour de r@'ecr@'e. ~ "; 18 : print "~Si tu tiens tellement @`a porter un masque, tu devrais en prendre un plus sympa. ~ "; 19 : print "~Je pige que dalle @`a ce que je dois faire. Donne moi un indice. ~ "; 20 : print "~C'est la loi du silence ici ou quoi? ~ "; 21 : print "~Si tu ne dis rien, je pleure. ~ "; 22 : print "~Si tu ne dis rien, je mets le feu partout. ~ "; 23 : print "~Si tu ne dis rien, je te maudirais. ~ "; 24 : print "~Okayyy. T'as gagn@'e. T'es le plus fort. Et j'ai perdu. Tu r@'eponds maintenant?~ "; 25 : print "~J'ai connu un rocher qui parlait plus que toi, mec. ~ "; 26 : print "~A ce stade, m@^eme un mouvement de t@^ete me satisferait, tu sais. ~ "; 27 : print "~Grace @`a toi, j'ai l'impression que ma vie est encore plus inutile qu'avant. ~ "; 28 : print "~The Mask, il est plus cool que toi. ~ "; 29 : print "~Bon, si j'ai bien compris, votre trip @`a vous c'est la couture, c'est @@ca? ~ "; 30 : print "~Et moi qui pensais que Paco Rabanne travaillait de la cafeti@`ere. ~ "; 31 : print "~T'as d@'ej@`a caus@'e avec un palmier nain? Parce que c'est ce que je suis en train de vivre, l@`a. ~ "; 32 : print "~Hey MisterMask, t'es plut@^ot SM, c'est ca? ~ "; 33 : print "~L@`a chuis vachement calme, mais vous @^etes vraiment une bande de chtarb@'es. ~ "; 34 : print "~Comment tu fais pour parler dans ma t@^ete? C'est un truc de magicien? ~ "; 35 : print "~T'as d@'ej@`a fait du catch? T'as un style, tu sais. ~ "; 36 : print "~T'en penses quoi de Douglas? Pas cool, ce type, pas vrai. Moi il me fout les jetons. ~ "; 37 : print "~Et si je m'installais l@`a jusqu@`a la fin de mes jours? C'est plut@^ot sympa. Il faut te nourrir ou un peu d'eau suffit? ~ "; 38 : print "~J'ai vraiment l'impression de parler @`a Lassie. Lassie ! dis moi o@`u je dois aller. ~ "; 39 : print "~Au moins Lassie remuait la queue. Bref. ~ "; 40 : print "~Bon o@`u est ce qu'on est, l@`a, g@'eographiquement? Pequenot-land? ~ "; 41 : print "~Hey Lachesis je-te-parle. C'est quoi ces trucs qui flottent en l'air? ~ "; 42 : print "~PERSONNE NE M'EXPLIQUE RIEN ! JE NE COMPRENDS RIEN ! ~ "; 43 : print "~Je ne peux pas m'empecher de remarquer que tu ne fais RIEN pour m'aider, mec. ~ "; 44 : print "~Cette histoire aura une fin, un jour? ~ "; } if (ratp>45) { print "~Lachesis? Ou ou? ~ "; } print "^^Lachesis reste immobile et silencieux. "; } ratp=ratp+1; } ]; [DialogueAtropos; if (plot_depth>52) {print "Vous avez d@'ej@`a fait vos adieux. Mieux vaut partir maintenant. ";} if (plot_depth==52) { print "Vous tapotez sur le bureau d'Atropos, toujours absorb@'e dans son travail, comme vous l'avez si souvent fait ces derniers temps.^~Hey, vieux bonhomme, c'est l'heure des adieux.~^^~Vieux bonhomme? Bravo, quelle insolence. On croit parler @`a un fil noir, et il prend soudainement des teintes oranges. Toujours la m@^eme histoire.~ Il se l@`eve et se place devant vous, faisant le point avec ses yeux.^~Lachesis-porte-de-prison voit des coquelicots l@`a o@`u vous voyez des fils noirs. ~^~Parce que Lachesis est un r@^eveur.~ Il vous pince la joue, et @@ca vous fait plut@^ot mal. ~De la bonne graine en tout cas. De la graine de coquelicot, alors, hihi.~ Son ton devient plus triste. ~Ah, petite Margot, tu vas me manquer. J'ai tant de regrets dans cette histoire. Tu t'en es tir@'ee, je pense, du cot@'e de Douglas, mais maintenant, tu es dans la boucle, avec nous. Enfin, la vie est faite de choix, alors @@ca ou autre chose...en tout cas, je ne regrette pas les soirs sous la lune, quand on mangeait toutes ces bonnes choses. C'@'etait pour moi de tr@'es bons moments...alors merci.^^~Merci pour moi aussi,~ dites vous avec d@'ef@'erence, en vous inclinant. "; attend(); print "^^~Garde l'@'echarpe tiss@'ee avec toi. Ce sera un souvenir de ma part. Et...ne m'oublie pas !~^^~T'inquietes.~^~De temps @`a autres, je penserai @`a tisser de bonnes choses pour toi, alors si tu as de la chance, tu sauras @`a qui penser !~^^~Merci, Atropos.~^^Vous lui donnez une chaleureuse accolade, et vous vous @'eloignez en silence. Il vous regarde partir, lui aussi en silence. "; plot_depth=plot_depth+1; move lachesis to courbiblio; } if (plot_depth==51) {print "~Aha, c'est le grand jour ! Je crois que quelqu'un vous attend dans votre cr@'eation...~ ";} if (plot_depth==50) {print "~Alors ce Lys blanc? A-t-il bien pouss@'e? Je peux le voir?~ ";} if (plot_depth>47 && plot_depth<50) {print "^~Alors, avez vous per@@c@'e nos secrets? Hihi. Et ces fleurs?~^~Grr. Vous pouvez pas m'aider, je suppose.~^~O@`u est l'@'epreuve en ce cas?~^~Une @'epreuve, pourquoi faire?~^~Mais pour vous lib@'erer !~ ";} if (plot_depth==42) { ratp=0; print "^^Approchant de l'estrade, vous attirez l'attention du vieux bonhomme :^^~Ahem. Excusez moi. ~^^L'homme rel@'eve la t@^ete d'un coup, @'emergeant de son abstraction mentale. Il aiguise ses yeux en s'approchant de vous comme un volatile :^^~Aha ! ~ s'exclame-t-il d'une voix alerte. ~Voil@`a donc la fameuse Margot. Le ciel et la terre la poursuivent. Une c@'el@'ebrit@'e. Enchant@'e, enchant@'e. ~^^Il t@^ate curieusement vos v@^etements et vous pince les joues.^^~C'est de la bonne graine tout ca. Jean noir. Chemise noire. Yeux noirs. Un fil noir. Les fils noirs sont les pivots des tapisseries, le saviez vous? Parce qu'ils passent inaper@@cus. On peut les mettre n'importe o@`u.~ "; attend(); print "^^~Et vous, vous @^etes qui? Maitre Yoda?~^^~Mon nom est Atropos. Ici, c'est notre biblioth@`eque. Une grande biblioth@`eque. Atropos. Et mon m@'etier? Mon m@'etier. Je m'interresse @`a la nature intrins@`eque des choses. J'en d@'ecompose l'essence. Je d@'efais les motifs, et je note comment ils sont tiss@'es. Ensuite, on peut les retisser. Simple, non?~^^~FASCINANT. Dites moi, o@`u se trouve Paris? Non, plus pr@'ecisement, o@`u se trouve la ville la plus proche?~^^~Il n'y a pas de ville proche.~^^~Super. Quel trou @`a rats.~^^Vous marchez quelques instants sur le dallage de marbre et vos pas r@'esonnent tandis qu'Atropos s'installe de nouveau devant son lutrin et dessine en tirant la langue. "; attend(); print "^^~Bon. Comment on peut partir d'ici alors?~^^~Hi hi hi. De la m@^eme fa@@con par laquelle vous @^etes arriv@'ee.~^^~Je suis arriv@'ee en sautant d'un avion en flammes, sans pilote. Ma police d'assurance m'interdit de faire deux fois ce type de voyage de suite. Je suis oblig@'ee de prendre un truc gnangnan, genre, le train.~^^~Le train, hihi, vous ne croyez pas si bien dire. Mais dites-moi, vous aviez bien un...*billet* d'avion pour venir ici?~^^~Possible. Mais, je l'ai laiss@'e dans l'avion, il me semble.~^^~Il vous faudra le billet si vous voulez partir d'ici. C'est la condition "; style underline; print "obligatoire"; style roman; print ".~^^~Ecoutez, professeur nimbus, votre billet, c'est des confettis, maintenant. ~^^~Des confettis? Je ne crois pas. C'@'etait un billet ultra r@'esistant.~^^~Ultra r@'esistant, pfff. Il est mort le billet. Oubliez-le. Faites pas de fixation @`a votre age, c'est mauvais. Pourquoi le billet aurait r@'esist@'e au crash?~^^Atropos rel@`eve la t@^ete et r@'epond d'un ton grave qui fait fondre vos sarcasmes :^^~Parce que c'est Douglas qui l'a cr@'e@'e. Douglas, ou du moins celui qui pour vous se fait appeler Douglas.~ "; attend(); print "^^L'@'evocation de ce sinistre personnage vous fait froid dans le dos. Bon, vous perdez rien @`a lui ramener son billet, au vieux. Il a l'air d'en conna@^itre un rayon. "; plot_depth=plot_depth+1; move corneilles to crashsite;} if (plot_depth==43) {print "~Ne perdez pas de temps, mademoiselle. Ramenez moi ce billet - je dis cela dans votre inter@^et.~ ";} if (plot_depth==44) {print "~Hey Paul Newman. J'ai paum@'e le billet, d@'esol@'ee~^^Il porte la main @`a son visage f@'ebrilement : ~Paum@'e? Que...que voulez vous dire?~^^~Ben je l'ai pas trouv@'e dans ce qu'il restait de l'avion. Ou peut @^etre que si, je ne sais pas. Mais il y avait ces oiseaux noirs, des sortes de corbeaux. Ils piquaient tous les bouts de papiers. On pourra faire sans?~^^~Des sortes de corbeaux? Ah ! Hihi. Des corneilles. Oui ! Lachesis m'en avait parl@'e. ~ Il semble espi@`egle comme un @'ecolier, et se l@`eve en vous pointant de l'index : ~Des oiseaux noirs, qui s'envolent vers le nord-ouest? Sacr@'e Lachesis. A croire que l'avenir est transparent pour lui. Quel bonhomme. Les corneilles - les oiseaux - elles nichent dans un campanile au somment d'une @'eglise...l'@'eglise du village. Le village, @`a l'ouest.~^^~Hum,~ faites vous remarquer, ~ce n'est pas vraiment possible d'aller @`a l'ouest. Les haies qui entourent...~^^~Attends, attends ! Alors...creuser un trou...~ (il se penche sur son ouvrage et feuillette) ~justement, je travaillais sur le bon ouvrage, comme quoi il n'y a pas de hasard, hihi ! Ah, fil bleu, bien s@^ur, le bleu du changement, le bleu des eaux travers@'ees par Moise !~^^Il brandit une @'etoffe marron et la transperce d'une aiguille attach@'ee d'un fil bleu roi. "; attend(); print "^Rien de particulier ne se passe. Vous vous sentez un instant tr@'es ridicule pour le vieux. Mais il retourne @`a son travail en expliquant :^^~Tu peux y aller maintenant. Va, va.~^^"; plot_depth=plot_depth+1; } if (plot_depth==45) {print "~Alors, ce billet? Pas encore ! Hum. ~ ";} if (plot_depth==46) {print "~Alors, ce billet? Pas encore ! Hum. ~ ";} if (plot_depth==47) {print "^Vous attirez l'attention d'Atropos en tapant sur le bois de son lutrin : ~Mission foir@'ee, Paco Rabanne. ~^^~Il ne faut pas te d@'ecourager~, explique le vieil homme sans lever les yeux de son ouvrage. ~Tu es bloqu@'ee par une lourde porte de bois, c'est cela? As tu pens@'e @`a...~^^~La porte, c'est de l'histoire ancienne.~^Vous avez apparemment attir@'e l'attention d'Atropos, qui l@`eve alors la t@^ete et demande, sourcils fronc@'es : ~Et en haut du clocher...~^^~Le billet, oui. Mais un type bizzaros s'est ramen@'e et me l'a piqu@'e.~^~Un type bizzaros...comment? Cela ne peut @^etre...mais...il n'y a personne ici qui...@`a quoi ressemblait-il?~^^~Effrayant ! Avec un masque horrible et des mains gant@'ees, et, une cape ! Et il s'avan@@cait vers moi, d'un air mena@@cant, un sale type l'air mauvais, vous voyez le genre.~^^~Je vois parfaitement,~ r@'epond Atropos d'un air entendu, en haussant un sourcil. "; attend(); print "^^Les doubles portes du fond de la pi@`ece s'ouvrent alors en grand, presque avec violence. Emergeant d'une pi@`ece encore plus sombre, une haute figure avance les bras ouverts comme s'il avait pouss@'e lui m@^eme les vantaux gigantesques de l'ouverture, une silhouette qui vous est bien famili@`ere : le m@^eme masque de cuir inexpressif et parfaitement lisse lui couvre le visage.^^~C'est lui !~ vous exclamez vous avec effroi.^~Oui, j'avais cru comprendre,~ commente Atropos d'un ton neutre.^^La sombre figure s'incline avec d@'ef@'erence devant vous, puis pose un genou @`a terre et courbe l'@'echine devant Atropos.^M@^eme agenouill@'e ainsi, il semble plus grand que le vieux bonhomme. Il lui tend un mince papier dans sa main gant@'ee.^Atropos s'en saisit : ~Oui, oui, rel@`eve toi, Lachesis, et bien voyons, ahem, c'est g@'enant (il a toujours eu le sens du protocole), ah, un message, oh, il est adress@'e @`a votre attention, puis-je vous le lire?"; attend(); style underline; print "^^Chere Margot,^^Je vous rendrai le billet d'avion si vous faites pousser 1000 fleurs diff@'erentes dans le jardin mort @`a cot@'e de notre cour et @`a cette seule condition.^^Cordialement v@^otre,^Lachesis. "; style roman; attend(); print "^^~Mille fleurs, hum, bien observ@'e, Lachesis, c'est vrai que ce jardin mort n'@'etait pas du plus bel effet.~^Vous @^etes rouge d'indignation : ~Quoi? Quoi Quoi Quoi?~^^Atropos et Lachesis se regardent d'un air interrogateur. ~Quoi : quoi?~ vous demande Atropos.^~Et bien, mille fleurs, mais, ca va pas non? Et puis quoi encore ! Mais c'est du vol Monsieur Lachesis ! Ce billet, il m'appartient, et vous allez me le rendre !~^Vous entendez la Voix r@'esonner dans votre t@^ete :^"; style underline; print "Vraiment? Il vous appartient? "; style roman; print "Il y a un amusement dans cette voix qui n'est absolument pas de votre go@^ut.^^~OUI IL M'APPARTIENT !~ hurlez vous @`a l'attention de Lachesis-le-traitre.~Faux jeton ! Judas !~^^Lachesis hausse simplement les @'epaules et s'en retourne vers les doubles portes qui se referment sur lui. Vous reposez le regard sur Atropos qui le soutient fermement :^~Cette histoire est un tissu de malentendus et de machinations qui vous d@'epassent, mais en un sens, vous @'etiez maitresse de votre destin@'ee et on peut dire que vous l'avez voulu.~ "; attend(); print "^^~Mille fleurs...~^~Ce n'est vraiment pas la mer @`a boire.~^^~Il me faut des...outils...des graines. Il va falloir un temps fou !~^^~Des graines, ah. Ah oui, hihi, mais non en fait. Ce n'est pas ainsi que l'on proc@`ede ici. Forcement, si vous me demandez des graines, c'est que vous n'@^etes pas au fait de notre syst@`eme - je comprends mieux votre col@`ere. Non, il vous faut simplement...ah, si Lachesis ne vous a rien dit, il vaut mieux que je vous laisse d@'ecouvrir par vous m@^eme...ca fait partie de vos conditions de lib@'eration, je pense ! hihi. Mais il vous faudra ceci :~^^Il d@'epose un collier fait d'un simple fil de cuir auquel pend une @'etoffe carr@'ee tiss@'ee d'une clef.^^~Portez ceci autour de votre cou, et vous aurez librement acc@`es @`a notre Sanctuaire. Et il vous faudra aussi ceci : c'est une @'etoffe aux motifs. Cela vous fera une excellente @'echarpe au besoin ! Commencez par nous faire un beau Lys blanc, et venez me l'apporter. Je vous donnerais quelques trucs.^^Bonne chance, Margot-fil-noir.~^^"; plot_depth=plot_depth+1; move collier to hallbiblio; move scarf to hallbiblio; } ]; [DialogueCedric; if (plot_depth==26) {print "L'homme vous adresse un sourire de requin et vous regarde droit dans les yeux.^^~Mademoiselle, c'est votre jour de chance. Je suis un agent commercial envoy@'e par le destin. Nous avons pour vous une s@'election de produits personnalis@'es qui, je pense, ne manqueront pas de vous interresser : je veux parler, bien s@^ur, de nos *packs amour*.~^^~Des Packs Amours?~, r@'ep@'etez-vous, vaguement consciente d'@^etre devant une tentative de drague, quoique la forme et le fond vous @'echappassent encore.^^~Oui.~ L'homme se saisit alors de trois dossiers qu'il dispose devant vous. Tous trois sont marqu@'es respectivement d'une grosse lettre : C,D,et S.^^~Celui-ci~, explique-t-il en montrant le premier,~est le Pack Classique. Une valeur s@^ure. Il s'agit d'un type brillant, fils de bonne famille. Excellente situation, confort mat@'eriel. Notre produit phare depuis toujours - enfin, depuis que les id@'ealistes n'ont plus recours @`a nos services. Nous garantissons le produit @`a vie.~ "; print "^^Il se recale contre le dossier de sa chaise et vous laisse quelques secondes m@'editer sur ce qu'il vient de dire. "; attend(); style underline; print "^^Un instant, vous avez la fugitive sensation d'une vie de pl@'enitude, pourtant @'etrang@`ere @`a ce que vous percevez comme la tache aveugle qui est votre propre destin.^"; style roman; attend(); print "^~Sinon @'evidemment, nous avons le Pacte -- pardonnez moi, je veux dire, le pack deluxe. Oui, comme le hamburger. Deux mots pour vous mettre en garde :"; style underline; print " apparemment"; style roman; print ", il a l'air interressant, mais r@'eflechissez-y @`a deux fois. Le pack deluxe, c'est votre amour d'enfance, c'est l'amour depuis toujours. N@'eanmoins, depuis toujours ne veut pas forcement dire... "; attend(); style underline; print "...pour toujours.~ "; style roman; attend(); print "^^~Enfin, nous avons notre offre la plus personnalis@'ee et la plus originale. Sans vous assomer de termes techniques, disons simplement que nos experts ont pr'ef@'er@'e se concentrer sur le bonheur plut@^ot que l'individu en soi. C'est une affaire @`a mon avis, je dirais m@^eme : une bonne affaire.~^^~Vous voulez parler de vous, c'est cela?~ lui demandez-vous dans un demi sourire. Mais il se reprend tout aussi s@'erieusement :^^~Jamais, c'est interdit par le r@'eglement. Nous disions donc...ah oui, le pack *surprise*. Une aubaine.~^^Il pousse les trois dossiers devant vous, ferm@'es.^^~Choisissez.~^"; plot_depth=plot_depth+1; move dossierc to epsilon; move dossierd to epsilon; move dossiers to epsilon; } if (plot_depth==27) {print "~Allez-y, choisissez, prenez votre temps.~ ";} ]; [DialogueVendeurs; if (plot_depth>11) {print "Approchant d'un vendeur, vous lui demandez : ~Nous sommes en train de composer la playlist d'une soir@'ee, vous nous conseilleriez quoi?~^Apr@`es une petite r@'eflexion, le vendeur pointe vers un rayon et dit : ~Il y a des trucs bien dans tous les genres, mais si vous voulez mon avis personnel, prenez quelque chose comme ";musiquecool();print " ou ";musiquecool();print ", vous voyez ce que je veux dire?~^^Jonas vous prend @`a part et murmure ~Pouah, il y connait que dalle ce mec.~ "; } if (plot_depth==11) {print "Vous interpellez un vendeur et demandez @`a voir Jos@'e. Dans un sourire, il appelle un gars qui trainait dans l'arri@`ere boutique, un type au pas tra@^inant, les cheveux h@'eriss@'es et sous son gilet vert et brun, un t-shirt avec un canard et un pentacle invers@'e.^Jos@'e fait : ~Ouais?~.^Vous lui expliquez que vous cherchez ~1884~ de Dan the Automator. Il se retourne, tend son bras et vous tend un cd qu'il d@'epose sur le rayon avant de dispara@^itre : ~Z'avez de la chance, vous dit-il. On dirait bien qu'il n'en restait plus qu'un.~ ";plot_depth=plot_depth+1;move cddan to fnac; } if (plot_depth<11) {print "Approchant d'un vendeur, vous lui demandez : ~Nous sommes en train de composer la playlist d'une soir@'ee, vous nous conseilleriez quoi?~^Apr@`es une petite r@'eflexion, le vendeur pointe vers un rayon et dit : ~Il y a des trucs bien dans tous les genres, mais si vous voulez mon avis personnel, prenez quelque chose comme ";musiquecool();print " ou ";musiquecool();print ", vous voyez ce que je veux dire?~^^Jonas vous prend @`a part et murmure ~Pouah, il y connait que dalle ce mec.~ "; } ]; [DialogueBoris; if (plot_depth>10) {print "Vous attirez l'attention du vendeur : ~Oui, que puis je faire pour vous?~ vous demande-t-il avec un tic de l'oeil gauche. Vous r@'eflechissez @`a quelque chose que vous voudriez, mais il n'y a rien ici que vous n'avez pas d@'ej@`a ou dont vous auriez envie. "; } if (plot_depth==10) {print "Jonas tire sur la manche du vendeur : ~Yo, Boris. C'est soir@'ee disco ce soir?~.^Boris le foudroie d'un regard inject@'e de sang : ~Quelle plaisanterie amusante. Que puis-je faire pour vous?~^D'un air qui feint la profondeur d'esprit, Jonas poursuit : ~Notre ami, qui r@'epond au nom de...D-J-S-H-A-D-O-W, (h@'e oui), nous a dit qu'un certain ~Boris~ ici pr@'esent aurait un enregistrement unique de 1453 d'un certain Dan The LadyBird. Ah, et laissez moi vous pr@'esenter mon assistante. Assistante ! Viens par ici.~ "; style underline; print "^^Oula. Cela va se payer dans le sang.^^"; style roman; print ">"; attend(); print "e"; attend(); print "t"; attend(); print "r"; attend(); print "a"; attend(); print "n"; attend(); print "g"; attend(); print "l"; attend(); print "e"; attend(); print "r"; attend(); print " "; attend(); print "J"; attend(); print "o"; attend(); print "n"; attend(); print "a"; attend(); print "s"; attend(); print "^^Vous passez nerveusement vos mains autour du coup de Jonas et vous le secouez comme un prunier. Ca soulage !^^"; print ">"; attend(); print "p"; attend(); print "r"; attend(); print "e"; attend(); print "n"; attend(); print "d"; attend(); print "r"; attend(); print "e"; attend(); print " "; attend(); print "g"; attend(); print "r"; attend(); print "o"; attend(); print "s"; attend(); print "s"; attend(); print "e"; attend(); print " "; attend(); print "m"; attend(); print "a"; attend(); print "s"; attend(); print "s"; attend(); print "u"; attend(); print "e"; attend(); print "^Oky-Doky.^^"; print ">"; attend(); print "f"; attend(); print "r"; attend(); print "a"; attend(); print "p"; attend(); print "p"; attend(); print "e"; attend(); print "r"; attend(); print " "; attend(); print "J"; attend(); print "o"; attend(); print "n"; attend(); print "a"; attend(); print "s"; attend(); print " "; attend(); print "a"; attend(); print "v"; attend(); print "e"; attend(); print "c"; attend(); print " "; attend(); print "g"; attend(); print "r"; attend(); print "o"; attend(); print "s"; attend(); print "s"; attend(); print "e"; attend(); print " "; attend(); print "m"; attend(); print "a"; attend(); print "s"; attend(); print "s"; attend(); print "u"; attend(); print "e"; attend(); print "^^Non, Margot, tu ne vas pas faire cela quand m@^eme?^^"; print ">"; attend(); print "s"; attend(); print "i"; attend(); print "^^Soudainement on claque des doigts devant vos yeux et vous sortez de votre r@`everie. ~Ou ou ! Assistante ! On dort?~ demande Jonas. Vous le corrigez en serrant les dents : ^~1884 de Dan The Automator, sombre imb@'ecile. Ca vous dit quelque chose, Boris?~^^Visiblement d@'etendu par votre intervention, il dit :~Oui, il y a cet enregistrement sauvage que je garde pour ma collection, bien s@^ur...mais regardez ce que l'on m'a donn@'e pas plus tard qu'aujourd'hui m@^eme !~^Il vous montre un album CD intitul@'e 1884.^~Ils viennent de le sortir la semaine derni@`ere @`a la Fnac. C'est un album g@'enial.~^~A la Fnac? demandez vous s@^ure de vous, je n'y crois pas trop. Je connais bien l'endroit...et les nouveaut@'es.~^~Peut-@^etre n'avez vous pas cherch@'e au bon endroit.^^La prochaine fois...demandez @`a Jos@'e. C'est le sp@'ecialiste.~^Vous notez le nom avec soin et vous vous @'eloignez. ";plot_depth=plot_depth+1; } if (plot_depth<10) {print "Vous attirez l'attention du vendeur : ~Oui, que puis je faire pour vous?~ vous demande-t-il avec un tic de l'oeil gauche. Vous r@'eflechissez @`a quelque chose que vous voudriez, mais il n'y a rien ici que vous n'avez pas d@'ej@`a ou dont vous auriez envie. "; } ]; [DialogueSampler; if (plot_depth<6) { print "Jonas s'avance vers le type et dit : ~Hey mec, t'as pas un bon enregistrement, genre le dernier "; musiquecool(); print " ?~^^Le vendeur vous r@'epond : ~H@'elas non. Ici, on ne vend que des samples.~^^~Bien tent@'e~, lancez vous @`a l'adresse de Jonas. "; } else { if (plot_depth==8) { print "^Vous posez le dictaphone sur le comptoir avec un sourire victorieux. Le vendeur, un l@'eger sourire de doute hautain au bord des l@`evres, enclenche la lecture de l'enregistrement.^Son sourire s'@'elargit et il vous demande quelques minutes le temps qu'il compile et pr@'epare la presse.^^Vous sirotez un coca dans le bar un peu hype d'en face en attendant qu'il finisse son ouvrage, puis il d@'epose enfin le disque sur le comptoir en expliquant :^~Hey les jeunes, vous avez sauv@'e ma journ@'ee, on dirait. A charge de revanche.~ Et pour vous remerciez il rajoute un cd import de Forest For The Trees. C'est un beau cadeau que vous acceptez respectueusement. ";move shadowdisk to happysamples;move forestcd to happysamples;plot_depth=plot_depth+1; } if (plot_depth==7) { print "~Alors King Of The Samples? Victorieux?~^^Jonas gromelle : ~Ca va on est pas aux pi@`eces. J'ai besoin de concentration.~ "; } if (plot_depth==6) { print "^Jonas tape violemment sur le comptoir et fait sursauter le vendeur. ~Yo mon fr@`ere.~^Le vendeur reajuste sa kippa et demande : ~Quoi, vous @^etes juif?~^~Moi? Nan. Pourquoi tu demandes?~^~Vous vous appelez comment?~ demande alors le vendeur.^~Jonas.~^~Ben vous @^etes juif, alors !~^~Mais ca veut dire quoi, juif?~^^Vous d@'ecidez bon d'interrompre cette fascinante conversation et expliquez l'objet de votre visite :^~Nous venons chercher la compilation que vous a command@'e DJ Shadow~^^Il y a un silence, et le vendeur hausse les @'epaules : ~Je ne l'ai pas. Il m'a command@'e certaines choses que je n'ai pas pu trouver, pas eu le temps. J'ai de la bonne qualit@'e, mais je ne suis pas producteur ind@'ependant.~^~Que vous manque-t-il?~ demandez vous.^~Un sample de bonne qualit@'e avec la musique d'un Orgue de Barbarie.~^^Jonas se dresse et se frappe la poitrine : ~Voil@`a une mission plus que facile pour The King Of The Samples~^~H@'elas non~, explique le vendeur,~ puisque j'ai @'echou@'e.~^~Je parlais de moi !~ s'insurge Jonas. ~Saviez vous que c'est avec ma propre voix que j'ai cr@'ee le ~Funky Horn~? Cantaloop. Flip Fantasia. OU OU ! J'ai vraiment l'impression de parler @`a des nuls.~^^~Vous croisez les bras : ~Et comment 1) nous allons trouver un orgue de barbarie, 2) enregistrer~^~Je vais devoir donc tout faire...~(Jonas fouille une de ses tr@'es large poche et en extirpe un dictaphone qu'il d@'epose sur le comptoir) ~Et voil@`a. Y a plus qu'@`a trouver l'orgue.~ ";plot_depth=plot_depth+1;move dictaphone to happysamples; } } ]; [DialogueShadow; if (plot_depth<5) { print "Vous interpellez le type : ~Hey mec, c'est super cool ici, pas vrai?~.^^Vous avez un gromellement pour toute r@'eponse.^^~C'est toi DJ Shadow?~.^^Vous n'aurez pas de r@'eponse. "; } else { if (plot_depth>9) { print "~Hey mec, on peut rencontrer DJ Shadow?~^~Non. Personne ne le peut.~ "; } if (plot_depth==9) {print "Vous tendez la pochette de samples avec un sourire de victoire.^Le type s'en empare ~Pas trop t@^ot !~ et v@'erifie l'@'etiquette manuscrite @`a l'int@'erieur. ~Ok c'est bon~ il range le disque dans une boite qu'il referme.^Vous l'interceptez : ~Il me semble que nous avions convenu quelque chose, non? 1884.~^^Il y a un silence.^^Puis sans se retourner, il vous dit : ~Il n'y a qu'un seul enregistrement, et je l'ai donn@'e @`a Boris. C'est un des gars qui s'occupent du 5@`eme disque, une boutique de disques dans le cinqui@`eme. C'est un puriste. Il vous fera sans mal une copie.~^Il retourne ensuite @`a son rangement. ";plot_depth=plot_depth+1;remove shadowdisk; } if (plot_depth==6) { print "Le type rel@`eve la t@^ete : ~Alors, vous avez ma compilation?~^^Vous secouez doucement le visage en d@'en@'egation. Vous demandez : ~C'est vous, DJ Shadow?~.^^Le type rigole et r@'epond : ~On verra si je pourrai vous le pr@'esenter. En attendant, allez chercher ma compilation.~^"; } if (plot_depth==5) { print "Vous vous approchez doucement du type accroupi : ~Hello, Toi = Di-j@'e S-H-A-D-O-W?~ articule Jonas avec un accent anglais mis@'erable. Le type grogne un truc en anglais et soupire.^^~Parce qu'on cherche (explique-t-il en fran@@cais cette fois) un enregistrement de Dan The Deminator qui s'appelerait 1942~.^Vous soupirez et corrigez : 1884. Dan The Automator.^^Le type l@'eve une oreille. Il se retourne et vous d@'eclare dans un mauvais accent : ~Vous avez d@'ej@`a @'ecout@'e 1884? D'o@`u vous connaissez ce morceau?~^^Jonas : ~Hey, qui pose les questions ici?~^^Vous corrigez encore avec agacement : ~Jonas, si nous essayions la politesse? Si toutefois il n'est pas trop tard, @'evidemment...c'est Rando qui nous en a parl@'e...~^^Le type hausse les @'epaules : ~connais pas.~ ~J'ai d@'ej@`a vu l'enregistrement par ici...je peux vous dire o@`u il est. Vous voulez me rendre un service, les gamins?~^^~Fais peter, machin,~ dit Jonas d'un ton grave. ^^~J'aurais besoin de la compil de samples command@'ee pour le concert de ce soir. La boutique Happy Samples, dans le marais, ne nous a pas encore livr@'e. Vous direz que c'est pour DJ Shadow, ils sauront parce que de toute fa@@con personne ne sait que nous dealons ensemble.~ ";plot_depth=plot_depth+1; } } ]; [DialogueDiouf; if (plot_depth==3) { print "^Vous interpelez Diouf :^^~Hey Diouf, sois cool.~^^~Ouais, sois cool, Diouf,~ ajoute Jonas.^^Diouf grogne, marmonne, et retourne classer des disques.^"; } if (plot_depth==2) { print "^Vous vous approchez de Diouf et vous lui tapez dans la main.^^~Yo.~ - ~Yo les jeunes.~^^~On voudrait voir Rando,~ explique Jonas.^^Diouf secoue la t@^ete : ~Rando est occup@'e. 'Pouvez pas le voir. Non. Non.~^^Vous et Jonas @'echangez un regard.^^~O@`u est Rando?~ demandez vous.^^Diouf lance un regard soucieux vers le mur est, sur un poster rouge vif du Che.^^~'chais pas. Revenez plus tard.~^^Jonas lui lance un regard sombre et vous le tirez par la manche pour lui faire signe d'abandonner.^^"; plot_depth=plot_depth+1; StartDaemon(visiteur); move panneau to randostore; } if (plot_depth>3) { print "Diouf fait une petite moue en hochant la t@^ete : ~Alors les jeunes, rien ne vous arr@^ete, hein.~^^~T'inquietes, Diouf, t'es notre pote~ r@'epond Jonas en essayant de lui toper dans la main. Mais Diouf ne tend pas la main et reste de marbre.^"; } ]; [DialogueRando; if (randodia==5) {print "^^Rando s'@'etire et l@`eve les yeux vers vous.^~Alors, vous avez eu le fameux single? ~^^~En fait...~^^~Ou@'e@'e@'e...~^^Et il remet la musique @`a fond pour retourner dans sa transe. ";} if (randodia==4) { print "~Master'O'C~, demande Jonas,~toi, tu as un enregistrement de 1884 de Dan Le Dan?~^^~Je ne sais pas s'il en existe. Il a donn@'e un concert *plut@^ot priv@'e*, un jour. J'@'etais l@`a. C'@'etait le meilleur. Vois-tu Jonas, je t'ai petit @`a petit fait d@'ecouvrir ce qu'est la vraie musique, et le vrai rythme. Tu as toutes les qualit@'es pour composer toi-m@^eme une playlist remarquable.~ (Il s'@'effondre dans un pouf) ~Et tu as le matos. Dan The Automator, c'est pour ta construction personnelle. Un Graal de la zic. Ta soir@'ee sera r@'eussie sans cela. (il baille). J'en suis certain.~^^Il s'@'etire et vous lui lancez : ~Personne n'a d'enregistrement de 1884? Allez...je croyais que tu connaissais tout, Rando.~^^~Peut @^etre...peut @^etre DJ Shadow. C'est le grand pote de Dan. C'est bien le genre @`a faire un enregistrement en douce. Et maintenant...(il baille et s'@'etire)...si vous voulez bien m'excuser...~ ";randodia=5;plot_depth=plot_depth+1; } if (randodia==3) { print "~Dyslexic Dan?~ demande Loser.~Ouais. Je connais. C'est un nul.~^^~Non. Dan *The Automator*~, corrige Rando.^^Vous vous avancez d'un pas, l'air blas@'e, les mains dans les poches : ~Ouais, Dan the Automator, le producteur de Gorillaz.~^^~N'importe quoi ! s'exclame Jonas. Dan The Automator, c'@'etait le producteur de Massive Attack...il a m@^eme remix@'e Firesuite 8 des Doves...~^^~Sacril@`ege ! Blasph@`eme !~ et vous empoignez Jonas par le col, qui vous fixe avec des petits yeux haineux.^^~Peace, les jeunes,~ explique Rando.~Dan The Automator a fait tout cela. C'est le boss de l'underground rock et rap mondial. Une sorte de...de Socrate en fait. Car il est partout, il a lanc@'e les grands, mais de lui, on n'a presque rien...et pourtant, il mixe...il y a...ce morceau. Le titre @'etait...1884. ";randodia=4; } if (randodia==2) { print "Rando ferme les yeux, appuie sa main sur votre @'epaule, comme en transe.^~Je vois~, dit-il,~je vois un singe g@'eant.~^~Trop claaaaasse~ commente Loser avec extase.^~Je te vois~, s'exclame Rando,~ ";style underline;print "@`a l'int@'erieur de ce... ";style roman;print "~^^Rando secoue la t@^ete et explique :^~Ahem, je m'@'egare. Un morceau in@'edit, m'avez vous demand@'e?~ (il s'affale sur son pouf et joint les mains) ~Avez vous entendu parler d@'ej@`a entendu parler de... ";style underline;print "Dan The Automator?";style roman;randodia=3;} if (randodia==1) { print "Rando l@`eve la t@^ete :^~C'est quoi ";style underline;print "Shtroumph Party";style roman;print "?~^^Jonas s'essuie le front en vous lancant des petits regards en coin et explique que cela n'a pas d'importance.^Rando rend le papier et s'exclame :^~Donc, vous cherchez un morceau, quelque chose de subtil, quelque chose d'inoubliable...du";style underline;print " jamais vu. ";style roman;print "^^Jonas se fend d'un sourire @'enorme :^~Ou@'e@'e@'e@'e~^Rando se retourne vivement : ~Et bien, vous @^etes venu voir la bonne personne !~ ";randodia=2;} if (randodia==0) {print "Rando se dresse sur son pouf @`a votre approche et vous sourit doucement :^~Salut Jonas. Salut Miss.~^^(vous @^etes surprise que quelqu'un s'adresse @`a Jonas sans utiliser son surnom)^^Jonas s'approche et explique : ~Yo Rando. Chuis DJ @`a une prochaine soir@'ee et je suis venu chercher conseil.~^^Rando semble s'@'etouffer et @'eteint la source de la fum@'ee odorante derri@`ere lui. Il vous d@'esigne du menton :^~Et elle?~^^Jonas tourne la t@^ete vers vous et dit :^~Ah ouais. Elle. C'est mon assistante.~^^Vous lancez un regard charg@'e de petits poignards meutriers sur Loser.^Rando tousse encore, puis demande : ~Alors, t'as d@'ej@`a pr@'evu des choses?~^^Jonas tend un papier (qu'il vous avait dissimul@'e jusqu'@`a pr@'esent, le fourbe) ; Rando s'en saisit et le parcourt en finissant de se racler la gorge. ";randodia=randodia+1;} ]; [DialogueMaman i k; if (plot_depth<2) { print "^~Yo, mum.~^^(Elle l@`eve la t@^ete vers vous.) ~Ah, salut ma ch@'erie. Qu'est ce que tu fais encore l@`a? Tu vas @^etre en retard @`a l'@'ecole !~^^Vous soupirez et donnez un coup de pied dans un meuble, juste pour montrer votre degr@'e de contrari@'et@'e : "; i=random(10); k=random(10); print i; print ". "; print k; print " sur 10.^^"; } if (plot_depth>1 && plot_depth<22) { i=random(5); switch(i){ 1 : print "^-~Hey, mum. J'ai besoin de thunes.~^-~Ton argent de poche est d@'ej@`a suffisant.~ "; 2 : print "^-~Yo. On sort faire un tour.~^-~Certes, mais ne rentre pas trop tard ma ch@'erie.~^-~OUAIS.~ "; 3 : print "^-~Hey, maman, tu sais si le dernier CD de T-Rex est sorti?~^-~C'est pas le dernier film de Stallone?~^-~MJe t'avais dit, Jonas, elle y connait que dalle, elle pourra pas nous aider.~^-~C'est quoi T-Rex?~ "; 4 : print "^-~Maman, je m'ennuie.~^-~Et bien TRAVAILLE !~ "; 5 : print "^-~Maman, j'ai faim.~^-~Tu attendras le repas du soir ! D@'ej@`a que tu n'es pas sp@'ecialement mince, il faut absolument que tu arr@^etes de grignoter entre les repas ! N'est ce pas, Jonas, qu'elle n'est pas sp@'ecialement mince?~^-~Ouais, Madame.~ "; } print "^^Vous soupirez et donnez un coup de pied dans un meuble, juste pour montrer votre degr@'e de contrari@'et@'e : "; i=random(10); k=random(10); print i; print ". "; print k; print " sur 10.^^"; } if (plot_depth>23) {print "~Sois prudente ma ch@'erie.~ ";} ]; [ DialogueXavier; if (vtalk==0) { print "Vous vous eclaircissez la gorge dans l'espoir de rendre votre ton de voix plus solennel. Xavier rel@`eve le regard vers vous...et vous perdez tous vos moyens. Vous vous entendez dire :^~Alors, ca va?~^(ce qui est tr@'es banal, m@^eme pour les types peu rompus au challenge rh@'etorique tel que Xavier).^Xavier reflechit un instant, comme pour trouver la r@'eponse la plus ad@'equate, puis d@'eclare dans une petite moue :^~Ouais, ca peu aller. Et toi?~^Int@'erieurement vous pensez des phrases du type ~je t'aime je t'aime je t'aime~, mais vous lui r@'epondez simplement :^~Ouais. Ca va.~^^Mouais. On va dire que t'y @'etais presque.^";vtalk++; } else if (vtalk==1) { style underline; print "Courage.^";attend(); style roman; print "Vous toussez discretement et prenez une grande inspiration pour votre br@^ulante d@'eclaration, plus r@'esolue que jamais. Mais Xavier vous devance et vous lance :^~Alors, @`a part ca, ca va?~^Coup@'ee dans votre @'elan, vous bredouillez : ^~Ouais, ca roule. Et toi, la vie, tout ca, ca va?~^Il vous r@'epond en souriant :^~Ouais, ca va, ca va.~^^EDIFIANT, Margot, et maintenant?^"; vtalk=vtalk+1;} else if (vtalk==2) { print "Vous faites semblant de vous interresser @`a son souci du moment et vous tentez de d@'etourner la conversation :^~Alors, l'@'ecole, ca va, c'est bient@^ot fini, pas vrai.~^Bon, vous ne lui avez pas encore dit, mais c'est une bonne technique pour engager la conversation. Il ne vous porte pas tellement attention et poursuit son d@'ecrochage de manille. Ca vous encourage pas des masses dans votre @'elan amoureux, tout ca. Il marmonne :^~Ouais. Ca va.~ Il marque comme un temps d'arr@^et, vaguement conscient de n'avoir que partiellement r@'epondu @`a votre question, puis conclut : ~Ouais. Bient@^ot fini.~.^^On dira que ce coup ci c'@'etait pour t@^ater le terrain, ok?^"; vtalk=vtalk+1;} else if (vtalk==3) { plot_depth=plot_depth+1; remove xavier; PlayerTo(school); } ]; [ DialogueJonas; DoMenu("Hey Jonas :^ ^ Yo. ^ Hey... ^ T'ecoutes quoi, l@`a? ^ Jonas, qu'est ce qu'on fait? ^ Allez, on s'arrache.^", JonasMenu, JonasInfo); ]; [ JonasMenu; if (menu_item==0) { item_width=8; item_name="Jonas";return 5;} if (menu_item==1) { item_width=6; item_name="Yo. "; } if (menu_item==2) { item_width=4; item_name="Hey... "; } if (menu_item==3) { item_width=6; item_name="T'ecoutes quoi, l@`a?"; } if (menu_item==4) { item_width=6; item_name="Jonas, qu'est ce qu'on fait?";} if (menu_item==5) { item_width=6; item_name="Allez, on s'arrache. ";} ]; [ JonasInfo; if (menu_item==1) {print "Yo, girl.^^^";} if (menu_item==2) {vanne();} if (menu_item==3) {zicjonas();} if (menu_item==4) {soluce();} if (menu_item==5) {return 3;} ]; ! ---------------------------------------------------------------------------- ! Evenements ! ---------------------------------------------------------------------------- Object airportanime "airportanime" with description "", found_in orly terminal hallattente, each_turn [i; i=random(6); switch(i){ 1 : style underline;print "^~Ding Dong. Votre attention s'il vous pla@^it. Monsieur (interf@'erences) est attendu pour le vol (interf@'erences). D@'epart imminent.~ "; 2 : print "^Un avion d@'ecolle dans un puissant vrombissement. "; 3 : style underline;print "^~Ding Dong. En raison du plan vigipirate, nous vous signalons que tout colis abandonn@'e sera d@'etruit. Veuillez donc faire attention de toujours emporter vos bagages lors de vos d@'eplacements. La direction d'Orly vous remercie de votre attention et vous souhaite un bon voyage.~ "; 4 : print "^Un avion atterit dans un sifflement crissant. "; 5 : print "^Un n@'eon du plafond clignote et bourdonne bruyamment. "; }], has scenery; Object hallanime "hallanime" with description "", found_in hallattente, each_turn [;switch(various){ 0 : various=various+1; 1 : print "^Vous r@'ealisez que vous n'@^etes pas pass@'ee sous le d@'etecteur de m@'etal. ";various=various+1; 2 : print "^L'hotesse revient suivie d'un dr@^ole de personnage fringu@'e comme un touriste, lui demande d'attendre ici puis repart. L'homme s'assied. ";move steven to hallattente;various=various+1; 3 : various=various+1; 4 : print "^Vous trouvez cette partie de l'aeroport particuli@`erement d@'eserte. ";various=various+1; 5 : print "^L'hotesse revient encore, suivie d'une femme @'el@'egante au visage @'etrange, puis repart de nouveau. Sans vous adresser un regard, la femme s'assied face @`a la baie vitr@'ee. ";move paku to hallattente;various=various+1; 6 : various=various+1; 7 : print "^On approche un petit avion @`a h@'elices de votre porte d'envol. Il est labell@'e ~Reality Airlines~ ";various=various+1; 8 : print "^L'hotesse revient, suivie d'un gros type lui m@^eme suivi d'une @'enorme valise. Elle s'adresse @`a vous tous : ~Le d@'ecollage aura bient@^ot lieu. Je reviens dans quelques minutes. ~ ";move maikal to hallattente;various=various+1; 9 : various=various+1; 10 : various=various+1; 11 : print "^L'hotesse revient et s'installe derri@`ere un comptoir et ouvre une porte derri@`ere elle. "; various=various+1;move hotesse to hallattente; 12 : print "^L'hotesse d@'eclare : ~Le vol 968 Reality Airlines @`a destination de Paris Orly va bient@^ot d@'ebuter. Merci de vous approcher et de me donner votre carte d'embarquement.~^^Les trois autres passagers donnent leur carte et passent par la porte. ";remove steven;remove paku;remove maikal;various=various+1;} if (various>12 && various<20) {print "^~Votre billet, mademoiselle, l'avion va bient@^ot partir !~^";various=various+1;} if (various==20) {print "~Et bien d@'esol@'ee, mademoiselle, mais on ne peut plus vous attendre !~^Dans un bruissement d'h@'elices, l'avion se lance sur une piste et prend son envol lentement. Des nuages gris s'accumulent et quelques gouttes commencent @`a glisser le long de la baie vitr@'ee.^^";attend();print "Six hommes en noir apparaissent par la porte d'acc@`es, suivi de pr@`es par Douglas.^^~Remarquable, fait-il. Vous avez finalement d@'ecid@'e de ne pas prendre le vol pr@`evu. Vous le prendrez en temps et heure, soyez en s@^ure. Saisissez l@`a !~^";Fin(5);}], has scenery; Object seweranime "seweranime" with description "", found_in sewer s1 s2 s3 s4 echelle, each_turn [i;style underline; i=random(10); switch(i){ 1 :print "^^Cette odeur va vous tuer. Vous retenez un violent spasme de votre estomac. "; 2 : print "^^Vous sentez une longue chose allong@'ee passer entre vos jambes dans le glaire purulent qui coule sous vos pieds. Vous sursautez de frayeur. "; 3 : print "^^Vous sentez un truc vivant passer rapidement sur votre main. Vous serrez tellement les dents que vos machoires vous font mal. "; 4 : print "^^La t@^ete vous tourne atrocement. "; 5 : print "^^Ces couloirs exigus vous oppressent. Vous avez l'imperceptible conviction d'@^etre tomb@'ee dans un pi@`ege infernal. "; 6 : print "^^Vous haletez de frayeur. "; 7 : print "^^Vous avez les mains et les pieds glac@'es. "; 8 : print "^^Vos oreilles bourdonnent. "; 9 : print "^^Vous entendez un clapotis derri@`ere vous. Vous vous retenez de fuir en courant. "; 10 : print "^^Courage. "; } ], has scenery; Object rainanime "rainanime" with description "", found_in mystreet school contrescarpe potdefer belleville anvers devantem halles notredame marais goldenberg ecouffes frontm sides siden sidew syndicat randostreet sacrecoeur tertre jardinplantes, each_turn [i; if (nuit==2) {i=random(7); switch(i){ 1 :print "^De lourds nuages noirs rendent tout obscur, m@^eme au milieu de cette journ@'ee d'@'et@'e. "; 2 : print "^Un gigantesque @'eclair d@'echire le ciel et illumine la cit@'e assombrie par les nuages noirs. "; 3 : print "^De fines gouttes de pluie commencent @`a tomber. "; 4 : print "^Un roulement de tonnerre assourdissant retentit et fait trembler les murs. "; 5 : print "^Un rafale de vent fait claquer les volets. "; 6 : print "^Des traits d'eau tombent d'un coup, vous trempant jusqu'aux os. "; 7 : print "^Les gens courent autour de vous pour fuir l'orage, se prot@'egeant de la pluie comme ils le peuvent, battu par le vent. "; } } ], has scenery; Object blackanime "blackanime" with description "", found_in mystreet school contrescarpe potdefer belleville anvers devantem halles notredame marais goldenberg ecouffes frontm sides siden sidew syndicat, each_turn [i; if (nuit==1) {i=random(20); switch(i){ 1 :print "^Vous voyez le soleil rougeoyant se coucher entre les derniers filaments de nuages @`a l'horizon. "; 2 : print "^Le soleil couchant donne des teintes orang@'ees et roses aux sommets des b@^atiments. "; 3 : print "^La temp@'erature diminue un peu avec le soir arrivant. "; 4 : print "^Le cr@'epuscule arrache les couleurs vives des b@^atiments pour les fondre dans une masse grise. "; 5 : print "^Vous entendez non loin de vous le concert de klaxons d'un embouteillage provoqu@'e par les parisiens rentrant chez eux. "; 6 : print "^Les lampadaires s'allument avec le d@'ebut de l'obscurit@'e. "; 10 : print "^Vous voyez le soleil rougeoyant se coucher entre les derniers filaments de nuages @`a l'horizon. "; 11 : print "^Le soleil couchant donne des teintes orang@'ees et roses aux sommets des b@^atiments. "; 12 : print "^C'est le soir. "; 13 : print "^C'est le soir. "; 14 : print "^C'est le coucher du soleil. "; 15 : print "^C'est le soir. "; 16 : print "^C'est le soir. "; 17 : print "^C'est le soir. "; 18 : print "^C'est le soir. "; 19 : print "^C'est le soir. "; 20 : print "^C'est le soir. "; } } ], has scenery; Object animation "animation" with description "", found_in potdefer tertre notredame, each_turn [i; if (evenement==0) {i=random(20); switch(i){ 1 : various=0;evenement=1;move peruviens to location; 2 : various=0;evenement=1;move clarino to location; 3 : various=0;evenement=1;move orgue to location; 4 : various=0;evenement=1;move magicien to location; 5 : various=0;evenement=1;move felix to location; 6 : various=0;evenement=1;move cracheurs to location; 7 : various=0;evenement=1;move chanteur to location; 8 : print "Des pigeons s'envolent soudainement. "; 9 : print "Des pigeons s'envolent soudainement. "; 10 : print ""; 11 : print ""; 12 : print ""; 13 : print ""; 14 : print ""; 15 : print ""; 16 : print ""; 17 : print ""; 18 : if (jonas in location) {print "Jonas bouscule un touriste sans faire attention et bredouille des excuses. ";} 19 : print "Des pigeons s'envolent soudainement. "; 20 : print ""; }} ], has scenery; Object peruviens "groupe musical p@'eruvien" with description "C'est un groupe de musicos p@'eruviens en chemise sombre et petit bonnet de laine, avec flute de pan, petit tambourin et (luxe) une guitare s@`eche. Devant une foule pas tellement interress@'ee, ils jouent leurs plus grands titres traditionnels dont ~El condor Pasa~ et bien s@^ur ~El vente se viene, el vente se va~. ", name "peruviens" "groupe de peruviens" "musiciens" "groupe", each_turn [; if (various==4) {print "Le groupe de peruviens remballe ses instruments et commence @`a partir. ";various=various+1;evenement=0;remove self;} if (various==3) {print "Pendant que le groupe de p@'eruviens entame la derni@`ere partie du morceau, l'un d'entre eux passe avec des exemplaires de leur CD pour le vendre. ";various=various+1;} if (various==2) {print "Les musicos jouent des airs entrainants de musique inca. ";various=various+1;} if (various==1) {print "Le groupe p@'eruvien s'installe et commence d'un coup leur musique, ce qui fait tourner la t@^ete aux touristes passant. ";various=various+1;} if (various==0) {print "Un groupe de musiciens traditionnels p@'eruviens arrive. ";various=various+1;} ], has animate; Object clarino "clarinetiste" with description "Un grand type maigre habill@'e comme un percepteur, plant@'e comme un piquet devant le tr@'epier qui tient une partition. ", name "homme" "type" "musicien" "clarinette" "clarinetiste", each_turn [; if (various==4) {print "Le clarinetiste remballe ses affaires et s'en va discr@`etement. ";various=various+1;evenement=0;remove self;} if (various==3) {print "Le clarinetiste tend un petit recipient pour que les auditeurs puissent donner un peu d'argent. ";various=various+1;} if (various==2) {print "Le clarinetiste joue un air classique accompagn@'e par une sono. ";various=various+1;} if (various==1) {print "Le clarinetiste s'installe m@'ethodiquement. ";various=various+1;} if (various==0) {print "Un clarinetiste tristounet arrive. ";various=various+1;} ], has animate; Object orgue "joueur d'orgue de barbarie" with description "Vous voyez un vieux type avec une longue moustache tombante, habill@'e tout en bleu, tourner pesamment la manivelle d'un orgue de barbarie qui chante des airs tamponn@'es de la joie d'un autre temps. ", name "orgue" "vieux" "type" "orgue de barbarie" "barbarie" "organiste", each_turn [; if (various==4) {print "L'organiste s'en va lentement et disparait derri@`ere un b@^atiment. ";various=various+1;evenement=0;remove self;} if (various==3) {print "L'organiste manivelle encore et encore pour ne pas ralentir le rythme. ";various=various+1;} if (various==2) {print "L'orgue de barbarie joue un air lent et triste. ";various=various+1;} if (various==1) {print "L'organiste marche lentement, trimballant son orgue qui r@'esonne de son tempo goulayant. ";various=various+1;} if (various==0) {print "Un vieux bonhomme arrive, jouant de l'orgue de barbarie qu'il transporte. ";various=various+1;} ], has animate; Object magicien "magicien" with description "C'est un grand noir avec un vieux costume et un beret. Il a de grandes mains et un sourire @'eclatant. ", name "noir" "magicien" "grand noir", each_turn [; if (various==4) {print "Le magicien reprend sa colombe et repart. ";various=various+1;evenement=0;remove self;} if (various==3) {print "Le magicien s'incline et passe parmi la population pour r@'ecup@'erer de l'argent dans son beret. ";various=various+1;} if (various==2) {print "Le magicien fait et d@'efait des noeuds sur une large corde d'une fa@@con magique. ";various=various+1;} if (various==1) {print "Le magicien fait sortir une colombe de sa main sous des applaudissements. ";various=various+1;} if (various==0) {print "Un type en costume arrive et rassemble la population avec de grands @'eclats de rire, se pr@'esentant comme un magicien. ";various=various+1;} ], has animate; Object felix "felix le cycliste" with description "F@'elix est un fris@'e qui porte une immense chapka et une combinaison en un seul morceau blanche, avec un sens interdit imprim@'e sur son derri@`ere. ", name "felix" "cycliste" "velocycliste", each_turn [; if (various==4) {print "F@'elix s'en va sur son v@'elo @`a une roue. ";various=various+1;evenement=0;remove self;} if (various==3) {print "F@'elix passe parmi les gens sur son v@'elo @`a une roue pour recevoir leur monnaie. ";various=various+1;} if (various==2) {print "F@'elix sort un mini-v@'elo de sa poche et monte dessus en p@'edalant avec ses mains. ";various=various+1;} if (various==1) {print "F@'elix fait des cercles autour des gens sur son unique roue en soulevant les oreilles de sa chapka. ";various=various+1;} if (various==0) {print "Un individu arrive sur un v@'elo @`a une roue et se pr@'esente comme F@'elix, le super cycliste. ";various=various+1;} ], has animate; Object cracheurs "cracheurs de feu" with description "Un couple de jeunes gens v@'etus de noir, manipulant torches et cordes enflamm@'es. ", name "cracheur" "couple" "cracheurs" "cracheurs de feu" "cracheur de feu", each_turn [; if (various==4) {print "Les torches sont @'eteintes et les cracheurs de feu s'en vont. ";various=various+1;evenement=0;remove self;} if (various==3) {print "La jeune fille passe parmi les spectateurs pour recevoir une contribution tandis que son partenaire jongle avec des machettes enflamm@'ees. ";various=various+1;} if (various==2) {print "La fille fait tourner autour d'elle une corde enflamm@'ees qui laisse des traces de fum@'ee noire. ";various=various+1;} if (various==1) {print "L'homme fait virevolter des massues enflamm@'ees. ";various=various+1;} if (various==0) {print "Un couple de cracheurs de feu arrive et commence un spectacle en plein air. ";various=various+1;} ], has animate pluralname; Object chanteur "chanteur" with description "Un chanteur fan de Johnny Hallyday @`a la voix puissante. ", name "chanteur" "johnny" "type" "homme", each_turn [; if (various==4) {print "Le type remballe sa sono et s'en va. ";various=various+1;evenement=0;remove self;} if (various==3) {print "Vous entendez ~Les Portes du P@'enitencier~, maintenant. ";various=various+1;} if (various==2) {print "Le type chante ~Allumer le Feu~ de Johnny. ";various=various+1;} if (various==1) {print "L'homme chante ~Laura~ de Johnny. ";various=various+1;} if (various==0) {print "Un type arrive et installe une sono portable. ";various=various+1;} ], has animate; [chantier i; if (various==0) { i=random(5); switch(i) { 1 : print "^Blaom ! Un ouvrier lance depuis le chantier voisin au troisi@`eme @'etage de l'immeuble une plaque de pl@^atre. "; 2 : print "^Broam ! Un ouvrier laisse tomber une meuble cass@'e qui s'@'ecrase dans la benne. "; 3 : print "^Boum ! Quelque chose tombe et s'@'ecrase dans la benne. "; 4 : print "^Tchang-Bam-Baoum ! Un sac de gravats tombe dans la benne. "; 5 : print "^Ptoing. Un clou est jet@'e dans la benne. "; } various=1; } else { i=random(2); switch(i) { 1 : various=0; 2 : print "^Tout semble calme. "; } } ]; [petittrain; if (various<9) { switch(various) { 0 : print "^Un petit train @'electrique rempli de touristes arrive et stoppe sur le terrain. Vous vous @'ecartez de son passage. Les touristes descendent lentement. ";various=various+1; 1 : print "^Un petit train @'electrique est gar@'e le long de la haie de m@'etal et se remplit doucement de touristes. ";various=various+1; 2 : print "^Le petit train pour touristes est presque totalement rempli maintenant. ";various=various+1; 3 : print "^~Tching Tching !~ Le petit train pour touristes d@'emarre doucement. ";various=various+1; 4 : print "^Le terrain est vide, l'herbe couch@'ee par le passage r@'ep@'et@'e du petit train sur roues pour touristes. En contrebas, au del@`a de la herse de fer close, tout en bas d'une pente tr@'es prononc@'ee, vous pouvez voir l'arri@`ere cour de l'Elys@'ee Montmartre. ";various=various+1; 5 : print "^Un pigeon se pose sur la herse et vous regarde fixement. ";various=various+1; 6 : various=various+1; 7 : various=various+1; 8 : print "^Le pigeon s'envole. ";various=various+1; } } else { print "^Le terrain est vide, l'herbe couch@'ee par le passage r@'ep@'et@'e du petit train sur roues pour touristes. En contrebas, au del@`a de la herse de fer close, tout en bas d'une pente tr@'es prononc@'ee, vous pouvez voir l'arri@`ere cour de l'Elys@'ee Montmartre. ";various=0;} ]; [metro m; if (m==0) { DoMenu("La station Luxembourg, un grand trou sous le Boulevard St Michel d@'ecor@'e de fresques modernes. Vous voulez aller...^ ^ A Belleville. ^ A Chatelet les Halles ^ A Anvers ^ Nulle Part... ", MetroMenu0, MetroInfo0); } if (m==1) { DoMenu("La station Belleville, qui s'engouffre sous un immense restaurant Chinois. Votre destination maintenant...^ ^ A Chatelet les Halles ^ A Anvers ^ Au Jardin du Luxembourg ^ Mince, je me suis tromp@'ee... ", MetroMenu1, MetroInfo1); } if (m==2) { DoMenu("Station Anvers, perdue dans de vieux immeubles au pied du Sacr@'e Coeur. Et vous prenez le m@'etro pour...^ ^ A Belleville. ^ A Chatelet les Halles ^ Au Jardin du Luxembourg ^ Ah tiens, finalement j'ai encore quelque chose @`a faire... ", MetroMenu2, MetroInfo2); } if (m==3) { DoMenu("Chatelet les Halles, une masse grouillante de gens dans un labyrinthe souterrain. Vous optez pour la direction...^ ^ Belleville. ^ Jardin du Luxembourg ^ Anvers ^ Oups, en fait je voulais pas aller l@`a... ", MetroMenu3, MetroInfo3); } if (m==4) { DoMenu("Chatelet les Halles, une masse grouillante de gens dans un labyrinthe souterrain. Vous optez pour la direction...^ ^ Belleville. ^ Jardin du Luxembourg ^ Anvers ^ A l'Aeroport d'Orly", MetroMenu4, MetroInfo4); } ]; [MetroMenu0; if (menu_item==0) { item_width=8; item_name="METRO";return 4;} if (menu_item==1) { item_width=6; item_name="A Belleville. "; } if (menu_item==2) { item_width=4; item_name="A Chatelet les Halles";} if (menu_item==3) { item_width=6; item_name="A Anvers"; } if (menu_item==4) { item_width=6; item_name="Nulle Part... ";} ]; [MetroInfo0; if (menu_item==1) {PlayerTo(belleville);evenement=0;ratp=ratp+1;return 3;} if (menu_item==2) {PlayerTo(rerstation);evenement=0;ratp=ratp+1;return 3;} if (menu_item==3) {PlayerTo(anvers);evenement=0;ratp=ratp+1;return 3;} if (menu_item==4) {PlayerTo(mystreet);return 3;} ]; [MetroMenu1; if (menu_item==0) { item_width=8; item_name="METRO";return 5;} if (menu_item==1) { item_width=4; item_name="A Chatelet les Halles";} if (menu_item==2) { item_width=6; item_name="A Anvers"; } if (menu_item==3) { item_width=6; item_name="Au Jardin Du Luxembourg";} if (menu_item==4) { item_width=6; item_name="Nulle Part... ";} ]; [MetroInfo1; if (menu_item==1) {PlayerTo(rerstation);evenement=0;ratp=ratp+1;return 3;} if (menu_item==2) {PlayerTo(anvers);evenement=0;ratp=ratp+1;return 3;} if (menu_item==3) {PlayerTo(mystreet);evenement=0;ratp=ratp+1;return 3;} if (menu_item==4) {PlayerTo(belleville);return 3;} ]; [MetroMenu2; if (menu_item==0) { item_width=8; item_name="METRO";return 5;} if (menu_item==1) { item_width=6; item_name="A Belleville. "; } if (menu_item==2) { item_width=4; item_name="A Chatelet les Halles";} if (menu_item==3) { item_width=6; item_name="Au Jardin Du Luxembourg";} if (menu_item==4) { item_width=6; item_name="Nulle Part... ";} ]; [MetroInfo2; if (menu_item==1) {PlayerTo(belleville);evenement=0;ratp=ratp+1;return 3;} if (menu_item==2) {PlayerTo(rerstation);evenement=0;ratp=ratp+1;return 3;} if (menu_item==3) {PlayerTo(mystreet);evenement=0;ratp=ratp+1;return 3;} if (menu_item==4) {PlayerTo(anvers);return 3;} ]; [MetroMenu3; if (menu_item==0) { item_width=8; item_name="METRO";return 5;} if (menu_item==1) { item_width=6; item_name="A Belleville. "; } if (menu_item==2) { item_width=6; item_name="A Anvers"; } if (menu_item==3) { item_width=6; item_name="Au Jardin Du Luxembourg";} if (menu_item==4) { item_width=6; item_name="Nulle Part... ";} ]; [MetroInfo3; if (menu_item==1) {PlayerTo(belleville);evenement=0;ratp=ratp+1;return 3;} if (menu_item==2) {PlayerTo(mystreet);evenement=0;ratp=ratp+1;return 3;} if (menu_item==3) {PlayerTo(anvers);evenement=0;ratp=ratp+1;return 3;} if (menu_item==4) {PlayerTo(rerstation);return 3;} ]; [MetroMenu4; if (menu_item==0) { item_width=8; item_name="METRO";return 5;} if (menu_item==1) { item_width=6; item_name="A Belleville. "; } if (menu_item==2) { item_width=6; item_name="A Anvers"; } if (menu_item==3) { item_width=6; item_name="Au Jardin Du Luxembourg";} if (menu_item==4) { item_width=6; item_name="A Orly";} ]; [MetroInfo4; if (menu_item==1) {PlayerTo(belleville);evenement=0;ratp=ratp+1;return 3;} if (menu_item==2) {PlayerTo(mystreet);evenement=0;ratp=ratp+1;return 3;} if (menu_item==3) {PlayerTo(anvers);evenement=0;ratp=ratp+1;return 3;} if (menu_item==4) {PlayerTo(orly);return 3;} ]; [ actionmetro y; print "^"; y = random(15); switch(y) { 1: print "Apr@`es un voyage plus long que pr@'evu (vous vous @^etes tromp@'ee de ligne), vous arrivez ENFIN @`a votre destination. "; 2: print "Vous grimpez avec essouflement les hautes marches de l'escalier m@'ecanique temporairement cass@'e en sortant du m@'etro. "; 3: print "Vous @'evitez soigneusement un type @`a l'air louche en sortant du m@'etro et vous continuez. "; 4: print "Vous faites un petit voyage en m@'etro agr@'ement@'e par la musique d'un guitariste espagnol et de son pote le roumain. "; 5: print "Votre m@'etro s'arr@^ete sans raison pendant 20 minutes, puis le conducteur dit dans le haut parleur ~mnnh mnhh rrrh crrr mnnnh~.^Le m@'etro repart ensuite, et vous descendez @`a votre station peu apr@`es. "; 6: print "Alors que vous remontez l'escalier m@'ecanique du m@'etro, un voleur @`a la tire d@'evale la descente en vous bousculant, suivi de pr@`es par des agents de police essoufl@'es. "; 7: print "Vous passez une demi-heure de voyage dans le m@'etro @`a comater devant une affiche publicitaire du ~Wall Street Institute~ sur un mur du wagon. Y en marre de ces pubs. "; 8: print "En sortant du m@'etro, vous restez bloqu@'ee un temps qui vous semble interminablement long derri@`ere une mama africaine qui avance @`a deux @`a l'heure.^Enfin dehors !"; 9: print "Durant votre voyage vous avez droit au spectacle de ~Gerard Le Clochard~ qui vous demande une ptite pi@`ece. Il vous fait bien rire, mais vous descendez avant la fin de sa prestation. "; 10: print "Durant votre voyage en m@'etro, vous rencontrez un vagabond barbu qui vous ne vous demande rien, mais d@'enonce @`a tous ceux qui veulent bien l'entendre les ravages des ~gaz chimiques des communistes et de leurs fr@`eres les socialistes~.^Vous oubliez la rencontre et vous descendez quelques stations plus loin. "; 11: print "Apr@`es un rapide voyage en m@'etro, vous arrivez @`a destination sans probl@`eme. "; 12: print "Apr@`es un rapide voyage en m@'etro, vous arrivez @`a destination sans probl@`eme. "; 13: print "Apr@`es un rapide voyage en m@'etro, vous arrivez @`a destination sans probl@`eme. "; 14: print "Apr@`es un rapide voyage en m@'etro, vous arrivez @`a destination sans probl@`eme. "; 15: print "Apr@`es un rapide voyage en m@'etro, vous arrivez @`a destination sans probl@`eme. "; } print "^^"; ]; [ musiquecool soncool; soncool = random(50); switch(soncool) { 1: print "Doves"; 2: print "Muse"; 3: print "Queens of the Stone Age"; 4: print "Noir D@'esir"; 5: print "Manu Chao"; 6: print "Gomez"; 7: print "Moby"; 8: print "Asian Dub Fondation"; 9: print "David Bowie"; 10: print "The Clash"; 11: print "The Ramones"; 12: print "Brian Eno"; 13: print "Blondie"; 14: print "Patti Smith"; 15: print "Joy Division"; 16: print "The Sex Pistols"; 17: print "Sparks"; 18: print "The Cure"; 19: print "R.E.M. "; 20: print "U2"; 21: print "Depeche Mode"; 22: print "Beastie Boys"; 23: print "The B-52's"; 24: print "Human League"; 25: print "Sonic Youth"; 26: print "The Pogues"; 27: print "Pearl Jam"; 28: print "The Smashing Pumpkins"; 29: print "The Red Hot Chili Peppers"; 30: print "Offspring"; 31: print "Nirvana"; 32: print "INXS"; 33: print "Soul Asylum"; 34: print "Green Day"; 35: print "Soundgarden"; 36: print "Nine Inch Nails"; 37: print "Alanis Morissette"; 38: print "Hole"; 39: print "Garbage"; 40: print "Sheryl Crow"; 41: print "Oasis"; 42: print "The Cranberries"; 43: print "Foo Fighters"; 44: print "Weezer"; 45: print "Rage Against the Machine"; 46: print "Travis"; 47: print "Limp Bizkit"; 48: print "Radiohead"; 49: print "Slipknot"; 50: print "Deftones"; } ]; [ ActionJonas i; i = random(50); switch(i) { 1: print "Jonas tousse. "; 2: print "Jonas s'amuse @`a tenir en @'equilibre sur un pied, mais tombe. "; 3: print "Jonas plisse les yeux et scrute une zone vide. Vous l'ignorez. "; 4: print "Loser renifle f@'ebrilement comme un animal qui sent de la nourriture pas loin. "; 5: print "Jonas fait des petits bonds sur place, pieds joints. "; 6: print "Jonas danse la macarena, les yeux ferm@'es. "; 7: print "Jonas ondule sur la musique de son walkman. "; 8: print "Loser s'exclame : ~Oua ! C'est trop cool ici !~ "; 9: print "Jonas @'eternue soudainement et vous fait sursauter. "; 10: print "Jonas bidouille en silence son walkman. "; 11: print "Jonas lance une cassette en l'air, et la rattrape dans son walkman ouvert : ~Ca te d@'efrise, pas vrai?~ "; 12: print "Jonas se jette par terre en croyant avoir vu une pi@`ece de 20 centimes d'euros, mais ce n'est qu'un reflet de petit papier brillant. "; 13: print "Jonas se passe la main dans les cheveux, coince deux de ses doigts et grogne. "; 14: print "Jonas machouille bruyamment son chewing-gum. "; 15: print "Jonas se cogne contre un mur, sans faire expr@`es. "; 16: print "Jonas soupire. "; 17: print "Jonas remonte son pantalon, mais il retombe tout de suite. "; 18: print "Jonas s'@'etire et baille et se fait mal @`a la machoire. "; 19: print "Jonas fredonne ~Guantanamera~. "; 20: print "Jonas carresse sensuellement sa petite barbichette. "; 21: print "Jonas d@'eplie doucement un chewing-gum de son emballage, mais manque son coup et le fait tomber par terre. Il le ramasse et l'enfourne discretement. "; 22: print "Jonas se pince les joues juste pour voir jusqu'@`a quel point elles peuvent s'@'etirer. "; 23: print "Jonas prend soudainement, et sans raison, la position de ~la cigogne~ dans Karat@'e Kid, mais perd l'@'equilibre et tombe. "; 24: print "Jonas regarde attentivement vos faits et gestes, comme si sa vie en d@'ependait. "; 25: print "Loser regarde au lointain, comme pris d'une grande nostalgie. "; 26: print "Jonas s'appr@^ete @`a faire un commentaire, mais l'oublie. "; 27: print "Jonas grogne : ~on s'arrache.~. "; 28: print "Jonas vous dit : ~Ou@'e@'e@'e~. "; 29: print "Jonas remarque : ~J'ai un pressentiment bizzare...~ "; 30: print "Jonas demande : ~T'es s@^ure qu'on devrait @^etre l@`a?~ "; 31: print "Jonas dit : ~Ouais, ca marche !~. "; 32: print "Loser remarque : ~J'aurais @'et@'e toi, j'aurais peut-@^etre pas fait ca...~ "; 33: print "Jonas tremblotte. "; 34: print "Jonas se met un doigt dans le nez et fouille vigoureusement. "; 35: print "L'estomac de Jonas gargouille bruyamment. "; 36: print "Jonas carresse son bide affectueusement, comme rassur@'e par sa pr@'esence. "; 37: print "Jonas se gratte le bide. "; 38: print "Jonas se gratte les joues. "; 39: print "Jonas se gratte l'entre-jambe. "; 40: print "Jonas se gratte le derri@`ere. "; 41: print "Loser fait un pas en avant, puis marque un temps d'arr@^et, et vous laisse passer d'abord. "; 42: print "Loser met un doigt sur ses l@`evres, signe d'intense r@'eflexion, puis semble oublier ce @`a quoi il pense. "; 43: print "Jonas @'echappe son walkman, et le rattrape de justesse. "; 44: print "Jonas regarde aux alentours et fait : ~Ouaaaa~. "; 45: print "Jonas regarde au dessus de lui. ~Wow.~ "; 46: print "Jonas pleurniche : ~Et en plus j'ai trooop faim !~ "; 47: print "Jonas vous regarde. "; 48: print "Jonas attend que vous fassiez quelque chose. "; 49: print "Jonas vous regarde progresser. "; 50: print "Jonas essaie de comprendre ce que vous faites. "; } print "^"; ]; [vanne n m; print "Vous vous tournez vers Jonas :^~Hey Loser, "; n = random(26); switch(n) { 1: print "t'as jamais pu te payer des pantalons plus longs?"; 2: print "c'est pour quand le d@'epucelage, Mister Love?"; 3: print "t'en as pas marre d'@'ecouter de la musique de daube?"; 4: print "t'as une id@'ee brillante, tronche de cake?"; 5: print "t'es vraiment un boulet, tu sais. "; 6: print "pourquoi je suis ton assistante? Je t'ai tout appris, non?"; 7: print "ca fait quoi d'@^etre un gros nul?"; 8: print "RIEN. "; 9: print "oublie moi, ca me fera des vacances. "; 10: print "alors, les filles, ca marche en ce moment? Oh excuse moi, j'avais oubli@'e. "; 11: print "tu pourrais, genre, m'aider un peu?"; 12: print "tu comptes @^etre inutile comme ca encore longtemps?"; 13: print "si tu veux m'@'epater par ta fain@'eantise, c'est gagn@'e. "; 14: print "t'as redoubl@'e quelle classe, d@'ej@`a, @`a l'@'ecole de la drague? Toutes?"; 15: print "le prix du cerveau @'etait en hausse au moment de ta naissance ou quoi?"; 16: print "TU PEUX M'AIDER, OUAIS?"; 17: print "jolies shoes. Une fois dans un cirque, j'ai vu un chimpanz@'e qu'avait les m@^emes. "; 18: print "ouaaa le T-shirt ! La prochaine fois, viens en TOGE je me choperais moins la honte. "; 19: print "le shampooing, ca existe. C'est pas ultra cher, en plus. "; 20: print "le rasoir, tu connais?"; 21: print "d@'esol@'e d'aborder un sujet sensible, mais @`a quand remonte ta derni@`ere douche?"; 22: print "quand tu seras mort, surtout OUBLIE moi sur ton testament. "; 23: print "samedi soir tu seras chaud chaud chaud, hein, pour draguer. HA ! HA ! HA !"; 24: print "tu peux marcher loin de moi? Et fais comme si tu me connaissais pas, merci. "; 25: print "tu crains. "; 26: print "t'es nul. "; } print "~^^^^^"; m = random(10); switch(m) { 1: print "Jonas grogne. "; 2: print "Jonas fait semblant de pleurnicher. "; 3: print "Jonas fait : ~Ah ouais?~. "; 4: print "~Toi m@^eme d'abord.~ "; 5: print "~Wo hey l'autre~. "; 6: print "~m@^eme pas mal~ "; 7: print "~Miroir !~ "; 8: print "~Oua arr@^ete tu me casses trop en deux, l@`a.~ "; 9: print "Hey, oublie pas qui je suis !"; 10: print "Jonas vous tire la langue et fait ~Gna Gna Gna~. "; } print "^^^^"; ]; [zicjonas j k l; print "~Hey, t'@'ecoutes quoi?~^^~ "; j = random(7); switch(j) { 1 : print "Une version "; 2 : print "Un trip "; 3 : print "Un arrangement "; 4 : print "Une reprise "; 5 : print "Le th@`eme "; 6 : print "La version "; 7 : print "La reprise "; } k = random(54); switch(k) { 1 : print "Acid House"; 2 : print "Acid Jazz"; 3 : print "Acid Techno"; 4 : print "Ambient"; 5 : print "Ambient Breakbeat"; 6 : print "Dub"; 7 : print "New Age"; 8 : print "Electronica"; 9 : print "Trip Hop"; 10 : print "Drum n bass"; 11 : print "Jungle"; 12 : print "Techno"; 13 : print "Trance"; 14 : print "Hardcore"; 15 : print "Big Beat"; 16 : print "Pop"; 17 : print "Britpop"; 18 : print "Folk"; 19 : print "Lo-fi"; 20 : print "Grunge"; 21 : print "Psychédélique"; 22 : print "Progressive Rock"; 23 : print "Kraut Rock"; 24 : print "Glam Rock"; 25 : print "New Wave"; 26 : print "Cold Wave"; 27 : print "Punk"; 28 : print "Indus"; 29 : print "Speed"; 30 : print "MetalTrash"; 31 : print "MetalBlack"; 32 : print "Black Metal Symphonique"; 33 : print "Neo Metal"; 34 : print "Rap Metal"; 35 : print "Old School"; 36 : print "Gangsta Rap"; 37 : print "West Coast HipHop"; 38 : print "East Coast HipHop"; 39 : print "R&B"; 40 : print "Soul"; 41 : print "Funk"; 42 : print "Roots"; 43 : print "Reggae"; 44 : print "Rock Steady"; 45 : print "In@'edit"; 46 : print "Ska Punk"; 47 : print "Ska"; 48 : print "Core"; 49 : print "Hardcore Mélodique"; 50 : print "Rock Festif"; 51 : print "Disco"; 52 : print "Dance"; 53 : print "Ragga"; 54 : print "Groove"; } print " de "; style underline; l = random(40); switch(l) { 1 : print "Smoke on the Water"; 2 : print "No Woman No Cry"; 3 : print "Rasputin"; 4 : print "Papa was a Rolling Stone"; 5 : print "Big Bisou"; 6 : print "King Kong Five"; 7 : print "Rapper's Delight"; 8 : print "La Macarena"; 9 : print "Creep"; 10 : print "La B.O. de Guns 1648"; 11 : print "Sultans of Swing"; 12 : print "In Your Eyes"; 13 : print "Starlight"; 14 : print "Cotton Eye Joe"; 15 : print "I Want Your Sex"; 16 : print "Let's Talk About Sex"; 17 : print "Division Bells"; 18 : print "Video Killed The Radio Star"; 19 : print "I am walking away"; 20 : print "Master and Servant"; 21 : print "Didi"; 22 : print "Hijo de la Luna"; 23 : print "Hotel California"; 24 : print "Guantanamera"; 25 : print "Stach Stach"; 26 : print "Don't Cry For Me Argentina"; 27 : print "Girl From Ipanema"; 28 : print "Like a Prayer"; 29 : print "O Sole Mio"; 30 : print "The Fool"; 31 : print "Sex Bomb"; 32 : print "Salma ya Salama"; 33 : print "Olive et Tom Champions de Foot"; 34 : print "Les Lacs Du Connemara"; 35 : print "Eye of The Tiger"; 36 : print "Billy Le Funkyman"; 37 : print "Nothing is gonna change my Love for You"; 38 : print "Let the Beat control your Body"; 39 : print "Soir@'ee Disco"; 40 : print "Daddy Cool"; } style roman; print " par "; musiquecool(); print ".~^^^^^^^"; style underline; print "*Glups*^^^^^^"; ]; [soluce; print "~Hey Jonas G@'enie, t'as une brillante id@'ee?~^^^^Jonas r@'eflechit un instant, puis vous dit avec assurance :^^^^^~ "; if (plot_depth==2) {print "Bah, le mieux @`a faire pour l'instant, c'est de trouver Rando, non? D'hab' il est dans sa boutique ~Mix Magique~ @`a Belleville.~ ";} if (plot_depth==3) {print "Faut qu'on trouve Rando.~ ";} if (plot_depth==4) {print "On met les voiles.~ ";} if (plot_depth==5) {print "Ben...faut trouver DJ Shadow, non? Il est concert en ce moment @`a L'Elys@'ee Montmartre...Mais pour y rentrer...~ ";} if (plot_depth==6) {print "Mmm...faut trouver son disque @`a l'autre, nan? Je connais pas Happy Samples, mais ca doit @^etre du cot@'e de Chatelet les Halles.~ ";} if (plot_depth==7) {print "Pfff...un sample d'orgue de Barbarie...je me demande o@`u-ce-qu'on va pouvoir trouver @@ca ! Peut @^etre dans un endroit plut@^ot touristique...~ ";} if (plot_depth==8) {print "On a tout ce qu'il faut, non? Retournons voir l'autre nul.~ ";} if (plot_depth==9) {print "Amenons le disque @`a l'autre Loser. Ils ont vraiment des go@^uts nuls ces types.~ ";} if (plot_depth==10) {print "Le cinqui@`eme disque? C'est plut@^ot du cot@'e de chez toi, @@ca !~ ";} if (plot_depth==11) {print "Ben il reste plus qu'@`a se pointer @`a la Fnac.~ ";} if (plot_depth==12) {print "On l'@'ecoute ce CD, ouais? Apr@'es tout ce qu'on a fait pour l'avoir...~ ";} if (plot_depth>12) {print "Nan. A toi de r@'eflechir, un peu !";} print "^^^^^"; ]; [EnregistrerSub; if (dictaphone == child(Player)) { if (plot_depth==7) { if (orgue in location) { print "^Saisissant votre dictaphone, vous vous approchez du joueur d'orgue et vous enregistrez dix longues minutes de son instrument...suffisamment, certainement, pour r@'epondre aux besoins du patron de Happy Samples. ";plot_depth=plot_depth+1; } else { print "^Vous enclenchez l'enregistrement, mais rien de vraiment interressant n'est @`a @^etre enregistr@'e par ici. Vous rembobinez la cassette au d@'ebut. "; } } else { print "^Pour le fun, vous enregistrez les bruits des alentours. C'est bien cool la technologie. "; } } else { print "Enregistrer quoi? Avec quoi?"; } ]; [UntieSub;print "Je suis persuad@'e que ca part d'une bonne intention, mais vous ne voyez pas de moyen concret de le faire. ";]; [TaperSub w; wn=consult_from; w=NextWord(); if (location==parent(parent(clavier))) { switch(w) { 'fleurs','plantes','plante','fleur','lys' : move sac to biblio;various=7;print "La navette file @`a toute vitesse sur l'@'etoffe, et des motifs s'impriment rapidement ; telle une machine @`a @'ecrire, vous voyez s'imprimer les mots : ~Requ@^ete accept@'ee. ~^^Vous entendez un roulement continu, et vous voyez un grand sac bleu, tract@'e par une machinerie au plafond, remonter de l'ab@^ime, puis s'avancer vers vous, et enfin @^etre plac@'e, suspendu @`a quelques centim@`etres du sol, @`a vos cot@'es. "; 'margot' : print "La navette file @`a toute vitesse sur l'@'etoffe, et des motifs s'impriment rapidement ; telle une machine @`a @'ecrire, vous voyez s'imprimer les mots :^~Bonjour. Nous n'avons pas d'entr@'ee pour ce sujet. Pas encore...~ "; 'lachesis','atropos' : print "La navette file @`a toute vitesse sur l'@'etoffe, et des motifs s'impriment rapidement ; telle une machine @`a @'ecrire, vous voyez s'imprimer les mots : ~Ces entr@'ees sont confidentielles. ~ "; 'douglas' : print "La navette file @`a toute vitesse sur l'@'etoffe, et des motifs s'impriment rapidement ; telle une machine @`a @'ecrire, vous voyez s'imprimer les mots : ~Cette entr@'ee a @'et@'e effac@'ee. ~ "; default : print "La navette file @`a toute vitesse sur l'@'etoffe, et des motifs s'impriment rapidement ; telle une machine @`a @'ecrire, vous voyez s'imprimer les mots : ~Requ@^ete refus@'ee : soit l'item propos@'e n'existe pas, soit vous ne disposez pas de l'autorisation necessaire @`a sa consultation. ~ "; } } else if (location==parent(parent(clavier2))) { switch(w) { 'non' : if (vtalk==3) {vtalk=vtalk+1;} else {dalert=1;} 'plantes','fleurs','plante','fleur','lys' : if (vtalk==1) {vtalk=vtalk+1;} else {dalert=1;} 'lachesis','atropos' : if (vtalk==2) {vtalk=vtalk+1;} else {dalert=1;} 'margot' : if (vtalk==0) {vtalk=vtalk+1;} else {dalert=1;} default : if (vtalk~=0) {dalert=1;} } print "^Les aiguilles immat@'erielles volent en tout sens et tissent dans l'air des mots flottants qui s'envolent sous vos yeux :^"; if (dalert==1) {print "~Non, je ne comprends pas...~^Les aiguilles @'ecrivent encore :^";dalert=0;} switch(vtalk) { 0 : print "~Bonjour. Qui @^etes vous? ~ "; 1 : print "~Je suis le gardien. Que venez vous chercher?~ "; 2 : print "~Bien entendu. Qui vous envoie?~ "; 3 : print "~Hum. Et vous avez le mot de passe?~ "; 4 : print "~Hum. Cette question @'etait un peu sournoise, j'en conviens. Bienvenue dans la section fleurs et plantes de notre biblioth@`eque, annexe Margot, sp@'ecialement am@'enag@'ee pour vous. Bonne chance, je vais aller ailleurs maintenant. Il n'y a plus de raison qu'il y ait un gardien. Ce fut un plaisir, mademoiselle. ~^^L'apparition s'incline discretement et disparait doucement. En lieu et place, vous voyez une ouverture droit devant vous. ";plot_depth=plot_depth+1; } } else { print "Donner des petites tapes ici et l@`a ne vous menera pas loin, miss. "; } ]; [TisserSub; if (noun==chapeau && second==aiguille) {switch(aiguille.combo) { 66 : clothosfinal2.inseminated=1;while(child(aiguille)~=0) {remove child(aiguille);} filblanc.couped=0; filbleu.couped=0; filmarron.couped=0; filrouge.couped=0; filjaune.couped=0; filviolet.couped=0; filvert.couped=0; filorange.couped=0; 99 : clothosfinal2.bruled=1;while(child(aiguille)~=0) {remove child(aiguille);} filblanc.couped=0; filbleu.couped=0; filmarron.couped=0; filrouge.couped=0; filjaune.couped=0; filviolet.couped=0; filvert.couped=0; filorange.couped=0; }} else if (noun==mouchoir && second==aiguille) {if (aiguille.combo==99) {EmployeBrule();while(child(aiguille)~=0) {remove child(aiguille);} filblanc.couped=0; filbleu.couped=0; filmarron.couped=0; filrouge.couped=0; filjaune.couped=0; filviolet.couped=0; filvert.couped=0; filorange.couped=0;} else {print "Mmm...rien ne se passe. ";}} else if (noun==panneauc && second==aiguille) {if (aiguille.combo==99) {if (buche in cheminee) {FeuBrule();while(child(aiguille)~=0) {remove child(aiguille);} filblanc.couped=0; filbleu.couped=0; filmarron.couped=0; filrouge.couped=0; filjaune.couped=0; filviolet.couped=0; filvert.couped=0; filorange.couped=0;} else {print "Vous voyez une petite flamme brillante grandir puis s'@'etioler dans le foyer de la chemin@'ee...hum... ";}} else {print "Mmm...rien ne se passe. ";}} else if (noun==scarf && second==aiguille) { if (aiguille.combo==99) {style underline;print "Non. Tu ne voudrais pas d@'etruire ce que tu m'as cr@'e@'e? ";style roman;print "Le fil orange disparait de l'aiguille.^";} else if (aiguille.combo==3) {if (plot_depth==49) {print "Vous passez le fil au travers de l'@'echarpe...vous voyez les fils se fondre dans le tissu, disparaitre, et un nouveau motif apparait...h@'e, je crois que ca a march@'e !";move lys to sentierjardin;plot_depth=plot_depth+1;} else {print "Mmm...les fils disparaissent mais un nouveau motif n'apparait pas...apparemment, on ne peut faire les choses qu'en un seul exemplaire avec cette technique. ";}} else if (child(aiguille)==nothing) {print "Vous plantez l'aiguille dans l'@'echarpe, mais rien ne se passe. Peut-@^etre vous faut-il un fil pass@'e dans le chas de l'aiguille... ";} else {print "Vous passez les fils dans le tissu par l'aiguille, ceux ci disparaissent dans le tissu sans que rien ne se passe...apparemment ce n'@'etait pas la bonne combinaison. ";} while(child(aiguille)~=0) {remove child(aiguille);} filblanc.couped=0; filbleu.couped=0; filmarron.couped=0; filrouge.couped=0; filjaune.couped=0; filviolet.couped=0; filvert.couped=0; filorange.couped=0; } else {print "Tisser quoi avec quoi? Je ne crois pas que ce soit possible... ";} ]; [AideSub; print "********************Commandes du Jeu FILAMENTS**************"; print "^^Pour interagir avec le monde de FILAMENTS, il vous faut donner des ordres dans la ligne de commande le plus ~naturellement~ possible, pas trop compliqu@'es, et @`a l'infinitif. Exemple :^^>ouvrir la porte^^Ou encore :^^>prendre un cd et le mettre dans la chaine hi-fi^^Et ainsi de suite...Si vous rencontrez des erreurs, essayez de le formuler autrement. (Note : le verbe ~utiliser~ n'existe pas dans le jeu. Donc vous n'utilisez pas de clef avec la porte ou vous n'utilisez pas le t@'el@'ephone, mais vous tapez : ouvrir la porte avec la clef (ou d@'everouiller) et prendre combin@'e et composer le 18.)^^Les directions sont nord, sud, est, ouest, nord ouest, nord est, sud ouest, sud est, mais aussi dedans, dehors, en haut, en bas. Si vous voulez aller au nord, vous pouvez taper :^^>aller nord^^ou bien :^^>n^^Ce qui, pour les fr@'equents d@'eplacements que vous serez amen@'es @`a faire, est bien plus pratique.^^Le verbe ~examiner~ se raccourcit en ~x~ et le verbe ~attendre~ en ~a~. ~encore~ r@'ep@`ete une action. Enfin, vous pouvez @`a tout moment sauver en tapant ~sauver~, ~charger~ et ~recommencer~. Les points vous sont donn@'es par la commande ~points~. ^^Si vous rencontrez des incoh@'erences ou des erreurs, je vous remercie de bien vouloir m'en faire part @`a lejibe@@64hotmail.com^^"; print "^^Pour consulter la licence d'utilisation du jeu, tapez ~licence~ "; ]; [ComposerSub i; if (location==parent(phone)) { if (location==home) {print "^Vous tendez la main vers le t@'el@'ephone mais votre m@`ere interrompt votre geste : ~Halte l@`a, malheureuse ! J'attends un coup de fil hyper-urgent et";style underline;print " je ne veux pas";style roman;print " que le t@'el@'ephone soit occup@'e, compris?~^^Vous geignez : ~Mais maman, c'est toujours pareil ! On peut jamais se servir du t@'el@'ephone ici !~^^~Plus tard, peut-@^etre. ~^"; } else { if (noun==968) { if (plot_depth<25) {print "Le num@'ero sonne dans le vide. ";style underline;print "Quelle @'etrange id@'ee d'avoir compos@'e pr@'ecisement ce num@'ero. Vous ne seriez pas en train de tricher, par hasard? ;-)^";} if (plot_depth>25 && plot_depth<30) {print "Vous composez le num@'ero du commercial rencontr@'e plus t@^ot. Il d@'ecroche imm@'ediatement : ~Alors miss, satisfaite de votre choix?~^^~Euh...~^^~Parfait ! Je n'ai pas trop de temps, alors merci de me rappeler que dans le cas de r@'eclamations. Au revoir !~^Et il raccroche aussit@^ot. ";} if (plot_depth==30) {DialogueTelCom();} if (plot_depth>30) {print "Le num@'ero sonne dans le vide. ";} } else if (noun==17) {print "Sans raison valable, mieux vaut ne pas appeler les autorit@'es. ";} else if (noun==18) {print "Sans raison valable, mieux vaut ne pas appeler les autorit@'es. ";} else if (noun==12) {print "Sans raison valable, mieux vaut ne pas appeler les autorit@'es. ";} else {print "On d@'ecroche @`a l'autre bout du fil : ~Allo~ faites vous timidement.^^"; i=random(10);switch(i) { 1 : print "~Allo, c'est pour quoi?~ fait une voix de grand-m@`ere. "; 2 : print "Une voix d'homme vous sussure : ~Hey, tu as une jolie voix, qui es-tu?~ "; 3 : print "Vous entendez une musique d'attente interminable, genre ~Gantanamera~ jou@'ee au bontempi. "; 4 : print "~Cindy, c'est toi?~ demande un type. "; 5 : print "~Bonjour, Speed Rabbit Pizza bonjour, que voulez vous?~^^~Et bien je voudrais une maxi aux poivrons...~ Vous vous ressaissez soudainement. "; 6: print "~Bienvenue sur notre messagerie coquine sp@'eciale rencontres sur le Limousin. Osez le limousin. Si tu cherches une...~ "; 7 : print "~Sos suicide bonjour !~ "; 8 : print "~Salut, tu es bien sur le portable de Bouli. Si tu aimes les truites et que tu veux me laisser un message, parle apr@'es le bip sonore. "; 9 : print "On vous raccroche subitement au nez. "; 10 : print "ALLO? hurle un type @`a l'autre bout du fil, probablement sur un chantier. ";} print "^^Vous raccrochez aussit@^ot. ";} } } else if (player in cabine) { if (noun==968) { if (plot_depth<25) {print "Le num@'ero sonne dans le vide. ";style underline;print "Quelle @'etrange id@'ee d'avoir compos@'e pr@'ecisement ce num@'ero. Vous ne seriez pas en train de tricher, par hasard? ;-)^";} if (plot_depth>25 && plot_depth<30) {print "Vous composez le num@'ero du commercial rencontr@'e plus t@^ot. Il d@'ecroche imm@'ediatement : ~Alors miss, satisfaite de votre choix?~^^~Euh...~^^~Parfait ! Je n'ai pas trop de temps, alors merci de me rappeler que dans le cas de r@'eclamations. Au revoir !~^Et il raccroche aussit@^ot. ";} if (plot_depth==30) {DialogueTelCom();} if (plot_depth>30) {print "Le num@'ero sonne dans le vide. ";} } else if (noun==17) {print "Sans raison valable, mieux vaut ne pas appeler les autorit@'es. ";} else if (noun==18) {print "Sans raison valable, mieux vaut ne pas appeler les autorit@'es. ";} else if (noun==12) {print "Sans raison valable, mieux vaut ne pas appeler les autorit@'es. ";} else {print "On d@'ecroche @`a l'autre bout du fil : ~Allo~ faites vous timidement.^^"; i=random(10);switch(i) { 1 : print "~Allo, c'est pour quoi?~ fait une voix de grand-m@`ere. "; 2 : print "Une voix d'homme vous sussure : ~Hey, tu as une jolie voix, qui es-tu?~ "; 3 : print "Vous entendez une musique d'attente interminable, genre ~Gantanamera~ jou@'ee au bontempi. "; 4 : print "~Cindy, c'est toi?~ demande un type. "; 5 : print "~Speed Rabbit Pizza bonjour, que voulez vous?~^^~Et bien je voudrais une maxi aux poivrons...~ Vous vous ressaissez soudainement. "; 6: print "~Bienvenue sur notre messagerie coquine sp@'eciale rencontres sur le Limousin. Osez le limousin. Si tu cherches une...~ "; 7 : print "~Sos suicide bonjour !~ "; 8 : print "~Salut, tu es bien sur le portable de Bouli. Si tu aimes les truites et que tu veux me laisser un message, parle apr@'es le bip sonore. "; 9 : print "On vous raccroche subitement au nez. "; 10 : print "~ALLO?~ hurle un type @`a l'autre bout du fil, probablement sur un chantier. ";} print "^^Vous raccrochez aussit@^ot. ";} } else { print "^Super Margot. A part que t'as pas de t@'el@'ephone sous la main.^";} ]; [XyzzySub; print "^~Xyzzy~ dites vous tout haut.^"; if (Jonas in location) {print "Jonas se retourne vers vous et dit : ~A tes souhaits, girl~ ";} else {print "Rien ne se passe. ";} ]; [LicenseSub; print "Avant propos :^^Inform est un syst@`eme developp@'e par Graham Nelson^La traduction fran@@caise des biblioth@`eques servant @`a la compilation @`a @'et@'e @'etablie par Jean Luc Pontico.^Je remercie des deux personnes en particulier sans le travail desquelles FILAMENTS n'aurait jamais pu voir le jour.^^"; print " LICENCE PUBLIQUE GENERALE CONCERNANT LA FICTION INTERACTIVE (GPL) ^^ 1. Cette licence vous permet d'utiliser et de distribuer FILAMENTS sous les conditions explicit@'ees ci-dessous. Vous ne pouvez pas jouer ou distribuer ce jeu si vous n'@^etes pas d'accord avec celles-ci. ^^ 2. Ce jeu, ainsi que tout fichier associ@'e et tout r@'esultat produit par le jeu, ainsi que tout d@'eriv@'e, sont la propri@'et@'e copyright (c) 2003 de JB Ferrant @`a l'exception des paroles de Feeling Good qui sont copyright Concord Music Ltd. ^^ 3. Toute demande concernant les pr@'esents termes de la licence doivent @^etre adress@'es au d@'etenteur du copyright, dont l'adresse est @`a l'@'ecriture de la pr@'esente licence : lejibe@@64hotmail.com. Si cette adresse est injoignable, vous pouvez joindre l'auteur via le newsgroup Internet rec.arts.int-fiction ^^ 4. Vous avez l'autorisation d'utiliser ce jeu et d'en faire des copies pour votre usage personnel sans aucune restriction. Vous pouvez @'egalement copier et distribuer ce jeu par n'importe quel moyen, dans la mesure o@`u : ^a) Vous ne faites pas payer ces actions^b) Le jeu, tous les fichiers joints avec le jeu et cette pr@'esente licence ne sont pas modifi@'es. ^^ 5. Vous n'@^etes pas autoris@'e @`a demander de l'argent contre la distribution du jeu (soit pour le b@'en@'efice personnel ou tout simplement pour rembourser le co@^ut de la distribution) dans le cadre d'un produit, ou d'une compilation, sans autorisation explicite et @'ecrite pr@'ealable. ^^ 6. Ce jeu est fourni sans AUCUNE GARANTIE quelqu'elle soit, expresse ou implicite. ^^ ";]; ! ---------------------------------------------------------------------------- ! Grammaire & Verbes ! ---------------------------------------------------------------------------- Include "FrenchG"; Verb 'enregistrer' * -> Enregistrer * noun -> Enregistrer * 'avec' noun -> Enregistrer; Verb 'points' * ->Points; Verb 'composer' * number ->Composer * 'le' number ->Composer; Verb 'taper' * topic ->Taper * 'sur' topic ->Taper; Verb 'detacher' 'delier' 'denouer' * noun ->Untie; Verb 'tisser' 'coudre' * held 'avec' held ->Tisser; Verb 'xyzzy' * ->Xyzzy; Verb 'aide' * ->Aide; Verb 'licence' * ->License; ! ----------------------------------------------------------------------------