[Twine 2] Simplifier la rédaction avec une fonction

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

Modérateurs: Stormi, Otto Grimwald

[Twine 2] Simplifier la rédaction avec une fonction

Messagepar reveurduciel le Dim Nov 05, 2017 3:49 am

Bonjour à vous, il s'agit de mon premier post sur ce forum qui m'a l'air, ma foi, très bien.

J'ai une situation qui, sans être un problème, me promets des heures interminable de travail fastidieux. Or, il fut un temps où je savais programmer, et je me rappelle que j'aurais pu régler tout ça avec une fonction (mais j'ai tout oublié depuis belle lurette :D )

Je suis présentement en train d'écrire un petit jeu basé sur D&D, et très souvent le personnage va avoir des possibilités d'actions qui seront possible ou impossible en fonction de ses compétences.

J'ai joint la première page de mon histoire avec un petit exemple au présent post. Pour cette première page, l'aventurier a la compétence "Performance" à 1 et aucune compétence "Intimidation".
L'action lié à Performance est donc accessible, tandis que celle liée à Intimidation est en rouge et ne lie pas à un passage.

En code, ça donne

Code: Tout sélectionner
[[Aller à la taverne glaner des rumeurs|TaverneStart]]

<<if $cPerformance gte 1>>[[Danser la claquette sur la place publique|Perform]] <span class = "pos2">[Performance 1]</span>
<<else>><span class ="imp1">[Danser la claquette sur la place publique</span> <span class = "imp2">[Performance 1]</span><</if>><<if $cIntimidation gte 0>>

[[Intimider les passants à vous encourager financièrement|TaxeStart]] [Intimidation 1]
<<else>><span class ="imp1">Intimider les passants à vous encourager financièrement</span> <span class = "imp2">[Intimidation 1]</span><</if>>


Comment puis-je créer une fonction qui automatise le processus, pour que je n'aille besoin que d'entrer 4 paramètre
choix(condition, conditionTexte, texte, nomPassage)

Pour qu'à la place, je puisse écrire
Code: Tout sélectionner
[[Aller à la taverne glaner des rumeurs|TaverneStart]]
choix($cPerformance gte 1, "[Performance 1]", "Danser la claquette sur la place publique", "|Perform")
choix($cIntimidation gte 1, "[Intimidation 1]", "Intimider les passants à vous encourager financièrement", "|TaxeStart")


Merci d'avance :D
Fichiers joints
poulet.png
poulet.png (93.56 Kio) Vu 39 fois
reveurduciel
Sorcier du culte
 
Messages: 1
Inscription: Dim Nov 05, 2017 3:32 am

Re: [Twine 2] Simplifier la rédaction avec une fonction

Messagepar Mule hollandaise le Dim Nov 05, 2017 2:24 pm

Coucou, et bienvenue ! :D

Je pense que ce que tu cherches s'appelle des widgets en Twine (enfin, en SugarCube au moins). Tu peux même y passer des arguments, et la syntaxe pour appeler un widget est la même que celle des macros !

(D'ailleurs, ça a l'air d'être pratique ! Il faudrait que j'en parle dans un tuto futur sur le site :) )

Bon courage pour ton projet :D
Mule hollandaise
Grand Ancien
 
Messages: 1048
Inscription: Mar Aoû 29, 2006 10:57 pm


Retourner vers Questions techniques et aide pour votre code

Qui est en ligne

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

cron