!========================================================== Constant Story "Ma princesse adorée"; ! Le tiret cadratin Zcharacter table + '@{2014}'; Constant Headline "^Un jeu par Hugo Labrande^1ères Rapid'Fictions @{2014} 19 août 2007^Tapez @<< info @>> pour accéder à l'aide du jeu, ainsi qu'à des informations sur le jeu, son auteur, et sa licence.^"; Release 5; ! Abréviations françaises Abbreviate "C'est" "'est" "était " " de " "ne " "pas " "on " " d'" " n'" " l'" " la" " un" "les" "ave" "ser" " personn" "éjà" "ain"; ! Abréviations de ponctuation Abbreviate " ; " ". " "..." ", "; ! Abréviations de conjonctions Abbreviate "dans " "pour " "avec " "et " "que " " qu" "plus " "mais" "ais"; ! Abréviations terminaisons Abbreviate "ant " "ent " "ait " "st " "er " "tion "; ! Abréviations deuxième personne du pluriel Abbreviate "vou" "ouv"; ! Abréviations bouts de mots Abbreviate "s l" "s e" "s p" "s d" "e pour" "e c"; ! Abréviations Inform Abbreviate ".^^" "@{2014} " "@<< " "@>>" " ne pouvez pas"; ! Abréviations spécifiques au jeu Abbreviate "ell" "a princesse" "En fait, ce sort vous est pour le moment inconnu, mais vous " "avez bon espoir de le maîtriser un jour, en " "travaillant dur à l'École de Magie..." " n'avez pas assez d'argent pour acheter une " " pétrifié" "pétrification" " balcon" " professeur" "mandoline" "ménestrel" "e sort" "'aubergiste "; Replace OffersLight; Constant MAX_SCORE=40; Attribute bought; global appmand=0; global appflu=0; global niv1=0; global niv2=0; !1=mission 2=mission accomplie global niv3=0; !1=mission 2=mission accomplie global argent=100; global menestmed=0; global ivro=0; ! 1=parlé, 2=pétrifié, 3=fouillé global tonn=0; Include "Parser"; Include "VerbLib"; [ OffersLight obj; if (obj == nothing) rfalse; else rtrue; ]; !========================================================== ! Routine [ w8 ; return KeyCharPrimitive(); ]; !========================================================== ! Lieux Object marche "Place principale" with description [; print "Vous êtes sur la place principale du village. Des passants passent, et quelques manants manent ici et là. Un ménestrel est là, assis par terre, "; if (menestmed==0) {print "jouant de la mandoline, sa sébile posée devant lui.";} else {print "immobile @{2014} vous l'avez pétrifié...";} " Il y a une taverne au sud de la place, et une échoppe à l'ouest. Deux chemins partent de la place : au nord, le chemin mène au château, et vous pouvez aller à l'est, vers la EASM, l'École d'Apprentissage Supérieur de la Magie, où vous prenez des cours en ce moment."; ], before [; Listen: if (noun==0) {if (menestmed==0) {"Vous pouvez entendre le chant du ménestrel, qui s'accompagne à la mandoline.";}} ], n_to chateau, e_to ecole, s_to taverne, w_to echoppe, in_to "Veuillez indiquer le lieu où vous voulez entrer.", has ; Object mockmarche "Place principale" marche with description [; print "Vous êtes sur la place principale du village. Des passants passent, et quelques manants manent ici et là. Un ménestrel est là, assis par terre, "; if (menestmed==0) {"jouant de la mandoline, sa sébile posée devant lui.";} else {"immobile @{2014} vous l'avez pétrifié...";} ], name 'place' 'marche' 'principale' 'village', before [; Search: "Ça ne servirait à rien, tout est là."; Take, Push, Pull: "Vous ne pouvez pas faire ça."; ], has female scenery concealed; Object chemins "chemins" marche with description "Deux chemins partent de la place : au nord, le chemin mène au château, et vous pouvez aller à l'est, vers la EASM, l'École d'Apprentissage Supérieur de la Magie, où vous prenez des cours en ce moment.", name 'chemin' 'chemins' 'route' 'routes' 'sentier' 'sentiers', before [; Take: "Il y a deux chemins différents ; indiquez plutôt la direction où vous voulez vous rendre."; Push, Pull: "Vous ne pouvez pas faire ça."; Search: "Vous ne voyez rien d'intéressant par terre."; ], has pluralname scenery concealed ; Object taverne "Dans la taverne" with description "Vous voici à l'intérieur de la taverne. Plusieurs clients sont assis aux tables ; des habitués, pour la plupart. Au fond, une ouverture donne sur la deuxième salle de la taverne, une salle plus petite et qui semble déserte pour le moment. L'aubergiste essuie les verres derrière son bar. Vous pouvez sortir par le nord de la taverne, ou bien aller dans la deuxième salle de la taverne, vers le sud.", before [; Listen: if (noun==0) {"L'auberge est emplie de leurs rires gras et de leurs conversations animées.";} Smell: if (noun==0) {"Ça sent la bière, le vin, la camaraderie, l'ivresse, les hommes...";} ], out_to marche, n_to marche, s_to taverne2, has ; Object taverne2 "Dans la taverne" with description [; print "Vous êtes dans la deuxième salle de la taverne, où il y a des tables, des chaises, et où le patron entrepose ses tonneaux. Celle-ci est nettement moins occupée ; en fait, il n'y a qu'une seule personne ici : un ivrogne qui "; if (ivro<2) {if (ivro==0) {print "boit seul, en silence, l'air renfrogné.";} else {print "pleure des larmes d'ivrogne, affalé sur la table...";}} else {print "est affalé sur sa table, immobile @{2014} vous l'avez pétrifié...";} " Vous pouvez revenir dans la salle principale de la taverne par le nord."; ], n_to taverne, out_to taverne, has ; Object mocktav "taverne" with description [; switch(location){ marche: "Une taverne, un peu animée ; à cette heure elle doit accueillir tous les habitués..."; taverne: "Vous voici à l'intérieur de la taverne. Plusieurs clients sont assis aux tables ; des habitués, pour la plupart. Au fond, une ouverture donne sur la deuxième salle de la taverne, une salle plus petite et qui semble déserte pour le moment. L'aubergiste essuie les verres derrière son bar."; taverne2: print "Vous êtes dans la deuxième salle de la taverne, où il y a des tables, des chaises, et où le patron met ses tonneaux. Celle-ci est nettement moins occupée ; en fait, il n'y a qu'une seule personne ici : un ivrogne qui "; if (ivro<2) {if (ivro==0) {print "boit seul, en silence, l'air renfrogné.";} else {print "pleure des larmes d'ivrogne, affalé sur la table...";}} else {print "est affalé sur sa table, immobile @{2014} vous l'avez pétrifié...";} " Vous pouvez revenir dans la salle principale de la taverne par le nord."; } ], parse_name [ n ; n=0; while (NextWord()=='taverne' or 'auberge' or 'bar' or 'ouverture' or 'brasserie') {n=n+10;} return n; ], before [; Search: "Ça ne servirait à rien, tout est là."; Enter: if (location==marche) {print "Vous entrez dans la taverne.^"; PlayerTo(taverne); rtrue;} else {"Vous y êtes déjà.";} Exit: if (location==taverne || location==taverne2) {PlayerTo(marche); rtrue;} ], found_in marche taverne taverne2, has female scenery concealed; Object portetav "porte de la taverne" with description "Il s'agit de la porte de la taverne.", parse_name [ n mot ; n=0; mot='s'; do {if (mot=='porte' or 'taverne' or 'auberge' or 'bar' or 'brasserie') {n=n+9;} if (mot=='porte' or 'entree' or 'sortie') {n++;} mot=NextWord();} until (mot==0); return n; ], before [; Open, Push: if (location==marche) {print "Vous ouvrez la porte et entrez dans la taverne.^"; PlayerTo(taverne); rtrue;} else {print "Vous ouvrez la porte et sortez.^"; PlayerTo(marche); rtrue;} Close: "Il se trouve qu'elle est déjà fermée."; ], found_in marche taverne, has female scenery concealed; Object echoppe "Dans l'échoppe" with description "L'enseigne de l'échoppe dit @<< Tout pour l'aventurier @>>. Ici, on vend apparemment des accessoires pour les voyages et aventures en tous genres... Le vendeur est derrière son comptoir, et vous regarde d'un air avenant. Vous pouvez sortir par la porte à l'est.", e_to marche, out_to marche, has ; Object mockecho "échoppe" with description "L'enseigne de l'échoppe dit @<< Tout pour l'aventurier @>>. Ici, on vend apparemment des accessoires pour les voyages et aventures en tous genres...", parse_name [ n ; n=0; while (NextWord()=='echoppe' or 'magasin' or 'enseigne' or 'boutique' or 'commerce') {n=n+10;} return n; ], before [; Search: "Ça ne servirait à rien, tout est là."; Enter: if (location==marche) {print "Vous entrez dans l'échoppe.^"; PlayerTo(echoppe); rtrue;} else {"Vous y êtes déjà.";} Exit: if (location==echoppe) {PlayerTo(marche); rtrue;} ], found_in marche echoppe, has female scenery concealed; Object porteecho "porte de l'échoppe" with description "Il s'agit de la porte de l'échoppe.", parse_name [ n mot ; n=0; mot='w'; do {if (mot=='porte' or 'echoppe' or 'magasin' or 'boutique' or 'commerce') {n=n+9;} if (mot=='porte' or 'entree' or 'sortie') {n++;} mot=NextWord();} until (mot==0); return n; ], before [; Open, Push: if (location==marche) {print "Vous ouvrez la porte et entrez dans l'échoppe.^"; PlayerTo(echoppe); rtrue;} else {print "Vous ouvrez la porte et sortez.^"; PlayerTo(marche); rtrue;} Close: "Il se trouve qu'elle est déjà fermée."; ], found_in marche echoppe, has female scenery concealed; Object chateau "Devant le château" with description "Vous êtes devant le château du roi, un grand château fort en pierre. Devant le pont-levis au nord, des gardes sont en faction, hallebarde à la main. Au nord-ouest, vous savez qu'un petit chemin vous permet de rejoindre le balcon de votre bien-aimée, mais vous pouvez revenir sur la place par le sud.", n_to "Les gardes vous barrent le passage. @<< Interdiction d'entrer, monsieur. Le roi n'est pas disposé à recevoir qui que ce soit. @>>", in_to "Les gardes vous barrent le passage. @<< Interdiction d'entrer, monsieur. Le roi n'est pas disposé à recevoir qui que ce soit. @>>", nw_to [; if (niv1~=0) { if (flute in player || mandoline in player) { move lierre to balconsoir; move vegeta to balconsoir; move herbe2 to balconsoir; if (caillou notin player) {move caillou to balconsoir;} give lierre ~concealed; give herbe2 ~concealed; give caillou ~concealed; return balconsoir; } else {return balcon;} } else {return balcon;} ], s_to marche, before [; Swim: "Dans les douves ? Beurk. Vous ne préférez pas."; ], has ; Object mockchateau "château" with description [; switch(location){ marche: "Un peu plus loin, au nord, se trouve le grand château fort du roi... Là où est votre bien-aimée !"; chateau: "Vous êtes devant le château du roi, un grand château fort en pierre. Devant le pont-levis au nord, des gardes sont en faction, hallebarde à la main."; balcon: "Le château est imposant, vu d'en bas ; ce grand fort de pierre est symbole de la puissance du roi, et est conçu pour résister à des attaques ennemies. La seule fenêtre ici se trouve être celle du balcon de votre bien-aimée, la princesse : rien qu'à voir cette fenêtre, votre c@oeur s'emplit de joie..."; balconsoir: "Il fait nuit, et les pierres du château sont sombres, bleues, seulement éclairées par la lueur qui se dégage de la chambre de la princesse."; } ], name 'chateau' 'pierre' 'fort' 'citadelle' 'forteresse', before[; Enter: if (location==chateau) {"Les gardes vous barrent le passage. @<< Interdiction d'entrer, monsieur. Le roi n'est pas disposé à recevoir qui que ce soit. @>>";} else {"Vous en êtes trop loin.";} Push, Pull, Search, Squeeze, Touch, Take: "Vous en êtes trop loin."; ], found_in chateau marche, has scenery concealed ; Object douves "douves" chateau with description "Les douves contiennent une eau saumâtre et fangeuse, très peu ragoûtante. Vous imaginez en plus qu'elles doivent être peuplées... Ainsi mieux vaut ne pas tenter la baignade et rentrer dans le château par le pont-levis...", name 'douves' 'fosse' 'tranchee' 'tranchees', before[; Search: "Vous en êtes trop loin."; Empty: "Plus facile à dire qu'à faire, et puis qui sait ce qui se trouve au fond des douves... Sans parler de l'odeur... Donc, non."; ], has scenery concealed pluralname ; Object pontlev "pont-levis" chateau with description "Le pont-levis est actuellement baissé, mais il est gardé par deux soldats en faction, qui ne vous laisseront pas passer...", name 'pont' 'levis', before[; Push, Pull, Search, Squeeze, Touch, Take: "Vous en êtes trop loin."; ], has scenery concealed ; Object chem "chemin" chateau with description "Vous savez que ce chemin de terre vous mène vers le nord-ouest, sous le balcon de votre bien-aimée.", name 'chemin' 'terre' 'piste' 'sentier', before [; Take: if (niv1~=0) { if (flute in player || mandoline in player) { move lierre to balconsoir; move vegeta to balconsoir; move herbe2 to balconsoir; if (caillou notin player) {move caillou to balconsoir;} give lierre ~concealed; give herbe2 ~concealed; give caillou ~concealed; PlayerTo(balconsoir); rtrue;; } else {PlayerTo(balcon); rtrue;} } else {PlayerTo(balcon); rtrue;} Push, Pull: "Vous ne savez pas faire ça."; Search: "Vous ne remarquez rien sur le sol."; ], has scenery concealed ; Object balcon "Le balcon" with description [; print "C'est le balcon de la chambre de la princesse ! Vous le savez, vous l'avez déjà repéré. Vous êtes resté bien des soirées ici, cherchant un moyen d'attirer favorablement l'attention de la princesse, mais n'osant pas faire le premier pas. Mais vous êtes décidé à tout tenter pour qu'elle vous remarque... C'est un joli petit jardin, ici @{2014} la princesse aime beaucoup les fleurs. Vous pouvez voir des petites pousses d'herbes et de plantes en tous genres au pied du mur"; if (herbemock hasnt bought) {print " : du lierre, mais aussi des herbes colorées, qui peuvent servir pour des potions d'après votre professeur de magie";} else {print ", où d'ailleurs un lierre grimpe";} ". Vous pouvez revenir devant le château par le sud-est."; ], se_to chateau, before [; Smell: if (noun==0) {"Les herbes plantées ici sentent bon, mais on ne les sent pas beaucoup.";} ], has ; Object balconsoir "Le balcon" with description [; if (princesse notin balconsoir) {"La nuit est tombée. Vous vous placez derrière un buisson, et regardez discrètement : il y a de la lumière chez la princesse ! La princesse est dans sa chambre ! C'est le moment ou jamais : il faut oser, maintenant, et attirer son attention !";} else {"Enfin ! Vous êtes sous le balcon de la princesse, et celle-ci vous regarde en souriant du haut de son balcon. Vous avez peine à y croire. Elle est encore plus belle que dans votre souvenir... Il vous faut trouver un moyen de monter à son balcon !";} ], before [; Smell: if (noun==0) {"Les herbes plantées ici sentent bon, mais on ne les sent pas beaucoup.";} ], se_to [; aban(); rtrue; ], has ; Object balc "balcon" with description [; print "En haut du mur, c'est le petit balcon de la chambre de la princesse. Un rideau sépare la chambre du balcon. "; if (princesse in balconsoir) {"La princesse est sur le balcon, et vous regarde en souriant, vous invitant à la rejoindre.";} else {"La princesse doit être à l'intérieur, dans sa chambre.";} ], name 'balcon' 'fenetre' 'fenetres' 'mur' 'terrasse' 'chambre' 'rideau', found_in balcon balconsoir, before [; Take: "C'est absurde, vous ne pouvez pas prendre ça."; Climb: "Vous n'aurez pas assez de prises, et le lierre n'est pas assez solide."; ThrownAt: switch(noun){ caillou: if (player in balconsoir && princesse notin balconsoir) {lapid(); rtrue;} corde: if (player in balconsoir) {if (princesse notin balconsoir) {"Vous ne voulez pas vous introduire comme ça chez la princesse, alors qu'elle ignore tout de vous et de votre présence ici.";} else {cord(); rtrue;}} } Search, Open, Touch: "Le balcon est hors d'atteinte."; ], has scenery concealed ; Object vegeta "végétation" balcon with description "La princesse aime les fleurs et la nature ; ainsi, sous son balcon, il y a des belles fleurs et de grandes plantes, mais aussi quelques buissons. La princesse aime bien s'occuper de ces plantes, paraît-il. Attention à ne pas les écraser donc...", name 'buisson' 'buissons' 'arbre' 'arbres' 'fleur' 'fleurs' 'vegetation' 'parterre', before [; Take: "Vous n'osez pas : ce sont les fleurs de la princesse, et vous ne voudriez pas les lui voler..."; Squeeze: "La princesse tient à ses fleurs, et leur infliger ce sort ne lui plairait pas trop..."; ], has scenery concealed female ; Object ecole "À l'extérieur de l'école de magie" with description "L'École d'Apprentissage Supérieur de la Magie est un ancien bâtiment en bois, imposant et haut. Une bannière aux armes du fondateur de l'école, le mythique Phrygoshn, flotte dans le vent. Des buissons de roses sont plantés de chaque côté de la porte. Vous pouvez entrer par le nord, ou revenir sur la place par l'ouest.", before [; Smell: if (noun==0) {"Les buissons de roses embaument le lieu d'une odeur délicate.";} ], n_to intecole, in_to intecole, w_to marche, has ; Object ecolemock "école" with description [; switch(location){ intecole: print "L'intérieur de l'école est aussi impressionnant que l'extérieur ; le toit haut de l'école est imposant, et vous pouvez entendre les échos des pas résonner dans le bâtiment. En face de vous, vous voyez votre professeur de magie"; if (niv1==0) {print ", qui vous fait un signe de main. ";} else {print ". ";} "Vous pouvez ressortir par le sud."; marche: "L'École d'Apprentissage Supérieur de la Magie est un ancien bâtiment en bois, imposant et haut. C'est là que vous étudiez actuellement la magie."; ecole: "L'École d'Apprentissage Supérieur de la Magie est un ancien bâtiment en bois, imposant et haut. Une bannière aux armes du fondateur de l'école, le mythique Phrygoshn, flotte dans le vent. Des buissons de roses sont plantés de chaque côté de la porte."; } ], name 'ecole' 'batiment' 'apprentissage' 'magie' 'construction' 'ancien' 'easm' 'universite' 'superieur', before [; Enter: switch(location){ ecole: print "Vous entrez dans l'école.^"; PlayerTo(intecole); rtrue; intecole: "Vous y êtes déjà."; marche: "Vous en êtes trop loin."; } Exit: switch(location){ ecole: "Vous êtes déjà à l'extérieur de l'école."; intecole: PlayerTo(ecole); rtrue; } Push, Pull, Search, Squeeze, Touch, Take: if (location~=ecole) {"Vous en êtes trop loin.";} ], found_in marche ecole intecole, has scenery concealed ; Object porte "porte en bois" with description "C'est la grande porte en bois de l'école.", name 'porte' 'grande' 'bois', found_in ecole intecole, before [; Push, Pull, Open: if (player in ecole) {print "Vous poussez la porte et entrez dans l'école.^"; playerTo(intecole); rtrue;} else {print "Vous poussez la porte et sortez de l'école.^"; playerTo(ecole); rtrue;} Close: "Elle est déjà fermée."; ], has scenery concealed ; Object banni "banniere" ecole with description "C'est la bannière de l'école, une bannière jaune et noire, aux armes du mythique fondateur de l'école, feu le grand sorcier Phrygoshn, célèbre dans tout le royaume pour sa maîtrise de la magie et ses faits d'armes. La bannière flotte doucement dans le vent.", name 'banniere' 'drapeau' 'armes' 'etendard', before [; Take: "Non seulement ce serait un quasi-sacrilège, mais en plus la bannière est trop haute."; Search: "Elle est hors d'atteinte."; ], has scenery concealed ; Object intecole "Dans l'école de magie" with description [; print "L'intérieur de l'école est aussi impressionnant que l'extérieur ; le toit haut de l'école est imposant, et vous pouvez entendre les échos des pas résonner dans le bâtiment. En face de vous, vous voyez votre professeur de magie"; if (niv1==0) {print ", qui vous fait un signe de main. ";} else {print ". ";} "Vous pouvez ressortir par le sud."; ], before [; Listen: if (noun==0) {"L'intérieur de l'école de magie est silencieux ; on peut juste entendre des échos de pas qui se répercutent dans le bâtiment.";} ], out_to ecole, s_to ecole, has ; Object toit "toit" intecole with description "Le toit de l'école est haut et imposant : vu d'en bas, vous vous sentez tout petit.", name 'grand' 'toit' 'haut' 'toiture', before [; Take, Push, Pull: "Le toit est vraiment trop haut pour que vous puissiez faire quoi que ce soit."; Search: "Il est hors d'atteinte."; ], has scenery concealed ; !========================================================== ! Objets Object argentobj "argent" with description "Votre argent, en menue monnaie @{2014} des sols, la monnaie du royaume.", name 'argent' 'monnaie' 'sols' 'pecule' 'economies', invent [; print "de l'argent (", argent, " sols)"; rtrue; ], before [; Drop: "Non, vous préférez garder votre argent, vous pourriez en avoir besoin."; Insert, PutOn: if (second==sebile) {if (argent>5) {argent=argent-5; print "Dans un accès de générosité vous posez cinq sols dans la sébile du ménestrel. "; if (menestmed==0) {"Celui-ci vous regarde, et sourit faiblement, tout en continuant à jouer de sa mandoline.";} else {"Peut-être vous pardonnera-t-il ainsi de l'avoir pétrifié...";}} else {"Vous n'avez pas assez d'argent @{2014} à la rigueur, c'est le ménestrel qui devrait vous faire l'aumône...";}} else {"Non, vous préférez garder votre argent, vous pourriez en avoir besoin.";} ], has ; Object menestrel "ménestrel" marche with description [; if (menestmed==1) {"Le ménestrel est toujours sous l'emprise de votre sort de pétrification, mais d'ici une heure il n'y paraîtra plus...";} else {"Le ménestrel est assis par terre, et chante, accompagné par sa mandoline. Il a les cheveux longs et frisés qui lui reviennent dans les yeux, et les yeux vides, dans le vague, comme sous l'emprise de champignons hallucinogènes... Vous l'écoutez distraitement : il est en train de chanter une chanson à propos d'une bataille qui se serait déroulée à Evermore... Mouais. Un drôle d'oiseau.";} ], short_name [; if (menestmed==1) {print "ménestrel pétrifié"; rtrue;} ], name 'menestrel' 'trouvere' 'troubadour' 'chanteur' 'musicien' 'barde' 'homme' 'guitariste', before [; ParlerSansPrecision, Ask: if (menestmed==0) {"Il semble trop occupé à jouer de sa mandoline.";} else {"Il est pétrifié, il ne vous répondra pas...";} Search: if (menestmed==0) {"Il n'apprécierait sûrement pas.";} else {if (mandoline notin menestrel) {"Il n'a rien d'intéressant sur lui.";} else {move mandoline to player; score=score+1; "Vous prenez la mandoline des mains du ménestrel pétrifié, en lui demandant pardon à mi-voix...";}} petri: if (niv2==2) {if (menestmed==0) {menestmed=1; score=score+4; "Vérifiant que personne ne vous regarde, vous vous concentrez pour lancer le sort. Comme d'habitude, un halo vert entoure vos mains : vous lancez le sort de pétrification sur le ménestrel. Celui-ci se transforme instantanément en statue de pierre, et prend une couleur grisâtre. Heureusement pour lui, les effets du sort ne durent qu'une petite heure.";} else {"Il est déjà pétrifié !";}} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} Listen: if (menestmed==0) {"Il est en train de chanter, en s'accompagnant de sa mandoline, une ballade à propos d'une bataille qui se serait déroulée à Evermore... Ça doit être une composition...";} else {"Étant donné que vous l'avez pétrifié, il ne fait aucun bruit.";} ], life [; Give: if (noun==argentobj) {if (argent>5) {argent=argent-5; print "Dans un accès de générosité vous posez cinq sols dans la sébile du ménestrel. "; if (menestmed==0) {"Celui-ci vous regarde, et sourit faiblement, tout en continuant à jouer de sa mandoline.";} else {"Peut-être vous pardonnera-t-il ainsi de l'avoir pétrifié...";}} else {"Vous n'avez pas assez d'argent @{2014} à la rigueur, c'est le ménestrel qui devrait vous faire l'aumône...";}} Tell, Answer: if (menestmed==0) {"Il semble trop occupé à jouer de sa mandoline.";} else {"Il est pétrifié, il ne vous répondra pas...";} ], orders [; Give: if (menestmed==0) {switch(noun){ mandoline: "C'est la sienne, et il ne voudra pas vous la donner."; sebile: "Il n'accepterait jamais."; default: "Il semble trop occupé à jouer de sa mandoline."; }} else {"Il est pétrifié, il ne vous répondra pas...";} ], has animate talkable transparent ; Object mandoline "mandoline neuve" menestrel with description "Une bien jolie mandoline, au son brillant et net. Un très bon instrument, apparemment, parfait pour vous accompagner, ou jouer des pièces, ou des sérénades...", name 'mandoline' 'gratte' 'neuve' 'instrument' 'musique', before [; instru: if (mandoline in player) { if (appmand==1) { if (player in balconsoir) { prinmand(); rtrue; } else {"Vous jouez un petit air de mandoline.";} } else {"Vous ne savez pas en jouer !";} } else {if (mandoline in menestrel) {"Le ménestrel en joue, et je ne suis pas sûr qu'il voudra bien vous la céder...";}} Take: if (mandoline in menestrel) { if (menestmed==1) {move mandoline to player; score=score+1; "Vous prenez la mandoline des mains du ménestrel pétrifié, en lui demandant pardon à mi-voix...";} else {"Je ne crois pas que le ménestrel vous laissera la prendre.";} } learn: if (niv1==1) { if (appmand==1) {"Mais vous savez déjà jouer de la mandoline !";} else { if (self in player) {appmand=1; score=score+2; "Grâce au sort, vous savez maintenant comment jouer de la mandoline.";} else {"Trouvez-vous d'abord une mandoline.";} } } else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} Search: "Ça ne s'ouvre pas et rien n'est caché à l'intérieur."; Listen: if (self in menestrel && menestmed==0) {"L'accompagnement du ménestrel mélange accords et mélodies : il en joue vraiment bien.";} else {"Vous grattez quelques cordes à vide : la mandoline a un son clair et aigu, presque métallique.";} ], has female ; Object sebile "sébile" marche with description "C'est la sébile du ménestrel ; quelques pièces, mais pas beaucoup, y sont posées.", name 'sebile' 'piece' 'pieces', before [; Take: if (menestmed==0) {"Le ménestrel ne vous laissera pas la prendre.";} else {"Non, ce serait assez immoral, de profiter de la pétrification du ménestrel pour lui voler les quelques pièces qui lui restent... En plus, il n'y en a pas beaucoup @{2014} mieux vaut lui laisser, vous ne gagneriez presque rien, sinon une mauvaise conscience.";} Search: if (menestmed==0) {"Le ménestrel ne vous laissera pas faire ça.";} else {"Non, ce serait assez immoral, de profiter de la pétrification du ménestrel pour lui voler les quelques pièces qui lui restent... En plus, il n'y en a pas beaucoup @{2014} mieux vaut lui laisser, vous ne gagneriez presque rien, sinon une mauvaise conscience.";} Receive: if (noun==argentobj) {if (argent>5) {argent=argent-5; print "Dans un accès de générosité vous posez cinq sols dans la sébile du ménestrel. "; if (menestmed==0) {"Celui-ci vous regarde, et sourit faiblement, tout en continuant à jouer de sa mandoline.";} else {"Peut-être vous pardonnera-t-il ainsi de l'avoir pétrifié...";}} else {"Vous n'avez pas assez d'argent @{2014} à la rigueur, c'est le ménestrel qui devrait vous faire l'aumône...";}} else {"Ça ne servirait à rien.";} ], has female concealed ; Object artic "articles" echoppe with description "Ce sont les articles que l'on vend dans cette échoppe. Principalement, des articles pour les voyageurs et les aventuriers qui passeraient dans la ville, et qui ne vous serviraient pas tellement. Mais quelques articles retiennent votre attention, comme une corde, qui est toujours utile, mais aussi des instruments de musique...", name 'articles' 'choses' 'equipement' 'equipements' 'accessoires' 'chose' 'article' 'accessoire' 'objet' 'objets', before [; Take, Buy: march(); rtrue; ], has concealed pluralname ; Object comptoir "comptoir" echoppe with description "Un comptoir rudimentaire @{2014} en fait, une simple planche posée sur deux tonneaux. Le vendeur est derrière.", name 'comptoir' 'planche' 'bois' 'tonneau' 'tonneaux' 'tonnelet' 'tonnelets' 'futs' 'fut' 'barrique' 'barriques' 'baril' 'barils', before [; Search: "Il n'y a rien ici."; ], has concealed scenery; Object vendeur "vendeur" echoppe with description "C'est le propriétaire de l'échoppe, qui vous sourit d'un air affable et commerçant. Il a l'air plutôt serviable et gentil @{2014} ça change des marchands douteux qui vous regardent par en dessous... Sa boutique vend quelques articles, pour les aventuriers de passage principalement ; quelques-uns attirent votre attention.", name 'vendeur' 'propriétaire' 'marchand' 'magasinier' 'boutiquier' 'commercant' 'negociant' 'homme' 'type', before [; ParlerSansPrecision: march(); rtrue; Ask: "[Pour parler avec un personnage, tapez simplement @<< parler avec (personnage) @>>.]"; Search: "Je pense qu'il n'apprécierait pas."; ], life [; Tell, Answer: "[Pour parler avec un personnage, tapez simplement @<< parler avec (personnage) @>>.]";], orders [; Give: <>; ], has animate concealed transparent ; Object mand2 "mandoline d'occasion" vendeur with description [; if (mand2 in player) {"C'est la mandoline que vous avez achetée au marchand. Elle est en plutôt bon état, mais elle semble avoir déjà vécu... Ce qui n'a que peu d'importance, car elle a un son plutôt bon, tout à fait correct.";} else {"C'est une mandoline d'occasion ; le marchand la vend à 340 sols, ce qui est une plutôt bonne affaire, car les mandolines sont assez rares. Celle-ci ne semble pas être en trop mauvais état non plus.";} ], name 'mandoline' 'gratte' 'occasion' 'instrument' 'instruments' 'musique', before [; instru: if (mand2 in player) { if (appmand==1) { if (player in balconsoir) { prinmand(); rtrue; } else {"Vous jouez un petit air de mandoline.";} } else {"Vous ne savez pas en jouer !";} } learn: if (niv1==1) { if (appmand==1) {"Mais vous savez déjà jouer de la mandoline !";} else {if (self in player) {appmand=1; score=score+2; "Grâce au sort, vous savez maintenant comment jouer de la mandoline.";} else {"Trouvez-vous d'abord une mandoline.";} } } else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} Buy: if (mand2 hasnt bought) {if (argent<340) {"Vous n'avez pas assez d'argent pour acheter une mandoline.";} else {give mand2 bought; give mand2 ~concealed; argent=argent-340; score=score+4; move mand2 to player; "@<< Voilà votre mandoline. Merci à vous, monsieur. @>> Vous achetez la mandoline pour 340 sols.";}} else {"Vous en avez déjà acheté une, qu'en avez-vous fait ?";} Take: if (mand2 hasnt bought) {if (argent<340) {"Vous n'avez pas assez d'argent pour acheter une mandoline.";} else {give mand2 bought; give mand2 ~concealed; argent=argent-340; score=score+4; move mand2 to player; "@<< Voilà votre mandoline. Merci à vous, monsieur. @>> Vous achetez la mandoline pour 340 sols.";}} Search: "Ça ne s'ouvre pas et rien n'est caché à l'intérieur."; Listen: if (mand2 in vendeur) {"@<< Je ne fais pas de démonstrations avec les instruments, monsieur. @>> vous dit le vendeur.";} else {"Vous grattez quelques cordes à vide : la mandoline a un son clair et aigu, presque métallique.";} ], has female concealed ; Object flute "flûte" vendeur with description "C'est une flûte en bois, assez petite, percée de six trous ; elle a un son aigu, qui est parfait pour jouer des ritournelles et des morceaux légers et entraînants.", name 'flute' 'fluteau' 'flutine' 'pipeau' 'petite' 'instrument' 'instruments' 'musique' 'trou' 'trous', before [; instru: if (flute in player) { if (appflu==1) { if (player in balconsoir) { prinflut(); rtrue; } else {"Vous jouez un petit air sur la flûte.";} } else {"Vous ne savez pas en jouer !";} } learn: if (niv1==1) { if (appflu==1) {"Mais vous savez déjà jouer de la flûte !";} else { if (self in player) {appflu=1; score=score+2; "Grâce au sort, vous savez maintenant comment jouer de la flûte.";} else {"Trouvez-vous d'abord une flûte.";} } } else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} Buy: if (flute hasnt bought) {if (argent<120) {"Vous n'avez pas assez d'argent pour acheter une flûte.";} else {give flute bought; give flute ~concealed; argent=argent-120; score=score+2; move flute to player; "@<< Voilà votre flûte, monsieur. @>> Vous achetez la flûte pour 120 sols.";}} else {"Vous en avez déjà acheté une, qu'en avez-vous fait ?";} Take: if (flute hasnt bought) {if (argent<120) {"Vous n'avez pas assez d'argent pour acheter une flûte.";} else {give flute bought; give flute ~concealed; argent=argent-120; score=score+2; move flute to player; "@<< Voilà votre flûte, monsieur. @>> Vous achetez la flûte pour 120 sols.";}} Listen: if (flute in vendeur) {"@<< Je ne fais pas de démonstrations avec les instruments, monsieur. @>> vous dit le vendeur.";} else {"La flûte en bois produit un son aigu et rond, pas du tout irritant... quand on sait en jouer.";} ], has female concealed ; Object corde "corde" vendeur with description "C'est une longue corde, de plusieurs mètres de long, et qui semble solide.", name 'corde' 'cordage', before [; jet: if (player in balconsoir||player in balcon) {if (princesse notin balconsoir || player in balcon) {"Vous ne voulez pas vous introduire comme ça chez la princesse, alors qu'elle ignore tout de vous et de votre présence ici.";} else {cord(); rtrue;}} Buy: if (corde hasnt bought) {if (argent<40) {"Vous n'avez pas assez d'argent pour acheter une corde.";} else {give corde bought; give corde ~concealed; argent=argent-40; score=score+1; move corde to player; "@<< Voilà, monsieur. @>> Vous achetez la corde pour 40 sols.";}} else {"Vous en avez déjà acheté une, qu'en avez-vous fait ?";} Take: if (corde hasnt bought) {if (argent<40) {"Vous n'avez pas assez d'argent pour acheter une corde.";} else {give corde bought; give corde ~concealed; argent=argent-40; score=score+1; move corde to player; "@<< Voilà, monsieur. @>> Vous achetez la corde pour 40 sols.";}} ], has female concealed ; Object herbe "herbes" balcon with description "Il y a des plantes ici, mais aussi des herbes magiques ; si vos souvenirs de cours de philtres sont bons, ce sont les plus colorées d'entre elles.", name 'simples' 'herbes' 'herbe' 'plante' 'plantes' 'jardin' 'pousses' 'pousse' 'colorees' 'coloree' 'magique' 'magiques', before [; Smell: "Les herbes plantées ici sentent bon, mais on ne les sent pas beaucoup."; Take: move herbe2 to balcon; move herbemock to player; remove herbe; give herbemock bought; "Vous prenez les herbes magiques uniquement ; elles pourront vous être utiles..."; ], has female pluralname concealed ; Object herbe2 "herbes normales" with description "Il y a quelques plantes ici, mais vous avez cueilli les herbes magiques.", short_name [; if (self in balconsoir) {print "herbes"; rtrue;} ], parse_name [ n ; n=0; while (NextWord() == 'simples' or 'herbes' or 'herbe' or 'plante' or 'plantes' or 'jardin' or 'pousses' or 'pousse' or 'normal' or 'normales' or 'normale') n++; return n; ], before [; Smell: "Les herbes plantées ici sentent bon, mais on ne les sent pas beaucoup."; Take: "Vous n'allez pas déraciner tout le jardin !"; grand: if (niv1==1) {"C'est vrai, vous pourriez, mais faire pousser ces herbes ne vous servirait à rien.";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} ], has female pluralname concealed ; Object herbemock "herbes magiques" with description "Grâce à votre formation, vous savez reconnaître ces herbes colorées comme étant en réalité des herbes magiques.", parse_name [ n ; n=0; while (NextWord() == 'simples' or 'herbes' or 'herbe' or 'plante' or 'plantes' or 'jardin' or 'pousses' or 'pousse' or 'magique' or 'magiques' or 'coloree' or 'colorees') n++; return n; ], before [; Smell: "Ces herbes magiques semblent sentir plus fort que les autres... Ça reste discret, mais elles ont l'air plus fraîches que les autres... Sans doute parce qu'elles sont magiques."; ], has pluralname female ; Object lierre "pousse de lierre" balcon with description "C'est une toute petite pousse de lierre.", name 'lierre' 'pousse' 'plante' 'plantes', before [; grand: if (niv1==1) { if (lierre in balconsoir) { if (princesse in balconsoir) {lierrepouss(); rtrue;} else {"C'est une bonne idée, mais vous ne voulez pas vous introduire comme ça chez la princesse, alors qu'elle ignore tout de vous et de votre présence ici.";} } else {"C'est certes une excellente idée, mais à l'heure actuelle cela ne vous servirait à rien.";} } else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} Take: "Vous n'allez pas déraciner cette petite pousse de lierre, en plus elle ne vous servirait à rien."; Climb: "Vous n'aurez pas assez de prises, et le lierre n'est pas assez solide."; ], has static concealed female ; Object halleba "hallebardes" chateau with description "Ce sont de grandes hallebardes, avec un bout très pointu. C'est l'arme de tous les gardes du château du roi ; elle est très efficace, évite un corps à corps, et est très tranchante... Mieux vaut ne pas s'y frotter, donc.", name 'hallebarde' 'hallebardes' 'armes' 'arme' 'pertuisane' 'pertuisanes', before [; Take, Touch, Search: "Les hallebardes appartiennent aux gardes du château, et je ne crois pas qu'ils vous les laisseraient..."; Squeeze: "Vous risqueriez de vous couper."; ], has female scenery concealed pluralname ; Object caillou "caillou" balcon with description "C'est un caillou, assez gros, léger et facile à prendre en main.", name 'caillou' 'pierre' 'caillasse' 'rocaille', before [; jet: if (player in balconsoir && princesse notin balconsoir) {lapid(); rtrue;} petri: "Pétrifier un caillou ? Changer une pierre en pierre ? Elle est bien bonne..."; ], has ; Object meub "meubles" with description [; if (player in taverne) {"Tout autour, il y a des tables et des chaises, certaines vides, et d'autres occupées par les clients déjà joyeux de la taverne...";} else {"Tout autour, il y a des tables et des chaises, mais l'ivrogne devant vous est bien seul...";} ], name 'table' 'tables' 'chaise' 'chaises' 'meubles', found_in taverne taverne2, before [; Take: "Ça ne vous serait d'aucun intérêt."; ], has scenery pluralname concealed ; Object verre "verres" with description [; if (player in taverne) {"Un peu partout sur les tables, se trouvent des verres et des chopes. Certains sont vides, et n'ont pas encore été débarrassés par l'aubergiste ; certains sont en train d'être vidés à grandes gorgées ; certains vont être vidés par les ivrognes pour mieux être remplis à nouveau.";} else {"Le seul verre que vous voyez ici est celui de l'ivrogne qui boit seul, devant vous.";} ], name 'verre' 'verres' 'vide' 'vides' 'chope' 'chopes' 'bouteille' 'bouteilles' 'vin' 'biere' 'bieres' 'vins' 'alcool', found_in taverne taverne2, before [; Take, Touch, Search, Taste: "Voyez comment les buveurs sont : il faudrait leur passer sur le corps pour leur enlever leur boisson..."; Buy: "Vous n'aimez pas trop l'alcool, à vrai dire..."; ], has scenery pluralname concealed ; Object tonneaux "tonneaux" taverne2 with description "De gros tonneaux, dans lesquels le tavernier doit entreposer son vin.", name 'tonneau' 'tonneaux' 'futs' 'fut' 'tonnelet' 'tonnelets' 'barrique' 'barriques' 'baril' 'barils', before [; Open, Search: if (tonn==0) {tonn=1; score=score+1; argent=argent+200; "Vous ouvrez un tonneau déjà entrouvert et regardez au fond : des pièces de monnaie y brillent ! Vous les prenez avec vous, et refermez le tonneau sans rien dire à personne.";} else {"Vous fouillez, mais ne trouvez rien.";} Close: "Les tonneaux sont déjà fermés."; ], has scenery concealed ; Object roses "buisson de roses" ecole with description "Il y a près de la porte un buisson de roses, très jolies et d'un rouge intense. Ça vous fait penser à la princesse, elle qui aime tant les fleurs...", name 'buisson' 'buissons' 'roses' 'fleurs' 'fleur' 'rose', before [; grand: if (niv1==1) {"C'est vrai, vous pourriez ; mais vous auriez trop de mal à porter une rose géante, qui plus est fragile...";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} Smell: "Vous sentez les fleurs : elles dégagent un parfum exquis."; Search, Take: if (rose has bought) {"Vous avez déjà cueilli une rose, vous n'allez pas dénuder le buisson, tout de même !";} else {move rose to player; give rose bought; if (niv3~=2) {"Vous cueillez délicatement une rose et la prenez avec vous.";} else {score=score+2; "Vous cueillez une autre rose : celle-là sera pour la princesse !";}} ], has scenery concealed ; Object rose "rose" with description "Une rose rouge, le comble du romantisme...", name 'rose' 'fleur', before [; Smell: "La rose sent très bon ; son parfum ravirait une femme..."; Drop: "Vous ne voulez pas la jeter : la rose risque de s'abîmer, et puis, elle vous sera sûrement utile."; ], has female ; !========================================================== ! Personnages Object gardes "gardes" chateau with description "De grands gardes en armure et cotte de mailles, avec une grande hallebarde dans la main. Ils sont en faction devant le pont-levis, et regardent les environs, et plus particulièrement vous. Et ils n'ont pas l'air très commode... En même temps, vous dites-vous, c'est le métier qui veut ça...", name 'garde' 'gardes' 'soldat' 'soldats' 'sentinelle' 'sentinelles' 'armure' 'armures' 'cotte' 'cottes' 'maille' 'mailles' 'hommes' 'homme', before [; Ask, ParlerSansPrecision: "@<< Circulez, monsieur. Le roi ne veut voir personne. @>>"; petri: if (niv2==2) {"Non, ça vous attirerait trop d'ennuis.";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} Search: "Je ne crois pas qu'ils se laisseraient faire..."; Attack: "Face à deux gardes armés et en armure, vous n'avez aucune chance."; ThrownAt: if (noun==caillou) {"Les gardes n'apprécieraient certainement pas ça, et comme ils sont plus armés que vous...";} ], life [; Tell, Answer: "@<< Circulez, monsieur. Le roi ne veut voir personne. @>>";], orders "@<< Ce n'est pas à vous de nous donner des ordres. Circulez ! @>>", has animate pluralname concealed ; Object prof "professeur de magie" intecole with description "C'est votre professeur de magie, votre tuteur qui vous guide dans votre apprentissage depuis un bout de temps déjà. C'est un homme grand, aux cheveux grisonnants et épars ; il a une voix douce et chaleureuse, à l'image de sa personnalité. Il vous aide, se montre patient et compréhensif, ce qui a dû améliorer votre apprentissage, pensez-vous. Pour l'heure, il est là, devant vous, et il vous sourit.", name 'professeur' 'magie' 'tuteur' 'prof' 'maitre' 'homme' 'mage' 'magicien' 'sorcier', life [; Tell, Answer: "[Pour parler avec un personnage, tapez simplement @<< parler avec (personnage) @>>.]"; Show, Give: switch(noun){ rose: if (niv2==2) { switch(niv3){ 0:give rose ~bought; remove rose; score=score+5; niv3=2; "Le professeur remarque la rose que vous avez cueillie dehors. @<< Oh, la jolie rose ! Euh... Pardon de vous le demander, mais en avez-vous besoin ? Parce que moi, oui... Va-t-elle vous servir ? @>> vous demande-t-il, un peu confus du caractère incongru de sa demande...^^Bon prince, vous lui répondez que non, et vous tendez alors la rose au professeur, qui vous fait alors l'effet d'un simple amoureux comme les autres... Tant pis, vous auriez bien gardé la rose pour la princesse @{2014} mais après tout, il y en a d'autres dehors...^^@<< Merci beaucoup, mon garçon ! Je connais quelqu'un à qui ça va faire plaisir... Tenez, voilà pour vous : je vous apprends le sort de lévitation ! @>>^^Le halo bleuté réapparaît, et disparaît encore une fois : vous avez appris le sort. Votre professeur s'éloigne en vous souriant et en vous adressant un clin d'@oeil."; 1: give rose ~bought; remove rose; score=score+5; niv3=2; "@<< Oh, quelle belle rose ! C'est exactement une comme celle-ci dont j'avais besoin ! @>>^^Vous tendez alors la rose au professeur, qui vous fait alors l'effet d'un simple amoureux comme les autres... Tant pis, vous auriez bien gardé la rose pour la princesse @{2014} mais après tout, il y en a d'autres dehors...^^@<< Merci beaucoup, mon garçon ! Je connais quelqu'un à qui ça va faire plaisir... Tenez, voilà pour vous : je vous apprends le sort de lévitation ! @>>^^Le halo bleuté réapparait, et disparait encore une fois : vous avez appris le sort. Votre professeur s'éloigne en vous souriant et en vous adressant un clin d'@oeil."; 2: "@<< Oui, merci, mais vous m'en avez déjà rapporté une, vous vous souvenez ? @>>"; } } herbemock: if (niv1==1) { switch(niv2){ 0: remove herbemock; niv2=2; score=score+5; "Remarquant les herbes colorées que vous avez cueillies sous le balcon de la princesse, le regard de votre professeur s'illumine :^^@<< Oh, ces herbes ! Ce sont des herbes que l'on utilise pour les philtres, vous le savez, n'est-ce pas ? Il se trouve que justement, j'ai besoin de ces herbes... Me les céderiez-vous, mon garçon, ou en avez-vous besoin ? @>>^^Lui répondant que vous n'en avez pas l'utilité, vous lui donnez les herbes.^^@<< Merci beaucoup, mon garçon. Tenez, pour vous remercier, je vais vous apprendre le sort de pétrification @{2014} attention à ce que vous en faites, hein ? @>>^^Le halo bleuté vous entoure encore une fois et quand il se dissipe, vous savez comment faire pour jeter le sort de pétrification."; 1: remove herbemock; niv2=2; score=score+5; "@<< Formidable, vous avez trouvé les herbes dont j'avais besoin ! Merci beaucoup, mon garçon. Pour vous remercier, je vais vous apprendre le sort de pétrification @{2014} attention à ce que vous en faites, hein ? @>>^^Le halo bleuté vous entoure encore une fois et quand il se dissipe, vous savez comment faire pour jeter le sort de pétrification."; 2: "@<< Oui, merci, mais vous m'en avez déjà rapporté, vous vous souvenez ? @>>"; } } } ], orders "@<< Eh bien, qu'est-ce qui vous arrive, mon garçon ? @>> fait le professeur en fronçant les sourcils.", before [; Search: "Je ne crois pas qu'il se laissera faire..."; Ask: "[Pour parler avec un personnage, tapez simplement @<< parler avec (personnage) @>>.]"; ParlerSansPrecision: switch(niv3){ 0: switch (niv2){ 0: switch (niv1){ 0: niv1=1; score=score+3; "@<< Ah, vous voilà ! Eh bien, félicitations, je vous annonce que vous avez réussi votre examen ! Tenez, je dois vous apprendre deux sorts. Ne bougez pas... @>>^^Un halo bleuté vous entoure, puis se dissipe : c'est ce qui arrive à chaque fois que votre tuteur vous donne la possibilité de lancer un nouveau sort. Puis, votre professeur reprend :^^@<< Voilà, vous pouvez maintenant lancer les sorts d'apprentissage (pour apprendre à se servir d'un objet en votre possession) et de croissance (pour faire grandir ou pousser quelque chose). Voilà, et encore mes félicitations ! Et n'hésitez pas à venir me reparler si vous avez besoin de quoi que ce soit ! @>>"; 1: if (herbemock in player){remove herbemock; niv2=2; score=score+5; "Remarquant les herbes colorées que vous avez cueillies sous le balcon de la princesse, le regard de votre professeur s'illumine :^^@<< Oh, ces herbes ! Ce sont des herbes que l'on utilise pour les philtres, vous le savez, n'est-ce pas ? Il se trouve que justement, j'ai besoin de ces herbes... Me les céderiez-vous, mon garçon, ou en avez-vous besoin ? @>>^^Lui répondant que vous n'en avez pas l'utilité, vous lui donnez les herbes.^^@<< Merci beaucoup, mon garçon. Tenez, pour vous remercier, je vais vous apprendre le sort de pétrification @{2014} attention à ce que vous en faites, hein ? @>>^^Le halo bleuté vous entoure encore une fois et quand il se dissipe, vous savez comment faire pour jeter le sort de pétrification.";} else {niv2=1; "@<< Venez, mon garçon, vous dit-il. Vous voulez que je vous apprenne un autre sort ? Écoutez, je vous l'apprendrai, mais il va falloir que vous fassiez quelque chose pour moi... Voilà ce que vous allez faire : vous allez partir en quête de quelques herbes magiques. J'en ai besoin très vite. Si vous me les rapportez, je vous apprendrai un sort. D'accord ? @>>^^Vous acceptez d'aller chercher ces herbes pour lui.";} } 1: if (herbemock in player) {remove herbemock; niv2=2; score=score+5; "@<< Formidable, vous avez trouvé les herbes dont j'avais besoin ! Merci beaucoup, mon garçon. Pour vous remercier, je vais vous apprendre le sort de pétrification @{2014} attention à ce que vous en faites, hein ? @>>^^Le halo bleuté vous entoure encore une fois et quand il se dissipe, vous savez comment faire pour jeter le sort de pétrification.";} else {"@<< M'avez-vous trouvé les herbes dont je vous ai parlé ? Toujours pas, mon garçon ? Bien, revenez me voir quand ce sera fait. @>>";} 2: if (rose in player) {give rose ~bought; remove rose; score=score+5; niv3=2; "Le professeur remarque la rose que vous avez cueillie dehors. @<< Oh, la jolie rose ! Euh... Pardon de vous le demander, mais en avez-vous besoin ? Parce que moi, oui... Va-t-elle vous servir ? @>> vous demande-t-il, un peu confus du caractère incongru de sa demande...^^Bon prince, vous lui répondez que non, et tendez la rose au professeur, qui vous fait alors l'effet d'un simple amoureux comme les autres... Tant pis, vous auriez bien gardé la rose pour la princesse @{2014} mais après tout, il y en a d'autres dehors...^^@<< Merci beaucoup, mon garçon ! Je connais quelqu'un à qui ça va faire plaisir... Tenez, voilà pour vous : je vous apprends le sort de lévitation ! @>>^^Le halo bleuté réapparaît, et disparaît encore une fois : vous avez appris le sort. Votre professeur s'éloigne en vous souriant et en vous adressant un clin d'@oeil.";} else {niv3=1; "@<< Comment, vous voulez en apprendre plus, encore ? @>> vous dit votre professeur en esquissant un sourire. @<< Vous êtes un élève assidu, décidément... Eh bien, soit... Mais avant, je vais vous demander de faire quelque chose pour moi... @>>^^Le professeur rougit un peu, et vous fait signe de vous approcher. @<< Voilà, j'ai une... amie, dans une autre ville, et... Je voudrais lui offrir une rose quand je la verrai... Vous pourriez me trouver une rose ? Allez m'en chercher une et je vous apprendrai un autre sort, d'accord ? @>>^^Quel romantique, ce professeur... Envoyer quelqu'un cueillir une rose à sa place, il aurait pu le faire lui-même ! Manquerait plus qu'il vous demande de lui écrire une lettre d'amour, non mais ! Bah, mais après tout, c'est son problème, hein...";} } 1: if (rose in player) {give rose ~bought; remove rose; score=score+5; niv3=2; "@<< Oh, quelle belle rose ! C'est exactement une comme celle-ci dont j'avais besoin ! Merci ! @>>^^Vous tendez alors la rose au professeur, qui vous fait alors l'effet d'un simple amoureux comme les autres... Tant pis, vous auriez bien gardé la rose pour la princesse @{2014} mais après tout, il y en a d'autres dehors...^^@<< Merci beaucoup, mon garçon ! Je connais quelqu'un à qui ça va faire plaisir... Tenez, voilà pour vous : je vous apprends le sort de lévitation ! @>>^^Le halo bleuté réapparait, et disparait encore une fois : vous avez appris le sort. Votre professeur s'éloigne en vous souriant et en vous adressant un clin d'@oeil.";} else {"@<< M'avez-vous trouvé une rose ? Toujours pas, mon garçon ? Bien, revenez me voir quand ce sera fait. @>>^^Gnagnagna, il a qu'à aller se la chercher, lui, non mais...";} 2: "@<< Allez, ce sera tout pour aujourd'hui @{2014} revenez quand les cours reprendront. @>>"; } ], has animate concealed ; Object ivrogne "ivrogne triste" taverne2 with description [; switch(ivro){ 0: "Cet homme est fin soûl, et il se lamente tout en buvant, ou boit en se lamentant, c'est selon."; 1: "L'ivrogne est affalé sur la table et pleure à chaudes larmes."; 2: "L'ivrogne est affalé sur la table, et vous l'avez pétrifié. Heureusement, dans cette position, on croirait qu'il dort..."; 3: "L'ivrogne est affalé sur la table, et vous l'avez pétrifié. Heureusement, dans cette position, on croirait qu'il dort...";} ], name 'ivrogne' 'ivre' 'bourre' 'homme' 'buveur' 'poivrot' 'soulard' 'triste' 'melancolique' 'pleure' 'pleurant' 'peine' 'effondre' 'inconsolable' 'bonhomme' 'type' 'mec' 'krilf', life [; Show, Give: "L'ivrogne regarde, puis dit : @<< Qu'es'ce que c'est qu'ça ? Qu'ess' vous voulez qu'j'en fass' ? R'prenez-le donc, vot' truc ! @>>"; Tell, Answer: "[Pour parler avec un personnage, tapez simplement @<< parler avec (personnage) @>>.]"; ], before [; Ask: "[Pour parler avec un personnage, tapez simplement @<< parler avec (personnage) @>>.]"; ParlerSansPrecision: switch(ivro){ 0: ivro++; print "@<< Bonjour, cher monsieur ! @>> dites-vous à l'ivrogne, qui vous regarde alors d'un air mauvais. @<< Que faites-vous ?^@{2014} Ben vous voyez bien, j'bois. Vous pouvez v'nir me t'nir compagnie si vous voulez, plus on est de fous...^@{2014} Non, merci, je ne bois pas. @>> Puis, quelques secondes après : @<< Pourquoi buvez-vous ? @>>^L'ivrogne soupire. @<< Bah, j'bois... C'te question... @>> Il réfléchit, le regard un peu dans le vague, avec un maigre sourire. @<< J'bois pour oublier @>>, finit-il par dire d'un ton sentencieux. Et sur ce, il décide d'oublier plus encore avec une autre gorgée.^@<< Mais pour oublier quoi ? @>>^L'ivrogne regarde son verre, l'air gêné. Il n'en mène pas large. Finalement, il finit par dire :^@<< Oublier qu'j'ai honte...^@{2014} Ah ? Mais honte de quoi ?^@{2014} Honte de boire ! @>>^D'un coup, l'ivrogne éclate en sanglots et s'effondre sur la table... Il a craqué... Vous vous sentez un peu gêné, mais pensez qu'il serait mieux de le laisser à ses larmes."; w8(); style underline; print "^^Toute ressemblance avec un dialogue tiré d'un livre de jeunesse écrit par un aviateur sera totalement fortuite. Si, si, je vous assure !^"; style roman; rtrue; 1: "L'ivrogne ne lève même pas la tête et reste couché sur sa table quand vous lui tapez sur l'épaule : @<< Je suis triste, laissez-moi ! @>>"; 2: "Vous l'avez pétrifié, il ne risque pas de vous répondre..."; 3: "Vous l'avez pétrifié, il ne risque pas de vous répondre...";} Search: switch(ivro){ 0: "Il est peut-être soûl, mais il se rendra certainement compte du fait que vous cherchez à le voler. Donc n'y pensez même pas, si vous ne voulez pas vous bagarrer avec un ivrogne..."; 1: "Il est peut-être soûl, mais il se rendra certainement compte du fait que vous cherchez à le voler. Donc n'y pensez même pas, si vous ne voulez pas vous bagarrer avec un ivrogne..."; 2: ivro++; argent=argent+50; score=score+1; "Profitant du fait qu'il soit pétrifié, vous fouillez les vêtements de l'ivrogne. Dans sa poche, vous trouvez 50 sols. Vous les prenez discrètement, en vous assurant que personne ne vous ait vu."; 3: "Vous avez déjà fouillé dans ses poches, il n'y a plus rien à lui voler...";} petri: if (niv2==2) {switch(ivro){ 0: print "Discrètement, vous vous préparez à jeter le sort de pétrification sur l'ivrogne. Vous regardez autour de vous, pour voir si quelqu'un vous regarde : apparemment, personne. Vous vous concentrez, et vous préparez à lancer le sort. Un halo vert entoure vos mains : le sort est prêt à être lancé.^^L'ivrogne, à ce moment-là, était en train de boire à sa chopine. L'éclair vert de votre sort l'entoure, et l'ivrogne s'immobilise soudainement. Pétrifié. Le sort a marché."; w8(); print "^^Sauf que dans cette position, le coude en l'air, c'est assez voyant...^^Et malheureusement pour vous..."; w8(); print "^^Les autres clients de la taverne s'en rendent compte assez rapidement...^^@<< Eh, r'gardez les gars ! L'vieux Krilf ! Y bouge pus ! @>>^^Des gens se retournent, et vous voyez des froncements de sourcils. Soudainement, vous commencez à avoir peur...^^L'aubergiste sort de derrière son comptoir, et en moins de deux est là, regardant le vieux Krilf.^^@<< Mordiou ! On dirait qu'il a été pétrifié ! @>>^^Et, n'étant pas né de la dernière pluie, il vous demande d'un air soupçonneux :^^@<< C'est vous qu'avez fait ça ? @>>"; w8(); print "^^Derrière vous, vous sentez plusieurs silhouettes menaçantes se rapprocher...^^@<< Euh... @>> balbutiez-vous. @<< C'est-à-dire que... Non... Enfin... Non ! Je... Je l'ai trouvé comme ça !^@{2014} Qu'est-ce que vous en pensez, les gars ? @>> demande un gros baraqué derrière vous.^@<< Ça m'a tout l'air d'êt' lui qu'a fait ça ! @>> répond un autre.^Les clients commencent à se rapprocher de vous d'un air menaçant. @<< Alors comme ça on est sorcier ?^@{2014} On abuse de ses pouvoirs magiques ?^@{2014} C'est pas bien, ça, tu sais ?^@{2014} Pétrifier des pauv' ivrognes qu'ont rien fait...^@{2014} Tu pensais lui faire les poches, peut-être ?^@{2014} Heureusement qu'on t'a trouvé, hein !^@{2014} Voleur !^@{2014} Il mérite une bonne correction... @>>^Des sourires inquiétants commencent à éclore sur certains visages...^@<< Ouais, on va lui apprendre à vivre...^@{2014} Allez, v'nez ! On l'emmène au supplice !^@{2014} Ouais ! @>>^^Au supplice ? Mon Dieu, qu'avez-vous fait ?"; w8(); print "^^Un grand costaud vous soulève comme une plume et vous met sur son épaule. Vous vous débattez, mais il vous tient d'une poigne ferme. Ils vous emmènent vous ne savez où, votre monture en premier, les autres, saouls, riant, éructant, et se moquant de vous, derrière lui.^^Au bout d'un petit moment, le grand vous pose par terre en vous tenant par les bras. Vous ne pouvez rien faire, il vous tient si fort...^^Et tout à coup, vous voyez où ils vous ont emmené. Devant les murs du château fort."; w8(); print "^^Pour être plus précis, devant les douves."; w8(); print "^^Vous entendez les cris des gardes au loin, qui se rapprochent.^^@<< Hé, vous ! Qu'est-ce que vous faites ?^@{2014} Circulez ! Vous n'avez rien à faire ici !^@{2014} Allez faire vos cochonneries ailleurs !^@{2014} Ne vous inquiétez pas, @>> fait le grand, @<< on veut juste lui donner une bonne correction... Il a pétrifié l'un de nos copains, alors pour lui apprendre à vivre... @>>^^Les autres crient : @<< Vas-y ! Vas-y ! Les douves ! Les douves ! @>>^^Et d'un coup, le grand gaillard vous projette dans les douves."; w8(); print "^^L'eau des douves est trouble, sale, boueuse. Beurk. Vous ne pouvez éviter de boire la tasse, et cette eau est répugnante.^^Finalement, vous arrivez à faire surface. Les clients de la taverne rient, et les gardes aussi. Tout le monde finit par s'éloigner, vous laissant seul, trempé, boueux, puant...^^Vous vous extirpez tant bien que mal de l'eau et vous asseyez sur le rebord. Beurk beurk beurk."; w8(); print "^^Vous sentez tout à coup une douleur dans la cheville. Une douleur intense, subite : vous hurlez et enlevez votre pied de l'eau. Vous voyez la queue d'un ragondin s'éloigner. Vous regardez la blessure : la bête vous a mordu jusqu'au sang !"; w8(); print "^^Quelques mois plus tard, vous mourrez d'une maladie transmise par le ragondin, sûrement la peste ou la rage..."; w8(); deadflag=1; rtrue; 1: ivro++; score=score+2; print "Discrètement, vous jetez un @oeil autour de vous, pour voir si quelqu'un pourrait vous voir en train de jeter le sort de pétrification. Heureusement pour vous, ils semblent tous occupés à boire et à rire.^^Vous regardez l'ivrogne, toujours en train de pleurer, affalé sur la table, la tête au creux de ses bras. Vous vous concentrez, adressez des excuses mentales à cet homme (heureusement, les effets du sort se dissipent en une heure @{2014} vous n'aurez pas trop mauvaise conscience...), et jetez le sort de pétrification."; w8(); print "^^Le sort a un effet immédiat : l'ivrogne s'immobilise dans cette position. Vous regardez autour de vous : personne n'a remarqué.^^Enfin, si. Quelqu'un vous regarde, et regarde l'ivrogne."; w8(); "^^Puis il éclate de rire et pousse ses copains du coude : @<< Eh, regardez ! Krilf s'est endormi !^@{2014} Il doit cuver son vin, ce vieil ivrogne !^@{2014} Allez, on lève nos verres à Krilf ! @>>^^Ils partent dans un grand éclat de rire.^^Ouf, on peut dire que vous avez eu chaud. Heureusement qu'il était déjà affalé sur la table, sinon personne n'aurait cru qu'il était en train de dormir..."; 2: "L'ivrogne est déjà pétrifié."; 3: "L'ivrogne est déjà pétrifié.";}} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} Smell: "À dire vrai, il vous semble que l'homme sente l'alcool, et pas qu'un peu..."; ], orders "À vrai dire, il n'est pas en mesure de faire autre chose que boire...", has animate concealed ; Object serveur "aubergiste" taverne with description "L'aubergiste est en train d'essuyer verres et chopes. Il ne vous regarde pas, et n'a pas l'air très sympathique, du reste...", name 'serveur' 'barman' 'tenancier' 'aubergiste' 'tavernier' 'patron' 'homme' 'mec' 'type' 'bougre', before [; Ask, ParlerSansPrecision: "L'aubergiste vous regarde d'un air mauvais, puis pousse un grognement et continue à essuyer ses verres, vous ignorant superbement."; Search: "Je ne crois pas qu'il se laissera faire..."; ], life [; Tell, Answer: "L'aubergiste vous regarde d'un air mauvais, puis pousse un grognement et continue à essuyer ses verres, vous ignorant superbement.";], orders [; Give: if (noun==verre) {"Vous n'aimez pas trop l'alcool, à vrai dire.";} else {"L'aubergiste vous regarde d'un air mauvais, puis pousse un grognement et continue à essuyer ses verres, vous ignorant superbement.";} "L'aubergiste vous regarde d'un air mauvais, puis pousse un grognement et continue à essuyer ses verres, vous ignorant superbement."; ], has animate concealed ; Object mockserveur "aubergiste" taverne2 with description "L'aubergiste est dans l'autre pièce, en train d'essuyer verres et chopes. Il ne vous regarde pas, et n'a pas l'air très sympathique, du reste...", name 'serveur' 'barman' 'tenancier' 'aubergiste' 'tavernier' 'patron' 'homme' 'mec' 'type' 'bougre', before [; Ask, ParlerSansPrecision, Search: "L'aubergiste est trop loin de vous."; ], life [; Tell, Answer: "L'aubergiste est trop loin de vous."; ], orders [; "L'aubergiste est trop loin de vous."; ], has animate concealed ; Object mockprincesse "princesse" balconsoir with description "Elle doit être là, juste derrière le rideau ! À vous de jouer : attirez-la dehors !", name 'princesse' 'dulcinee' 'aimee' 'amour' 'mie' 'femme' 'promise', before [; ThrownAt: if (noun==caillou) {lapid(); rtrue;} ], has animate concealed ; Object princesse "princesse" with description "C'est elle, votre dulcinée, l'amour de votre vie ! Elle est là, belle dans sa robe rose, des petites mèches blondes dépassant de sa coiffe, et elle vous regarde en souriant. Vision angélique ! Il vous faut la retrouver !", name 'princesse' 'dulcinee' 'aimee' 'amour' 'mie' 'femme' 'promise', before [; petri: if (niv2==2) {prinpetr(); rtrue;} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} ThrownAt: if (noun==caillou) {prinlap(); rtrue;} Ask, ParlerSansPrecision: "@<< Eh bien, monsieur, je vous attends ! @>> fait la princesse en vous adressant un sourire timide."; ], life [; Tell, Answer: "@<< Eh bien, monsieur, je vous attends ! @>> fait la princesse en vous adressant un sourire timide.";], orders "Vous n'oserez jamais lui demander ceci.", has animate concealed ; Object gens "gens" marche with description "Quelques personnes par-ci par-là, vaquant à leurs occupations respectives.", name 'gens' 'manants' 'passants' 'manant' 'passant' 'personnes' 'hommes' 'homme' 'personnes' 'personne' 'foule', before [; ParlerSansPrecision: "Vous ne trouvez rien à leur dire."; petri: if (niv2==2) {"Vous seriez misanthrope à ce point ? Allons, ressaisissez-vous... Et puis ça ne vous attirerait que des ennuis.";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} Search: "Je ne crois pas qu'ils se laisseraient faire..."; ], has animate concealed pluralname ; Object ivrognes "ivrognes joyeux" with description [; if (location==taverne2) {print "Les clients sont quasiment tous dans l'autre salle de la taverne. ";} "Ce sont pour la plupart de gros ivrognes qui parlent fort et rient d'un rire gras ; il n'y a plus qu'à espérer qu'ils n'aient pas le vin mauvais, mais le patron de la taverne semble être habitué..."; ], name 'gens' 'manants' 'buveurs' 'ivrognes' 'gros' 'manant' 'ivrogne' 'buveur' 'personnes' 'client' 'clients' 'personnes' 'habitue' 'habitues' 'poivrots' 'soulards' 'joyeux' 'bruyants' 'hilares' 'riants' 'hommes' 'homme', before [; ParlerSansPrecision, Ask: "Non, pensez-vous, de toute façon ils ne vous écouteraient pas..."; petri: if (niv2==2) {"Vous seriez misanthrope à ce point ? Allons, ressaisissez-vous... Et puis ça ne vous attirerait que des ennuis.";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} Search: "Je ne crois pas qu'ils se laisseraient faire..."; Listen: "L'auberge est emplie de leurs rires gras et de leurs conversations animées."; Smell: "Ces hommes sentent l'alcool, en bons ivrognes qu'ils sont..."; ], life [; Tell, Answer: "Non, pensez-vous, de toute façon ils ne vous écouteraient pas...";], found_in taverne taverne2, has animate concealed pluralname ; !========================================================== ! Routines [ Initialise; inventory_style = ENGLISH_BIT+RECURSE_BIT+FULLINV_BIT; ! Inventaire décrit en une phrase player.description = "Vous êtes seul, éperdu, transi d'amour devant la fille du roi... Comment faire pour qu'elle tombe dans vos bras ? Il va falloir être plus que l'apprenti sorcier que vous êtes, il va falloir conquérir son c@oeur par des moyens non magiques, être romantique... Courage !"; location = marche; lookmode=2; move argentobj to player; style underline; print "Ah... Son parfum...^^"; w8(); style roman; print "Elle s'était avancée vers vous, vous avait regardé de ses beaux yeux bleus... Son parfum vous envoûtait. Elle vous avait tendu la main, et d'une main tremblante vous lui aviez remis le message que l'on vous avait envoyé porter au roi... Vos doigts avaient effleuré les siens, si graciles, si fins... Elle vous avait souri, et remercié de la façon la plus douce qui soit... Puis elle s'était retournée, et d'une façon si noble et si altière, s'en était retournée à ses quartiers, traînant sa robe jaune derrière elle...^^Vous aviez mis quelques minutes avant de vous sortir de votre léthargie. Et vous vous en étiez allé d'un pas tout guilleret. Vous ne vous en êtes jamais remis.^^Cette créature divine vous avait ensorcelé. Depuis ce jour, vous alliez souvent sous son balcon, dans l'espoir de la voir, de lui parler, d'attirer discrètement l'attention sur vous... Vous vouliez qu'elle vous remarque. Mais vous aviez peur, et vous n'osiez jamais faire quoi que ce soit, vous laissant une meurtrissure au c@oeur chaque soir. Et vous vous endormiez chaque nuit avec son image dans votre c@oeur."; w8(); print "^^C'est arrivé d'un coup. Un matin, en vous réveillant, vous vous étiez dit qu'il fallait que ça cesse. Assez de vous morfondre dans votre coin. Vous alliez oser une bonne fois pour toutes et faire la cour à la princesse. Et avec un peu de chance, elle serait séduite par votre charme.^^C'est certes risqué, voire périlleux, mais c'est la seule chose que vous pouvez faire.^^"; w8(); ]; [ march ; DoMenu("Bonjour, Monsieur. Que voulez-vous acheter ?^ ^ Une corde (coût : 40 sols) ^ Une flûte (coût : 120 sols) ^ Une mandoline (coût : 340 sols) ^ Rien, merci.^", marchMenu, marchInfo); ]; [ marchMenu; if (menu_item==0) { item_width=18; item_name="Échoppe @<< Tout pour l'aventurier @>>";return 4;} if (menu_item==1) { item_width=15; item_name="Une corde (coût : 40 sols)"; } if (menu_item==2) { item_width=15; item_name="Une flûte (coût : 120 sols)";} if (menu_item==3) { item_width=18; item_name="Une mandoline (coût : 340 sols)"; } if (menu_item==4) { item_width=10; item_name="Rien, merci.^";} ]; [ marchInfo; if (menu_item==1) {if (corde has bought) {"Vous en avez déjà acheté une, qu'en avez-vous fait ?";} else {if (argent<40) {"Vous n'avez pas assez d'argent pour acheter une corde.";} else {give corde bought; argent=argent-40; score=score+1; move corde to player; "@<< Voilà, monsieur. @>> Vous achetez la corde pour 40 sols.";}}} if (menu_item==2) {if (flute has bought) {"Vous en avez déjà acheté une, qu'en avez-vous fait ?";} else {if (argent<120) {"Vous n'avez pas assez d'argent pour acheter une flûte.";} else {give flute bought; argent=argent-120; score=score+2; move flute to player; "@<< Voilà votre flûte, monsieur. @>> Vous achetez la flûte pour 120 sols.";}}} if (menu_item==3) {if (mand2 has bought) {"Vous en avez déjà acheté une, qu'en avez-vous fait ?";} else {if (argent<340) {"Vous n'avez pas assez d'argent pour acheter une mandoline.";} else {give mand2 bought; argent=argent-340; score=score+4; move mand2 to player; "@<< Voilà votre mandoline. Merci à vous, monsieur. @>> Vous achetez la mandoline pour 340 sols.";}}} if (menu_item==4) {return 3;} ]; [ aban ; print "Tout à coup, vous vous sentez las. Un coup de barre, un coup de blues, vous vous sentez mal. Vous levez les yeux sur le balcon, d'un air triste. La princesse vous semble plus que jamais inaccessible. Trop loin pour un apprenti sorcier comme vous. Elle ne vous aimera jamais. Vous n'êtes rien par rapport à elle, vous n'êtes rien qui puisse l'intéresser @{2014} elle a si elle veut des milliers de prétendants princiers, et elle ne se mariera pas avec un sans-terre comme vous. Vous êtes un misérable.^^Vous êtes soudainement empli d'une vague de tristesse, et vous sentez que rien ne pourra vous faire oublier le fait que vous n'aurez jamais la princesse. La vérité vous a frappé en pleine figure, et vous vous en allez doucement, chancelant, en pleurant."; w8(); print "^^Quelques années plus tard, le c@oeur toujours en peine, vous décidez d'arrêter ce calvaire. Vous vous mettez au bord de la falaise, désespéré, et vous sautez."; deadflag=1; ]; [ lapid ; print "Vous prenez le caillou dans votre main, et regardez en l'air. Le balcon n'est pas loin, et le mur est grand ; en visant bien, ce qui ne devrait pas être trop compliqué, vous parviendrez sans doute à jeter le caillou sur le mur, et à attirer ainsi l'attention de la princesse...^^Vous vous reculez un peu, soupesez le caillou, visez, puis vous lancez le caillou."; w8(); print "^^Oups. Vous visez mal. Vous visiez le bout de mur à droite de la fenêtre de la chambre de la princesse, mais le caillou part trop à gauche, et il traverse le rideau."; w8(); print "^^Vous entendez un petit cri de douleur, un cri féminin.^^Oups.^^Ne me dites pas que vous avez touché..."; w8(); print "^^@<< QUI A FAIT ÇA ! QUI A LANCÉ CE CAILLOU ! GAAAAAAAAAAARDES ! À L'AIDE, AU SECOURS, À L'ASSASSIN !! QUELQU'UN A ESSAYÉ DE ME LAPIDER !!!! GAAAAAARDES ! @>>"; w8(); print "^^Vous n'avez pas le temps de vous enfuir, ni de vous expliquer : les gardes vous trouvent, et vous emmènent avec eux. Vous les suivez sans opposer de vaine résistance.^^Le roi fera votre procès, et vous condamnera à être exécuté pour une tentative de meurtre de la famille royale. Votre tête sera exposée et servira d'exemple à tous ceux qui voudraient attenter à la vie d'un membre de la famille royale."; deadflag=1; ]; [ prinflut ; if (princesse notin balconsoir) { print "Vous commencez à jouer un petit air de flûte, un air sautillant, joyeux, en espérant que la princesse vous entende. Vous faites de votre mieux, et il sort de la flûte une petite mélodie joyeuse qui résonne et vole jusqu'au balcon de la princesse. Vous jouez quelques minutes encore, quand finalement, enfin, vous voyez une ombre à travers le rideau.^^C'est elle.^^Transi d'amour, vous continuez de plus belle, et la mélodie gonfle et s'envole... Vous continuez tout en épiant le rideau. Elle va sortir, elle est là, derrière le rideau...^^Mais c'est alors que..."; w8(); print "^^@<< C'EST PAS UN PEU BIENTÔT FINI, CE BORDEL ?? @>>"; w8(); print "^^C'est la voix de la princesse... Qui ne vous paraît soudainement plus aussi douce que dans votre souvenir...^^Une tête écarlate, celle-là même qui était si blanche et si pure auparavant, sort du rideau et hurle en vous foudroyant du regard :^^@<< JE DÉTESTE LA FLÛTE ! J'ABHORRE LA FLÛTE ! QUI QUE TU SOIS, TU PAIERAS TON INSOLENCE ! OSER ME RÉVEILLER POUR ÇA ! GAAAAAAARDES ! @>>^^Incrédule, vous en restez bouche bée. Les gardes accourent vite, et vous saisissent, pendant que vous êtes toujours aussi ébaubi."; w8(); print "^^Quelle voix ! On aurait dit une furie... Quelle mégère... Elle ne comprend rien à l'art...^^Les gardes vous envoient au cachot, vous et votre flûte. Et vous y restez jusqu'à la fin de vos jours, par la faute de cette mégère excitée qui masque sa folie furieuse derrière un masque de princesse douce. Peuh ! Et dire que vous vous y êtes laissé prendre..."; deadflag=1;} else {"Ça n'est pas la peine, la princesse est déjà sortie.";} ]; [ prinmand ; if (princesse notin balconsoir) { move princesse to balconsoir; remove mockprincesse; score=score+4; print "Vous commencez à jouer un petit air de mandoline. Quelque chose de doux, de lent, et de joli, pour charmer les oreilles de la princesse... Seulement quelques instants après, vous apercevez une ombre, derrière le rideau. Elle semble hésiter. Transi d'amour, le c@oeur léger, vous continuez à faire courir vos doigts sur l'instrument. Quand soudain..."; w8(); print "^^Émergeant du rideau de la fenêtre...^^La princesse !"; w8(); print "^^Belle dans sa robe rose, avec des petites mèches blondes descendant en cascade sur sa poitrine... Le teint blanc, la douceur de ses joues, ses lèvres esquissant un sourire de ravissement... Une preuve de l'existence de Dieu.^^Et elle vous sourit ! Tout ému, vous vous arrêtez de jouer. Elle vous sourit de plus belle, en rosissant. Votre c@oeur bat très vite.^^@<< Bravo, monsieur @>>, vous dit-elle, et soudain vous ne prêtez plus attention qu'à sa voix. @<< Vous jouez très bien de la mandoline.^@{2014} J'ai été inspiré par la grande beauté qu'est la vôtre, belle dame... @>>, faites-vous, plus chevaleresque que jamais... Ce qui fait rosir la princesse de plus belle. Il semblerait que vous lui plaisez..."; w8(); print "^^Baissant les yeux d'un air prude, la princesse ajoute du bout des lèvres : ^^@<< Venez donc me rejoindre sur mon balcon, messire, que je vous voie de plus près...^@{2014} Gente dame, j'accours, je vole ! @>> dites-vous en essayant de contenir votre émotion.^^Il vous faut trouver un moyen de la rejoindre sur son balcon.";} else {"Vous grattez un accord de plus, et la princesse sourit. @<< Jouez encore, mon ami. J'aime le son de la mandoline, le soir, sous mon balcon... @>>";} ]; [ prinpetr ; print "Vous vous préparez à jeter le sort de pétrification sur la princesse. Vous fermez les yeux pour mieux vous concentrer, car la regarder en jetant ce sort vous déconcentrerait...^^La princesse, elle, a remarqué que vous avez fermé les yeux. Elle est visiblement intriguée :^^@<< Que faites-vous ? Que... Pourquoi fermer les yeux ? Quoi ? @>>"; w8(); print "^^Maintenant que vous êtes concentré sur votre sort, vos mains brillent d'un halo vert. Vous sentez votre force magique s'amplifier en vous ; dans quelques secondes le sort sera lancé.^^La princesse est de plus en plus inquiète. Mieux même : elle a compris votre petit manège...^^@<< GAAAAAAAAAAAARDES ! AU SECOURS ! IL VA ME LANCER UN SORT ! GAAAAAAARDES ! VENEZ VIITE ! AU SEC... @>>^^Trop tard. Vous avez lancé le sort.^^Immédiatement, la princesse s'est raidie. Vous ne l'entendrez plus crier de la sorte @{2014} un soulagement."; w8(); print "Mais les gardes ont vite réagi, et vous les entendez courir. Pas le temps de fuir, ils sont déjà là, sur vous, vous prennent, vous saisissent, vous immobilisent, et vous jettent au fin fond d'une geôle. Vous n'en ressortirez que pour votre procès, où le roi vous condamnera à croupir jusqu'à la fin de vos jours au fin fond d'une geôle. Charmant, donc."; w8(); deadflag=1; ]; [ prinlap ; print "Saisissant le caillou dans votre main, vous armez rapidement votre bras, visez et lancez le caillou très fort avant que la princesse ne se soit rendu compte de quoi que ce soit."; w8(); print "^^Le caillou touche la princesse en pleine tempe. La princesse crie de douleur, et vous voyez un peu de sang couler de son visage..."; w8(); print "^^Mais le caillou n'était pas très gros, de sorte que la princesse a juste une égratignure. Elle reprend bien vite ses esprits. Elle a pour vous un regard d'incompréhension, puis, tout d'un coup, c'est la colère, aussi rapide que puissante :^^@<< GAAAAAAAAAAAARDES ! À L'AIDE, AU SECOURS, À L'ASSASSIN !! IL A ESSAYÉ DE ME LAPIDER !!!! GAAAAAARDES ! VENEZ VIIIIITE ! @>>^^Les gardes ne mettent pas longtemps avant de débarquer dans le jardin. Ils vous empoignent bien vite, et en moins de deux, vous vous retrouvez au cachot. Et vous y croupirez jusqu'à la fin de vos jours @{2014} décision du roi pour protéger sa progéniture."; w8(); deadflag=1; ]; [ levitation ; score=score+4; print "Afin de pouvoir rejoindre la princesse sur son balcon, vous lancez le sort de lévitation. Par le seul pouvoir magique et par votre pensée vous vous élevez peu à peu dans les airs. Vous voyez que la princesse, émerveillée, vous regarde avec de grands yeux, et son sourire vous fait chavirer le c@oeur, à tel point que vous manquez de perdre votre concentration et de chavirer vous aussi."; w8(); print "^^Vous vous déplacez quelques instants dans les airs en souriant, variez l'altitude, marchez dans l'air, faites quelques pas de danse, l'air facile, pour montrer à la princesse votre maîtrise de la magie et qu'elle vous admire @{2014} visiblement c'est le cas. Puis, estimant que ça suffit comme ça, vous descendez doucement et atterrissez sur son balcon d'un pas leste. Puis vous exécutez une révérence, en bon chevalier servant. La princesse vous regarde, les yeux brillants, admirative..."; w8(); if (rose in player) {roseoui(); rtrue;} else {rosenon();rtrue;} ]; [ grandbal ; score=score+2; print "Vous avez l'idée de vous grandir afin de pouvoir grimper plus facilement sur le balcon et rejoindre la princesse. Votre sort de croissance est parfait pour ça : en plus, il se dissipe facilement @{2014} espérons que cette fois aussi, sinon ça en deviendrait problématique...";w8(); print "^^Vous vous concentrez donc et lancez le sort de croissance sur vous-même.^^Le résultat ne se fait pas attendre : vous vous mettez à grandir, à vous étirer, mais sans trop vous épaissir - ce qui est pratique avec ce sort, puisqu'il vous étire plus qu'il ne vous grossit, et ainsi vous pourrez quand même grimper sur le balcon de la princesse.^^Voyant ce sort impressionnant et la taille que vous avez atteinte (vous avez désormais la tête au-dessus du balcon), la princesse, ébaubie, s'écarte pour que vous puissiez grimper sur le balcon sans encombre.^^Vous posez les mains sur la rambarde du balcon et vous préparez à vous hisser près de la princesse d'un petit saut."; w8(); print "^^C'est à ce moment précis que le sort se dissipe.^^C'est une sensation très bizarre : vous êtes toujours accroché à la rambarde, et vos bras rapetissent soudainement, vous hissant un peu. Pendant ce temps vos pieds auparavant tranquillement posés sur le sol décollent, et vos jambes rapetissent. Vous êtes près de tomber, et la chute serait haute - le balcon est à trois ou quatre mètres du sol...^^Vous sentez aussi vos mains rapetisser petit à petit, et elles qui agrippaient si fermement la rambarde cherchent maintenant désespérément une prise..."; w8(); print "^^Vos mains trouvent une prise, finalement. Les mains de la princesse. Elle vous donne la main, vous vous agrippez... Un petit effort, et... Vous réussissez à vous hisser sur le balcon, enfin."; w8(); print "^^Grâce à la princesse, vous êtes sain et sauf. La princesse vous sourit, visiblement amusée.^^@<< Je suis désolé. @>> faites-vous. @<< Ce n'est pas très au point, comme méthode... @>>^^La princesse rit, et vous regarde dans les yeux, ce qui vous fait quelque peu réaliser qui est en face de vous. Et voilà vos mains qui recommencent à transpirer et votre c@oeur qui s'emballe..."; w8(); if (rose in player) {roseoui(); rtrue;} else {rosenon();rtrue;} ]; [ lierrepouss ; score=score+2; print "Vous aviez remarqué cette petite pousse de lierre au pied du mur. S'il était plus gros, vous auriez pu grimper dessus pour monter jusqu'au balcon...^^Et c'est là qu'intervient le sort de croissance..."; w8(); print "^^En vous concentrant, vous jetez le sort de croissance sur le lierre. Et il se met à grandir, à grossir, s'épaissir, et à grimper contre le mur. Exactement ce que vous vouliez.^^Vous décochez un clin d'@oeil hardi à la princesse, émerveillée par ce sort, et vous commencez à gravir le lierre."; w8(); print "^^L'ascension est assez pénible, et vous faites de votre mieux pour ignorer le fait que vous soyez à plusieurs mètres du sol, mais vous arrivez finalement à hauteur du balcon. Vous passez rapidement par-dessus la rambarde.^^Il était temps. Quelques secondes après, vous voyez le lierre se flétrir, puis tomber en débris de feuilles et de branches éparses au sol. Un peu plus et vous tombiez avec.^^Vous vous retournez vers la princesse, et votre c@oeur fait un bond. Vous la contemplez, vous la buvez des yeux, vous êtes si proche d'elle... Vous aviez presque oublié sa beauté..."; w8(); if (rose in player) {roseoui(); rtrue;} else {rosenon();rtrue;} ]; [ cord ; print "Vous sortez votre corde, et vous en désignez le bout à la princesse.^^@<< Pourrais-je vous demander votre aide, ma chère ? @>>^La princesse rosit. @<< Oh, oui, monsieur.^-Attachez simplement la corde autour de la rambarde, et je pourrai me hisser vers vous. @>>^^Vous lancez le bout de votre corde vers le balcon ; la princesse l'attrape, assez maladroitement. Puis elle fait passer la corde autour de la rambarde et fait plusieurs n@oeuds.^^@<< Voilà, c'est fait ! @>> dit-elle fièrement.^@<< Dans ce cas, j'arrive ! @>> faites-vous d'un ton chevaleresque..."; w8(); print "^^N'étant pas expert en montée à la corde, l'ascension est assez pénible, et longue. Mais petit à petit, encouragé par la vision de la princesse et la possibilité de la rejoindre, enfin, sur son balcon, vous vous dépêchez.^^Plus qu'un mètre, même moins. La princesse vous tend la main en souriant. Plus que quelques centimètres et vous pourrez vous hisser aux côtés de la princesse."; w8(); print "^^Quand soudain, c'est le drame.^^Le n@oeud fait par la princesse se défait sous la tension de votre poids. La corde glisse, et tombe de la rambarde. Et vous avec. Vous essayez désespérément de vous raccrocher à quelque chose, mais c'est trop tard.^^La princesse avait mal fait le n@oeud. Quelle empotée ! À cause d'elle, vous tombez par terre, vous rompant le dos, et vous brisant la nuque sur un rocher qui affleurait le sol.^^La princesse va en avoir des cauchemars, certes - mais vous êtes le plus à plaindre, après tout, non ?"; w8(); deadflag=1; ]; [ roseoui ; score=score+1; print "^^Vous lui tendez alors votre belle rose rouge.^^@<< Oh, une rose ! Comme c'est gentil ! Merci, monseigneur ! @>> Elle y plonge son petit nez rose, et la sent, émerveillée. @<< Elle sent si bon... Ce parfum... @>>^^Puis la princesse vous regarde dans les yeux, d'un air mutin. Et dit : @<< C'est tellement romantique... @>> Elle en soupire d'aise. @<< Merci, mon bon ami... @>>^Elle baisse les yeux, et demande : @<< Croyez-vous que je peux vous faire part de ma gratitude en vous donnant un baiser ?^-Tout ce que vous voudrez, gente dame... @>>, faites-vous en grand seigneur. En vérité, vous frôlez la crise cardiaque ou la déshydratation, mais vous parvenez à le cacher un peu."; w8(); print "^^La princesse s'approche de vous, et tend ses lèvres vermeilles vers les vôtres. Et vous vous empressez d'y déposer un baiser long, fougueux et tendre.^^Puis la princesse se recule, un peu, doucement, en souriant, apparemment ravie.^^Réalisant ce que vous venez de faire, vous vous évanouissez."; w8(); print "^^Quand vous revenez à vous, la princesse est là, penchée sur vous ; votre tête est posée sur ses genoux. Elle sourit de vous voir revenir à vous.^^@<< Eh bien... Si j'avais su que je pouvais causer un tel trouble en votre âme...^-Voyez, vous le pouvez, et même plus, je suis sûr. Un tel bonheur pour moi est insoutenable...^-Oh, petite nature... N'ayez crainte, je suis là pour vous soutenir... @>>^^Et sur ce elle vous donne la meilleure des médecines qui soit : ses lèvres. Vous frôlez une fois encore l'évanouissement."; w8(); print "^^Et quelques années plus tard...^La princesse devient votre femme..."; w8(); style underline; print "^^Et ils vécurent heureux et eurent beaucoup d'enfants..."; style roman; deadflag=2; ]; [ rosenon ; print "^^La princesse vous regarde avec de grands yeux, en silence, comme si elle attendait quelque chose de vous. Vous froncez les sourcils, en vous demandant ce qu'elle attend.^^@<< Qu'y a-t-il ?^-Ben... Et la rose ?^-Quelle rose ?^-Vous ne m'avez même pas apporté de rose ??! @>>"; w8(); print "^^La princesse est soudainement blanche de rage. @<< Vous osez venir sur mon balcon sans rose ? Sans rien ?! Vous imaginez que je vais succomber à votre charme comme ça, sans un mot doux, une attention gentille ? Vous vous croyez tout permis, vous, les mâles ! Ah, des mots, des mots, tous pareils, ces hommes ! Quel affront ! Vous vous êtes introduit dans mes quartiers dans le seul but d'abuser de moi, en masquant à peine votre dessein machiste, pour repartir en douce à l'aube, c'est ça ?? @>>^^La princesse crie presque, maintenant. Comment avez-vous pu oublier la rose ? Vous essayez de lui expliquer, de vous excuser, de corriger votre image face à cette féministe qui exige d'être séduite, rendez-vous compte - mais elle hurle :^^@<< GAAAAAAAAARDES ! UN HOMME EST ENTRÉ DANS MA CHAMBRE ! @>>"; w8(); print "^^Les gardes font rapidement irruption dans la chambre. Vous n'avez pas le temps de vous expliquer, vous êtes emmené, balbutiant, par les soldats. Et pour avoir essayé d'abuser de la princesse, le roi vous condamne à croupir dans un cachot jusqu'à ce que mort s'ensuive. Bien fait pour vous."; w8(); deadflag=1; ]; [ instruSub ; "Vous ne pouvez pas faire de la musique avec cela !"; ]; [ petriSub ; if (niv2==2) { if (noun==player) {"Vous pétrifier vous-même ? Ce serait stupide, allons !";} if (noun has animate) {"Non, ça vous attirerait trop d'ennuis.";} else {"Ça ne vous serait d'aucune utilité.";} } else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} ]; [ learnSub ; if (niv1==1) {"Vous ne pouvez apprendre à vous servir de cela.";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} ]; [ learnemptSub ; "Apprendre quoi, au juste ?"; ]; [ grandSub ; if (niv1==1) { if (noun==player || noun==0) { switch(location){ balconsoir: if (princesse in balconsoir) {grandbal(); rtrue;} else {"Vous pouvez certes vous grandir pour pouvoir atteindre le balcon plus facilement, mais vous ne voulez pas vous introduire chez la princesse de cette manière, alors qu'elle ignore tout de vous et de votre présence...";} balcon: "Vous pouvez certes vous grandir pour pouvoir atteindre le balcon plus facilement, mais vous ne voulez pas vous introduire chez la princesse de cette manière, alors qu'elle n'est pas chez elle."; intecole: "Vous vous grandissez quelques instants sous les yeux amusés de votre professeur de magie. @<< Je vois que vous maîtrisez plutôt bien ce sort ! @>>"; taverne, taverne2: "Vous vous grandissez quelques instants devant les ivrognes, qui vous regardent d'un air hébété. Puis vous reprenez une taille normale. L'un secoue la tête : @<< J'commence vraiment à avoir trop bu, moi... J'vois trouble. @>>"; chateau: "Grandir de la sorte passerait sans doute pour une menace face aux gardes : vous préférez ne pas vous attirer d'ennuis."; default:"Vous jetez le sort de croissance sur vous : aussitôt vous vous mettez à grandir. Mais cette grande taille ne vous est pas très utile, et le sort se dissipe vite : bientôt vous vous retrouvez à votre taille normale, et vous n'êtes pas plus avancé."; }} else {"Ça ne vous servirait à rien.";} } else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} ]; [ levitSub ; if (niv3==2){ switch(location){ balconsoir: if (princesse in balconsoir) {levitation();} else {"Vous n'oserez pas vous introduire chez la princesse de cette manière...";} balcon: "Si vous comptez vous introduire chez la princesse de cette façon, mieux vaut attendre qu'elle soit dans sa chambre..."; intecole: "Vous lévitez quelques instants sous les yeux amusés de votre professeur de magie. @<< Je vois que vous maîtrisez plutôt bien ce sort ! @>>"; taverne, taverne2: "Vous lévitez quelques instants devant les ivrognes, qui vous regardent d'un air hébété. Puis vous redescendez. L'un secoue la tête : @<< J'commence vraiment à avoir trop bu, moi... @>>"; chateau: "Vous lévitez quelques instants. Les gardes se mettent à crier : @<< Hé, toi ! Redescends un peu ! Si tu crois que tu peux entrer dans le château comme ça, tu te trompes ! On t'attraperait dès que tu redescendrais ! Allez, descends, plus vite que ça ! @>>^^Soucieux de ne pas vous attirer trop d'ennuis, vous redescendez sagement."; default:"Vous lévitez quelques instants, c'est amusant mais ça ne vous sert à rien. Donc vous redescendez."; }} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} ]; [ levitnSub; if (niv3==2) { if (noun==player) {<>;} else {"Vous ne pouvez pas faire léviter les autres, avec ce sort, seulement vous !";} } else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maîtriser un jour, en travaillant dur à l'École de Magie...";} ]; [ jetSub ; ; ]; [ achatSub; if (location == echoppe) {if (noun==artic || noun==0) {march(); rtrue;}} ; ]; [ sorSub; "En fait, vous êtes tellement habitué à jeter des sorts que vous n'y pensez même plus : alors qu'au début vous pensiez au sort que vous vouliez jeter, désormais votre esprit pense directement au verbe associé - ainsi par exemple vous ne pensez pas consciemment à @<< je veux jeter le sort de croissance @>>, mais vous vous dites presque naturellement @<< grandir ceci @>>..."; ]; [ escalSub; if (player in balcon || player in balconsoir) {"Vous n'aurez pas assez de prises, et le lierre n'est pas assez solide.";} else {"Je ne pense pas qu'on puisse arriver à grand chose de cette manière.";} ]; [ listsortsSub ; if (niv1==0) {"Vous êtes encore un jeune apprenti, et vous ne connaissez aucun sort pour le moment...";} else { print "Voici les sorts que vous connaissez jusque-là :"; if (niv1==1) {print "^Apprendre - Sort d'apprentissage - Permet d'apprendre à se servir d'un objet en votre possession^Grandir - Sort de croissance - Permet de faire croître quelque chose";} if (niv2==2) {print "^Pétrifier - Sort de pétrification - Permet de pétrifier quelqu'un temporairement";} if (niv3==2) {print "^Léviter - Sort de lévitation - Permet de vous élever dans les airs";} "";} ]; [ AideSub ; DoMenu(" ^^ À propos du jeu ^ Comment jouer à une fiction interactive ? ^ Commandes spécifiques au jeu ^ Remerciements ^ Licence ^ Auteur ^ Version ^ Retour^", aideMenu, aideInfo); ]; [ aideMenu; if (menu_item==0) { item_width=14; item_name="Ma princesse adorée - Aide";return 8;} if (menu_item==1) { item_width=10; item_name="À propos du jeu"; } if (menu_item==2) { item_width=20; item_name="Comment jouer à une fiction interactive ?";} if (menu_item==3) { item_width=17; item_name="Commandes spécifiques au jeu"; } if (menu_item==4) { item_width=9; item_name="Remerciements";} if (menu_item==5) { item_width=7; item_name="Licence";} if (menu_item==6) { item_width=7; item_name="Auteur";} if (menu_item==7) { item_width=7; item_name="Version";} if (menu_item==8) { item_width=6; item_name="Retour";} ]; [ aideInfo; if (menu_item==1) {style bold; print "^Ma princesse adorée"; style roman; "^Un jeu par Hugo Labrande.^^Ce jeu a été réalisé à l'occasion des premières Rapid'Fictions, le 19 août 2007. Il a subi ensuite de nombreux remaniements, corrections et enrichissements, si bien que vous jouez actuellement à la version 5 du jeu.^^Cette version a reçu le label de qualité Mimesis voté par la communauté francophone.^^Le but du jeu est simple : séduire, impressionner, courtiser la princesse pour qu'elle vous tombe dans les bras ! Nous faisons confiance à votre esprit romantique pour trouver comment faire...";} if (menu_item==2) {"Si vous ne savez pas comment jouer à une fiction interactive, voilà une petite aide pour débuter :^^Vous incarnez un personnage agissant dans le monde décrit par le jeu. Vous pouvez vous déplacer, parler à des gens, résoudre des énigmes - théoriquement, tout est possible !^^Pour diriger votre personnage, vous devrez entrer les commandes sous la forme infinitif + nom : par exemple vous pourrez taper @<< prendre épée @>> ou @<< aller au nord @>>. Des abréviations sont possibles : n pour nord, o pour ouest, se pour sud-est, i pour inventaire, x pour examiner.^^Ce jeu comporte quelques mécanismes qui lui sont spécifiques, consultez la section appropriée.";} if (menu_item==3) {"En tant que sorcier, vous pouvez jeter des sorts, et vos pouvoirs magiques vous permettent d'accomplir des actions nouvelles, magiques. Pour cela, il vous suffit de taper directement le verbe correspondant : par exemple @<< apprendre @>> pour le sort d'apprentissage...^^Pour un récapitulatif de vos sorts, tapez @<< sorts @>>.^^L'interface de conversation avec les personnages dans ce jeu est simple : pour parler à un personnage, tapez simplement @<< parler avec (personnage) @>>.";} if (menu_item==4) {style bold; print "^Ma princesse adorée"; style roman; "^Un jeu par Hugo Labrande.^^Ce jeu a été réalisé grâce au système Inform 6, créé par Graham Nelson ; les bibliothèques françaises existent grâce à JL Pontico. Merci à eux !^^Merci aussi à Otto Grimwald, pour avoir organisé ces Speed-IF, et merci à lui, Eriorg, Stormi et Akien pour avoir fait un beta-test long et poussé de ce jeu, et lui avoir permis d'obtenir le label de qualité Mimesis !";} if (menu_item==5) {style bold;print "Licence Creative Commons by-nc-nd ^pour : @<< Ma princesse adorée @>> ^par : Hugo Labrande";style roman; print "^^Paternité-Pas d'Utilisation Commerciale-Pas de Modification 2.0 France^"; print "^"; print "Vous êtes libres : de reproduire, distribuer et communiquer cette création au public, selon les conditions suivantes :^"; print "^"; print "- Paternité. Vous devez citer le nom de l'auteur original de la manière indiquée par l'auteur de l'@oeuvre ou le titulaire des droits qui vous confère cette autorisation (mais pas d'une manière qui suggérerait qu'ils vous soutiennent ou approuvent votre utilisation de l'@oeuvre). ^"; print "^"; print "- Pas d'Utilisation Commerciale. Vous n'avez pas le droit d'utiliser cette création à des fins commerciales. ^"; print "^"; print "- Pas de Modification. Vous n'avez pas le droit de modifier, de transformer ou d'adapter cette création. ^"; print "^À chaque réutilisation ou distribution de cette création, vous devez faire apparaître clairement au public les conditions contractuelles de sa mise à disposition.^"; print "^"; print "Chacune de ces conditions peut être levée si vous obtenez l'autorisation du titulaire des droits sur cette @oeuvre.^"; print "Rien dans ce contrat ne diminue ou ne restreint le droit moral de l'auteur ou des auteurs.^"; print "^"; print "Ce qui précède n'affecte en rien vos droits en tant qu'utilisateur (exceptions au droit d'auteur : copies réservées à l'usage privé du copiste, courtes citations, parodie...).^"; print "^"; print_ret "http://creativecommons.org/licenses/by-nc-nd/2.0/fr/legalcode";} if (menu_item==6) {"Je suis Hugo Labrande, alias Mule Hollandaise, créateur de fictions interactives et membre de la communauté francophone (ifiction.free.fr), pour vous servir.^^Ce jeu est ma deuxième création, et il a été réalisé à l'occasion des premières Rapid'Fictions.^^Vous pouvez me contacter via le forum ou à l'adresse mulehollandaise_at_msn.com pour des suggestions, des critiques, voire des félicitations !";} if (menu_item==7) {"Ce jeu a été réalisé à l'occasion des premières Rapid'Fictions, le 19 août 2007. Il a subi ensuite de nombreux remaniements, corrections et enrichissements, si bien que vous jouez actuellement à la version 5 du jeu, une mise à jour de la version 4 (elle-même finalisée plus d'un an après) afin de mieux respecter les conventions typographiques.^^Cette version a reçu le label de qualité Mimesis voté par la communauté francophone.";} if (menu_item==8) {return 3;} ]; !========================================================== ! Grammaire Include "FrenchG"; Verb 'jouer' 'joue' * noun -> instru; Verb 'petrifier' 'petrifie' * noun -> petri; Verb 'apprendre' 'apprends' * -> learnempt * noun -> learn; Verb 'grandir' 'croitre' 'crois' 'grandis' * noun -> grand; Verb 'leviter' 'levite' * -> levit * noun -> levitn; Verb 'sorts' 'sort' * -> listsorts; Extend 'acheter' replace * -> achat * noun -> achat; Extend 'jeter' first * 'sort' topic -> sor * noun -> jet; Extend 'lancer' first * 'sort' -> sor * noun -> jet; Extend 'faire' * 'grandir' noun -> grand * 'croitre' noun -> grand * 'pousser' noun -> grand; Extend 'escalader' first * -> escal; Verb meta 'aide' 'info' 'infos' 'information' 'informations' 'license' 'licence' 'credits' 'credit' 'auteur' 'auteurs' 'menu' * -> aide; Extend 'version' replace * -> aide;