top of page

Inventaire booléen : le paradoxe du chat de Schrödinger.

Pour ceux qui ne connaissent pas l'expérience du chat de Schrödinger, disons que cet exemple est souvent cité pour parler de la physique quantique. Celui d'un état où le chat est à la fois vivant et mort en même temps.

Résumé comme ça, la physique quantique c'est simple: on parle juste d'un chat zombie!




Concernant Celestory, je me suis confronté moi aussi à un paradoxe. (Ok, bien moins compliqué que la physique quantique, j'avoue!)

Je pensais qu'utiliser une variable booléenne suffirait pour les objets de mon inventaire. Si la valeur de la variable était false = pas d'objet, et si la variable était true= objet dans l'inventaire. Jusque là, ok. Et puis j'ai compris qu'il y avait une différence entre un objet possédé et un objet utilisé.


Dans les Heures Bleues, on peut trouver pas mal d'armes mais il faut bien définir celle qui est active (celle que l'on a en main pour les combats). On a donc pleins d'armes en possession (toutes avec la valeur true) et une seule est utilisée à la fois.


Pas question d'utiliser la même variable, on risque de l'enlever de l'inventaire.

Regardons ensemble les différentes options. Et prenons comme exemple une dague. (Variable booléenne DAGUE = TRUE)


Option 1

Mettre une autre variable booléenne DAGUE EQUIPEE. Ça ne marche pas si on a plusieurs armes car rien n'empêche les autres variables d'être aussi EQUIPEE.


Option 2

Utiliser une variable number.

0= objet non possédé (false)

1= objet dans l'inventaire (true)

2 = objet actif


Cela peut s'envisager si on trouve la possibilité qu'il n'y ait qu'une arme avec la valeur 2 au même moment.


Option 3

Utiliser une variable text pour chaque arme. Et créer une variable text globale (ARME EQUIPEE).

Il suffit donc de modifier la variable globale avec celle de l'arme que l'on a choisit. En plus, la variable text de l'arme sert pour modifier automatiquement des blocs de text (voir image d'illustration).

L'intérêt ici c'est que la variable ARME EQUIPEE ne peut avoir qu'un seul état, celui de l'arme active.


Nom de la variable Boolean : DAGUE, valeur true (je trouve la dague)

Nom de la variable Text : DAGUE TEXT, Valeur DAGUE (l'objet s'appelle DAGUE)

Assign Variable ARME EQUIPEE avec la variable Text DAGUE TEXT (j'utilise la dague)




J'ai donc choisi la 3ième option et cela marche bien!


#Variables #Expert

43 vues0 commentaire

Posts récents

Voir tout
bottom of page