|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 6856 (0x1ac8)
Types: TextFile
Notes: R1k Text-file segment
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦178f11985⟧
└─⟦this⟧
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦6f8f3900b⟧
└─⟦this⟧
JEU Exemple_de_source
ACTION
Aller SYNONYME ( Courir )
Manger
Boire
Allumer
Eteindre
Prendre SYNONYME ( Prend )
Poser SYNONYME ( Deposer, Abandonner )
Fermer
Ouvrir
Inventaire
Decrire
DEFINITION
STRUCTURE Perso ( CHAINE Description, ENTIER Vie )
{ Definition des structures de donnees liees aux pieces }
ENUMERE Lumiere ( Eteind, Allume )
ENUMERE NiveauEau ( Sec, Noye )
ENUMERE NiveauEnergie ( SansDanger, Explosif )
STRUCTURE Piece ( CHAINE Description, Lumiere Eclairage,
NiveauEau Niveau, NiveauEnergie Energie )
{ Definition des structures de donnees liees aux objets }
ENUMERE EtatBoite ( Vide, Pleine )
ENUMERE Position ( On, Off )
STRUCTURE Boite ( CHAINE Description, EtatBoite Contenance )
STRUCTURE Levier ( CHAINE Description, Position Etat )
STRUCTURE Arme ( CHAINE Description, ENTIER Efficacite )
STRUCTURE Aliment ( CHAINE Description, ENTIER Viatamine )
STRUCTURE Cle ( CHAINE Description )
STRUCTURE Sac ( CHAINE Description, ENTIER NbObjet )
PRESENTATION
{ Definition des protagonistes }
Joueur OBJET Perso AVEC ( "C'est moi !..." , 250 )
Troll OBJET Perso AVEC ( "Un vilain troll menacant", 300 )
{ Definition des pieces }
Cave OBJET Piece AVEC ( "Une cave encombree de bouteilles \
\de vin", Eteind, Sec, SansDanger )
Salle_de_Bain OBJET Piece AVEC ( "Bain & Lavabo", Allume, Sec,
SansDanger )
Hall OBJET Piece AVEC ( "C'est l'entree", Allume, Sec, SansDanger )
Cuisine OBJET Piece AVEC ( "Ca sent les pizzas affriolantes", Allume,
Sec, SansDanger)
Salon OBJET Piece AVEC ( "Cool pour un petite sieste, il y a une \
\commode en plien milieu", Allume, Sec,
SansDanger )
Escalier_Bas OBJET Piece AVEC ( "Des marches dangereuses", Eteind, Sec,
SansDanger )
Escalier_Haut OBJET Piece AVEC ( "Ca monte", Allume, Sec, SansDanger )
{ ... }
Position_Joueur OBJET Piece INIT Hall
Position_Troll OBJET Piece INIT Cave
{ Definition des objets }
Sac_a_dos OBJET Sac AVEC ("Vieux et gris", 1 )
Allumettes OBJET Boite AVEC ( "Une pochette", Pleine )
Bidon_d_Essence OBJET Boite AVEC ( "Du super", Pleine )
Commode OBJET Boite AVEC ( "Louis XVI", Vide )
Cle_Verte OBJET Cle AVEC ( "La cle des champs" )
Cle_Rouge OBJET Cle AVEC ( "La cle du succes" )
Disjoncteur OBJET Levier AVEC ( "Triphase", On )
Couteau OBJET Arme AVEC ( "Couteau de cuisine", 30 )
Tronconeuse OBJET Arme AVEC ( "Massacre a la ...", 50 )
Pizza OBJET Aliment AVEC ( "Napolitaine", 9999 )
Poison OBJET Aliment AVEC ( "Pizza du R.U.", 100) {en negatif}
{ ... }
LIAISON
{ Declaration des connexions entre pieces }
CONNEXION ( Nord, Sud, Est, Ouest, Haut, Bas )
CREER_CONNEXION ( Cave, Esclaier_Haut, Haut, LIE )
CREER_CONNEXION ( Escalier_Haut, Cave, Bas, DELIE )
CREER_CONNEXION ( Hall, Escalier_Bas, Bas, LIE )
CREER_CONNEXION ( Escalier_Bas, Hall, Haut, DELIE )
{ ... }
{ Declaration des liens }
CREER_LIEN ( Sac_a_Dos, Joueur, LIE )
CREER_LIEN ( Couteau, Joueur, LIE )
CREER_LIEN ( Bidon_d_Essence,Cave, LIE )
CREER_LIEN ( Allumettes, Commode, DELIE )
{ ... }
CREER_LIEN ( Commode, Salon, DELIE )
{ ... }
ANIMATION_GENERALE { Clauses generales independantes }
{ des entrees au clavier }
POUR 1 ENTREE FAIRE
Joueur.Vie := -5 + Joueur.Vie - (1*12)
FINPOUR
POUR 25 ENTREE FAIRE
SI Position_Troll = Cave ALORS
Position_Troll := Escalier_Bas
SINON
Position_Troll := Cave
FINSI
FINPOUR
SI Joueur.Vie <= -2 ALORS
AFFICHER ( "O rage, je suis mort" )
FIN
FINSI
SI Position_Joueur.Niveau = Noye ALORS
AFFICHER ( "Glou, glou..." )
FIN
FINSI
ANIMATION_GLOBALE { Clauses globales }
SI [ Aller COMP ] OU [ COMP ] ALORS
SI EXISTE_CONNEXION ( Position_Joueur, COMP ) = VRAI ALORS
SI ETAT_CONNEXION ( Position_Joueur, COMP ) = LIE ALORS
Position_Joueur := DESTINATION_CONNEXION ( Position_Joueur, COMP )
SI Position_Joueur.Eclairage = Allume ALORS
AFFICHER ( Position_Joueur.Description )
SINON
AFFICHER ( "Il fait tout noir." )
FINSI
SINON
AFFICHER ( "Le passage est bloque." )
FINSI
SINON
AFFICHER ( "Il n'y pas d'issue dans cette direction" )
FINSI
FINSI
SI [ Decrire ] ALORS
SI Position_Joueur.Eclairage = Allume ALORS
AFFICHER ( Position_Joueur.Description )
SINON
AFFICHER ( "Il fait tout noir." )
FINSI
FINSI
SI [ Decrire COMP ] ALORS
SI ETAT_LIEN ( COMP, Joueur ) = LIE OU ETAT_LIEN ( COMP, Position_Joueur ) = LIE ALORS
AFFICHER ( COMP.Description )
SINON
AFFICHER ( "???" )
FINSI
FINSI
SI [ Inventaire ] ALORS
AFFICHER ( "J'ai avec moi" )
LISTE_LIEN ( Joueur, LIE )
FINSI
SI [ Prendre COMP ] ALORS
SI ETAT_LIEN ( COMP, Position_Joueur ) = LIE ALORS
ECHANGER_LIEN ( COMP, Position_Joueur, Joueur )
AFFICHER ( "ok" )
SINON
SI ETAT_LIEN ( COMP, Joueur ) = LIE ALORS
AFFICHER ( "Je l'ai deja !")
SINON
AFFICHER ( "???" )
FINSI
FINSI
FINSI
{ ... }
ANIMATION_LOCALE { Clauses liees a un contexte particulier }
{ Clauses prioritaires par rapport aux globales }
SI [ Prendre Commode ] ALORS
SI Position_Joueur = Salon ET ETAT_LIEN ( Commode, Salon ) = LIE ALORS
AFFICHER ( "Je pourrais la prendre, mais je ne vois pas pourquoi." )
SINON
AFFICHER ( "Ou y a-t'il une commode ?" )
FINSI
FINSI
SI ( [ Aller Bas ] OU [ Bas ] ) ET Position_Joueur = Salle_de_Bain ALORS
SI ETAT_CONNEXION ( Position_Joueur, Bas ) = LIE ALORS
Position_Joueur := DESTINATION_CONNEXION ( Position_Joueur, COMP )
SI Position_Joueur.Eclairage = Allume ALORS
AFFICHER ( Position_Joueur.Description )
SINON
AFFICHER ( "Il fait tout noir." )
FINSI
SINON
AFFICHER ( "Il n'y pas d'issue dans cette direction" )
FINSI
FINSI
{ ... }
FIN