Petites questions de grand débutant

Pour discuter des langages que nous utilisons pour réaliser nos jeux : problèmes, solutions, suggestions...

Modérateurs: Stormi, Otto Grimwald

Re: Petites questions de grand débutant

Messagepar Otto Grimwald le Mar Jan 08, 2008 1:57 pm

essaye avec react_before

Avatar de l’utilisateur
Otto Grimwald
Très Ancien
 
Messages: 3028
Inscription: Mar Aoû 24, 2004 12:02 pm

Re: Petites questions de grand débutant

Messagepar Yoruk le Mar Jan 08, 2008 3:58 pm

Otto Grimwald a écrit:essaye avec react_before


C'est à dire ?
Yoruk, SATOR AREPO TENET OPERA ROTAS
Avatar de l’utilisateur
Yoruk
Grand Ancien
 
Messages: 1065
Inscription: Lun Juin 11, 2007 9:50 am
Localisation: Chiddes, à 150 mètres du lavoir

Re: Petites questions de grand débutant

Messagepar Otto Grimwald le Mar Jan 08, 2008 4:45 pm

à la place de before il faut créer une partie qui s'appelle react_before

http://www.inform-fiction.org/manual/html/sa2.html#p427

Je ne sais pas si cela fonctionnera, mais tente le coup.

Avatar de l’utilisateur
Otto Grimwald
Très Ancien
 
Messages: 3028
Inscription: Mar Aoû 24, 2004 12:02 pm

Re: Petites questions de grand débutant

Messagepar Yoruk le Jeu Jan 17, 2008 7:27 pm

Otto Grimwald a écrit:à la place de before il faut créer une partie qui s'appelle react_before

http://www.inform-fiction.org/manual/html/sa2.html#p427

Je ne sais pas si cela fonctionnera, mais tente le coup.


Je suis en train de voir...

Par contre, si vous pouviez jeter un coup d'oeil sur cette lampe : je souhaite qu'elle s'allume uniquement si le joueur possède les allumettes mais ça ne fonctionne pas...

Code: Tout sélectionner
object lampe "lampe"
   with name "lampe" "tempete",
   invent "une lampe tempête",
   
   description  "Votre fidèle lampe tempête. Que feriez-vous sans elle ?^",
      
   when_off "Elle est éteinte.",
   when_on "Elle diffuse une agréable lumière.",
   
   before [;

      SwitchOn:  if (allumettes in player) { give self light; print "Vous allumez la lampe avec une allumette.^";return;} else {print "Avec quoi ?^";return;};
      SwitchOff: give self ~light;
   ],

has female switchable;



object allumettes "allumettes"
   with description "Une simple boîte d'allumettes.",
   name "boite" "allumettes",
   invent "une boîte d'allumettes",
has female;

(les 2 objets étants dans l'inventaire du joueur)
quand je fais "allumer la lampe" il me renvoie bien "vous allumez la lampe avec une allumette" mais l'examen de la lampe indique toujours que celle ci est éteinte... et les when_on et when_off ne marchent pas...
Yoruk, SATOR AREPO TENET OPERA ROTAS
Avatar de l’utilisateur
Yoruk
Grand Ancien
 
Messages: 1065
Inscription: Lun Juin 11, 2007 9:50 am
Localisation: Chiddes, à 150 mètres du lavoir

Re: Petites questions de grand débutant

Messagepar Otto Grimwald le Jeu Jan 17, 2008 11:00 pm

rajoute en plus "give self on" ou "give self ~on" selon le contexte, ce n'est pas "light" qui indique qu'un "device" est allumé (on) ou pas.

Avatar de l’utilisateur
Otto Grimwald
Très Ancien
 
Messages: 3028
Inscription: Mar Aoû 24, 2004 12:02 pm

Re: Petites questions de grand débutant

Messagepar Yoruk le Ven Jan 18, 2008 8:10 pm

Ok merci beaucoup ça marche. Par contre, les when_on et off ne marchent toujours pas... j'ai toujours les messages par défaut de la bibliothèque.
Yoruk, SATOR AREPO TENET OPERA ROTAS
Avatar de l’utilisateur
Yoruk
Grand Ancien
 
Messages: 1065
Inscription: Lun Juin 11, 2007 9:50 am
Localisation: Chiddes, à 150 mètres du lavoir

Re: Petites questions de grand débutant

Messagepar Otto Grimwald le Sam Jan 19, 2008 11:17 am

essaye de rajouter des rtrue après ton SwitchOn et switchoff. Oublie les "return", met rtrue ou rfalse selon ce que tu veux obtenir (respectivement courtcircuitage du message par défaut, ou ajout du message par défaut à la fin).
Exemple ici :
http://www.inform-fiction.org/examples/ ... m_2_2.html

à noter :
SwitchOn: give basement light; "Click!"; = SwitchOn: give basement light; print "Click!"; rtrue ;

(pour moi c'est plus lisible d'ajouter systématiquement les rtrue mais c'est question de goût

Avatar de l’utilisateur
Otto Grimwald
Très Ancien
 
Messages: 3028
Inscription: Mar Aoû 24, 2004 12:02 pm

Re: Petites questions de grand débutant

Messagepar Yoruk le Sam Jan 19, 2008 8:23 pm

Non ça ne marche pas... :( mes propres descriptions que j'ai ajouté dans description [] s'affichent mais celles de la bibli également...

Code: Tout sélectionner
object lampe "lampe"
with name "lampe" "tempete",
invent "une lampe tempête",

description [;
print "Votre fidèle lampe tempête. Que feriez-vous sans elle ?^";

if (self has on) {print "Elle alumée";return;};
if (self hasnt on) {print "Elle est éteinte";return;};


],


!when_off "Elle est éteinte.",
!when_on "Elle diffuse une agréable lumière.",



after [;

SwitchOn: if (allumettes in player) { give self light; give self on;print "Vous allumez la lampe avec une allumette.^";rtrue;} else {print "Avec quoi ?^";rtrue;};rtrue;
SwitchOff: give self ~light;give self ~on;rtrue;

],

has female switchable;


Enfin. Je me suis mis à inform 7, j'espère que c'est plus évident :wink:
Yoruk, SATOR AREPO TENET OPERA ROTAS
Avatar de l’utilisateur
Yoruk
Grand Ancien
 
Messages: 1065
Inscription: Lun Juin 11, 2007 9:50 am
Localisation: Chiddes, à 150 mètres du lavoir

Re: Petites questions de grand débutant

Messagepar Otto Grimwald le Dim Jan 20, 2008 1:54 am

dans les descriptions, il faut utiliser rtrue et non pas return.

Sinon pour Inform7, et bien tu me diras tes impressions. Généralement, je trouve que des modifications de ce genre sont souvent assez aisées dans inform7...

Avatar de l’utilisateur
Otto Grimwald
Très Ancien
 
Messages: 3028
Inscription: Mar Aoû 24, 2004 12:02 pm

Précédente

Retourner vers Questions techniques et aide pour votre code

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

cron