Une version rudimentaire de Slay The Spire dans le terminal - retour accueil
git clone git://bebou.netlib.re/sts-term
Log | Files | Refs | README |
commit 6d0ee90087cbc64a9712554c390bb9edd6f23e1b parent b31aeae78d82b89be64c11d9247bed2a2c8becfc Auterice: Arthur Pons <arthur.pons@unistra.fr> Date: Fri, 21 Jun 2024 20:54:41 +0200 Ajout double-tap Pas vraiment satisfait d'avoir du l'implémenter dans choice, dans ma tête choice était une fonction indépendante (du type pour un exo) et pas nécessaire à la bonne logique du jeu. Cela dit je ne sais pas où implémenter cette fonctionnalité ailleurs. Peut-être que si toutes les cartes ont un shebang et que le script du shebang check alors ça peut se faire ? Pour le moment le cas de double tap semble être la seule chose qui le nécessite donc ça ne vaut pas forcément le coup. TODO Diffstat:
A | bdd/cards/double-tap | | | 2 | ++ |
M | utils | | | 7 | +++++++ |
2 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/bdd/cards/double-tap b/bdd/cards/double-tap @@ -0,0 +1,2 @@ +_cost 1 +_status double-tap 1 player diff --git a/utils b/utils @@ -459,5 +459,12 @@ choice() { c=$(find fight/hand -type f | fzy) $(echo "$c" | grep -Eq "(defend|shrug-it-off)") && { eval $c; return 0; } t=$(find fight/ennemies -type l | fzy) + _hasstatus player double-tap \ + && cat "$c" | grep -q '^_attack' && { + < $c sed -E '/^_cost/ s/[0-9]/0/ + /^_discard/ s/.*/rm -rf "$0"/' > $tmpdir/doubled; + chmod +x $tmpdir/doubled; + eval $tmpdir/doubled $t; + _status double-tap -1 player; } eval $c $t }