!==========================================================
Constant Story "Ma princesse adoree";
! Le tiret cadratin
Zcharacter table + '@{2014}';
Constant Headline
"^Un jeu par Hugo Labrande^1eres Rapid'Fictions @{2014} 19 aout 2007^Tapez @<< info @>> pour acceder a l'aide du jeu, ainsi qu'a des informations sur le jeu, son auteur, et sa licence.^";
Release 5;
! Abreviations francaises
Abbreviate "C'est" "'est" "etait " " de " "ne " "pas " "on " " d'" " n'" " l'" " la" " un" "les" "ave" "ser" " personn" "eja" "ain";
! Abreviations de ponctuation
Abbreviate " ; " ". " "..." ", ";
! Abreviations de conjonctions
Abbreviate "dans " "pour " "avec " "et " "que " " qu" "plus " "mais" "ais";
! Abreviations terminaisons
Abbreviate "ant " "ent " "ait " "st " "er " "tion ";
! Abreviations deuxieme personne du pluriel
Abbreviate "vou" "ouv";
! Abreviations bouts de mots
Abbreviate "s l" "s e" "s p" "s d" "e pour" "e c";
! Abreviations Inform
Abbreviate ".^^" "@{2014} " "@<< " "@>>" " ne pouvez pas";
! Abreviations specifiques au jeu
Abbreviate "ell" "a princesse" "En fait, ce sort vous est pour le moment inconnu, mais vous " "avez bon espoir de le maitriser un jour, en " "travaillant dur a l'Ecole de Magie..." " n'avez pas assez d'argent pour acheter une " " petrifie" "petrification" " balcon" " professeur" "mandoline" "menestrel" "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=parle, 2=petrifie, 3=fouille
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 etes sur la place principale du village. Des passants passent, et quelques manants manent ici et la. Un menestrel est la, assis par terre, "; if (menestmed==0) {print "jouant de la mandoline, sa sebile posee devant lui.";} else {print "immobile @{2014} vous l'avez petrifie...";} " Il y a une taverne au sud de la place, et une echoppe a l'ouest. Deux chemins partent de la place : au nord, le chemin mene au chateau, et vous pouvez aller a l'est, vers la EASM, l'Ecole d'Apprentissage Superieur de la Magie, ou vous prenez des cours en ce moment.";
],
before [; Listen: if (noun==0) {if (menestmed==0) {"Vous pouvez entendre le chant du menestrel, qui s'accompagne a la mandoline.";}}
],
n_to chateau,
e_to ecole,
s_to taverne,
w_to echoppe,
in_to "Veuillez indiquer le lieu ou vous voulez entrer.",
has ;
Object mockmarche "Place principale" marche
with description [; print "Vous etes sur la place principale du village. Des passants passent, et quelques manants manent ici et la. Un menestrel est la, assis par terre, "; if (menestmed==0) {"jouant de la mandoline, sa sebile posee devant lui.";} else {"immobile @{2014} vous l'avez petrifie...";}
],
name 'place' 'marche' 'principale' 'village',
before [; Search: "Ca ne servirait a rien, tout est la.";
Take, Push, Pull: "Vous ne pouvez pas faire ca.";
],
has female scenery concealed;
Object chemins "chemins" marche
with description "Deux chemins partent de la place : au nord, le chemin mene au chateau, et vous pouvez aller a l'est, vers la EASM, l'Ecole d'Apprentissage Superieur de la Magie, ou vous prenez des cours en ce moment.",
name 'chemin' 'chemins' 'route' 'routes' 'sentier' 'sentiers',
before [; Take: "Il y a deux chemins differents ; indiquez plutot la direction ou vous voulez vous rendre.";
Push, Pull: "Vous ne pouvez pas faire ca.";
Search: "Vous ne voyez rien d'interessant par terre.";
],
has pluralname scenery concealed ;
Object taverne "Dans la taverne"
with description "Vous voici a l'interieur de la taverne. Plusieurs clients sont assis aux tables ; des habitues, pour la plupart. Au fond, une ouverture donne sur la deuxieme salle de la taverne, une salle plus petite et qui semble deserte pour le moment. L'aubergiste essuie les verres derriere son bar. Vous pouvez sortir par le nord de la taverne, ou bien aller dans la deuxieme salle de la taverne, vers le sud.",
before [; Listen: if (noun==0) {"L'auberge est emplie de leurs rires gras et de leurs conversations animees.";}
Smell: if (noun==0) {"Ca sent la biere, 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 etes dans la deuxieme salle de la taverne, ou il y a des tables, des chaises, et ou le patron entrepose ses tonneaux. Celle-ci est nettement moins occupee ; 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 renfrogne.";} else {print "pleure des larmes d'ivrogne, affale sur la table...";}} else {print "est affale sur sa table, immobile @{2014} vous l'avez petrifie...";} " 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 animee ; a cette heure elle doit accueillir tous les habitues...";
taverne: "Vous voici a l'interieur de la taverne. Plusieurs clients sont assis aux tables ; des habitues, pour la plupart. Au fond, une ouverture donne sur la deuxieme salle de la taverne, une salle plus petite et qui semble deserte pour le moment. L'aubergiste essuie les verres derriere son bar.";
taverne2: print "Vous etes dans la deuxieme salle de la taverne, ou il y a des tables, des chaises, et ou le patron met ses tonneaux. Celle-ci est nettement moins occupee ; 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 renfrogne.";} else {print "pleure des larmes d'ivrogne, affale sur la table...";}} else {print "est affale sur sa table, immobile @{2014} vous l'avez petrifie...";} " 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: "Ca ne servirait a rien, tout est la.";
Enter: if (location==marche) {print "Vous entrez dans la taverne.^"; PlayerTo(taverne); rtrue;} else {"Vous y etes deja.";}
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 deja fermee.";
],
found_in marche taverne,
has female scenery concealed;
Object echoppe "Dans l'echoppe"
with description "L'enseigne de l'echoppe dit @<< Tout pour l'aventurier @>>. Ici, on vend apparemment des accessoires pour les voyages et aventures en tous genres... Le vendeur est derriere son comptoir, et vous regarde d'un air avenant. Vous pouvez sortir par la porte a l'est.",
e_to marche,
out_to marche,
has ;
Object mockecho "echoppe"
with description "L'enseigne de l'echoppe 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: "Ca ne servirait a rien, tout est la.";
Enter: if (location==marche) {print "Vous entrez dans l'echoppe.^"; PlayerTo(echoppe); rtrue;} else {"Vous y etes deja.";}
Exit: if (location==echoppe) {PlayerTo(marche); rtrue;}
],
found_in marche echoppe,
has female scenery concealed;
Object porteecho "porte de l'echoppe"
with description "Il s'agit de la porte de l'echoppe.",
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'echoppe.^"; PlayerTo(echoppe); rtrue;} else {print "Vous ouvrez la porte et sortez.^"; PlayerTo(marche); rtrue;}
Close: "Il se trouve qu'elle est deja fermee.";
],
found_in marche echoppe,
has female scenery concealed;
Object chateau "Devant le chateau"
with description "Vous etes devant le chateau du roi, un grand chateau fort en pierre. Devant le pont-levis au nord, des gardes sont en faction, hallebarde a la main. Au nord-ouest, vous savez qu'un petit chemin vous permet de rejoindre le balcon de votre bien-aimee, 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 dispose a recevoir qui que ce soit. @>>",
in_to "Les gardes vous barrent le passage. @<< Interdiction d'entrer, monsieur. Le roi n'est pas dispose a 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 preferez pas.";
],
has ;
Object mockchateau "chateau"
with description [; switch(location){
marche: "Un peu plus loin, au nord, se trouve le grand chateau fort du roi... La ou est votre bien-aimee !";
chateau: "Vous etes devant le chateau du roi, un grand chateau fort en pierre. Devant le pont-levis au nord, des gardes sont en faction, hallebarde a la main.";
balcon: "Le chateau est imposant, vu d'en bas ; ce grand fort de pierre est symbole de la puissance du roi, et est concu pour resister a des attaques ennemies. La seule fenetre ici se trouve etre celle du balcon de votre bien-aimee, la princesse : rien qu'a voir cette fenetre, votre c@oeur s'emplit de joie...";
balconsoir: "Il fait nuit, et les pierres du chateau sont sombres, bleues, seulement eclairees par la lueur qui se degage 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 dispose a recevoir qui que ce soit. @>>";} else {"Vous en etes trop loin.";}
Push, Pull, Search, Squeeze, Touch, Take: "Vous en etes trop loin.";
],
found_in chateau marche,
has scenery concealed ;
Object douves "douves" chateau
with description "Les douves contiennent une eau saumatre et fangeuse, tres peu ragoutante. Vous imaginez en plus qu'elles doivent etre peuplees... Ainsi mieux vaut ne pas tenter la baignade et rentrer dans le chateau par le pont-levis...",
name 'douves' 'fosse' 'tranchee' 'tranchees',
before[; Search: "Vous en etes trop loin.";
Empty: "Plus facile a dire qu'a 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 baisse, mais il est garde par deux soldats en faction, qui ne vous laisseront pas passer...",
name 'pont' 'levis',
before[; Push, Pull, Search, Squeeze, Touch, Take: "Vous en etes trop loin.";
],
has scenery concealed ;
Object chem "chemin" chateau
with description "Vous savez que ce chemin de terre vous mene vers le nord-ouest, sous le balcon de votre bien-aimee.",
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 ca.";
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 deja repere. Vous etes reste bien des soirees ici, cherchant un moyen d'attirer favorablement l'attention de la princesse, mais n'osant pas faire le premier pas. Mais vous etes decide a 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 colorees, qui peuvent servir pour des potions d'apres votre professeur de magie";} else {print ", ou d'ailleurs un lierre grimpe";} ". Vous pouvez revenir devant le chateau par le sud-est.";
],
se_to chateau,
before [; Smell: if (noun==0) {"Les herbes plantees ici sentent bon, mais on ne les sent pas beaucoup.";}
],
has ;
Object balconsoir "Le balcon"
with description [; if (princesse notin balconsoir) {"La nuit est tombee. Vous vous placez derriere un buisson, et regardez discretement : il y a de la lumiere 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 etes sous le balcon de la princesse, et celle-ci vous regarde en souriant du haut de son balcon. Vous avez peine a y croire. Elle est encore plus belle que dans votre souvenir... Il vous faut trouver un moyen de monter a son balcon !";}
],
before [; Smell: if (noun==0) {"Les herbes plantees 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 separe la chambre du balcon. "; if (princesse in balconsoir) {"La princesse est sur le balcon, et vous regarde en souriant, vous invitant a la rejoindre.";} else {"La princesse doit etre a l'interieur, 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 ca.";
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 ca chez la princesse, alors qu'elle ignore tout de vous et de votre presence ici.";} else {cord(); rtrue;}}
}
Search, Open, Touch: "Le balcon est hors d'atteinte.";
],
has scenery concealed ;
Object vegeta "vegetation" 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, parait-il. Attention a ne pas les ecraser 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 a ses fleurs, et leur infliger ce sort ne lui plairait pas trop...";
],
has scenery concealed female ;
Object ecole "A l'exterieur de l'ecole de magie"
with description "L'Ecole d'Apprentissage Superieur de la Magie est un ancien batiment en bois, imposant et haut. Une banniere aux armes du fondateur de l'ecole, le mythique Phrygoshn, flotte dans le vent. Des buissons de roses sont plantes de chaque cote 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 delicate.";}
],
n_to intecole,
in_to intecole,
w_to marche,
has ;
Object ecolemock "ecole"
with description [; switch(location){
intecole: print "L'interieur de l'ecole est aussi impressionnant que l'exterieur ; le toit haut de l'ecole est imposant, et vous pouvez entendre les echos des pas resonner dans le batiment. 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'Ecole d'Apprentissage Superieur de la Magie est un ancien batiment en bois, imposant et haut. C'est la que vous etudiez actuellement la magie.";
ecole: "L'Ecole d'Apprentissage Superieur de la Magie est un ancien batiment en bois, imposant et haut. Une banniere aux armes du fondateur de l'ecole, le mythique Phrygoshn, flotte dans le vent. Des buissons de roses sont plantes de chaque cote de la porte.";
}
],
name 'ecole' 'batiment' 'apprentissage' 'magie' 'construction' 'ancien' 'easm' 'universite' 'superieur',
before [; Enter: switch(location){
ecole: print "Vous entrez dans l'ecole.^"; PlayerTo(intecole); rtrue;
intecole: "Vous y etes deja.";
marche: "Vous en etes trop loin.";
}
Exit: switch(location){
ecole: "Vous etes deja a l'exterieur de l'ecole.";
intecole: PlayerTo(ecole); rtrue;
}
Push, Pull, Search, Squeeze, Touch, Take: if (location~=ecole) {"Vous en etes 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'ecole.",
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'ecole.^"; playerTo(intecole); rtrue;} else {print "Vous poussez la porte et sortez de l'ecole.^"; playerTo(ecole); rtrue;}
Close: "Elle est deja fermee.";
],
has scenery concealed ;
Object banni "banniere" ecole
with description "C'est la banniere de l'ecole, une banniere jaune et noire, aux armes du mythique fondateur de l'ecole, feu le grand sorcier Phrygoshn, celebre dans tout le royaume pour sa maitrise de la magie et ses faits d'armes. La banniere flotte doucement dans le vent.",
name 'banniere' 'drapeau' 'armes' 'etendard',
before [; Take: "Non seulement ce serait un quasi-sacrilege, mais en plus la banniere est trop haute.";
Search: "Elle est hors d'atteinte.";
],
has scenery concealed ;
Object intecole "Dans l'ecole de magie"
with description [; print "L'interieur de l'ecole est aussi impressionnant que l'exterieur ; le toit haut de l'ecole est imposant, et vous pouvez entendre les echos des pas resonner dans le batiment. 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'interieur de l'ecole de magie est silencieux ; on peut juste entendre des echos de pas qui se repercutent dans le batiment.";}
],
out_to ecole,
s_to ecole,
has ;
Object toit "toit" intecole
with description "Le toit de l'ecole 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 preferez garder votre argent, vous pourriez en avoir besoin.";
Insert, PutOn: if (second==sebile) {if (argent>5) {argent=argent-5; print "Dans un acces de generosite vous posez cinq sols dans la sebile du menestrel. "; if (menestmed==0) {"Celui-ci vous regarde, et sourit faiblement, tout en continuant a jouer de sa mandoline.";} else {"Peut-etre vous pardonnera-t-il ainsi de l'avoir petrifie...";}} else {"Vous n'avez pas assez d'argent @{2014} a la rigueur, c'est le menestrel qui devrait vous faire l'aumone...";}} else {"Non, vous preferez garder votre argent, vous pourriez en avoir besoin.";}
],
has ;
Object menestrel "menestrel" marche
with description [; if (menestmed==1) {"Le menestrel est toujours sous l'emprise de votre sort de petrification, mais d'ici une heure il n'y paraitra plus...";} else {"Le menestrel est assis par terre, et chante, accompagne par sa mandoline. Il a les cheveux longs et frises qui lui reviennent dans les yeux, et les yeux vides, dans le vague, comme sous l'emprise de champignons hallucinogenes... Vous l'ecoutez distraitement : il est en train de chanter une chanson a propos d'une bataille qui se serait deroulee a Evermore... Mouais. Un drole d'oiseau.";}
],
short_name [; if (menestmed==1) {print "menestrel petrifie"; rtrue;}
],
name 'menestrel' 'trouvere' 'troubadour' 'chanteur' 'musicien' 'barde' 'homme' 'guitariste',
before [; ParlerSansPrecision, Ask: if (menestmed==0) {"Il semble trop occupe a jouer de sa mandoline.";} else {"Il est petrifie, il ne vous repondra pas...";}
Search: if (menestmed==0) {"Il n'apprecierait surement pas.";} else {if (mandoline notin menestrel) {"Il n'a rien d'interessant sur lui.";} else {move mandoline to player; score=score+1; "Vous prenez la mandoline des mains du menestrel petrifie, en lui demandant pardon a mi-voix...";}}
petri: if (niv2==2) {if (menestmed==0) {menestmed=1; score=score+4; "Verifiant 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 petrification sur le menestrel. Celui-ci se transforme instantanement en statue de pierre, et prend une couleur grisatre. Heureusement pour lui, les effets du sort ne durent qu'une petite heure.";} else {"Il est deja petrifie !";}} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole de Magie...";}
Listen: if (menestmed==0) {"Il est en train de chanter, en s'accompagnant de sa mandoline, une ballade a propos d'une bataille qui se serait deroulee a Evermore... Ca doit etre une composition...";} else {"Etant donne que vous l'avez petrifie, il ne fait aucun bruit.";}
],
life [; Give: if (noun==argentobj) {if (argent>5) {argent=argent-5; print "Dans un acces de generosite vous posez cinq sols dans la sebile du menestrel. "; if (menestmed==0) {"Celui-ci vous regarde, et sourit faiblement, tout en continuant a jouer de sa mandoline.";} else {"Peut-etre vous pardonnera-t-il ainsi de l'avoir petrifie...";}} else {"Vous n'avez pas assez d'argent @{2014} a la rigueur, c'est le menestrel qui devrait vous faire l'aumone...";}}
Tell, Answer: if (menestmed==0) {"Il semble trop occupe a jouer de sa mandoline.";} else {"Il est petrifie, il ne vous repondra 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 occupe a jouer de sa mandoline.";
}}
else {"Il est petrifie, il ne vous repondra pas...";}
],
has animate talkable transparent ;
Object mandoline "mandoline neuve" menestrel
with description "Une bien jolie mandoline, au son brillant et net. Un tres bon instrument, apparemment, parfait pour vous accompagner, ou jouer des pieces, ou des serenades...",
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 menestrel en joue, et je ne suis pas sur qu'il voudra bien vous la ceder...";}}
Take: if (mandoline in menestrel) {
if (menestmed==1) {move mandoline to player; score=score+1; "Vous prenez la mandoline des mains du menestrel petrifie, en lui demandant pardon a mi-voix...";}
else {"Je ne crois pas que le menestrel vous laissera la prendre.";}
}
learn: if (niv1==1) {
if (appmand==1) {"Mais vous savez deja jouer de la mandoline !";}
else {
if (self in player) {appmand=1; score=score+2; "Grace 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 maitriser un jour, en travaillant dur a l'Ecole de Magie...";}
Search: "Ca ne s'ouvre pas et rien n'est cache a l'interieur.";
Listen: if (self in menestrel && menestmed==0) {"L'accompagnement du menestrel melange accords et melodies : il en joue vraiment bien.";} else {"Vous grattez quelques cordes a vide : la mandoline a un son clair et aigu, presque metallique.";}
],
has female ;
Object sebile "sebile" marche
with description "C'est la sebile du menestrel ; quelques pieces, mais pas beaucoup, y sont posees.",
name 'sebile' 'piece' 'pieces',
before [; Take: if (menestmed==0) {"Le menestrel ne vous laissera pas la prendre.";} else {"Non, ce serait assez immoral, de profiter de la petrification du menestrel pour lui voler les quelques pieces 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 menestrel ne vous laissera pas faire ca.";} else {"Non, ce serait assez immoral, de profiter de la petrification du menestrel pour lui voler les quelques pieces 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 acces de generosite vous posez cinq sols dans la sebile du menestrel. "; if (menestmed==0) {"Celui-ci vous regarde, et sourit faiblement, tout en continuant a jouer de sa mandoline.";} else {"Peut-etre vous pardonnera-t-il ainsi de l'avoir petrifie...";}} else {"Vous n'avez pas assez d'argent @{2014} a la rigueur, c'est le menestrel qui devrait vous faire l'aumone...";}} else {"Ca ne servirait a rien.";}
],
has female concealed ;
Object artic "articles" echoppe
with description "Ce sont les articles que l'on vend dans cette echoppe. 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 posee sur deux tonneaux. Le vendeur est derriere.",
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 proprietaire de l'echoppe, qui vous sourit d'un air affable et commercant. Il a l'air plutot serviable et gentil @{2014} ca 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' 'proprietaire' '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'apprecierait pas.";
],
life [; Tell, Answer: "[Pour parler avec un personnage, tapez simplement @<< parler avec (personnage) @>>.]";],
orders [; Give: <<achat noun>>;
],
has animate concealed transparent ;
Object mand2 "mandoline d'occasion" vendeur
with description [; if (mand2 in player) {"C'est la mandoline que vous avez achetee au marchand. Elle est en plutot bon etat, mais elle semble avoir deja vecu... Ce qui n'a que peu d'importance, car elle a un son plutot bon, tout a fait correct.";} else {"C'est une mandoline d'occasion ; le marchand la vend a 340 sols, ce qui est une plutot bonne affaire, car les mandolines sont assez rares. Celle-ci ne semble pas etre en trop mauvais etat 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 deja jouer de la mandoline !";}
else {if (self in player) {appmand=1; score=score+2; "Grace 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 maitriser un jour, en travaillant dur a l'Ecole 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; "@<< Voila votre mandoline. Merci a vous, monsieur. @>> Vous achetez la mandoline pour 340 sols.";}} else {"Vous en avez deja achete 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; "@<< Voila votre mandoline. Merci a vous, monsieur. @>> Vous achetez la mandoline pour 340 sols.";}}
Search: "Ca ne s'ouvre pas et rien n'est cache a l'interieur.";
Listen: if (mand2 in vendeur) {"@<< Je ne fais pas de demonstrations avec les instruments, monsieur. @>> vous dit le vendeur.";} else {"Vous grattez quelques cordes a vide : la mandoline a un son clair et aigu, presque metallique.";}
],
has female concealed ;
Object flute "flute" vendeur
with description "C'est une flute en bois, assez petite, percee de six trous ; elle a un son aigu, qui est parfait pour jouer des ritournelles et des morceaux legers et entrainants.",
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 flute.";}
}
else {"Vous ne savez pas en jouer !";}
}
learn: if (niv1==1) {
if (appflu==1) {"Mais vous savez deja jouer de la flute !";}
else { if (self in player) {appflu=1; score=score+2; "Grace au sort, vous savez maintenant comment jouer de la flute.";} else {"Trouvez-vous d'abord une flute.";} }
}
else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole de Magie...";}
Buy: if (flute hasnt bought) {if (argent<120) {"Vous n'avez pas assez d'argent pour acheter une flute.";} else {give flute bought; give flute ~concealed; argent=argent-120; score=score+2; move flute to player; "@<< Voila votre flute, monsieur. @>> Vous achetez la flute pour 120 sols.";}} else {"Vous en avez deja achete une, qu'en avez-vous fait ?";}
Take: if (flute hasnt bought) {if (argent<120) {"Vous n'avez pas assez d'argent pour acheter une flute.";} else {give flute bought; give flute ~concealed; argent=argent-120; score=score+2; move flute to player; "@<< Voila votre flute, monsieur. @>> Vous achetez la flute pour 120 sols.";}}
Listen: if (flute in vendeur) {"@<< Je ne fais pas de demonstrations avec les instruments, monsieur. @>> vous dit le vendeur.";} else {"La flute 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 metres 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 ca chez la princesse, alors qu'elle ignore tout de vous et de votre presence 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; "@<< Voila, monsieur. @>> Vous achetez la corde pour 40 sols.";}} else {"Vous en avez deja achete 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; "@<< Voila, 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 colorees d'entre elles.",
name 'simples' 'herbes' 'herbe' 'plante' 'plantes' 'jardin' 'pousses' 'pousse' 'colorees' 'coloree' 'magique' 'magiques',
before [; Smell: "Les herbes plantees 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 etre 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 plantees ici sentent bon, mais on ne les sent pas beaucoup.";
Take: "Vous n'allez pas deraciner tout le jardin !";
grand: if (niv1==1) {"C'est vrai, vous pourriez, mais faire pousser ces herbes ne vous servirait a rien.";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole de Magie...";}
],
has female pluralname concealed ;
Object herbemock "herbes magiques"
with description "Grace a votre formation, vous savez reconnaitre ces herbes colorees comme etant en realite 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... Ca reste discret, mais elles ont l'air plus fraiches 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 idee, mais vous ne voulez pas vous introduire comme ca chez la princesse, alors qu'elle ignore tout de vous et de votre presence ici.";}
}
else {"C'est certes une excellente idee, mais a l'heure actuelle cela ne vous servirait a rien.";}
}
else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole de Magie...";}
Take: "Vous n'allez pas deraciner cette petite pousse de lierre, en plus elle ne vous servirait a 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 tres pointu. C'est l'arme de tous les gardes du chateau du roi ; elle est tres efficace, evite un corps a corps, et est tres 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 chateau, 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, leger et facile a prendre en main.",
name 'caillou' 'pierre' 'caillasse' 'rocaille',
before [; jet: if (player in balconsoir && princesse notin balconsoir) {lapid(); rtrue;}
petri: "Petrifier 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 occupees par les clients deja 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: "Ca ne vous serait d'aucun interet.";
],
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 ete debarrasses par l'aubergiste ; certains sont en train d'etre vides a grandes gorgees ; certains vont etre vides par les ivrognes pour mieux etre remplis a 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, a 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 deja entrouvert et regardez au fond : des pieces de monnaie y brillent ! Vous les prenez avec vous, et refermez le tonneau sans rien dire a personne.";} else {"Vous fouillez, mais ne trouvez rien.";}
Close: "Les tonneaux sont deja fermes.";
],
has scenery concealed ;
Object roses "buisson de roses" ecole
with description "Il y a pres de la porte un buisson de roses, tres jolies et d'un rouge intense. Ca vous fait penser a 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 a porter une rose geante, qui plus est fragile...";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole de Magie...";}
Smell: "Vous sentez les fleurs : elles degagent un parfum exquis.";
Search, Take: if (rose has bought) {"Vous avez deja cueilli une rose, vous n'allez pas denuder le buisson, tout de meme !";} else {move rose to player; give rose bought; if (niv3~=2) {"Vous cueillez delicatement une rose et la prenez avec vous.";} else {score=score+2; "Vous cueillez une autre rose : celle-la 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 tres bon ; son parfum ravirait une femme...";
Drop: "Vous ne voulez pas la jeter : la rose risque de s'abimer, et puis, elle vous sera surement 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 particulierement vous. Et ils n'ont pas l'air tres commode... En meme temps, vous dites-vous, c'est le metier qui veut ca...",
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, ca vous attirerait trop d'ennuis.";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole de Magie...";}
Search: "Je ne crois pas qu'ils se laisseraient faire...";
Attack: "Face a deux gardes armes et en armure, vous n'avez aucune chance.";
ThrownAt: if (noun==caillou) {"Les gardes n'apprecieraient certainement pas ca, et comme ils sont plus armes que vous...";}
],
life [; Tell, Answer: "@<< Circulez, monsieur. Le roi ne veut voir personne. @>>";],
orders "@<< Ce n'est pas a 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 deja. C'est un homme grand, aux cheveux grisonnants et epars ; il a une voix douce et chaleureuse, a l'image de sa personnalite. Il vous aide, se montre patient et comprehensif, ce qui a du ameliorer votre apprentissage, pensez-vous. Pour l'heure, il est la, 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 caractere incongru de sa demande...^^Bon prince, vous lui repondez 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 garde la rose pour la princesse @{2014} mais apres tout, il y en a d'autres dehors...^^@<< Merci beaucoup, mon garcon ! Je connais quelqu'un a qui ca va faire plaisir... Tenez, voila pour vous : je vous apprends le sort de levitation ! @>>^^Le halo bleute reapparait, et disparait encore une fois : vous avez appris le sort. Votre professeur s'eloigne 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 garde la rose pour la princesse @{2014} mais apres tout, il y en a d'autres dehors...^^@<< Merci beaucoup, mon garcon ! Je connais quelqu'un a qui ca va faire plaisir... Tenez, voila pour vous : je vous apprends le sort de levitation ! @>>^^Le halo bleute reapparait, et disparait encore une fois : vous avez appris le sort. Votre professeur s'eloigne en vous souriant et en vous adressant un clin d'@oeil.";
2: "@<< Oui, merci, mais vous m'en avez deja rapporte une, vous vous souvenez ? @>>";
}
}
herbemock: if (niv1==1) {
switch(niv2){
0: remove herbemock; niv2=2; score=score+5; "Remarquant les herbes colorees 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 cederiez-vous, mon garcon, ou en avez-vous besoin ? @>>^^Lui repondant que vous n'en avez pas l'utilite, vous lui donnez les herbes.^^@<< Merci beaucoup, mon garcon. Tenez, pour vous remercier, je vais vous apprendre le sort de petrification @{2014} attention a ce que vous en faites, hein ? @>>^^Le halo bleute vous entoure encore une fois et quand il se dissipe, vous savez comment faire pour jeter le sort de petrification.";
1: remove herbemock; niv2=2; score=score+5; "@<< Formidable, vous avez trouve les herbes dont j'avais besoin ! Merci beaucoup, mon garcon. Pour vous remercier, je vais vous apprendre le sort de petrification @{2014} attention a ce que vous en faites, hein ? @>>^^Le halo bleute vous entoure encore une fois et quand il se dissipe, vous savez comment faire pour jeter le sort de petrification.";
2: "@<< Oui, merci, mais vous m'en avez deja rapporte, vous vous souvenez ? @>>";
}
}
}
],
orders "@<< Eh bien, qu'est-ce qui vous arrive, mon garcon ? @>> fait le professeur en froncant 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 voila ! Eh bien, felicitations, je vous annonce que vous avez reussi votre examen ! Tenez, je dois vous apprendre deux sorts. Ne bougez pas... @>>^^Un halo bleute vous entoure, puis se dissipe : c'est ce qui arrive a chaque fois que votre tuteur vous donne la possibilite de lancer un nouveau sort. Puis, votre professeur reprend :^^@<< Voila, vous pouvez maintenant lancer les sorts d'apprentissage (pour apprendre a se servir d'un objet en votre possession) et de croissance (pour faire grandir ou pousser quelque chose). Voila, et encore mes felicitations ! Et n'hesitez pas a 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 colorees 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 cederiez-vous, mon garcon, ou en avez-vous besoin ? @>>^^Lui repondant que vous n'en avez pas l'utilite, vous lui donnez les herbes.^^@<< Merci beaucoup, mon garcon. Tenez, pour vous remercier, je vais vous apprendre le sort de petrification @{2014} attention a ce que vous en faites, hein ? @>>^^Le halo bleute vous entoure encore une fois et quand il se dissipe, vous savez comment faire pour jeter le sort de petrification.";} else {niv2=1; "@<< Venez, mon garcon, vous dit-il. Vous voulez que je vous apprenne un autre sort ? Ecoutez, je vous l'apprendrai, mais il va falloir que vous fassiez quelque chose pour moi... Voila ce que vous allez fa
ire : vous allez partir en quete de quelques herbes magiques. J'en ai besoin tres 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 trouve les herbes dont j'avais besoin ! Merci beaucoup, mon garcon. Pour vous remercier, je vais vous apprendre le sort de petrification @{2014} attention a ce que vous en faites, hein ? @>>^^Le halo bleute vous entoure encore une fois et quand il se dissipe, vous savez comment faire pour jeter le sort de petrification.";} else {"@<< M'avez-vous trouve les herbes dont je vous ai parle ? Toujours pas, mon garcon ? 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 caractere incongru de sa demande...^^Bon prince, vous lui repondez 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 garde la rose pour la princesse @{2014} mais apres tout, il y en a d'autres dehors...^^@<< Merci beaucoup, mon garcon ! Je connais quelqu'un a qui ca va faire plaisir... Tenez, voila pour vous : je vous apprends le sort de levitation ! @>>^^Le halo bleute reapparait, et disparait encore une fois : vous avez appris le sort. Votre professeur s'eloigne en vous souriant et en vous adressant un clin d'@oeil.";} else {niv3=1; "@<< Comment, vous voulez en apprendre plus, encore ? @>> vous dit votre profe
sseur en esquissant un sourire. @<< Vous etes un eleve assidu, decidement... 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. @<< Voila, 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 a sa place, il aurait pu le faire lui-meme ! Manquerait plus qu'il vous demande de lui ecrire une lettre d'amour, non mais ! Bah, mais apres tout, c'est son probleme, 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 garde la rose pour la princesse @{2014} mais apres tout, il y en a d'autres dehors...^^@<< Merci beaucoup, mon garcon ! Je connais quelqu'un a qui ca va faire plaisir... Tenez, voila pour vous : je vous apprends le sort de levitation ! @>>^^Le halo bleute reapparait, et disparait encore une fois : vous avez appris le sort. Votre professeur s'eloigne en vous souriant et en vous adressant un clin d'@oeil.";} else {"@<< M'avez-vous trouve une rose ? Toujours pas, mon garcon ? Bien, revenez me voir quand ce sera fait. @>>^^Gnagnagna, il a qu'a 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 soul, et il se lamente tout en buvant, ou boit en se lamentant, c'est selon.";
1: "L'ivrogne est affale sur la table et pleure a chaudes larmes.";
2: "L'ivrogne est affale sur la table, et vous l'avez petrifie. Heureusement, dans cette position, on croirait qu'il dort...";
3: "L'ivrogne est affale sur la table, et vous l'avez petrifie. 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'ca ? 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 a 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 apres : @<< Pourquoi buvez-vous ? @>>^L'ivrogne soupire. @<< Bah, j'bois... C'te question... @>> Il reflechit, 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 decide d'oublier plus encore avec une autre gorgee.^@<< Mais pour oublier quoi ? @>>^L'ivrogne regarde son verre, l'air gene. Il n'en mene 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 eclate en sanglots et s'effondre sur la table... Il a craque... Vous vous sentez un peu gene, mais pensez qu'il serait mieux de le laisser a ses larmes."; w8(); s
tyle underline; print "^^Toute ressemblance avec un dialogue tire d'un livre de jeunesse ecrit par un aviateur sera totalement fortuite. Si, si, je vous assure !^"; style roman; rtrue;
1: "L'ivrogne ne leve meme pas la tete et reste couche sur sa table quand vous lui tapez sur l'epaule : @<< Je suis triste, laissez-moi ! @>>";
2: "Vous l'avez petrifie, il ne risque pas de vous repondre...";
3: "Vous l'avez petrifie, il ne risque pas de vous repondre...";}
Search: switch(ivro){
0: "Il est peut-etre soul, mais il se rendra certainement compte du fait que vous cherchez a le voler. Donc n'y pensez meme pas, si vous ne voulez pas vous bagarrer avec un ivrogne...";
1: "Il est peut-etre soul, mais il se rendra certainement compte du fait que vous cherchez a le voler. Donc n'y pensez meme 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 petrifie, vous fouillez les vetements de l'ivrogne. Dans sa poche, vous trouvez 50 sols. Vous les prenez discretement, en vous assurant que personne ne vous ait vu.";
3: "Vous avez deja fouille dans ses poches, il n'y a plus rien a lui voler...";}
petri: if (niv2==2) {switch(ivro){
0: print "Discretement, vous vous preparez a jeter le sort de petrification sur l'ivrogne. Vous regardez autour de vous, pour voir si quelqu'un vous regarde : apparemment, personne. Vous vous concentrez, et vous preparez a lancer le sort. Un halo vert entoure vos mains : le sort est pret a etre lance.^^L'ivrogne, a ce moment-la, etait en train de boire a sa chopine. L'eclair vert de votre sort l'entoure, et l'ivrogne s'immobilise soudainement. Petrifie. Le sort a marche."; 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 a avoir peur...^^L'aubergiste sort de derriere son comptoir, et en moins de deux est la, regardant le vieux Krilf.^^@<< Mordiou ! On dirait qu'il a ete petrifie ! @>>^^Et, n'e
tant pas ne de la derniere pluie, il vous demande d'un air soupconneux :^^@<< C'est vous qu'avez fait ca ? @>>"; w8(); print "^^Derriere vous, vous sentez plusieurs silhouettes menacantes se rapprocher...^^@<< Euh... @>> balbutiez-vous. @<< C'est-a-dire que... Non... Enfin... Non ! Je... Je l'ai trouve comme ca !^@{2014} Qu'est-ce que vous en pensez, les gars ? @>> demande un gros baraque derriere vous.^@<< Ca m'a tout l'air d'et' lui qu'a fait ca ! @>> repond un autre.^Les clients commencent a se rapprocher de vous d'un air menacant. @<< Alors comme ca on est sorcier ?^@{2014} On abuse de ses pouvoirs magiques ?^@{2014} C'est pas bien, ca, tu sais ?^@{2014} Petrifier des pauv' ivrognes qu'ont rien fait...^@{2014} Tu pensais lui faire les poches, peut-etre ?^@{2014} Heureusement qu'on t'a trouve, hein !^@{2014} Voleur !^@{2014} Il merite une bonne correction... @>>^Des sourires inquietants commencent a eclore sur certains visages...^@<< Ouais, on va lui apprendre a vivre...^@{2014} Allez, v'nez ! On l'emmene
au supplice !^@{2014} Ouais ! @>>^^Au supplice ? Mon Dieu, qu'avez-vous fait ?"; w8(); print "^^Un grand costaud vous souleve comme une plume et vous met sur son epaule. Vous vous debattez, mais il vous tient d'une poigne ferme. Ils vous emmenent vous ne savez ou, votre monture en premier, les autres, saouls, riant, eructant, et se moquant de vous, derriere 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 a coup, vous voyez ou ils vous ont emmene. Devant les murs du chateau fort."; w8(); print "^^Pour etre plus precis, devant les douves."; w8(); print "^^Vous entendez les cris des gardes au loin, qui se rapprochent.^^@<< He, vous ! Qu'est-ce que vous faites ?^@{2014} Circulez ! Vous n'avez rien a faire ici !^@{2014} Allez faire vos cochonneries ailleurs !^@{2014} Ne vous inquietez pas, @>> fait le grand, @<< on veut juste lui donner une bonne correction... Il a petrifie l'un de nos copains, alors pour lui
apprendre a 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 eviter de boire la tasse, et cette eau est repugnante.^^Finalement, vous arrivez a faire surface. Les clients de la taverne rient, et les gardes aussi. Tout le monde finit par s'eloigner, vous laissant seul, trempe, 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 a 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'eloigner. Vous regardez la blessure : la bete vous a mordu jusqu'au sang !"; w8(); print "^^Quelques mois plus tard, vous mourrez d'une maladie transmise par le ragondin, surement la peste ou la rage..."; w8(); deadflag=1; rtrue;
1: ivro++; score=score+2; print "Discretement, vous jetez un @oeil autour de vous, pour voir si quelqu'un pourrait vous voir en train de jeter le sort de petrification. Heureusement pour vous, ils semblent tous occupes a boire et a rire.^^Vous regardez l'ivrogne, toujours en train de pleurer, affale sur la table, la tete au creux de ses bras. Vous vous concentrez, adressez des excuses mentales a 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 petrification."; w8(); print "^^Le sort a un effet immediat : l'ivrogne s'immobilise dans cette position. Vous regardez autour de vous : personne n'a remarque.^^Enfin, si. Quelqu'un vous regarde, et regarde l'ivrogne."; w8(); "^^Puis il eclate 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 leve nos verres a Krilf ! @>>^^Ils partent dans un grand eclat de rire.^^Ouf, on peu
t dire que vous avez eu chaud. Heureusement qu'il etait deja affale sur la table, sinon personne n'aurait cru qu'il etait en train de dormir...";
2: "L'ivrogne est deja petrifie.";
3: "L'ivrogne est deja petrifie.";}} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole de Magie...";}
Smell: "A dire vrai, il vous semble que l'homme sente l'alcool, et pas qu'un peu...";
],
orders "A 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 tres 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 a 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 a essuyer ses verres, vous ignorant superbement.";],
orders [;
Give: if (noun==verre) {"Vous n'aimez pas trop l'alcool, a vrai dire.";} else {"L'aubergiste vous regarde d'un air mauvais, puis pousse un grognement et continue a essuyer ses verres, vous ignorant superbement.";}
"L'aubergiste vous regarde d'un air mauvais, puis pousse un grognement et continue a essuyer ses verres, vous ignorant superbement.";
],
has animate concealed ;
Object mockserveur "aubergiste" taverne2
with description "L'aubergiste est dans l'autre piece, en train d'essuyer verres et chopes. Il ne vous regarde pas, et n'a pas l'air tres 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 etre la, juste derriere le rideau ! A 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 dulcinee, l'amour de votre vie ! Elle est la, belle dans sa robe rose, des petites meches blondes depassant de sa coiffe, et elle vous regarde en souriant. Vision angelique ! 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 maitriser un jour, en travaillant dur a l'Ecole 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-la, vaquant a leurs occupations respectives.",
name 'gens' 'manants' 'passants' 'manant' 'passant' 'personnes' 'hommes' 'homme' 'personnes' 'personne' 'foule',
before [; ParlerSansPrecision: "Vous ne trouvez rien a leur dire.";
petri: if (niv2==2) {"Vous seriez misanthrope a ce point ? Allons, ressaisissez-vous... Et puis ca ne vous attirerait que des ennuis.";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole 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'a esperer qu'ils n'aient pas le vin mauvais, mais le patron de la taverne semble etre habitue...";
],
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 facon ils ne vous ecouteraient pas...";
petri: if (niv2==2) {"Vous seriez misanthrope a ce point ? Allons, ressaisissez-vous... Et puis ca ne vous attirerait que des ennuis.";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole 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 animees.";
Smell: "Ces hommes sentent l'alcool, en bons ivrognes qu'ils sont...";
],
life [; Tell, Answer: "Non, pensez-vous, de toute facon ils ne vous ecouteraient pas...";],
found_in taverne taverne2,
has animate concealed pluralname ;
!==========================================================
! Routines
[ Initialise;
inventory_style = ENGLISH_BIT+RECURSE_BIT+FULLINV_BIT; ! Inventaire decrit en une phrase
player.description = "Vous etes seul, eperdu, transi d'amour devant la fille du roi... Comment faire pour qu'elle tombe dans vos bras ? Il va falloir etre plus que l'apprenti sorcier que vous etes, il va falloir conquerir son c@oeur par des moyens non magiques, etre romantique... Courage !";
location = marche;
lookmode=2;
move argentobj to player;
style underline;
print "Ah... Son parfum...^^";
w8();
style roman;
print "Elle s'etait avancee vers vous, vous avait regarde de ses beaux yeux bleus... Son parfum vous envoutait. Elle vous avait tendu la main, et d'une main tremblante vous lui aviez remis le message que l'on vous avait envoye porter au roi... Vos doigts avaient effleure les siens, si graciles, si fins... Elle vous avait souri, et remercie de la facon la plus douce qui soit... Puis elle s'etait retournee, et d'une facon si noble et si altiere, s'en etait retournee a ses quartiers, trainant sa robe jaune derriere elle...^^Vous aviez mis quelques minutes avant de vous sortir de votre lethargie. Et vous vous en etiez alle d'un pas tout guilleret. Vous ne vous en etes jamais remis.^^Cette creature divine vous avait ensorcele. Depuis ce jour, vous alliez souvent sous son balcon, dans l'espoir de la voir, de lui parler, d'attirer discretement 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 cha
que soir. Et vous vous endormiez chaque nuit avec son image dans votre c@oeur.";
w8();
print "^^C'est arrive d'un coup. Un matin, en vous reveillant, vous vous etiez dit qu'il fallait que ca cesse. Assez de vous morfondre dans votre coin. Vous alliez oser une bonne fois pour toutes et faire la cour a la princesse. Et avec un peu de chance, elle serait seduite par votre charme.^^C'est certes risque, voire perilleux, mais c'est la seule chose que vous pouvez faire.^^";
w8();
];
[ march ;
DoMenu("Bonjour, Monsieur. Que voulez-vous acheter ?^
^ Une corde (cout : 40 sols)
^ Une flute (cout : 120 sols)
^ Une mandoline (cout : 340 sols)
^ Rien, merci.^",
marchMenu, marchInfo);
];
[ marchMenu;
if (menu_item==0) { item_width=18; item_name="Echoppe @<< Tout pour l'aventurier @>>";return 4;}
if (menu_item==1) { item_width=15; item_name="Une corde (cout : 40 sols)"; }
if (menu_item==2) { item_width=15; item_name="Une flute (cout : 120 sols)";}
if (menu_item==3) { item_width=18; item_name="Une mandoline (cout : 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 deja achete 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; "@<< Voila, monsieur. @>> Vous achetez la corde pour 40 sols.";}}}
if (menu_item==2) {if (flute has bought) {"Vous en avez deja achete une, qu'en avez-vous fait ?";} else {if (argent<120) {"Vous n'avez pas assez d'argent pour acheter une flute.";} else {give flute bought; argent=argent-120; score=score+2; move flute to player; "@<< Voila votre flute, monsieur. @>> Vous achetez la flute pour 120 sols.";}}}
if (menu_item==3) {if (mand2 has bought) {"Vous en avez deja achete 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; "@<< Voila votre mandoline. Merci a vous, monsieur. @>> Vous achetez la mandoline pour 340 sols.";}}}
if (menu_item==4) {return 3;}
];
[ aban ;
print "Tout a 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'etes rien par rapport a elle, vous n'etes rien qui puisse l'interesser @{2014} elle a si elle veut des milliers de pretendants princiers, et elle ne se mariera pas avec un sans-terre comme vous. Vous etes un miserable.^^Vous etes 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 verite vous a frappe en pleine figure, et vous vous en allez doucement, chancelant, en pleurant.";
w8();
print "^^Quelques annees plus tard, le c@oeur toujours en peine, vous decidez d'arreter ce calvaire. Vous vous mettez au bord de la falaise, desespere, 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 etre trop complique, vous parviendrez sans doute a jeter le caillou sur le mur, et a 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 a droite de la fenetre de la chambre de la princesse, mais le caillou part trop a gauche, et il traverse le rideau.";
w8();
print "^^Vous entendez un petit cri de douleur, un cri feminin.^^Oups.^^Ne me dites pas que vous avez touche...";
w8();
print "^^@<< QUI A FAIT CA ! QUI A LANCE CE CAILLOU ! GAAAAAAAAAAARDES ! A L'AIDE, AU SECOURS, A L'ASSASSIN !! QUELQU'UN A ESSAYE 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 emmenent avec eux. Vous les suivez sans opposer de vaine resistance.^^Le roi fera votre proces, et vous condamnera a etre execute pour une tentative de meurtre de la famille royale. Votre tete sera exposee et servira d'exemple a tous ceux qui voudraient attenter a la vie d'un membre de la famille royale.";
deadflag=1;
];
[ prinflut ;
if (princesse notin balconsoir) {
print "Vous commencez a jouer un petit air de flute, un air sautillant, joyeux, en esperant que la princesse vous entende. Vous faites de votre mieux, et il sort de la flute une petite melodie joyeuse qui resonne et vole jusqu'au balcon de la princesse. Vous jouez quelques minutes encore, quand finalement, enfin, vous voyez une ombre a travers le rideau.^^C'est elle.^^Transi d'amour, vous continuez de plus belle, et la melodie gonfle et s'envole... Vous continuez tout en epiant le rideau. Elle va sortir, elle est la, derriere le rideau...^^Mais c'est alors que...";
w8();
print "^^@<< C'EST PAS UN PEU BIENTOT FINI, CE BORDEL ?? @>>";
w8();
print "^^C'est la voix de la princesse... Qui ne vous parait soudainement plus aussi douce que dans votre souvenir...^^Une tete ecarlate, celle-la meme qui etait si blanche et si pure auparavant, sort du rideau et hurle en vous foudroyant du regard :^^@<< JE DETESTE LA FLUTE ! J'ABHORRE LA FLUTE ! QUI QUE TU SOIS, TU PAIERAS TON INSOLENCE ! OSER ME REVEILLER POUR CA ! GAAAAAAARDES ! @>>^^Incredule, vous en restez bouche bee. Les gardes accourent vite, et vous saisissent, pendant que vous etes toujours aussi ebaubi.";
w8();
print "^^Quelle voix ! On aurait dit une furie... Quelle megere... Elle ne comprend rien a l'art...^^Les gardes vous envoient au cachot, vous et votre flute. Et vous y restez jusqu'a la fin de vos jours, par la faute de cette megere excitee qui masque sa folie furieuse derriere un masque de princesse douce. Peuh ! Et dire que vous vous y etes laisse prendre...";
deadflag=1;}
else {"Ca n'est pas la peine, la princesse est deja sortie.";}
];
[ prinmand ;
if (princesse notin balconsoir) {
move princesse to balconsoir; remove mockprincesse;
score=score+4;
print "Vous commencez a 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 apres, vous apercevez une ombre, derriere le rideau. Elle semble hesiter. Transi d'amour, le c@oeur leger, vous continuez a faire courir vos doigts sur l'instrument. Quand soudain...";
w8();
print "^^Emergeant du rideau de la fenetre...^^La princesse !";
w8();
print "^^Belle dans sa robe rose, avec des petites meches blondes descendant en cascade sur sa poitrine... Le teint blanc, la douceur de ses joues, ses levres esquissant un sourire de ravissement... Une preuve de l'existence de Dieu.^^Et elle vous sourit ! Tout emu, vous vous arretez de jouer. Elle vous sourit de plus belle, en rosissant. Votre c@oeur bat tres vite.^^@<< Bravo, monsieur @>>, vous dit-elle, et soudain vous ne pretez plus attention qu'a sa voix. @<< Vous jouez tres bien de la mandoline.^@{2014} J'ai ete inspire par la grande beaute qu'est la votre, 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 levres : ^^@<< Venez donc me rejoindre sur mon balcon, messire, que je vous voie de plus pres...^@{2014} Gente dame, j'accours, je vole ! @>> dites-vous en essayant de contenir votre emotion.^^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 preparez a jeter le sort de petrification sur la princesse. Vous fermez les yeux pour mieux vous concentrer, car la regarder en jetant ce sort vous deconcentrerait...^^La princesse, elle, a remarque que vous avez ferme les yeux. Elle est visiblement intriguee :^^@<< Que faites-vous ? Que... Pourquoi fermer les yeux ? Quoi ? @>>";
w8();
print "^^Maintenant que vous etes concentre 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 lance.^^La princesse est de plus en plus inquiete. Mieux meme : elle a compris votre petit manege...^^@<< GAAAAAAAAAAAARDES ! AU SECOURS ! IL VA ME LANCER UN SORT ! GAAAAAAARDES ! VENEZ VIITE ! AU SEC... @>>^^Trop tard. Vous avez lance le sort.^^Immediatement, la princesse s'est raidie. Vous ne l'entendrez plus crier de la sorte @{2014} un soulagement.";
w8();
print "Mais les gardes ont vite reagi, et vous les entendez courir. Pas le temps de fuir, ils sont deja la, sur vous, vous prennent, vous saisissent, vous immobilisent, et vous jettent au fin fond d'une geole. Vous n'en ressortirez que pour votre proces, ou le roi vous condamnera a croupir jusqu'a la fin de vos jours au fin fond d'une geole. Charmant, donc.";
w8();
deadflag=1;
];
[ prinlap ;
print "Saisissant le caillou dans votre main, vous armez rapidement votre bras, visez et lancez le caillou tres 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'etait pas tres gros, de sorte que la princesse a juste une egratignure. Elle reprend bien vite ses esprits. Elle a pour vous un regard d'incomprehension, puis, tout d'un coup, c'est la colere, aussi rapide que puissante :^^@<< GAAAAAAAAAAAARDES ! A L'AIDE, AU SECOURS, A L'ASSASSIN !! IL A ESSAYE DE ME LAPIDER !!!! GAAAAAARDES ! VENEZ VIIIIITE ! @>>^^Les gardes ne mettent pas longtemps avant de debarquer dans le jardin. Ils vous empoignent bien vite, et en moins de deux, vous vous retrouvez au cachot. Et vous y croupirez jusqu'a la fin de vos jours @{2014} decision du roi pour proteger sa progeniture.";
w8();
deadflag=1;
];
[ levitation ;
score=score+4;
print "Afin de pouvoir rejoindre la princesse sur son balcon, vous lancez le sort de levitation. Par le seul pouvoir magique et par votre pensee vous vous elevez peu a peu dans les airs. Vous voyez que la princesse, emerveillee, vous regarde avec de grands yeux, et son sourire vous fait chavirer le c@oeur, a tel point que vous manquez de perdre votre concentration et de chavirer vous aussi.";
w8();
print "^^Vous vous deplacez quelques instants dans les airs en souriant, variez l'altitude, marchez dans l'air, faites quelques pas de danse, l'air facile, pour montrer a la princesse votre maitrise de la magie et qu'elle vous admire @{2014} visiblement c'est le cas. Puis, estimant que ca suffit comme ca, vous descendez doucement et atterrissez sur son balcon d'un pas leste. Puis vous executez une reverence, 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'idee de vous grandir afin de pouvoir grimper plus facilement sur le balcon et rejoindre la princesse. Votre sort de croissance est parfait pour ca : en plus, il se dissipe facilement @{2014} esperons que cette fois aussi, sinon ca en deviendrait problematique...";w8();
print "^^Vous vous concentrez donc et lancez le sort de croissance sur vous-meme.^^Le resultat ne se fait pas attendre : vous vous mettez a grandir, a vous etirer, mais sans trop vous epaissir - ce qui est pratique avec ce sort, puisqu'il vous etire plus qu'il ne vous grossit, et ainsi vous pourrez quand meme grimper sur le balcon de la princesse.^^Voyant ce sort impressionnant et la taille que vous avez atteinte (vous avez desormais la tete au-dessus du balcon), la princesse, ebaubie, s'ecarte pour que vous puissiez grimper sur le balcon sans encombre.^^Vous posez les mains sur la rambarde du balcon et vous preparez a vous hisser pres de la princesse d'un petit saut.";
w8();
print "^^C'est a ce moment precis que le sort se dissipe.^^C'est une sensation tres bizarre : vous etes toujours accroche a la rambarde, et vos bras rapetissent soudainement, vous hissant un peu. Pendant ce temps vos pieds auparavant tranquillement poses sur le sol decollent, et vos jambes rapetissent. Vous etes pres de tomber, et la chute serait haute - le balcon est a trois ou quatre metres du sol...^^Vous sentez aussi vos mains rapetisser petit a petit, et elles qui agrippaient si fermement la rambarde cherchent maintenant desesperement 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 reussissez a vous hisser sur le balcon, enfin.";
w8();
print "^^Grace a la princesse, vous etes sain et sauf. La princesse vous sourit, visiblement amusee.^^@<< Je suis desole. @>> faites-vous. @<< Ce n'est pas tres au point, comme methode... @>>^^La princesse rit, et vous regarde dans les yeux, ce qui vous fait quelque peu realiser qui est en face de vous. Et voila vos mains qui recommencent a 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 remarque cette petite pousse de lierre au pied du mur. S'il etait plus gros, vous auriez pu grimper dessus pour monter jusqu'au balcon...^^Et c'est la qu'intervient le sort de croissance...";
w8();
print "^^En vous concentrant, vous jetez le sort de croissance sur le lierre. Et il se met a grandir, a grossir, s'epaissir, et a grimper contre le mur. Exactement ce que vous vouliez.^^Vous decochez un clin d'@oeil hardi a la princesse, emerveillee par ce sort, et vous commencez a gravir le lierre.";
w8();
print "^^L'ascension est assez penible, et vous faites de votre mieux pour ignorer le fait que vous soyez a plusieurs metres du sol, mais vous arrivez finalement a hauteur du balcon. Vous passez rapidement par-dessus la rambarde.^^Il etait temps. Quelques secondes apres, vous voyez le lierre se fletrir, puis tomber en debris de feuilles et de branches eparses 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 etes si proche d'elle... Vous aviez presque oublie sa beaute...";
w8();
if (rose in player) {roseoui(); rtrue;} else {rosenon();rtrue;}
];
[ cord ;
print "Vous sortez votre corde, et vous en designez le bout a la princesse.^^@<< Pourrais-je vous demander votre aide, ma chere ? @>>^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.^^@<< Voila, c'est fait ! @>> dit-elle fierement.^@<< Dans ce cas, j'arrive ! @>> faites-vous d'un ton chevaleresque...";
w8();
print "^^N'etant pas expert en montee a la corde, l'ascension est assez penible, et longue. Mais petit a petit, encourage par la vision de la princesse et la possibilite de la rejoindre, enfin, sur son balcon, vous vous depechez.^^Plus qu'un metre, meme moins. La princesse vous tend la main en souriant. Plus que quelques centimetres et vous pourrez vous hisser aux cotes de la princesse.";
w8();
print "^^Quand soudain, c'est le drame.^^Le n@oeud fait par la princesse se defait sous la tension de votre poids. La corde glisse, et tombe de la rambarde. Et vous avec. Vous essayez desesperement de vous raccrocher a quelque chose, mais c'est trop tard.^^La princesse avait mal fait le n@oeud. Quelle empotee ! A 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 etes le plus a plaindre, apres 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, emerveillee. @<< 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 verite, vous frolez la crise cardiaque ou la deshydratation, mais vous parvenez a le cacher un peu.";
w8();
print "^^La princesse s'approche de vous, et tend ses levres vermeilles vers les votres. Et vous vous empressez d'y deposer un baiser long, fougueux et tendre.^^Puis la princesse se recule, un peu, doucement, en souriant, apparemment ravie.^^Realisant ce que vous venez de faire, vous vous evanouissez.";
w8();
print "^^Quand vous revenez a vous, la princesse est la, penchee sur vous ; votre tete est posee sur ses genoux. Elle sourit de vous voir revenir a vous.^^@<< Eh bien... Si j'avais su que je pouvais causer un tel trouble en votre ame...^-Voyez, vous le pouvez, et meme plus, je suis sur. Un tel bonheur pour moi est insoutenable...^-Oh, petite nature... N'ayez crainte, je suis la pour vous soutenir... @>>^^Et sur ce elle vous donne la meilleure des medecines qui soit : ses levres. Vous frolez une fois encore l'evanouissement.";
w8();
print "^^Et quelques annees plus tard...^La princesse devient votre femme...";
w8();
style underline;
print "^^Et ils vecurent 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 meme pas apporte 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 a votre charme comme ca, sans un mot doux, une attention gentille ? Vous vous croyez tout permis, vous, les males ! Ah, des mots, des mots, tous pareils, ces hommes ! Quel affront ! Vous vous etes introduit dans mes quartiers dans le seul but d'abuser de moi, en masquant a peine votre dessein machiste, pour repartir en douce a l'aube, c'est ca ?? @>>^^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 a cette feministe qui exige d'etre seduite, rendez-vous compte - mais elle hurle :^^@<< GAAAAAAAAARDES ! UN HOMME EST ENTRE DANS MA CHAMBRE ! @>>";
w8();
print "^^Les gardes font rapidement irruption dans la chambre. Vous n'avez pas le temps de vous expliquer, vous etes emmene, balbutiant, par les soldats. Et pour avoir essaye d'abuser de la princesse, le roi vous condamne a croupir dans un cachot jusqu'a 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 petrifier vous-meme ? Ce serait stupide, allons !";}
if (noun has animate) {"Non, ca vous attirerait trop d'ennuis.";}
else {"Ca ne vous serait d'aucune utilite.";}
}
else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole de Magie...";}
];
[ learnSub ;
if (niv1==1) {"Vous ne pouvez apprendre a vous servir de cela.";} else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole 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 maniere, alors qu'elle ignore tout de vous et de votre presence...";}
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 maniere, alors qu'elle n'est pas chez elle.";
intecole: "Vous vous grandissez quelques instants sous les yeux amuses de votre professeur de magie. @<< Je vois que vous maitrisez plutot bien ce sort ! @>>";
taverne, taverne2: "Vous vous grandissez quelques instants devant les ivrognes, qui vous regardent d'un air hebete. Puis vous reprenez une taille normale. L'un secoue la tete : @<< J'commence vraiment a avoir trop bu, moi... J'vois trouble. @>>";
chateau: "Grandir de la sorte passerait sans doute pour une menace face aux gardes : vous preferez ne pas vous attirer d'ennuis.";
default:"Vous jetez le sort de croissance sur vous : aussitot vous vous mettez a grandir. Mais cette grande taille ne vous est pas tres utile, et le sort se dissipe vite : bientot vous vous retrouvez a votre taille normale, et vous n'etes pas plus avance.";
}}
else {"Ca ne vous servirait a rien.";}
}
else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole 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 maniere...";}
balcon: "Si vous comptez vous introduire chez la princesse de cette facon, mieux vaut attendre qu'elle soit dans sa chambre...";
intecole: "Vous levitez quelques instants sous les yeux amuses de votre professeur de magie. @<< Je vois que vous maitrisez plutot bien ce sort ! @>>";
taverne, taverne2: "Vous levitez quelques instants devant les ivrognes, qui vous regardent d'un air hebete. Puis vous redescendez. L'un secoue la tete : @<< J'commence vraiment a avoir trop bu, moi... @>>";
chateau: "Vous levitez quelques instants. Les gardes se mettent a crier : @<< He, toi ! Redescends un peu ! Si tu crois que tu peux entrer dans le chateau comme ca, tu te trompes ! On t'attraperait des que tu redescendrais ! Allez, descends, plus vite que ca ! @>>^^Soucieux de ne pas vous attirer trop d'ennuis, vous redescendez sagement.";
default:"Vous levitez quelques instants, c'est amusant mais ca ne vous sert a rien. Donc vous redescendez.";
}}
else {"En fait, ce sort vous est pour le moment inconnu, mais vous avez bon espoir de le maitriser un jour, en travaillant dur a l'Ecole de Magie...";}
];
[ levitnSub;
if (niv3==2) {
if (noun==player) {<<levit>>;} else {"Vous ne pouvez pas faire leviter 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 maitriser un jour, en travaillant dur a l'Ecole de Magie...";}
];
[ jetSub ;
<drop noun>;
];
[ achatSub;
if (location == echoppe) {if (noun==artic || noun==0) {march(); rtrue;}}
<buy noun>;
];
[ sorSub;
"En fait, vous etes tellement habitue a jeter des sorts que vous n'y pensez meme plus : alors qu'au debut vous pensiez au sort que vous vouliez jeter, desormais votre esprit pense directement au verbe associe - ainsi par exemple vous ne pensez pas consciemment a @<< 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 a grand chose de cette maniere.";}
];
[ listsortsSub ;
if (niv1==0) {"Vous etes encore un jeune apprenti, et vous ne connaissez aucun sort pour le moment...";} else {
print "Voici les sorts que vous connaissez jusque-la :";
if (niv1==1) {print "^Apprendre - Sort d'apprentissage - Permet d'apprendre a se servir d'un objet en votre possession^Grandir - Sort de croissance - Permet de faire croitre quelque chose";}
if (niv2==2) {print "^Petrifier - Sort de petrification - Permet de petrifier quelqu'un temporairement";}
if (niv3==2) {print "^Leviter - Sort de levitation - Permet de vous elever dans les airs";}
"";}
];
[ AideSub ;
DoMenu(" ^^ A propos du jeu
^ Comment jouer a une fiction interactive ?
^ Commandes specifiques au jeu
^ Remerciements
^ Licence
^ Auteur
^ Version
^ Retour^",
aideMenu, aideInfo);
];
[ aideMenu;
if (menu_item==0) { item_width=14; item_name="Ma princesse adoree - Aide";return 8;}
if (menu_item==1) { item_width=10; item_name="A propos du jeu"; }
if (menu_item==2) { item_width=20; item_name="Comment jouer a une fiction interactive ?";}
if (menu_item==3) { item_width=17; item_name="Commandes specifiques 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 adoree"; style roman; "^Un jeu par Hugo Labrande.^^Ce jeu a ete realise a l'occasion des premieres Rapid'Fictions, le 19 aout 2007. Il a subi ensuite de nombreux remaniements, corrections et enrichissements, si bien que vous jouez actuellement a la version 5 du jeu.^^Cette version a recu le label de qualite Mimesis vote par la communaute francophone.^^Le but du jeu est simple : seduire, impressionner, courtiser la princesse pour qu'elle vous tombe dans les bras ! Nous faisons confiance a votre esprit romantique pour trouver comment faire...";}
if (menu_item==2) {"Si vous ne savez pas comment jouer a une fiction interactive, voila une petite aide pour debuter :^^Vous incarnez un personnage agissant dans le monde decrit par le jeu. Vous pouvez vous deplacer, parler a des gens, resoudre des enigmes - theoriquement, tout est possible !^^Pour diriger votre personnage, vous devrez entrer les commandes sous la forme infinitif + nom : par exemple vous pourrez taper @<< prendre epee @>> ou @<< aller au nord @>>. Des abreviations sont possibles : n pour nord, o pour ouest, se pour sud-est, i pour inventaire, x pour examiner.^^Ce jeu comporte quelques mecanismes qui lui sont specifiques, consultez la section appropriee.";}
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 recapitulatif de vos sorts, tapez @<< sorts @>>.^^L'interface de conversation avec les personnages dans ce jeu est simple : pour parler a un personnage, tapez simplement @<< parler avec (personnage) @>>.";}
if (menu_item==4) {style bold; print "^Ma princesse adoree"; style roman; "^Un jeu par Hugo Labrande.^^Ce jeu a ete realise grace au systeme Inform 6, cree par Graham Nelson ; les bibliotheques francaises existent grace a JL Pontico. Merci a eux !^^Merci aussi a Otto Grimwald, pour avoir organise ces Speed-IF, et merci a lui, Eriorg, Stormi et Akien pour avoir fait un beta-test long et pousse de ce jeu, et lui avoir permis d'obtenir le label de qualite Mimesis !";}
if (menu_item==5) {style bold;print "Licence Creative Commons by-nc-nd ^pour : @<< Ma princesse adoree @>> ^par : Hugo Labrande";style roman; print "^^Paternite-Pas d'Utilisation Commerciale-Pas de Modification 2.0 France^"; print "^"; print "Vous etes libres : de reproduire, distribuer et communiquer cette creation au public, selon les conditions suivantes :^"; print "^"; print "- Paternite. Vous devez citer le nom de l'auteur original de la maniere indiquee par l'auteur de l'@oeuvre ou le titulaire des droits qui vous confere cette autorisation (mais pas d'une maniere qui suggererait 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 creation a des fins commerciales. ^"; print "^"; print "- Pas de Modification. Vous n'avez pas le droit de modifier, de transformer ou d'adapter cette creation. ^"; print "^A chaque reutilisation ou distribution de cette creation, vous devez faire apparaitre cl
airement au public les conditions contractuelles de sa mise a disposition.^"; print "^"; print "Chacune de ces conditions peut etre levee 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 precede n'affecte en rien vos droits en tant qu'utilisateur (exceptions au droit d'auteur : copies reservees a l'usage prive 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, createur de fictions interactives et membre de la communaute francophone (ifiction.free.fr), pour vous servir.^^Ce jeu est ma deuxieme creation, et il a ete realise a l'occasion des premieres Rapid'Fictions.^^Vous pouvez me contacter via le forum ou a l'adresse mulehollandaise_at_msn.com pour des suggestions, des critiques, voire des felicitations !";}
if (menu_item==7) {"Ce jeu a ete realise a l'occasion des premieres Rapid'Fictions, le 19 aout 2007. Il a subi ensuite de nombreux remaniements, corrections et enrichissements, si bien que vous jouez actuellement a la version 5 du jeu, une mise a jour de la version 4 (elle-meme finalisee plus d'un an apres) afin de mieux respecter les conventions typographiques.^^Cette version a recu le label de qualite Mimesis vote par la communaute 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;