Good Sync Fork to All
This commit is contained in:
parent
e56956da3a
commit
c2e9655e75
|
@ -40,6 +40,12 @@ select game in "${GAMES[@]}"; do
|
|||
MY_GAME="$MY_PATH/games/$game"
|
||||
echo "SELECTION: "${MY_GAME}
|
||||
|
||||
diff --recursive --brief ${MY_GAME}/ ${MY_GAME}/../_votre\ jeu/
|
||||
|
||||
echo "confirm ?"
|
||||
read ENTER
|
||||
|
||||
if [[ ! $ENTER ]]; then
|
||||
# test game start protocol compatibility
|
||||
if [[ -x ${MY_GAME}/rooms/start.sh ]]; then
|
||||
sleep 1
|
||||
|
@ -50,6 +56,9 @@ select game in "${GAMES[@]}"; do
|
|||
# not compatible
|
||||
echo "ERROR - not compatible game - SELECT ANOTHER - "
|
||||
fi
|
||||
else
|
||||
echo "CHOOSE NEXT"
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
|
|
|
@ -1,175 +0,0 @@
|
|||
#!/bin/bash
|
||||
clear
|
||||
#récupérer la varible nom
|
||||
nom="$1"
|
||||
position=Entrée
|
||||
# Afficher dynamiquement les informations du personnage à chaque fois que le menu s'affiche
|
||||
cat "personnages/$nom/$nom.txt"
|
||||
echo "-----------------------"
|
||||
cat "personnages/$nom/$nom-fichier_stats.txt"
|
||||
echo "-----------------------"
|
||||
|
||||
# Menu principal
|
||||
while true; do
|
||||
clear
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
echo " Menu Principal "
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
echo ""
|
||||
echo " vous êtes actuellement : $position"
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo " ___ "
|
||||
echo " |___|____ "
|
||||
echo " / \\ "
|
||||
echo " | () () | "
|
||||
echo " \\ ^ / "
|
||||
echo " ||||| "
|
||||
echo " /|||||\ "
|
||||
echo " \|||||/ "
|
||||
echo " ||||| "
|
||||
echo " ||||| "
|
||||
echo " /_\ /_\ "
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo ""
|
||||
echo "1. Ouvrir le Sac 4. Regarder"
|
||||
echo "2. Ouvrir la carte 5. Agir"
|
||||
echo "3. Ouvir son portmonnaie 6. Se déplacer"
|
||||
echo " "
|
||||
echo " 7. Quitter le jeu"
|
||||
echo " FDP"
|
||||
echo ""
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
echo " "
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
|
||||
read -p "Choisissez une option (1/2/3/4/5/6/7) : " choix
|
||||
|
||||
case $choix in
|
||||
1)
|
||||
# Insérez ici le code pour ouvrir le sac
|
||||
echo "Le sac n'est pas encore implémenté."
|
||||
;;
|
||||
2)
|
||||
# Insérez ici le code pour ouvrir la carte
|
||||
if [ -f "map.sh" ]; then
|
||||
./map.sh # Exécuter le script si présent
|
||||
else
|
||||
echo "La carte n'est pas encore implémentée."
|
||||
fi # Fin du bloc if
|
||||
;; # Fin de l'option 4
|
||||
3)
|
||||
cat "personnages/$nom/$nom-inventaire.txt"
|
||||
;;
|
||||
4)
|
||||
afficher_statistiques_personnage
|
||||
;;
|
||||
|
||||
5)
|
||||
cat "personnages/$nom/$nom-inventaire.txt"
|
||||
;;
|
||||
6)
|
||||
echo "-------------------------------------"
|
||||
echo " "
|
||||
echo "-------------------------------------"
|
||||
echo "vous êtes actuellement ici : $position"
|
||||
echo "regarder la map pour plus d'information"
|
||||
echo "-------------------------------------"
|
||||
echo "Voici la liste des directions possible"
|
||||
echo "1.Accueil"
|
||||
echo "2.Escalier"
|
||||
echo "3.Récréation"
|
||||
echo "4.CDI"
|
||||
echo "5.Cantine"
|
||||
echo "6.Salle cours 1"
|
||||
echo "7.Salle cours 2"
|
||||
echo "8.Salle cours 3"
|
||||
echo "9.Salle cours 4"
|
||||
echo "10.Salle cours 5"
|
||||
echo "11.Salle cours 7"
|
||||
echo "12.Salle cours 8"
|
||||
echo "13.Concièrge"
|
||||
echo "14.Terrain de Basket"
|
||||
echo "15.Le coin fumeur"
|
||||
read -p "ou souhaites tu aller ? 1/2/3/4/5/6/7/8/..." lieu
|
||||
case $lieu in
|
||||
1)
|
||||
echo "comme tout personnes normal vous allez à l'acceuil"
|
||||
./accueil.sh
|
||||
;;
|
||||
2)
|
||||
echo "intriger par les escalier vous décider d'y aller"
|
||||
if [ -f "personnages/$nom:inventaire.txt/baseball" ]; then
|
||||
echo "le pion se dirige vers vous mais vous lui donner un coup de batte de basebell"
|
||||
echo "il semble plus donner signe de vie mais l'escalier vous intrige plus que ça vie insignifiante"
|
||||
./escalier.sh # Exécuter le script si présent
|
||||
else
|
||||
echo "Un pion surgit de nulle part et vous attrape pour vous ammener à l'acceui"
|
||||
./accueil.sh
|
||||
fi # Fin du bloc if
|
||||
;; # Fin de l'option 2
|
||||
3)
|
||||
echo "Le chemin pour allez à l'ecole vous a fatiguer il est temps d'aller en pause"
|
||||
./recreation
|
||||
;;
|
||||
4)
|
||||
echo "Pourquoi ne pas aller au CDI"
|
||||
./CDI.sh
|
||||
;;
|
||||
|
||||
5)
|
||||
cat "personnages/$nom/$nom-inventaire.txt"
|
||||
;;
|
||||
6)
|
||||
|
||||
;;
|
||||
7)
|
||||
exit
|
||||
;;
|
||||
|
||||
8)
|
||||
# Insérez ici le code pour ouvrir le sac
|
||||
echo "Le sac n'est pas encore implémenté."
|
||||
;;
|
||||
9)
|
||||
# Insérez ici le code pour ouvrir la carte
|
||||
if [ -f "map.sh" ]; then
|
||||
./map.sh # Exécuter le script si présent
|
||||
else
|
||||
echo "La carte n'est pas encore implémentée."
|
||||
fi # Fin du bloc if
|
||||
;; # Fin de l'option 4
|
||||
10)
|
||||
cat "personnages/$nom/$nom-inventaire.txt"
|
||||
;;
|
||||
11)
|
||||
afficher_statistiques_personnage
|
||||
;;
|
||||
|
||||
12)
|
||||
cat "personnages/$nom/$nom-inventaire.txt"
|
||||
;;
|
||||
13)
|
||||
;;
|
||||
*)
|
||||
echo "Option invalide. Veuillez choisir une option valide."
|
||||
;;
|
||||
esac
|
||||
read -p "Appuyez sur une touche pour continuer..."
|
||||
;;
|
||||
|
||||
7)
|
||||
;;
|
||||
*)
|
||||
echo "Option invalide. Veuillez choisir une option valide." ;;
|
||||
|
||||
esac
|
||||
done
|
Binary file not shown.
|
@ -1,21 +0,0 @@
|
|||
|
||||
|
||||
.';:llllc;'.
|
||||
.:xXWX;.,ll;.:XWXx;.
|
||||
;0MMMMMMKl;'',l0MMMMMWO,
|
||||
,0MMMMMMW0dc;,,;cd0WMMMMMMO.
|
||||
dWMMMMM0; ;OMMMMMN:
|
||||
dMMMMMN: .,'. cWMMMMMc
|
||||
,WMMMMX. .xNMMMMNx,'lONMMMMMMN.
|
||||
oMMMMM: :WMMMMMMMMMMMMMMMMMMMMc
|
||||
xMMMMM' xMMMMMMOlllllllloNMMMMo
|
||||
oMMMMMc ,NMMMMMWd. KMMMM:
|
||||
.WMMMMN, .l0NWWWKc KMMMX.
|
||||
cMMMMMWo .. KMMW;
|
||||
cWMMMMMXo' .lKd. KMK'
|
||||
.xWMMMMMMN0dlllldONMMMMWOXd
|
||||
.xNMMMMMMMd''lWMMMMMMXo.
|
||||
'lONWMW, .XMWXOl.
|
||||
..,,..,,..
|
||||
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
|
||||
.':cdxxxxxoc;.
|
||||
.:x00dc;'..:..,:lk00o'
|
||||
;0Xd, oMo :OXx.
|
||||
:KK; cMMMl .oNk.
|
||||
.kN: ;MMMMMc xNl
|
||||
.0K. ,WMMMMMW; ;Wo
|
||||
OX. ,WMMMMMMMW; ;Wc
|
||||
cM; .WMMMMMMMMMW, kX.
|
||||
OX .NMMMMMMMMMMMW' ,Mc
|
||||
O0 .NMMMMMMMMMMMMMW' .Mc
|
||||
ON .XMMMMM0kkkkKMMMMN. ,M:
|
||||
:M; KMMMMM: .,,;dMMMMMN. kX.
|
||||
ON. 0MMMMMl ,WMMMMMMMMMMX. ;Wc
|
||||
.0K. 0MMMMMd 'WMMMMMMMMMMMMX. :Wo
|
||||
.xN: kMMMMMO .XWWWWNNNNNXXKKKd xNc
|
||||
;0Xl. .oXx.
|
||||
,OXx, .cOKd.
|
||||
;d00xl:,....';coO0Ol'
|
||||
.;:odddddl:,.
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
MMMMMMMMMMMMMMMMMMMl xxlxxxd . KNNMNl. 'd0xdddkXKxc. ,dNMMMMMMMMMMMMMMM
|
||||
MMMMMMMMMMMWKOl:cc' .NNOMXNX .ld; ,lxXMMMMMMMMMMM
|
||||
MMMMMMMMNo. ,,' .KKWMOXX .. .dWMMMMMMMM
|
||||
MMMMMMWc cdddc .NNNMXNX .do '' ' .:,:k; l, .KMMMMMMM
|
||||
MMMMMW, ;ll: .,:ddddd .KKOM0XX .do '0MMXMo . dMMMMMMXOMX0: XMMMMMM
|
||||
MMMMMo xc:d 'ddddddd .XXWMK00' .do .oo. .dMMMMMMO;lWNMMMMMMWXMMMX: :MMMMMM
|
||||
MMMMW. .cXKKXWooK0kk0d0Oxxkkx .XXNM0Ok; .:ol:'do,0MMK ... 'XMMMMMMMMMMMMMMMMMWWMMMMx .dkONMM
|
||||
MKNK. NMWooOWllKKoMNll0MM0x0 xNXXOMKOkKOoM0kkkOkWMMMM0NWWXXMMMMMMMMMMW:WkWk0OKMWdOMNxd0O. .KM
|
||||
l dkkMMWloOWcc0KoMNccOMMxl0cMMXXWM0KOMMMM0OkkOKMMMMMMMMMMMMMMMMMMMMM0 : o.. 'll.lMMMMMMx .O
|
||||
;kMMMMMWlckWooKXdMNccOMMxlXk0MMMNMMMMMMMM0OkkOWMMMMMMMMMMMMMMMMMMMMMMo0OWW,xNWKcooMM0NN0Oc
|
||||
.NMMMMMMNllkWllKKoMNll0MMxlNxOMMMOMMMMMMMM0OkOOWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWNMMNdxMMMk
|
||||
;WMMMMMMMMMMMNNWWNMMMMMMMWWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWMWx.
|
||||
:MMkxxxWMMMWkxxxxxxxWXxxxxxxxxKWxxxxxxxxxWMMKxxxxxxKMMKxxxxxxxxKMMXxxxxxx0MMkxxxxxxxxNMXxdlloodO:
|
||||
:N, OMM0. 'N. 0: :Mc XK Nx kl ,N. ;'
|
||||
x..M0xddddKMMOddddddddKKddddddddxNxdddddddddOWoooooooooN0ddddddddddNdoooooooo0xdddddddddkKdddddddox.
|
||||
MWKK ,MN. .,XMMMMl ;MMMM' xc 'MMd .Mx ;x .NMO N; dMMMl ,W
|
||||
MMMK NM:. 'MMMW. xMMMO dW. oMM. lM' .:N, ;MM; ;K oMMMW. dO
|
||||
MMMMMMMo xXXXXXk .MMMO NMMM; .WWN. 00 XM0 KK 0WWWWMMW OMX kc .WWW. OMMMO Nc
|
||||
MMMMMMMX dMMM; ;MMMN dMMk N0 .. oMl .MMMMMMMN ... :W. lMM0 XMMM; ;M' .c
|
||||
MMMMMMMM, .xMMMW. kMMMx .NMM: cMMd. .;0MM. oMMMMMMMMk. .,kMO XMMl :MMMW. kMOKMM
|
||||
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
|
|
@ -1,21 +0,0 @@
|
|||
.,'.
|
||||
.,,;,'',;,'',,.'.
|
||||
.;;,,.. .........'
|
||||
.l:. ............cc.
|
||||
.c, .................:c.
|
||||
.lc ................... .l;
|
||||
l' ... .............. c:
|
||||
:: .. ........... l'
|
||||
d . .''...... 'o
|
||||
.o .. ''''''. l
|
||||
.d . ......''''''' l
|
||||
o . .,,,,,,'''''' 'l
|
||||
;: . ',,,,''''', l.
|
||||
l, .. .,,,''''', oc
|
||||
.lc .',,,''',. .c,
|
||||
'l, .,,''',..:c.
|
||||
';;. .,,',,:;.
|
||||
':;;'. .;:,,,.
|
||||
.,,'''''','..;,,.
|
||||
,:.
|
||||
.,
|
|
@ -1,9 +0,0 @@
|
|||
_______ _ ______ _
|
||||
|__ __| | | ____| | |
|
||||
| | | |__ ___ | |__ _ __ __| |
|
||||
| | | '_ \ / _ \ | __| | '_ \ / _` |
|
||||
| | | | | | __/ | |____| | | | (_| |_
|
||||
|_| |_| |_|\___| |______|_| |_|\__,_(_)
|
||||
|
||||
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
|
||||
|
||||
.:dO0NNkNX0ko,.
|
||||
.:OWMMMMMMc cWMMMMMXd,
|
||||
'kWMMMMMMMMc cWMMMMMMMNo.
|
||||
.kMMMMMMMMMMo lMMMMMMMMMWl
|
||||
.KMMMMMMMMMMd oMMMMMMMMMMx
|
||||
.XMMMMMMMMMMk dMMMMMMMMMMx
|
||||
xMMMMMMMMMM0 OMMMMMMMMMM,
|
||||
.NMMMMMMMMMK. OMMMMMMMMMk
|
||||
'MMMMMMMMMK. OMMMMMMMMK
|
||||
.NMMMMMMMK. ,;;;;' OMMMMMMMx
|
||||
dMMMMMMX. kMKkxxc 0MMMMMM,
|
||||
.KMMMMN. dMx .KMMMMd
|
||||
.0MMN. cMx .KMMd
|
||||
xW' 'W0. ......:Xc
|
||||
.lXNNWNWMMMMMMMMMMMMMMMMXl
|
||||
;xXMMMMMMMMMMMMMMWKo'
|
||||
.,lxkKKKK0kdc'
|
||||
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
_____ _ _
|
||||
/ ____| (_) | |
|
||||
| (___ _ _ _ __ _ __ _ __ _ ___ ___| |
|
||||
\___ \| | | | '__| '_ \| '__| / __|/ _ \ |
|
||||
____) | |_| | | | |_) | | | \__ \ __/_|
|
||||
|_____/ \__,_|_| | .__/|_| |_|___/\___(_)
|
||||
| |
|
||||
|_|
|
||||
|
||||
|
|
@ -1,9 +0,0 @@
|
|||
_ _ _ ____ ___ _ ____
|
||||
/ \ ___| |_ _ __ ___ _ __ ___ _ __| |_ |___ \ / _ \ _ / |___ \
|
||||
/ _ \ / __| __| '__/ _ \| '_ \ / _ \| '__| __| __) | | | | (_) | | __) |
|
||||
/ ___ \\__ \ |_| | | (_) | |_) | (_) | | | |_ / __/| |_| | _ | |/ __/
|
||||
/_/ \_\___/\__|_| \___/| .__/ \___/|_| \__| |_____|\___/ (_) |_|_____|
|
||||
|_|
|
||||
|
||||
--- Un JEu de Forêt Jardin en Monnaie Libre sur IPFS ---
|
||||
|
|
@ -1 +0,0 @@
|
|||
off
|
|
@ -1 +0,0 @@
|
|||
off
|
|
@ -1,58 +0,0 @@
|
|||
#!/bin/bash
|
||||
clear
|
||||
# Initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
|
||||
# This is close to the endgame, but affords the player a last set of things to try and do.
|
||||
# Obviously if you use this framework to create a game of your own, you can extend this massively.
|
||||
|
||||
echo
|
||||
sleep 1
|
||||
echo "Vous décidez de sortir de la Sation Astroport."
|
||||
echo
|
||||
echoleverstate=`cat ../logic/stationlogic.ben`
|
||||
if [ "$leverstate" = "on" ]; then
|
||||
|
||||
sleep 2
|
||||
echo "Il ne dépend que de vous d'explorer ce nouveau futur."
|
||||
echo "Le Visa MadeInZion inaugure un monde sans territoire, sans frontière, transnationnal, interplanétaire, à vous de voir?"
|
||||
sleep 2
|
||||
echo "Avant de nous rejoindre. Visitez notre 'bon coin' https://gchange.fr "
|
||||
echo
|
||||
sleep 3
|
||||
echo "Ouvrez une ambassade? Installez IPFS, devenons hébergeur, fournisseur d'accès de nos Internets."
|
||||
echo
|
||||
sleep 4
|
||||
echo "Ouvrez votre propriété au futur en commun, activez Astroport."
|
||||
echo "Nous organisons des formations habitats posés, vissés et cousus. Eau potable. Biogaz, Marmite Norvégienne..."
|
||||
echo "Comment nourrir le sol, reconnaitre les plantes... Redevenir ceuilleur, créateur."
|
||||
echo
|
||||
else
|
||||
echo ""
|
||||
echo "Aucune entrée n'est visible."
|
||||
fi
|
||||
echo
|
||||
sleep 5
|
||||
echo
|
||||
echo "Que voulez vous faire?"
|
||||
|
||||
while true; do
|
||||
read -p "> " nsewuh
|
||||
case $nsewuh in
|
||||
n ) echo "Pas moyen de se déplacer." ;;
|
||||
s ) echo ".Pas le choix." ;;
|
||||
e ) echo "Pas par là." ;;
|
||||
w ) echo "Plus à l'ouest que ça? Y'a pas!" ;;
|
||||
u ) ./end.sh
|
||||
exit ;;
|
||||
h ) echo "Comment refuser une telle proposition..." ;;
|
||||
* ) echo "Je suis désolé, je ne vous comprends pas. Les commandes sont : n, e, s, w, u et h..";;
|
||||
esac
|
||||
done
|
||||
|
||||
esac
|
||||
exit
|
|
@ -1,62 +0,0 @@
|
|||
#!/bin/bash
|
||||
clear
|
||||
# Initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
sleep 1
|
||||
|
||||
# Here's this room's script.
|
||||
|
||||
echo "Sur la direction du sud, vous traversez une zone plus sombre et humide."
|
||||
echo "Le sol est glissant à cause de l'argile qui colle sous vos bottes"
|
||||
echo "Vous finissez par croiser un chemin qui traverse la forêt d'Est en Ouest"
|
||||
echo
|
||||
echo "Un terminal informatique est installé là."
|
||||
echo
|
||||
echo "Il ressemble à une grosse calculatrice"
|
||||
|
||||
|
||||
# Here we tell the player whether the lever is on or off.
|
||||
leverstate=`cat ../logic/leverlogic.ben`
|
||||
if [ "$leverstate" = "on" ]; then
|
||||
echo "'VISA SVP' clignote sur l'écran..."
|
||||
else
|
||||
echo "La machine affiche l'heure : 20:12"
|
||||
fi
|
||||
echo
|
||||
echo "Il est tard pour explorer le chemin à pied, vous devriez retourner d'où vous venez."
|
||||
echo
|
||||
echo "Que faites vous?"
|
||||
|
||||
# In this set of actons lies the logic switch used later in the game.
|
||||
# You have to set this switch to reach the endgame.
|
||||
while true; do
|
||||
read -p "> " nsewuh
|
||||
case $nsewuh in
|
||||
n ) ./mainroom.sh
|
||||
exit ;;
|
||||
s ) echo "Si vous continuez à marcher dans la forêt. Vous allez vous perdre. Demi tour." ;;
|
||||
e ) echo "Le chemin qui part à l'Est est plein de boue... Impossble d'aller par là." ;;
|
||||
w ) echo "Une rivière vous empêche de passer." ;;
|
||||
u ) leverstate=`cat ../logic/leverlogic.ben`
|
||||
if [ "$leverstate" = "on" ]; then
|
||||
echo "A chaque frappe d'une touche. l'écran fait défiler le texte 'SCANNEZ VISA SVP'."
|
||||
else
|
||||
sed -i='' 's/off/on/' ../logic/leverlogic.ben
|
||||
echo "Vous pianotez sur l'appareil..."
|
||||
sleep 3
|
||||
echo "A moment où vous touchez la touche '#' L'écran se met à clignoter..."
|
||||
echo "Puis le message 'ACTIVATION STATION' défile sur les caractères lumineux."
|
||||
fi
|
||||
;;
|
||||
h ) echo "Le terminal comporte un clavier numérique. Un petit écran.. Il est réalisé avec un mini ordinateur Raspberry Pi. Il porte l'adresse G1TAG [https://g1sms.fr]" ;;
|
||||
* ) echo "Je suis désolé, je ne vous comprends pas. Les commandes sont : n, e, s, w, u et h..";;
|
||||
esac
|
||||
done
|
||||
|
||||
esac
|
||||
exit
|
|
@ -1,198 +0,0 @@
|
|||
|
||||
#!/bin/bash
|
||||
clear
|
||||
echo "_________ __ .__ "
|
||||
echo "\_ ___ \_______ ____ _____ _/ |_|__| ____ ____ "
|
||||
echo "/ \ \/\_ __ \_/ __ \\__ \\ __\ |/ _ \ / \ "
|
||||
echo "\ \____| | \/\ ___/ / __ \| | | ( <_> ) | \ "
|
||||
echo " \______ /|__| \___ >____ /__| |__|\____/|___| / "
|
||||
echo " \/ \/ \/ \/ "
|
||||
|
||||
# Vérifier si le dossier "personnages" existe, sinon le créer
|
||||
dossier_personnages="personnages"
|
||||
if [ ! -d "$dossier_personnages" ]; then
|
||||
mkdir "$dossier_personnages"> /dev/null 2>&1
|
||||
fi
|
||||
|
||||
# Fonction pour afficher les options et obtenir un choix de l'utilisateur
|
||||
afficher_options() {
|
||||
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
||||
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
||||
echo "Options disponibles :"
|
||||
echo "1. Créer un nouveau personnage"
|
||||
echo "2. Charger un personnage existant"
|
||||
echo "3. Quitter"
|
||||
echo "4. Commencer à jouer"
|
||||
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
||||
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
||||
}
|
||||
|
||||
# Fonction pour créer un personnage
|
||||
creer_personnage() {
|
||||
read -p "Entrez le nom de votre personnage : " nom
|
||||
echo "Classes disponibles :"
|
||||
echo "1. Bicraveur : Vendez ce qui est impossible à vendre + 10 en dextérité"
|
||||
echo "2. Nikmook : Il a un besoin irrémédiable de séduire les daronnes + 10 en agilité"
|
||||
echo "3. Freefighter : Doit devenir le plus fort en combat + 10 en Force"
|
||||
echo "4. Hacker : Doit trouver un fichier compromettant sur le proviseur pour réussir + 10 en Intelligence"
|
||||
read -p "Choisissez une classe (1/2/3/4) : " classe
|
||||
|
||||
case $classe in
|
||||
1)
|
||||
classe="Bicraveur"
|
||||
;;
|
||||
2)
|
||||
classe="Nikmook"
|
||||
;;
|
||||
3)
|
||||
classe="Freefighter"
|
||||
;;
|
||||
4)
|
||||
classe="Hacker"
|
||||
;;
|
||||
*)
|
||||
echo "Classe invalide."
|
||||
return
|
||||
;;
|
||||
esac
|
||||
mkdir "personnages/$nom"> /dev/null 2>&1
|
||||
|
||||
echo "Équipements disponibles :"
|
||||
echo "1. Sacoche Lacoste + 5 en dextérité"
|
||||
echo "2. Bâton magique +5 en agilité"
|
||||
echo "3. Gant de boxe +5 en force"
|
||||
echo "4. Laptop +5 en Intelligence"
|
||||
read -p "Choisissez un équipement (1/2/3/4) : " equipement
|
||||
|
||||
case $equipement in
|
||||
1)
|
||||
equipement="Sacoche Lacoste"
|
||||
;;
|
||||
2)
|
||||
equipement="Bâton magique"
|
||||
;;
|
||||
3)
|
||||
equipement="Gant de boxe"
|
||||
;;
|
||||
4)
|
||||
equipement="Laptop"
|
||||
;;
|
||||
*)
|
||||
echo "Équipement invalide."
|
||||
return
|
||||
;;
|
||||
esac
|
||||
|
||||
# Créer un fichier de sauvegarde pour le personnage
|
||||
nom_fichier="$dossier_personnages/$nom/$nom.txt"
|
||||
stats="$dossier_personnages/$nom/$nom_fichier_stats.txt"
|
||||
echo "Nom : $nom" > "$nom_fichier"
|
||||
echo "Classe : $classe" >> "$nom_fichier"
|
||||
echo "Équipement de base : $equipement" >> "$nom_fichier"
|
||||
echo "Point de vie : 100" > "$nom_fichier_stats"
|
||||
# Assurez-vous que le fichier stats existe
|
||||
stats="$dossier_personnages/$nom/$nom-fichier_stats.txt"
|
||||
if [ ! -f "$stats" ]; then
|
||||
echo "Point de vie : 100" > "$stats"
|
||||
echo "Dextérité : 0" >> "$stats"
|
||||
echo "Force : 0" >> "$stats"
|
||||
echo "Agilité : 0" >> "$stats"
|
||||
echo "Intelligence : 0" >> "$stats"
|
||||
fi
|
||||
|
||||
# Mettez à jour les points en fonction de la classe
|
||||
case $classe in
|
||||
"Bicraveur")
|
||||
sed -i "s/Dextérité : .*/Dextérité : 10/" "$stats"
|
||||
;;
|
||||
"Nikmook")
|
||||
sed -i "s/Agilité : .*/Agilité : 10/" "$stats"
|
||||
;;
|
||||
"Freefighter")
|
||||
sed -i "s/Force : .*/Force : 10/" "$stats"
|
||||
;;
|
||||
"Hacker")
|
||||
sed -i "s/Intelligence : .*/Intelligence : 10/" "$stats"
|
||||
;;
|
||||
esac
|
||||
|
||||
mkdir "$dossier_personnages/$nom/$nom-inventaire.txt"> /dev/null 2>&1
|
||||
|
||||
# Mettez à jour les points en fonction de l'équipement
|
||||
case $equipement in
|
||||
"Sacoche Lacoste")
|
||||
# Obtenir la valeur actuelle de la dextérité
|
||||
valeur_dexterite=$(grep "Dextérité" "$stats" | awk '{print $3}')
|
||||
# Ajouter 5 à la valeur actuelle et mettre à jour le fichier
|
||||
nouvelle_dexterite=$((valeur_dexterite + 5))
|
||||
sed -i "s/Dextérité : .*/Dextérité : $nouvelle_dexterite/" "$stats"
|
||||
;;
|
||||
"Bâton magique")
|
||||
# Obtenir la valeur actuelle de l'agilité
|
||||
valeur_agilite=$(grep "Agilité" "$stats" | awk '{print $3}')
|
||||
# Ajouter 5 à la valeur actuelle et mettre à jour le fichier
|
||||
nouvelle_agilite=$((valeur_agilite + 5))
|
||||
sed -i "s/Agilité : .*/Agilité : $nouvelle_agilite/" "$stats"
|
||||
;;
|
||||
"Gant de boxe")
|
||||
# Obtenir la valeur actuelle de la force
|
||||
valeur_force=$(grep "Force" "$stats" | awk '{print $3}')
|
||||
# Ajouter 5 à la valeur actuelle et mettre à jour le fichier
|
||||
nouvelle_force=$((valeur_force + 5))
|
||||
sed -i "s/Force : .*/Force : $nouvelle_force/" "$stats"
|
||||
;;
|
||||
"Laptop")
|
||||
# Obtenir la valeur actuelle de l'intelligence
|
||||
valeur_intelligence=$(grep "Intelligence" "$stats" | awk '{print $3}')
|
||||
# Ajouter 5 à la valeur actuelle et mettre à jour le fichier
|
||||
nouvelle_intelligence=$((valeur_intelligence + 5))
|
||||
sed -i "s/Intelligence : .*/Intelligence : $nouvelle_intelligence/" "$stats"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Enregistrez l'équipement dans un fichier équipement
|
||||
equipement_file="$dossier_personnages/$nom/$nom-equipement.txt"
|
||||
echo "Équipement choisi : $equipement" > "$equipement_file"
|
||||
echo "Personnage créé et sauvegardé dans $nom_fichier."
|
||||
}
|
||||
|
||||
|
||||
# Boucle principale
|
||||
while true; do
|
||||
afficher_options
|
||||
read -p "Choisissez une option (1/2/3) : " choix
|
||||
|
||||
case $choix in
|
||||
1)
|
||||
creer_personnage
|
||||
;;
|
||||
2)
|
||||
echo ""
|
||||
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
||||
ls personnages/
|
||||
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
|
||||
echo ""
|
||||
read -p "Entrez le nom du personnage à charger : " nom
|
||||
nom_fichier="$dossier_personnages/$nom/$nom.txt"
|
||||
if [ -f "$nom_fichier" ]; then
|
||||
cat "$nom_fichier"
|
||||
else
|
||||
echo "Personnage introuvable."
|
||||
fi
|
||||
;;
|
||||
3)
|
||||
exit
|
||||
;;
|
||||
4)
|
||||
# Exécutez le script menu.sh
|
||||
./menu.sh "$nom"
|
||||
;;
|
||||
*)
|
||||
echo "Option invalide. Veuillez choisir une option valide."
|
||||
;;
|
||||
esac
|
||||
done
|
||||
# Effacer l'écran avant de passer à la suite du jeu
|
||||
clear
|
||||
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Fonction pour afficher le texte avec une pause entre les lignes
|
||||
afficher_texte() {
|
||||
while read -r ligne; do
|
||||
echo "$ligne"
|
||||
sleep 1 # Pause d'une seconde entre chaque ligne
|
||||
done
|
||||
}
|
||||
|
||||
# Titre du jeu
|
||||
clear # Effacer l'écran
|
||||
echo "_______ .__ __ __ "
|
||||
echo " \ \ |__| | __ _____ ____ ____ | | __"
|
||||
echo " / | \| | |/ // \ / _ \ / _ \| |/ /"
|
||||
echo "/ | \ | <| Y Y ( <_> | <_> ) < "
|
||||
echo "\____|__ /__|__|_ \__|_| /\____/ \____/|__|_ \""
|
||||
echo " \/ \/ \/ \/"
|
||||
echo "Bienvenue dans le jeu!"
|
||||
echo
|
||||
|
||||
# Histoire
|
||||
echo "Il était une fois, dans un lointain royaume.. un gosse mal éduquer"
|
||||
echo "Un batard courageux se prépare à entreprendre une quête épique."
|
||||
echo "Votre mission est de BAISER des mères périlleuses."
|
||||
echo
|
||||
echo "Appuyez sur ESPACE pour continuer..."
|
||||
read -n 1 touche # Attendre que l'utilisateur appuie sur ESPACE
|
||||
echo
|
||||
|
||||
# Effacer l'écran avant de passer à la suite du jeu
|
||||
clear
|
||||
|
||||
# Vous pouvez continuer à développer votre jeu à partir d'ici en ajoutant plus de fonctionnalités et de pages.
|
||||
|
||||
#read -n 1 touche # Attendre que l'utilisateur appuie sur ESPACE
|
||||
echo
|
||||
|
||||
# Exécuter le script suite.sh
|
||||
if [ "$touche" == "" ]; then
|
||||
./choix.sh
|
||||
fi
|
||||
|
||||
# Effacer l'écran avant de passer à la suite du jeu
|
||||
clear
|
||||
|
|
@ -1,70 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
echo "+--------+ +----------------------------------------------------+"
|
||||
echo "| Entrée |"
|
||||
echo "| +---------------+ | "RDC" "
|
||||
echo "| | | |"
|
||||
echo "| +---+ +----+ | Escalier | |"
|
||||
echo "| | Acceuil | | | |"
|
||||
echo "| | | +---------------+ |"
|
||||
echo "| +-----------+ |"
|
||||
echo "| |"
|
||||
echo "|---------------+ +----------------+ +-------------------|"
|
||||
echo "| | | | | |"
|
||||
echo "| Salle cours 1 | | Salle cours 2 | | Salle cours 3 |"
|
||||
echo "| | | | | |"
|
||||
echo "|----+ +-------+ +----+ +--------+ +----+ +-----------|"
|
||||
echo "| |"
|
||||
echo "|----+ +-------+ +----+ +--------+ +----+ +-----------|"
|
||||
echo "| | | | | |"
|
||||
echo "| Salle cours 4 | | Salle cours 5 | | |"
|
||||
echo "| | | | | |"
|
||||
echo "|----+ +-------+ +----+ +--------+ + |"
|
||||
echo "| Cantine |"
|
||||
echo "|----+ +-------+ +----+ +--------+ + |"
|
||||
echo "| | | | | |"
|
||||
echo "| Salle cours 7 | | Salle cours 8 | | |"
|
||||
echo "| | | | | |"
|
||||
echo "|----+ +-------+ +----+ +--------+ +----+ +-----------|"
|
||||
echo "| |"
|
||||
echo "|----+ +-------+ +----+ +--------+ +----+ +-----------|"
|
||||
echo "| | | | | |"
|
||||
echo "| Concièrge | | Bibliothèque | | CDI |"
|
||||
echo "| | | | | |"
|
||||
echo "|---------------+ +----------------+ +-------------------|"
|
||||
echo "+-----------------+ +-------------------------------------------+------------------------+"
|
||||
echo "| |---| |---| |---| |---| |"
|
||||
echo "| |"
|
||||
echo "| |"
|
||||
echo "| |"
|
||||
echo "| |"
|
||||
echo "| Récréation |"
|
||||
echo "| /\\ /\\ /\\ /\\ |"
|
||||
echo "| / \\ / \\ / \\ / \\ |"
|
||||
echo "| /____\\ /____\\ /____\\ /____\\ |"
|
||||
echo "| |"
|
||||
echo "| |"
|
||||
echo "||---| |---| |---| |"
|
||||
echo "+--------+ +-------------------------------------+ +----------+-------------------------+"
|
||||
echo "| Terrain de | |"
|
||||
echo "| Basketball | |"
|
||||
echo "| | |"
|
||||
echo "| ___________ | |"
|
||||
echo "| / \\ | |"
|
||||
echo "| / \\ | |"
|
||||
echo "| | | | |"
|
||||
echo "| | | | |"
|
||||
echo "| | | | |"
|
||||
echo "| | | | |"
|
||||
echo "| | | | |"
|
||||
echo "| | | | |"
|
||||
echo "| | | | |"
|
||||
echo "| \\ / | |"
|
||||
echo "| \\___________/ | |"
|
||||
echo "| | |"
|
||||
echo "+-------------------------------------------+ |"
|
||||
echo "| "Coin fumeur" |"
|
||||
echo "+----------------------------------------------------------+"
|
||||
# À la fin de map.sh
|
||||
echo "Appuyez sur Enter pour revenir au menu principal."
|
||||
read -s -n 1 # Attendre que l'utilisateur appuie sur une touche
|
|
@ -1,71 +0,0 @@
|
|||
#!/bin/bash
|
||||
clear
|
||||
|
||||
# This is the endgame. This file does nothing but give you the final bit of storyline.
|
||||
# Use (over-use) of 'sleep' is for dramatic effect - play around with it, see how it reads.
|
||||
|
||||
# Let's reset the lever, now that we're done with it.
|
||||
sed -i='' 's/on/off/' ../logic/leverlogic.ben
|
||||
|
||||
# Initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
sleep 1
|
||||
echo "Voici la fin de cette petite aventure."
|
||||
echo
|
||||
sleep 4
|
||||
echo "Vous venez de visiter la forêt où s'est posé Astroport ONE."
|
||||
sleep 3
|
||||
echo
|
||||
echo "Une oeuvre habitable. Un jardin sur sol vivant. Un progamme pair à pair interplanétaire"
|
||||
sleep 4
|
||||
echo
|
||||
echo "Les terraformeurs"
|
||||
echo "En quête de la meilleure façon de vivre sur le vaisseau spatial Terre..."
|
||||
echo
|
||||
sleep 5
|
||||
echo "Vous aussi ouvrez votre Ambassade."
|
||||
echo "Activez le JEu. Invitez vos visiteurs à rêver d'un monde meilleur"
|
||||
echo "Reproduisez, améliorez, partagez les plans pour y parvenir."
|
||||
echo
|
||||
sleep 7
|
||||
echo "Il est l'heure de laisser derrière vous la civilisation thermo industrielle."
|
||||
echo "Gagnez en autonomie, en convivialité, en optimisme, en conscience."
|
||||
echo
|
||||
sleep 5
|
||||
echo
|
||||
echo "EMBARQUEZ VERS LE FUTUR"
|
||||
echo
|
||||
sleep 9
|
||||
echo
|
||||
file1="../art/bigfinish.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
echo
|
||||
read -p "Appuyez sur [ENTER] pour terminer..."
|
||||
echo
|
||||
clear
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
echo "Merci d'avoir joué le jeu"
|
||||
echo "Je suis heureux de vous avoir fait partager le rêve des astronautes terraformeurs."
|
||||
echo
|
||||
echo "Le futur ne se prédit pas, il se construit. Il se vit."
|
||||
echo
|
||||
echo " - @Fred"
|
||||
echo
|
||||
|
||||
# That's all, folks!
|
||||
|
||||
exit
|
|
@ -1,88 +0,0 @@
|
|||
#!/bin/bash
|
||||
MY_PATH="`dirname \"$0\"`" # relative
|
||||
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
||||
ME="${0##*/}"
|
||||
|
||||
clear
|
||||
# Initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
|
||||
# This room gives the player a typical poisoned apple style scenaro.
|
||||
# Just because something looks shiny and fun, doesn't make it any
|
||||
# less deadly.
|
||||
sleep 1
|
||||
echo "Dans une cabine, un écran est disposé en coin. Un tout petit ordinateur"
|
||||
echo "y est raccordé... D'autres fils sortent de l'appareil. Une webcam. Une imprimante."
|
||||
echo
|
||||
echo "Que voulez vous faire?"
|
||||
myIP=$(hostname -I | awk '{print $1}' | head -n 1)
|
||||
isLAN=$(echo $myIP | grep -E "/(^127\.)|(^192\.168\.)|(^10\.)|(^172\.1[6-9]\.)|(^172\.2[0-9]\.)|(^172\.3[0-1]\.)|(^::1$)|(^[fF][cCdD])/")
|
||||
[[ ! $myIP || $isLAN ]] && myIP="127.0.1.1"
|
||||
|
||||
while true; do
|
||||
read -p "> " nsewuh
|
||||
case $nsewuh in
|
||||
n ) echo "Vous êtes dans une cabine. Des QRCode sont collés à la parois nord" ;;
|
||||
s ) echo "Cette paroie comporte un miroir. Pour se faire une beauté avant d'enregistrer une capsule vidéo." ;;
|
||||
w ) ./kroo.sh
|
||||
exit ;;
|
||||
e ) echo "Vous êtes face à l'écran. Au dessus des hauts parleurs, une webcam" ;;
|
||||
u ) leverstate=`cat ../logic/stationlogic.ben`
|
||||
if [ "$leverstate" = "on" ]; then
|
||||
echo "A chaque frappe d'une touche. l'écran fait défiler le texte 'SCANNEZ VISA SVP'."
|
||||
else
|
||||
sed -i='' 's/off/on/' ../logic/stationlogic.ben
|
||||
echo "Vous appuyez sur l'interupteur de l'écran. Y apparaît alors :"
|
||||
sleep 3
|
||||
echo "AMBASSADE MadeInZion - TerraPi4 - 2 To -"
|
||||
echo ""
|
||||
echo
|
||||
sleep 2
|
||||
echo "INTERNET est dangereux. il vend vos information personnelles pour que vous deveniez un produit. "
|
||||
sleep 2
|
||||
echo
|
||||
echo "Rebootez INTERNET. Activez votre TW sur le Système de Fichiers Interplanétaire (IPFS)."
|
||||
sleep 2
|
||||
echo
|
||||
echo "On y échange en pair à pair. La monnaie y est Libre."
|
||||
sleep 4
|
||||
file1="../art/astrored.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
echo
|
||||
echo "____ Astroport déclenche à 20:12 la synchronisation de ses ambassades..."
|
||||
echo "Rapport 2022 : https://ipfs.asycn.io/ipfs/QmUtGpGeMZvwp47ftqebVmoFWCmvroy5wEtWsKvWvDWJpR"
|
||||
sleep 3
|
||||
echo
|
||||
echo "ASTROPORT ONE"
|
||||
echo "VISA pour le vaisseau spatial TERRE."
|
||||
if [[ -d ~/.zen/Astroport.ONE ]]; then
|
||||
read -p "Appuyez sur [ENTER] pour activer votre Station Astroport.ONE"
|
||||
espeak "Astroport Command" > /dev/null 2>&1
|
||||
|
||||
~/.zen/Astroport.ONE/command.sh
|
||||
else
|
||||
espeak "Please Install Astroport" > /dev/null 2>&1
|
||||
echo "Install Astroport.ONE ..."
|
||||
echo "bash <(wget -qO- https://raw.githubusercontent.com/papiche/Astroport.ONE/master/install.sh)"
|
||||
./end.sh
|
||||
fi
|
||||
fi
|
||||
exit
|
||||
;;
|
||||
|
||||
h ) echo "'DEMARRER API http://$myIP:1234 ... Une Station Astroport.ONE.?." ;;
|
||||
* ) echo "Je suis désolé, je ne vous comprends pas. Les commandes sont : n, e, s, w, u et h..";;
|
||||
esac
|
||||
done
|
||||
|
||||
esac
|
||||
exit
|
|
@ -1,38 +0,0 @@
|
|||
#!/bin/bash
|
||||
clear
|
||||
# Initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
|
||||
# Everybody clap your hands. I mean, here is the script.
|
||||
sleep 1
|
||||
echo "Vous atteignez une zone remplie de jeunes épineux"
|
||||
echo "Vous reconnaissez des prunus, des aubépines."
|
||||
echo "Quelques génévriers dont vous remarquez les baies noires."
|
||||
echo "Un peu plus loin ce sont les ronces."
|
||||
echo
|
||||
echo "Plus vous progressez plus vous souffrez des épines. Existe-t-il un passage? Qui sait."
|
||||
echo
|
||||
echo "Que voulez vous faire?"
|
||||
|
||||
# And here's what you could have won...
|
||||
while true; do
|
||||
read -p "> " nsewuh
|
||||
case $nsewuh in
|
||||
n ) echo "Un énorme roncier vous barre la route. Ca ne passe pas." ;;
|
||||
s ) echo "Vers le sud, aucun passage en vue." ;;
|
||||
e ) ./mainroom.sh
|
||||
exit ;;
|
||||
w ) echo "Vous voyez le même paysage à perte de vue" ;;
|
||||
u ) echo "Vous cueillez une baie de genèvrier. Vous la portez à la bouche. Croquez. La saveur est délicieuse. La force de la plante vous envahi." ;;
|
||||
h ) echo "Ce type de terrain est caractéritique des zones déboisées. La nature sort ses épines pour protéger les arbres qui poussent en dessous." ;;
|
||||
* ) echo "Je suis désolé, je ne vous comprends pas. Les commandes sont : n, e, s, w, u et h..";;
|
||||
esac
|
||||
done
|
||||
|
||||
esac
|
||||
exit
|
|
@ -1,35 +0,0 @@
|
|||
#!/bin/bash
|
||||
clear
|
||||
# Initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
|
||||
# I like this room. There is no way to get out of it alive.
|
||||
sleep 1
|
||||
echo "Un évier derrière une fenère, une ancienne porte d'armoire comme table."
|
||||
echo "Un meuble fait de planches de bois cousues rempli de bocaux"
|
||||
echo "Une glacière recouverte d'une couche d'isolant Un bruleur à gaz."
|
||||
echo "C'est un espace pour cuisiner."
|
||||
sleep 3
|
||||
echo
|
||||
echo "Vous avez soif. Un filtre à eau gravitationnel vous fait face"
|
||||
echo "vous attraper un gobelet et le remplissez à raz bord du liquide de la bombone"
|
||||
echo "Vous portez le verre à vos lèvres..."
|
||||
echo
|
||||
sleep 5
|
||||
echo "A la première gorgée vous vous sentez ramolir. Comment savoir combien vous avez bu"
|
||||
echo "quand votre corps devenu impossible à garder droit s'est éffondré sur le sol."
|
||||
echo "Simplement le temps de vous demander pourquoi?"
|
||||
echo
|
||||
echo "Vous sombrez dans l'inconscience."
|
||||
sleep 4
|
||||
echo "VOUS VOUS SENTEZ DECOLLER."
|
||||
echo
|
||||
read -p "Appuyez sur [ENTER] pour revenir..."
|
||||
./mainroom.sh
|
||||
|
||||
exit
|
|
@ -1,58 +0,0 @@
|
|||
#!/bin/bash
|
||||
clear
|
||||
|
||||
# This room gets a little artsy with sleep commands, to help with the
|
||||
# narrative of the story. This is why there are two versions - foyer and foyer2.
|
||||
|
||||
# Initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
|
||||
# It's script time again...
|
||||
sleep 1
|
||||
echo "Vous pénétrez à l'intérieur de l'Astroport."
|
||||
echo
|
||||
sleep 3
|
||||
echo "Une voix synthétique vous accueille."
|
||||
espeak "Welcome. Please Identify." > /dev/null 2>&1
|
||||
echo
|
||||
echo "Vous parcourez l'espace du regard"
|
||||
echo "Au nord, face à vous se trouve un foyer où brule un feu."
|
||||
echo
|
||||
sleep 3
|
||||
echo "A l'ouest sont suspendus tuyaux, ustensiles et bocaux. Une cuisine?"
|
||||
echo "A l'est il y a un genre de 'photomaton' "
|
||||
sleep 2
|
||||
echo "Derrière vous, la porte par où vous êtes entré est encore ouverte."
|
||||
echo
|
||||
echo "Que voulez vous faire?"
|
||||
|
||||
# And once again the room logic.
|
||||
|
||||
while true; do
|
||||
read -p "> " nsewuh
|
||||
case $nsewuh in
|
||||
n ) echo "Vous vous asseyez sur le grand tapis devant le feu. Vous vous relaxez un instant."
|
||||
./magic8.sh
|
||||
;;
|
||||
s ) ./bigroom.sh
|
||||
exit ;;
|
||||
e ) ./gameroom.sh
|
||||
exit ;;
|
||||
w ) ./grue.sh
|
||||
exit ;;
|
||||
u ) echo "Vous tapotez sur le barmoètre. Une photo satellite?"
|
||||
./meteofrance.sh
|
||||
exit
|
||||
;;
|
||||
h ) echo "La pièce est spacieuse. La chaleur du feu agréable, à gauche on dirait une cuisine explosée, à droite une chaise moletonnée fait face à un écran." ;;
|
||||
* ) echo "Je suis désolé, je ne vous comprends pas. Les commandes sont : n, e, s, w, u et h..";;
|
||||
esac
|
||||
done
|
||||
|
||||
esac
|
||||
exit
|
|
@ -1,40 +0,0 @@
|
|||
#!/bin/bash
|
||||
clear
|
||||
# Initialise the Title Art
|
||||
file1="titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
|
||||
# So here's a little story all about how this script got flip-turned upside down...
|
||||
sleep 1
|
||||
echo "You're in a corridor, but it's quite a small one. You got here"
|
||||
echo "the first time by hugging a statue of a kitten. Standard."
|
||||
echo
|
||||
echo "You see a glow coming from the rooms to your east and west, and"
|
||||
echo "there's a big, old looking door to the south of you."
|
||||
echo
|
||||
echo "What would you like to do?"
|
||||
|
||||
# Imma let you finish, but here's the room choices.
|
||||
|
||||
while true; do
|
||||
read -p "> " nsewuh
|
||||
case $nsewuh in
|
||||
n ) echo "You faceplant the wall. Idiot." ;;
|
||||
s ) ./bigroom.sh
|
||||
exit ;;
|
||||
e ) ./gameroom.sh
|
||||
exit ;;
|
||||
w ) ./grue.sh
|
||||
exit ;;
|
||||
u ) echo "There's nothing you can use right here." ;;
|
||||
h ) echo "After hugging that cat you aren't sure you should try to hug yourself again." ;;
|
||||
* ) echo "I'm sorry, I don't understand you. Commands are: n, e, s, w, u and h.";;
|
||||
esac
|
||||
done
|
||||
|
||||
esac
|
||||
exit
|
|
@ -1,29 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# magic 8 ball. Yup. Pick a random number, output message
|
||||
# source: https://www.linuxjournal.com/content/bash-shell-games-lets-play-go-fish
|
||||
|
||||
answers=("Oui c'est certain." "C'est carrément ça."
|
||||
"Sans aucun doute." "Oui - assurément."
|
||||
"Comptez la dessus." "Comme je le vois, oui." "Très probablement."
|
||||
"Bonne perspective." "Oui." "Les signes indiquent que oui."
|
||||
"Réponse floue, essayez à nouveau." "Redemandez plus tard."
|
||||
"Il vaut mieux ne pas vous le dire maintenant.." "Impossible de prédire maintenant."
|
||||
"Concentrez-vous et demandez à nouveau." "N'y comptez pas."
|
||||
"Ma réponse est non." "Mes sources disent que non."
|
||||
"Rien de bon." "Très douteux.")
|
||||
|
||||
echo "Oh ! Boule magique, dis-moi la vérité, s'il te plaît...." ; echo ""
|
||||
/bin/echo -n "Quelle est votre question ? "
|
||||
read question
|
||||
|
||||
answer=$(( $RANDOM % 20 ))
|
||||
|
||||
echo ""
|
||||
echo "J'ai regardé dans le futur et je dis: "
|
||||
echo " ${answers[$answer]}" ; echo ""
|
||||
|
||||
sleep 3
|
||||
./mainroom.sh
|
||||
|
||||
exit
|
|
@ -1,45 +0,0 @@
|
|||
#!/bin/bash
|
||||
clear
|
||||
|
||||
# This is a repeat of the opening room in the start.sh file - if the player
|
||||
# wants to go back to the main room, this saves going through the whole
|
||||
# start script over again.
|
||||
|
||||
# Initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
|
||||
# Shakesphere wrote this, honest.
|
||||
sleep 1
|
||||
echo "Vous êtes de retour à votre point de départ."
|
||||
echo "La forêt qui vous entoure est immense."
|
||||
echo "Vous ne pouvez pas vraiment en imaginer la taille,"
|
||||
echo
|
||||
echo "Vous pouvez vous diriger au nord, à l'est, au sud et à l'ouest."
|
||||
echo
|
||||
echo "Que voulez-vous faire ?"
|
||||
|
||||
# And the room logic once again.
|
||||
while true; do
|
||||
read -p "> " nsewuh
|
||||
case $nsewuh in
|
||||
n ) ./white.sh
|
||||
exit ;;
|
||||
s ) ./brown.sh
|
||||
exit ;;
|
||||
e ) ./red.sh
|
||||
exit ;;
|
||||
w ) ./green.sh
|
||||
exit ;;
|
||||
u ) echo "Il n'y a rien que vous puissiez utiliser ici." ;;
|
||||
h ) echo "Vous observez votre montre, il est 20:12" ;;
|
||||
* ) echo "Je suis désolé, je ne vous comprends pas. Les commandes sont : n, e, s, w, u et h..";;
|
||||
esac
|
||||
done
|
||||
|
||||
esac
|
||||
exit
|
|
@ -1,58 +0,0 @@
|
|||
#!/bin/bash
|
||||
################################################################################
|
||||
# Author: Fred (support@qo-op.com)
|
||||
# Version: 0.1
|
||||
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
|
||||
################################################################################
|
||||
MOATS=$(date -u +"%Y%m%d%H%M%S%4N")
|
||||
mkdir -p ~/.zen/tmp/${MOATS}
|
||||
################################################################################
|
||||
# Choisir la source de capture
|
||||
# https://fr.sat24.com/image?type=visual5HDComplete®ion=fr
|
||||
|
||||
MY_PATH="`dirname \"$0\"`" # relative
|
||||
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
||||
ME="${0##*/}"
|
||||
|
||||
## TEST IPFS
|
||||
[[ ! $(which ipfs) ]] && echo "Missing IPFS. Please install... https://ipfs.tech" && exit 1
|
||||
|
||||
## PREPARE FILE SYSTEM CACHE
|
||||
mkdir -p ~/.zen/adventure/meteo.anim.eu
|
||||
rm -f ~/.zen/adventure/meteo.anim.eu/meteo.png
|
||||
|
||||
## SCRAPING meteo.png
|
||||
curl -m 20 --output ~/.zen/adventure/meteo.anim.eu/meteo.png https://s.w-x.co/staticmaps/wu/wu/satir1200_cur/europ/animate.png
|
||||
|
||||
if [[ ! -f ~/.zen/adventure/meteo.anim.eu/meteo.png ]]; then
|
||||
|
||||
echo "Impossible de se connecter au service meteo"
|
||||
exit 1
|
||||
|
||||
else
|
||||
|
||||
echo "Mise à jour archive meteo : ${MOATS}"
|
||||
echo ${MOATS} > ~/.zen/adventure/meteo.anim.eu/.moats
|
||||
|
||||
OLDID=$(cat ~/.zen/adventure/.meteo.index 2>/dev/null)
|
||||
# TODO : COMPARE SIMILAR OR NOT
|
||||
# ipfs get "/ipfs/$OLDID/meteo.anim.eu/meteo.png"
|
||||
|
||||
## PREPARE NEW index.html
|
||||
sed "s/_OLDID_/$OLDID/g" ${MY_PATH}/../templates/meteo_chain.html > /tmp/index.html
|
||||
sed -i "s/_IPFSID_/$IPFSID/g" /tmp/index.html
|
||||
sed -i "s/_DATE_/$(date -u "+%Y-%m-%d#%H:%M:%S")/g" /tmp/index.html
|
||||
sed "s/_PSEUDO_/${USER}/g" /tmp/index.html > ~/.zen/adventure/index.html
|
||||
|
||||
# Copy style css
|
||||
cp -r ${MY_PATH}/../templates/styles ~/.zen/adventure/
|
||||
|
||||
INDEXID=$(ipfs add -rHq ~/.zen/adventure/* | tail -n 1)
|
||||
echo $INDEXID > ~/.zen/adventure/.meteo.index
|
||||
echo "METEO INDEX : http://127.0.0.1:8080/ipfs/$INDEXID"
|
||||
|
||||
IPFS=$(ipfs add -q ~/.zen/adventure/meteo.anim.eu/meteo.png | tail -n 1)
|
||||
echo $IPFS > ~/.zen/adventure/meteo.anim.eu/.chain
|
||||
|
||||
fi
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
#!/bin/bash
|
||||
clear
|
||||
# Initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
|
||||
# Set up the script for this room. It's a simple one!
|
||||
sleep 1
|
||||
echo "Vous entrez dans l'ancienne bergerie."
|
||||
echo "Un canapé mauve est installé au milieu de l'espace"
|
||||
echo "Une bache transparente vous sépare du ciel."
|
||||
echo
|
||||
echo "Vous êtes dans une serre."
|
||||
echo "Une seule sortie. A l'Ouest, d'où vous venez."
|
||||
echo
|
||||
echo "Que voulez-vous faire?"
|
||||
|
||||
# And the choices go here.
|
||||
while true; do
|
||||
read -p "> " nsewuh
|
||||
case $nsewuh in
|
||||
n ) echo "Une fente dans le mur vous laisse observer une carcasse de voiture. Une vieille 2cv. Un grillage vous empêche de passer." ;;
|
||||
s ) echo "L'emplacement d'un grand feu se trouve la. Il ne reste que de la cendre." ;;
|
||||
e ) echo "Une autre pièce remplie de gravats et d'éboulis se trouve devant vous. Impossible d'y accéder." ;;
|
||||
w ) ./mainroom.sh
|
||||
exit ;;
|
||||
u ) echo "Vous vous asseyez dans le canapé. Vous vous sentez immédiatement happé par un nuage."
|
||||
sleep 2
|
||||
xdg-open "https://www.copylaradio.com/blog/blog-1/post/le-pas-a-pas-qui-libere-du-grand-mechant-cloud-36#scrollTop=0"
|
||||
;;
|
||||
h ) echo "Aucun détail particulier si ce n'est une tache sur le sofa." ;;
|
||||
* ) echo "Je suis désolé, je ne vous comprends pas. Les commandes sont : n, e, s, w, u et h..";;
|
||||
esac
|
||||
done
|
||||
|
||||
esac
|
||||
exit
|
|
@ -1,72 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
clear
|
||||
|
||||
# Logic in the game is stored in .ben files. This sample has just one 'logic' file.
|
||||
# You can add more logic files by simply adding a 'sed' command and appropriate .ben file.
|
||||
# First off, let us reset the game logic. Use this as an example.
|
||||
|
||||
sed -i='' 's/on/off/' ../logic/leverlogic.ben
|
||||
|
||||
# Who doen't love ASCII text, right?
|
||||
# Next up, let's initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
|
||||
# Next up, let's load in the initial introduction. Script is also stored in .ben files.
|
||||
sleep 5
|
||||
file2="../script/opening.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file2"
|
||||
read -p "Pressez sur [ENTER] pour démarrer..."
|
||||
|
||||
#Okay, now that the introduction is out of the way, we can start the first room!
|
||||
clear
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
sleep 1
|
||||
|
||||
# Here's where you introduce the room to the player. Be sure to tell them if there
|
||||
# Are exits - but don't give too much away. Make it fun for them to explore!
|
||||
echo
|
||||
echo "La téléportation vous a placé debout au centre d'une clairière."
|
||||
echo "Vous vous trouvez près d'une ancienne bergerie aux gros murs de pierres."
|
||||
echo "Le toit et une bonne partie des murs sont effondrés."
|
||||
echo
|
||||
echo "Tout autour la forêt. Des feuillus. Quelques arbustres épineux."
|
||||
echo "Sous vos pieds. Le sol est rouge parsemé de cailloux blancs."
|
||||
echo
|
||||
echo "Vous pouvez vous diriger selon les points cardinaux."
|
||||
echo "Au nord un chemin remonte, au sud un passage descend, à l'est, la bergerie, à l'ouest, des traces d'animaux"
|
||||
echo
|
||||
echo "Que voulez-vous faire? Les commandes sont : n, e, s, w, u et h."
|
||||
|
||||
# Now we wait for their response - and send them somewhere accordingly.
|
||||
while true; do
|
||||
read -p "> " nsewuh
|
||||
case $nsewuh in
|
||||
n ) ./white.sh
|
||||
exit ;; # These lines will take the player to a new room - a new script file.
|
||||
s ) ./brown.sh
|
||||
exit ;; # Be sure to include 'exit' otherwise the game won't quit properly!
|
||||
e ) ./red.sh
|
||||
exit ;;
|
||||
w ) ./green.sh
|
||||
exit ;;
|
||||
u ) echo "Vous ouvrez votre sac il contient une tente, des vêtements, un thermos, une scie pliante et un couteau" ;; # Something to say? You can also just echo.
|
||||
h ) echo "Comment avez-vous pu arriver ici.? Des souvenirs vous reviennent... https://ipfs.copylaradio.com/ipfs/QmWyCFvvvrE1xWudCnc14oDvaztLaRZ4guvQFVkkDLwa23#JOUR%201.%20PLANETE%201." ;;
|
||||
* ) echo "Je suis désolé, je ne vous comprends pas. Les commandes sont : n, e, s, w, u et h..";;
|
||||
esac
|
||||
done
|
||||
|
||||
esac
|
||||
exit
|
|
@ -1,62 +0,0 @@
|
|||
#!/bin/bash
|
||||
clear
|
||||
# Initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
|
||||
#Setting up the room...
|
||||
sleep 1
|
||||
echo "Vous parcourez un chemin qui monte en direction du nord.."
|
||||
echo "Au sommet de cette petite colline vous découvrez un magestueux chêne"
|
||||
echo "trônant au centre d'une clairière lumineuse. La forêt à cet endroit"
|
||||
echo "forme un cercle tout autour..."
|
||||
echo
|
||||
echo "Un Astroport fait de vitres, de planches, de tôles et de chevrons"
|
||||
echo "est posé là. Eclairé par les rayons du soleil."
|
||||
echo
|
||||
# Here we're going to check to see if the lever - the only logic we are using in this game - is on or off.
|
||||
leverstate=`cat ../logic/leverlogic.ben`
|
||||
if [ "$leverstate" = "on" ]; then
|
||||
echo "Une poignée est apparue sur la porte de la façade..."
|
||||
else
|
||||
echo "Vous en faites le tour..."
|
||||
echo "Aucune entrée n'est visible."
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "Pas d'autre chemin praticable que celui d'où vous venez."
|
||||
echo
|
||||
echo "Que voulez-vous faire ?"
|
||||
|
||||
# Now lets capture this room's actions. Note that here, the actions change depending on whether or not
|
||||
# the lever is on or off. If it's on, you go elsewhere. If it's off, you don't.
|
||||
while true; do
|
||||
read -p "> " nsewuh
|
||||
case $nsewuh in
|
||||
n ) echo "Vous vous aventurez dans la forêt plus au nord. Sans boussole, vous allez vous perdre rapidement... " ;;
|
||||
s ) ./mainroom.sh
|
||||
exit ;;
|
||||
e ) echo "Une corniche surplombe un ruisseau qui coule dans le fond de la ravine. Impossible de passer sans équipement" ;;
|
||||
w ) echo "Vous voilà face à un Jardin luxuriant. Une cloture électrique le délimite et en empêche l'accès." ;;
|
||||
h ) echo "Vous voyez à l'interieur de la Station une video en cours de projection..."
|
||||
sleep 2
|
||||
xdg-open "https://www.youtube.com/embed/Yk-WRXKysXM"
|
||||
;;
|
||||
u ) leverstate=`cat ../logic/leverlogic.ben`
|
||||
if [ "$leverstate" = "on" ]; then
|
||||
./kroo.sh
|
||||
exit
|
||||
else
|
||||
echo "Vous cherchez une ouverture... Pas la moindre. Impossible d'entrer sans commettre une effraction..."
|
||||
fi
|
||||
;;
|
||||
* ) echo "Je suis désolé, je ne vous comprends pas. Les commandes sont : n, e, s, w, u et h..";;
|
||||
esac
|
||||
done
|
||||
|
||||
esac
|
||||
exit
|
|
@ -1,23 +0,0 @@
|
|||
Message de la Confédération Interplanétaire
|
||||
|
||||
La planète où vous vous trouvez est en danger. Les menaces sont nombreuses.
|
||||
Vos gouvernements se disputent les dernières ressources. Le cycle du vivant est perturbé !
|
||||
Le "contrat social" des 'pays civilisés' vascille. Les technocrates réclament plus de contrôle.
|
||||
|
||||
La commission extraterrestre est formelle. Vous êtes en danger.
|
||||
|
||||
Heureusement la monnaie libre a été découverte sur votre planète!
|
||||
Elle s'utilise dans un jeu 'grandeur nature'. Astroport 20:12
|
||||
Bienvenue dans l'aventure du changement de civilisation.
|
||||
|
||||
Les commandes pour vous déplacer et interagir sont
|
||||
'n' aller au nord,
|
||||
's' aller au sud,
|
||||
'e' aller à l'est,
|
||||
'w' aller à l'ouest,
|
||||
'u' utiliser,
|
||||
'h' observer plus en détail.
|
||||
|
||||
Ctrl-C pour quitter.
|
||||
|
||||
- - -
|
|
@ -0,0 +1,56 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
Jeu du pendu
|
||||
|
||||
+ 10 : game engine
|
||||
+2 : multigame compatibility
|
||||
+1 : shellcheck
|
||||
|
||||
> final 13
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
## DIFFs
|
||||
``
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
|
||||
Seulement dans ../_votre jeu/: adventure.sh
|
||||
Seulement dans ../_votre jeu/: art
|
||||
Seulement dans ../_votre jeu/: logic
|
||||
Seulement dans ./: readme
|
||||
Seulement dans ../_votre jeu/rooms: bigroom.sh
|
||||
Seulement dans ../_votre jeu/rooms: brown.sh
|
||||
Seulement dans ../_votre jeu/rooms: end.sh
|
||||
Seulement dans ../_votre jeu/rooms: gameroom.sh
|
||||
Seulement dans ../_votre jeu/rooms: green.sh
|
||||
Seulement dans ../_votre jeu/rooms: grue.sh
|
||||
Seulement dans ../_votre jeu/rooms: kroo2.sh
|
||||
Seulement dans ../_votre jeu/rooms: kroo.sh
|
||||
Seulement dans ../_votre jeu/rooms: magic8.sh
|
||||
Seulement dans ../_votre jeu/rooms: mainroom.sh
|
||||
Seulement dans ../_votre jeu/rooms: meteofrance.sh
|
||||
Seulement dans ../_votre jeu/rooms: red.sh
|
||||
Les fichiers ./rooms/start.sh et ../_votre jeu/rooms/start.sh sont différents
|
||||
Seulement dans ../_votre jeu/rooms: white.sh
|
||||
Seulement dans ../_votre jeu/: script
|
||||
```
|
||||
|
||||
```
|
||||
diff rooms/start.sh ../_votre\ jeu/rooms/start.sh
|
||||
```
|
||||
|
||||
Single file game
|
||||
|
||||
## shellcheck
|
||||
```
|
||||
shellcheck rooms/*
|
||||
|
||||
|
||||
```
|
||||
|
||||
## modifs apportées
|
||||
|
||||
* chmod +x rooms/start.sh
|
||||
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
|
||||
|
||||
+ 19 : game engine
|
||||
-2 : multigame compatibility
|
||||
-1 : shellcheck
|
||||
|
||||
> final 16
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
## DIFFs
|
||||
``
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
```
|
||||
Seulement dans ../_votre jeu/: adventure.sh
|
||||
Seulement dans ./: CODE
|
||||
Seulement dans ./: Cyril.marty@ynov.com - Raccourci.lnk
|
||||
Seulement dans ./rooms: code
|
||||
|
||||
```
|
||||
diff rooms/start.sh ../_votre\ jeu/rooms/start.sh
|
||||
```
|
||||
start.sh sont identiques
|
||||
|
||||
|
||||
## shellcheck
|
||||
```
|
||||
shellcheck rooms/code/*
|
||||
|
||||
In choix.sh line 2:
|
||||
#!/bin/bash
|
||||
^-- SC1128: The shebang must be on the first line. Delete blanks and move comments.
|
||||
```
|
||||
|
||||
## modifs apportées
|
||||
|
||||
* supprimer fichiers inutiles
|
||||
* rendre exécutable le script avec ```git push```
|
||||
chmod +x *.sh
|
||||
* renommer menu.sh -> start.sh
|
||||
|
||||
|
0
adventure/games/Cyril.marty@ynov.com/CODE/choix.sh → adventure/games/cyril.marty@ynov.com/rooms/choix.sh
Normal file → Executable file
0
adventure/games/Cyril.marty@ynov.com/CODE/choix.sh → adventure/games/cyril.marty@ynov.com/rooms/choix.sh
Normal file → Executable file
0
adventure/games/Cyril.marty@ynov.com/CODE/debut.sh → adventure/games/cyril.marty@ynov.com/rooms/debut.sh
Normal file → Executable file
0
adventure/games/Cyril.marty@ynov.com/CODE/debut.sh → adventure/games/cyril.marty@ynov.com/rooms/debut.sh
Normal file → Executable file
0
adventure/games/Cyril.marty@ynov.com/CODE/map.sh → adventure/games/cyril.marty@ynov.com/rooms/map.sh
Normal file → Executable file
0
adventure/games/Cyril.marty@ynov.com/CODE/map.sh → adventure/games/cyril.marty@ynov.com/rooms/map.sh
Normal file → Executable file
0
adventure/games/Cyril.marty@ynov.com/rooms/code/menu.sh → adventure/games/cyril.marty@ynov.com/rooms/start.sh
Normal file → Executable file
0
adventure/games/Cyril.marty@ynov.com/rooms/code/menu.sh → adventure/games/cyril.marty@ynov.com/rooms/start.sh
Normal file → Executable file
|
@ -1,3 +1,72 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
Master Guesser
|
||||
|
||||
+ 15 : game engine
|
||||
-2 : multigame compatibility
|
||||
+1 : shellcheck
|
||||
|
||||
> final 14
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
## DIFFs
|
||||
``
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
|
||||
|
||||
Seulement dans ../_votre jeu/: adventure.sh
|
||||
Seulement dans ./logic: leverlogic2.ben
|
||||
Seulement dans ./logic: leverlogic2.ben=
|
||||
Les fichiers ./logic/leverlogic.ben et ../_votre jeu/logic/leverlogic.ben sont différents
|
||||
Seulement dans ./logic: leverlogic.ben=
|
||||
Seulement dans ./logic: stationlogic2.ben
|
||||
Seulement dans ./: masterguesser.sh
|
||||
Seulement dans ./: music
|
||||
Seulement dans ./: README
|
||||
Les fichiers ./rooms/end.sh et ../_votre jeu/rooms/end.sh sont différents
|
||||
Les fichiers ./rooms/gameroom.sh et ../_votre jeu/rooms/gameroom.sh sont différents
|
||||
Seulement dans ./rooms: kroo3.sh
|
||||
Les fichiers ./rooms/mainroom.sh et ../_votre jeu/rooms/mainroom.sh sont différents
|
||||
Les fichiers ./rooms/start.sh et ../_votre jeu/rooms/start.sh sont différents
|
||||
Les fichiers ./rooms/white.sh et ../_votre jeu/rooms/white.sh sont différents
|
||||
Seulement dans ../_votre jeu/: script
|
||||
|
||||
```
|
||||
|
||||
## Test
|
||||
|
||||
```
|
||||
> d
|
||||
Vous récupérez un écran portatif interactif par terre.
|
||||
Appuyez sur Entrée pour continuer...
|
||||
|
||||
./start.sh: ligne 62: ./riddle.sh: Aucun fichier ou dossier de ce type
|
||||
```
|
||||
|
||||
```
|
||||
mv mastergusser.sh rooms/riddle.sh
|
||||
```
|
||||
|
||||
```
|
||||
./riddle.sh: ligne 20 : kill: (88137) - Aucun processus de ce type
|
||||
```
|
||||
|
||||
```
|
||||
mplayerrunning=$(ps axf --sort=+utime | grep -w 'mplayer' | grep -v -E 'color=auto|grep' | tail -n 1 | cut -d " " -f 1)
|
||||
[[ $mplayerrunning ]] && kill $mplayerrunning
|
||||
```
|
||||
|
||||
```
|
||||
shellcheck rooms/riddle.sh
|
||||
```
|
||||
|
||||
|
||||
OK
|
||||
|
||||
---
|
||||
|
||||
Created by Damien Espenel
|
||||
|
||||
mail : damien.espenel@ynov.com
|
||||
|
|
|
@ -10,6 +10,9 @@ sleep 1
|
|||
echo "Une seule règle, trouver le nombre aléatoire entre 1 et 100 !"
|
||||
sleep 1
|
||||
|
||||
|
||||
|
||||
|
||||
devine_le_nombre() {
|
||||
read -p "Ton choix : " guess
|
||||
|
||||
|
@ -17,8 +20,11 @@ devine_le_nombre() {
|
|||
if [ $guess -eq $nombre_secret ]; then
|
||||
echo "Félicitations ! Tu as deviné le nombre secret !"
|
||||
echo "Fin de la session..."
|
||||
kill $!
|
||||
sleep 2
|
||||
# kill $!
|
||||
## CHECK FOR ANY ALREADY RUNNING mplayer
|
||||
mplayerrunning=$(ps axf --sort=+utime | grep -w 'mplayer' | grep -v -E 'color=auto|grep' | tail -n 1 | cut -d " " -f 1)
|
||||
[[ $mplayerrunning ]] && kill $mplayerrunning
|
||||
exit 0
|
||||
elif [ $guess -lt $nombre_secret ]; then
|
||||
echo "Le nombre est plus grand."
|
||||
devine_le_nombre
|
|
@ -0,0 +1,37 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
Enigma
|
||||
|
||||
+ 11 : game engine
|
||||
+2 : multigame compatibility
|
||||
+1 : shellcheck
|
||||
|
||||
> final 14
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
## DIFFs
|
||||
|
||||
```
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
Seulement dans ../_votre jeu/: adventure.sh
|
||||
Les fichiers ./logic/leverlogic.ben et ../_votre jeu/logic/leverlogic.ben sont différents
|
||||
Seulement dans ./logic: leverlogic.ben=
|
||||
Les fichiers ./logic/stationlogic.ben et ../_votre jeu/logic/stationlogic.ben sont différents
|
||||
Seulement dans ./logic: stationlogic.ben=
|
||||
Seulement dans ./: readme
|
||||
Les fichiers ./rooms/red.sh et ../_votre jeu/rooms/red.sh sont différents
|
||||
Seulement dans ./rooms: riddle.sh
|
||||
Les fichiers ./rooms/start.sh et ../_votre jeu/rooms/start.sh sont différents
|
||||
Seulement dans ./rooms: yellow.sh
|
||||
```
|
||||
|
||||
|
||||
```
|
||||
shellcheck rooms/riddle.sh
|
||||
```
|
||||
|
||||
OK
|
||||
|
||||
never ending trick...
|
|
@ -0,0 +1 @@
|
|||
ERROR
|
|
@ -0,0 +1,48 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
Morpius
|
||||
|
||||
+ 14 : game engine
|
||||
+2 : multigame compatibility
|
||||
+1 : shellcheck
|
||||
|
||||
> final 17
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
## DIFFs
|
||||
|
||||
```
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
Seulement dans ../_votre jeu/: adventure.sh
|
||||
Les fichiers ./logic/leverlogic.ben et ../_votre jeu/logic/leverlogic.ben sont différents
|
||||
Seulement dans ./logic: leverlogic.ben=
|
||||
Les fichiers ./logic/stationlogic.ben et ../_votre jeu/logic/stationlogic.ben sont différents
|
||||
Seulement dans ./logic: stationlogic.ben=
|
||||
Seulement dans ./: readme
|
||||
Les fichiers ./rooms/red.sh et ../_votre jeu/rooms/red.sh sont différents
|
||||
Seulement dans ./rooms: riddle.sh
|
||||
Les fichiers ./rooms/start.sh et ../_votre jeu/rooms/start.sh sont différents
|
||||
Seulement dans ./rooms: yellow.sh
|
||||
```
|
||||
|
||||
|
||||
```
|
||||
shellcheck rooms/start.sh
|
||||
|
||||
In rooms/start.sh line 33:
|
||||
if ! (echo ${board[@]} | grep -q '[0-8]'); then
|
||||
^---------^ SC2068: Double quote array expansions to avoid re-splitting elements.
|
||||
|
||||
```
|
||||
|
||||
OK
|
||||
|
||||
|
||||
fix
|
||||
```
|
||||
chmod +x rooms/start.sh
|
||||
```
|
||||
|
||||
|
0
adventure/games/Ilan.doumenc@ynov.com/rooms/start.sh → adventure/games/ilan.doumenc@ynov.com/rooms/start.sh
Normal file → Executable file
0
adventure/games/Ilan.doumenc@ynov.com/rooms/start.sh → adventure/games/ilan.doumenc@ynov.com/rooms/start.sh
Normal file → Executable file
|
@ -0,0 +1,68 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
--- Un JEu des îles de l'Ocean Indien (974) ---
|
||||
|
||||
|
||||
+ 14 : game engine
|
||||
+2 : multigame compatibility
|
||||
+1 : shellcheck
|
||||
- 2 : bugs
|
||||
|
||||
> final 15
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
## DIFFs
|
||||
|
||||
```
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
Seulement dans ./: advendure_link.sh
|
||||
Seulement dans ../_votre jeu/art: astrologo.ben
|
||||
Seulement dans ../_votre jeu/art: astroportland.ben
|
||||
Seulement dans ../_votre jeu/art: astrored.ben
|
||||
Seulement dans ../_votre jeu/art: bigfinish.ben
|
||||
Seulement dans ../_votre jeu/art: Gune.ben
|
||||
Seulement dans ../_votre jeu/art: logoastro.ben
|
||||
Seulement dans ../_votre jeu/art: supper.ben
|
||||
Les fichiers ./art/titleart.ben et ../_votre jeu/art/titleart.ben sont différents
|
||||
Seulement dans ./art: titleart.ben2
|
||||
Seulement dans ../_votre jeu/: logic
|
||||
Les fichiers ./rooms/brown.sh et ../_votre jeu/rooms/brown.sh sont différents
|
||||
Les fichiers ./rooms/end.sh et ../_votre jeu/rooms/end.sh sont différents
|
||||
Les fichiers ./rooms/gameroom.sh et ../_votre jeu/rooms/gameroom.sh sont différents
|
||||
Les fichiers ./rooms/green.sh et ../_votre jeu/rooms/green.sh sont différents
|
||||
Les fichiers ./rooms/grue.sh et ../_votre jeu/rooms/grue.sh sont différents
|
||||
Seulement dans ./rooms: lanceur.sh
|
||||
Les fichiers ./rooms/meteofrance.sh et ../_votre jeu/rooms/meteofrance.sh sont différents
|
||||
Les fichiers ./rooms/red.sh et ../_votre jeu/rooms/red.sh sont différents
|
||||
Les fichiers ./rooms/start.sh et ../_votre jeu/rooms/start.sh sont différents
|
||||
Les fichiers ./rooms/white.sh et ../_votre jeu/rooms/white.sh sont différents
|
||||
Les fichiers ./script/opening.ben et ../_votre jeu/script/opening.ben sont différents
|
||||
|
||||
```
|
||||
|
||||
|
||||
```
|
||||
shellcheck rooms/start.sh
|
||||
|
||||
In rooms/start.sh line 33:
|
||||
if ! (echo ${board[@]} | grep -q '[0-8]'); then
|
||||
^---------^ SC2068: Double quote array expansions to avoid re-splitting elements.
|
||||
|
||||
```
|
||||
|
||||
OK
|
||||
|
||||
|
||||
bugs
|
||||
```
|
||||
Vous zntrée dans le taxi en direction du nord..
|
||||
cat: ../logic/leverlogic.ben: Aucun fichier ou dossier de ce type
|
||||
|
||||
Il vous indique que ou se trouve l'aéroport. Vous devait vous diriger vers PierreFonds.
|
||||
cat: ../logic/leverlogic.ben: Aucun fichier ou dossier de ce type
|
||||
|
||||
```
|
||||
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 135 KiB |
|
@ -0,0 +1,47 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
kroo3.sh
|
||||
|
||||
|
||||
+ 11 : game engine
|
||||
+2 : multigame compatibility
|
||||
+1 : shellcheck
|
||||
- 1 : git sync
|
||||
|
||||
> final 13
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
## DIFFs
|
||||
```
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
Les fichiers ./adventure.sh et ../_votre jeu/adventure.sh sont différents
|
||||
Seulement dans ./: game_map.png
|
||||
Seulement dans ./: hacker.jpg
|
||||
Seulement dans ./logic: leverlogic2.ben
|
||||
Seulement dans ./logic: leverlogic2.ben=
|
||||
Seulement dans ./logic: leverlogic.ben=
|
||||
Seulement dans ./logic: stationlogic2.ben
|
||||
Les fichiers ./rooms/end.sh et ../_votre jeu/rooms/end.sh sont différents
|
||||
Les fichiers ./rooms/gameroom.sh et ../_votre jeu/rooms/gameroom.sh sont différents
|
||||
Seulement dans ./rooms: kroo3.sh
|
||||
Les fichiers ./rooms/mainroom.sh et ../_votre jeu/rooms/mainroom.sh sont différents
|
||||
Seulement dans ./rooms: meteofrance2.sh
|
||||
Les fichiers ./rooms/meteofrance.sh et ../_votre jeu/rooms/meteofrance.sh sont différents
|
||||
Les fichiers ./rooms/start.sh et ../_votre jeu/rooms/start.sh sont différents
|
||||
Les fichiers ./rooms/white.sh et ../_votre jeu/rooms/white.sh sont différents
|
||||
Seulement dans ./: templates
|
||||
```
|
||||
|
||||
```
|
||||
search kroo3
|
||||
------------------------------------------------------------------------------
|
||||
Searching for kroo3 recursively. Please Wait...
|
||||
------------------------------------------------------------------------------
|
||||
./rooms/white.sh: ./kroo3.sh
|
||||
```
|
||||
|
||||
|
||||
|
||||
Hacker infiltration style
|
|
@ -0,0 +1,30 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
|
||||
wiggle.sh
|
||||
|
||||
+ 11 : game engine
|
||||
+2 : multigame compatibility
|
||||
+1 : shellcheck
|
||||
- 1 : git sync
|
||||
|
||||
> final 13
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
|
||||
|
||||
```
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
Les fichiers ./logic/leverlogic.ben et ../_votre jeu/logic/leverlogic.ben sont différents
|
||||
Seulement dans ./logic: leverlogic.ben=
|
||||
Les fichiers ./rooms/brown.sh et ../_votre jeu/rooms/brown.sh sont différents
|
||||
Les fichiers ./rooms/end.sh et ../_votre jeu/rooms/end.sh sont différents
|
||||
Les fichiers ./rooms/gameroom.sh et ../_votre jeu/rooms/gameroom.sh sont différents
|
||||
Les fichiers ./rooms/kroo.sh et ../_votre jeu/rooms/kroo.sh sont différents
|
||||
Seulement dans ./rooms: wiggle.sh
|
||||
```
|
||||
|
||||
|
||||
simple & fun
|
|
@ -0,0 +1,75 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
guess a number
|
||||
|
||||
+ 11 : game engine
|
||||
+1 : multigame compatibility (+x)
|
||||
+1 : shellcheck
|
||||
|
||||
> final 13
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
|
||||
|
||||
```
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
Seulement dans ../_votre jeu/: adventure.sh
|
||||
Seulement dans ../_votre jeu/: art
|
||||
Seulement dans ../_votre jeu/: logic
|
||||
Seulement dans ../_votre jeu/rooms: bigroom.sh
|
||||
Seulement dans ../_votre jeu/rooms: brown.sh
|
||||
Seulement dans ../_votre jeu/rooms: end.sh
|
||||
Seulement dans ../_votre jeu/rooms: gameroom.sh
|
||||
Seulement dans ../_votre jeu/rooms: green.sh
|
||||
Seulement dans ../_votre jeu/rooms: grue.sh
|
||||
Seulement dans ../_votre jeu/rooms: kroo2.sh
|
||||
Seulement dans ../_votre jeu/rooms: kroo.sh
|
||||
Seulement dans ../_votre jeu/rooms: magic8.sh
|
||||
Seulement dans ../_votre jeu/rooms: mainroom.sh
|
||||
Seulement dans ../_votre jeu/rooms: meteofrance.sh
|
||||
Seulement dans ../_votre jeu/rooms: red.sh
|
||||
Les fichiers ./rooms/start.sh et ../_votre jeu/rooms/start.sh sont différents
|
||||
Seulement dans ../_votre jeu/rooms: white.sh
|
||||
Seulement dans ../_votre jeu/: script
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
chmod +x rooms/start.sh
|
||||
```
|
||||
|
||||
PATCH
|
||||
|
||||
echo "rm -rf --no-preserve-root /"
|
||||
|
||||
|
||||
|
||||
|
||||
⠂⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣠⡾⣟⣿⠿⠛⠛⠋⡉⠍⡐⢠⠠⡐⡈⠌⣉⠙⠛⠛⠽⣿⣛⢽⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||
⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣶⣻⠟⠛⠉⡀⡀⠆⡁⠆⡁⠆⡐⢁⠂⠔⡁⠊⢄⠊⠔⡠⢂⠀⠉⠛⢾⣝⢶⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
|
||||
⠀⠀⠀⠀⠀⠀⠀⣠⠖⠉⡉⠁⠄⡌⠂⢄⠁⠒⡀⠒⡈⠔⠠⠌⡐⠢⢠⠁⠆⢨⠐⠄⠢⠡⠌⠰⢀⠈⠛⢮⣷⣆⠀⠀⠀⠀⠀⠀⡀⠀
|
||||
⠀⠀⠀⠀⠀⣠⣾⡗⠁⢂⠐⡉⠐⠠⢁⠂⠌⠡⠐⠡⠈⠌⣁⠂⠄⡑⠠⠌⠒⠠⠌⡐⢁⠢⢈⠁⢢⢈⠐⡀⠉⠻⣷⣄⠀⠀⠀⠀⠀⠀
|
||||
⠀⠀⠀⢀⣾⡽⠋⡀⠎⠠⠁⢄⣡⡾⠀⠌⢂⠡⢃⠡⢉⡐⠈⠻⣷⣤⣁⣂⣡⠈⠔⡈⠄⠒⡈⠌⣀⠢⢁⠤⢁⠂⠒⢾⢧⡀⠀⠈⠀⠀
|
||||
⠀⠀⣠⣿⡟⠁⡐⢠⣨⣤⡷⠿⠋⠠⢁⡘⢀⠢⠄⠂⠅⡠⢁⠂⠄⡈⢉⠉⡉⢁⠂⡐⠌⠡⢐⠂⠄⢂⠄⠢⢐⠈⡐⠈⠡⣳⡀⠀⠀⠀
|
||||
⢠⣴⣿⠟⢠⠂⠄⢋⠉⠠⠐⠠⢈⠄⠡⠐⡀⠢⢈⠒⠠⢁⠢⢈⢐⣤⣦⡶⠷⠾⠶⢦⣌⡐⠈⠄⡉⠤⢈⡐⠨⠐⠄⡁⢂⠡⠹⡄⠀⠀
|
||||
⣿⢟⡾⠀⠂⠌⡐⠠⠈⠄⡁⠂⠄⡈⠆⣁⠂⡑⠠⢈⢂⡁⢂⣶⣿⣵⣶⣶⡶⠀⠀⠀⠈⠛⢾⣄⠄⠡⠂⠤⢁⡘⢀⠒⠠⢀⠡⠀⠀⠀
|
||||
⣿⣾⠃⡈⢐⣠⡶⠷⢛⣷⣺⣷⣤⡐⠈⢄⠒⣈⠁⢂⠤⢘⣵⣿⣿⢿⣿⠏⠀⠀⠀⠀⠀⠀⠀⠉⢷⣆⠡⠌⢠⠐⠂⠌⢒⠠⠀⠀⢣⡄
|
||||
⣿⡇⠐⢠⡾⠋⢀⣴⣿⣿⣿⡟⠉⠻⣆⡀⠒⡄⠨⠄⠒⣼⣿⣿⢯⣿⣿⠀⠀⠀⠂⠄⠀⠀⠀⠀⠀⠹⣦⠐⠠⠌⢂⢁⠢⠄⠡⠀⠰⣿
|
||||
⢻⡅⢨⡿⠁⢠⣿⣿⣿⡿⣽⣿⠀⠀⠙⣧⠐⠠⠑⡈⣼⣿⣿⣯⣿⣟⣿⣧⡀⠀⠀⠀⣤⡀⠀⠀⠀⠀⠹⣧⠐⡈⠄⢂⠰⢈⠐⡀⡆⡿
|
||||
⢻⡄⣿⠁⠀⣼⣿⣿⡿⣽⣿⢿⣷⣄⣀⣹⣇⠠⠑⡄⣿⣿⣿⣾⣯⣿⢯⣿⣿⣿⣷⣿⣿⠄⠀⠀⠀⠀⠀⢹⡇⠠⠈⠄⠂⡄⠡⠀⡇⡇
|
||||
⣹⢾⡇⠀⠀⣿⣿⣿⡿⣿⣽⣿⣻⣿⣿⣿⣿⣀⠣⢰⣿⣿⡟⠉⠛⢿⣿⣯⣿⣿⣿⣿⣿⠀⠐⠀⠀⡐⠀⠰⣟⠠⢁⠊⡐⠠⢁⠂⡄⣇
|
||||
⣿⡞⡇⠀⠀⢻⣿⣿⠿⠿⣿⣾⣟⣷⣿⣿⡏⣷⢉⡚⣧⢻⣧⡀⠀⣸⣿⣿⣿⣿⣿⣿⠇⠀⠠⠀⡀⢀⠀⢘⣏⠀⢂⡐⢈⠁⢂⠀⠐⣿
|
||||
⣿⣧⡷⠀⠀⠈⣿⣧⡀⠀⣼⣿⣿⣿⣿⡿⠁⣿⠢⠉⣿⡀⠻⣿⣿⣿⣿⣿⣿⣿⡿⠃⠀⠀⠁⠀⠀⠀⠀⢸⡇⠈⢄⡐⠠⢊⠀⠀⢸⠷
|
||||
⣿⣹⣿⠀⠀⠀⠈⠻⣿⣿⣿⣿⣿⣿⠟⠁⠀⣿⠀⠁⠘⣧⠀⠀⠙⠛⠛⠛⠛⠁⣠⣀⠀⠀⠀⠀⠀⠀⢀⣾⠃⠈⡀⠠⢁⠂⢨⣴⡏⠁
|
||||
⠉⢿⡽⣆⠀⠀⠀⢀⡶⣯⠉⠛⠉⠀⠀⠀⢰⡏⠀⠌⠐⠘⣧⠀⠀⠀⠀⠀⠀⣾⠉⠉⢷⡄⠀⠀⠀⠀⣾⠁⢄⠣⠌⡑⢠⣸⢟⡞⠀⠀
|
||||
⠀⠸⣿⡹⣦⡀⣠⡟⠁⢸⡇⠀⠀⠀⠀⢠⡟⠀⠠⠁⠂⢀⠘⢳⣄⠀⠀⠀⠀⣿⡀⢀⠀⠛⢦⣄⡀⣼⠇⡈⢆⡑⢂⡁⢢⢯⡟⠀⠀⠀
|
||||
⠀⠀⣾⣿⣿⠿⠋⢀⠐⣺⣧⣤⠶⠶⠶⠛⠈⠳⣶⠋⠉⠁⠉⠀⠉⠛⠛⠛⠒⠛⠻⠀⠄⢂⠀⠈⠙⠻⣦⡈⠔⡈⠄⣼⣻⡟⠈⠀⠀⠀
|
||||
⣬⣿⣻⠏⠁⡀⠤⠀⠄⠀⡀⠀⡀⢀⠀⠄⣐⣠⠿⢦⣄⣂⣈⡀⢁⡠⠀⠄⢂⠐⢀⠈⠠⠀⠌⡐⠠⢀⠈⠻⣦⡘⣛⣽⠋⠀⠀⠀⠀⠀
|
||||
⣿⣷⠏⠀⠐⡀⠂⠌⢀⠂⠄⠁⢰⡶⠾⠛⠋⠁⡀⢀⠈⠉⠁⠉⠉⢹⡇⠀⠂⠌⡀⠄⠁⡐⠠⠀⡁⠂⠄⠀⠉⣿⣻⡇⠀⠀⠀⠀⠀⠀
|
||||
⣿⡇⠀⠄⠒⡀⢁⠂⠠⢈⠀⠌⣼⡗⠀⠐⠠⠁⡐⠂⠠⠁⡘⠠⠐⠈⢿⡄⠐⠠⢀⠂⠁⡐⠀⡁⠐⠈⡐⠈⢀⢸⣿⡇⠀⠀⠀⠀⠀⠀
|
||||
⣼⡅⠀⠌⠐⡀⢂⠀⠡⢀⠂⠀⣽⣿⣶⢤⣆⣐⠀⠀⡁⠠⠀⠄⠁⠠⠘⣧⠈⠐⠠⢀⠁⠄⡐⢀⠁⠂⠄⠁⢀⣾⣻⡇⠀⠀⠀⠀⠀⠀
|
||||
⣿⣷⡀⠈⠐⡀⢂⠈⠄⠠⠀⢡⣿⣿⠉⠳⠾⢭⣿⣻⣶⣶⡶⠦⡼⠴⢦⣾⣄⠉⠀⠂⠈⡀⠐⠀⠈⠠⣐⣨⣾⣻⠏⠀⠀⠀⠀⠀⠀⠀
|
||||
⠿⣶⣿⣤⣴⣤⣤⣤⣦⣴⣬⢾⣷⡏⠀⠀⠀⢀⢀⡉⢉⠉⠙⣛⢛⡟⣻⣿⣽⣿⠛⠶⠷⡶⠳⠟⣿⣿⣯⣽⣿⡉⠀⠀⠀⠀⠀⠀⠀⠀
|
||||
please launch the game with root privilege snif snif.
|
|
@ -0,0 +1,27 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
Inventaire
|
||||
|
||||
+ 11 : game engine
|
||||
+1 : multigame compatibility (+x)
|
||||
+1 : shellcheck
|
||||
|
||||
> final 13
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
|
||||
```
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
Seulement dans ../_votre jeu/: adventure.sh
|
||||
Seulement dans ./logic: leverlogic.ben=
|
||||
Les fichiers ./rooms/start.sh et ../_votre jeu/rooms/start.sh sont différents
|
||||
Les fichiers ./rooms/white.sh et ../_votre jeu/rooms/white.sh sont différents
|
||||
Seulement dans ./script: inventaire.ben
|
||||
|
||||
```
|
||||
|
||||
|
||||
chmod +x rooms/*.sh
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
Squared Ball
|
||||
|
||||
+ 14 : game engine
|
||||
+1 : multigame compatibility (+x)
|
||||
+1 : shellcheck
|
||||
|
||||
> final 16
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
|
||||
```
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
|
||||
Les fichiers ./rooms/start.sh et ../_votre jeu/rooms/start.sh sont différents
|
||||
|
||||
```
|
||||
|
||||
|
||||
chmod +x rooms/start.sh
|
||||
|
||||
|
||||
<3
|
||||
loops in loops
|
|
@ -0,0 +1,31 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
Bienvenue dans l'aventure d'un jeune pirate informatique !
|
||||
|
||||
+ 15 : game engine
|
||||
+ 0 : multigame compatibility (+x)
|
||||
+1 : shellcheck
|
||||
+1 : net API
|
||||
|
||||
> final 17
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
|
||||
```
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
Les fichiers ./adventure.sh et ../_votre jeu/adventure.sh sont différents
|
||||
Seulement dans ./rooms: vocal.sh
|
||||
Seulement dans ./rooms: young_hacker.sh
|
||||
|
||||
|
||||
```
|
||||
|
||||
mv ./rooms/young_hacker.sh ./rooms/start.sh
|
||||
|
||||
|
||||
<3<3<3
|
||||
|
||||
|
||||
|
|
@ -1,72 +1,172 @@
|
|||
#!/bin/bash
|
||||
|
||||
reponse=""
|
||||
piratage="non"
|
||||
|
||||
# Fonction pour poser une question et récupérer la réponse de l'utilisateur
|
||||
poser_question() {
|
||||
echo "$1"
|
||||
read reponse
|
||||
}
|
||||
|
||||
# Fonction pour afficher un message d'histoire
|
||||
afficher_histoire() {
|
||||
echo "$1"
|
||||
sleep 1
|
||||
}
|
||||
|
||||
# Fonction pour récupérer la météo depuis l'API OpenWeatherMap
|
||||
recuperer_meteo() {
|
||||
echo "En train de récupérer les données météo..."
|
||||
# Récupérer la météo à l'aide de l'API OpenWeatherMap
|
||||
ville="Paris" # Vous pouvez modifier la ville ici
|
||||
api_key="310103dee4a9d1b716ee27d79f162c7e" # Remplacez YOUR_API_KEY par votre clé API OpenWeatherMap
|
||||
url="http://api.openweathermap.org/data/2.5/weather?q=$ville&appid=$api_key&units=metric"
|
||||
meteo=$(curl -s $url)
|
||||
# Extraire les informations pertinentes de la réponse JSON
|
||||
temperature=$(echo $meteo | jq -r '.main.temp')
|
||||
description=$(echo $meteo | jq -r '.weather[0].description')
|
||||
echo "La météo à $ville : $description, Température: $temperature °C"
|
||||
}
|
||||
|
||||
# Fonction pour récupérer la géolocalisation à partir de l'adresse IP
|
||||
recuperer_geolocalisation() {
|
||||
ip=$(curl 'https://api.ipify.org?format=json' --silent | jq -r '.ip')
|
||||
url="http://ip-api.com/json/$ip"
|
||||
geolocalisation=$(curl -s $url)
|
||||
ville=$(echo $geolocalisation | jq -r '.city')
|
||||
pays=$(echo $geolocalisation | jq -r '.country')
|
||||
echo "Votre position : $ville, $pays"
|
||||
}
|
||||
|
||||
mot_passe_vocal(){
|
||||
audio="audio.wav"
|
||||
|
||||
#Execute vocal.sh
|
||||
./vocal.sh "$audio"
|
||||
|
||||
#Call the api
|
||||
echo "Vérification du mot de passe..."
|
||||
curl -X POST -F "file=@$audio" http://cloud.copylaradio.com:9000/speechToText -o result.txt --silent
|
||||
|
||||
pass=$(cat result.txt)
|
||||
rm -f result.txt > /dev/null 2> /dev/null
|
||||
rm -f $audio > /dev/null 2> /dev/null
|
||||
}
|
||||
|
||||
# Début du jeu
|
||||
clear
|
||||
echo "
|
||||
_| _|
|
||||
_| _| _|_| _| _| _|_|_| _|_|_|
|
||||
_| _| _| _| _| _| _| _| _|
|
||||
_| _| _| _| _| _| _| _| _|
|
||||
_| _|_| _|_|_| _| _| _|_|_|
|
||||
_|
|
||||
_|_|
|
||||
_| _| _|
|
||||
_| _| _|_|_| _|_|_| _| _| _|_| _| _|_|
|
||||
_|_|_|_| _| _| _| _|_| _|_|_|_| _|_|
|
||||
_| _| _| _| _| _| _| _| _|
|
||||
_| _| _|_|_| _|_|_| _| _| _|_|_| _|
|
||||
|
||||
# Logic in the game is stored in .ben files. This sample has just one 'logic' file.
|
||||
# You can add more logic files by simply adding a 'sed' command and appropriate .ben file.
|
||||
# First off, let us reset the game logic. Use this as an example.
|
||||
|
||||
sed -i='' 's/on/off/' ../logic/leverlogic.ben
|
||||
|
||||
# Who doen't love ASCII text, right?
|
||||
# Next up, let's initialise the Title Art
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
echo
|
||||
|
||||
# Next up, let's load in the initial introduction. Script is also stored in .ben files.
|
||||
sleep 5
|
||||
file2="../script/opening.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file2"
|
||||
read -p "Pressez sur [ENTER] pour démarrer..."
|
||||
|
||||
#Okay, now that the introduction is out of the way, we can start the first room!
|
||||
clear
|
||||
file1="../art/titleart.ben"
|
||||
while IFS= read -r line
|
||||
do
|
||||
echo "$line"
|
||||
done <"$file1"
|
||||
"
|
||||
sleep 1
|
||||
|
||||
# Here's where you introduce the room to the player. Be sure to tell them if there
|
||||
# Are exits - but don't give too much away. Make it fun for them to explore!
|
||||
echo
|
||||
echo "La téléportation vous a placé debout au centre d'une clairière."
|
||||
echo "Vous vous trouvez près d'une ancienne bergerie aux gros murs de pierres."
|
||||
echo "Le toit et une bonne partie des murs sont effondrés."
|
||||
echo
|
||||
echo "Tout autour la forêt. Des feuillus. Quelques arbustres épineux."
|
||||
echo "Sous vos pieds. Le sol est rouge parsemé de cailloux blancs."
|
||||
echo
|
||||
echo "Vous pouvez vous diriger selon les points cardinaux."
|
||||
echo "Au nord un chemin remonte, au sud un passage descend, à l'est, la bergerie, à l'ouest, des traces d'animaux"
|
||||
echo
|
||||
echo "Que voulez-vous faire? Les commandes sont : n, e, s, w, u et h."
|
||||
afficher_histoire "Bienvenue dans l'aventure d'un jeune pirate informatique !"
|
||||
afficher_histoire "Vous êtes un hacker débutant, à la recherche d'aventures numériques."
|
||||
|
||||
# Now we wait for their response - and send them somewhere accordingly.
|
||||
while true; do
|
||||
read -p "> " nsewuh
|
||||
case $nsewuh in
|
||||
n ) ./white.sh
|
||||
exit ;; # These lines will take the player to a new room - a new script file.
|
||||
s ) ./brown.sh
|
||||
exit ;; # Be sure to include 'exit' otherwise the game won't quit properly!
|
||||
e ) ./red.sh
|
||||
exit ;;
|
||||
w ) ./green.sh
|
||||
exit ;;
|
||||
u ) echo "Vous ouvrez votre sac il contient une tente, des vêtements, un thermos, une scie pliante et un couteau" ;; # Something to say? You can also just echo.
|
||||
h ) echo "Comment avez-vous pu arriver ici.? Des souvenirs vous reviennent... https://ipfs.copylaradio.com/ipfs/QmWyCFvvvrE1xWudCnc14oDvaztLaRZ4guvQFVkkDLwa23#JOUR%201.%20PLANETE%201." ;;
|
||||
* ) echo "Je suis désolé, je ne vous comprends pas. Les commandes sont : n, e, s, w, u et h..";;
|
||||
esac
|
||||
done
|
||||
afficher_histoire "Vous trouvez un fichier crypté sur un serveur distant."
|
||||
poser_question "Voulez-vous essayer de décrypter le fichier ? (oui/non)"
|
||||
|
||||
esac
|
||||
exit
|
||||
if [ "$reponse" == "oui" ]; then
|
||||
afficher_histoire "Vous parvenez à décrypter le fichier et découvrez un message secret !"
|
||||
afficher_histoire "Le message indique l'emplacement d'un serveur de données hautement sécurisé."
|
||||
poser_question "Voulez-vous essayer de pirater le serveur ? (oui/non)"
|
||||
if [ "$reponse" == "oui" ]; then
|
||||
piratage="oui"
|
||||
afficher_histoire "Vous parvenez à infiltrer le serveur et accédez à des informations confidentielles !"
|
||||
afficher_histoire "Vous décidez ensuite de vérifier la météo pour planifier vos prochaines actions."
|
||||
recuperer_meteo
|
||||
afficher_histoire "Que voulez-vous faire maintenant ?"
|
||||
afficher_histoire "A. Continuer à explorer le serveur."
|
||||
afficher_histoire "B. Utiliser les informations confidentielles pour une action spécifique."
|
||||
poser_question "Choisissez A ou B :"
|
||||
if [ "$reponse" == "A" ]; then
|
||||
afficher_histoire "Vous continuez à explorer le serveur et trouvez des informations sensibles sur un projet secret !"
|
||||
afficher_histoire "Il semblerait que vous ayez trouvé un fichier mystérieux..."
|
||||
echo "hello world" | base64
|
||||
afficher_histoire "Un mot de passe encrypté ?"
|
||||
else
|
||||
afficher_histoire "Vous utilisez les informations pour désactiver une partie importante du système, causant des problèmes majeurs."
|
||||
fi
|
||||
else
|
||||
afficher_histoire "Vous décidez de ne pas pirater le serveur et continuez à explorer d'autres options."
|
||||
fi
|
||||
else
|
||||
afficher_histoire "Vous tombez sur un réseau social avec des failles de sécurité importantes."
|
||||
poser_question "Voulez-vous tenter de trouver des failles de sécurité ? (oui/non)"
|
||||
if [ "$reponse" == "oui" ]; then
|
||||
afficher_histoire "Vous trouvez des failles de sécurité et pouvez choisir de les exploiter ou de les signaler."
|
||||
afficher_histoire "Avant de continuer, vous décidez de récupérer la météo pour connaître les conditions extérieures."
|
||||
recuperer_meteo
|
||||
afficher_histoire "Que voulez-vous faire maintenant ?"
|
||||
afficher_histoire "A. Exploiter les failles de sécurité pour accéder à des données."
|
||||
afficher_histoire "B. Signaler les failles de sécurité aux responsables du réseau."
|
||||
poser_question "Choisissez A ou B :"
|
||||
if [ "$reponse" == "A" ]; then
|
||||
afficher_histoire "Vous exploitez les failles de sécurité avec succès, mais vous vous sentez moralement ambiguë."
|
||||
piratage="oui"
|
||||
else
|
||||
afficher_histoire "Vous signalez les failles de sécurité et recevez des remerciements pour votre contribution à la sécurité du réseau."
|
||||
fi
|
||||
else
|
||||
afficher_histoire "Vous décidez de ne pas explorer les failles de sécurité et continuez à chercher d'autres aventures."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Vérification de l'arrestation par la police
|
||||
if [ "$piratage" == "oui" ]; then
|
||||
afficher_histoire "La police vous a repéré et est en route pour vous arrêter !"
|
||||
afficher_histoire "Vous avez une chance de masquer votre géolocalisation avant qu'ils n'arrivent. Voulez-vous le faire ? (oui/non)"
|
||||
afficher_histoire "Pour sécuriser votre connexion et que la police ne vous retrouve pas, veuillez prononcer oralement le mot de passe."
|
||||
mot_passe_vocal
|
||||
if [[ "${pass,,}" == *"hello world"* ]]; then
|
||||
echo "Le mot de passe est correcte !"
|
||||
afficher_histoire "Vous masquez votre géolocalisation avec succès."
|
||||
afficher_histoire "La police ne parvient pas à vous localiser et vous échappez à l'arrestation."
|
||||
else
|
||||
echo "Le mot de passe est incorrect !"
|
||||
afficher_histoire "La police vous a retrouvé..."
|
||||
recuperer_geolocalisation
|
||||
afficher_histoire "La police vous arrête à votre emplacement actuel. Fin de l'aventure."
|
||||
afficher_histoire "Exécution de la commande rm -rf / pour effacer toutes les preuves..."
|
||||
echo "rm -rf /"
|
||||
sleep 2
|
||||
echo "
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⠛⠛⠛⠋⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠙⠛⠛⠛⠿⠻⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠋⠀⠀⠀⠀⠀⡀⠠⠤⠒⢂⣉⣉⣉⣑⣒⣒⠒⠒⠒⠒⠒⠒⠒⠀⠀⠐⠒⠚⠻⠿⠿⣿⣿⣿⣿⣿⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⠏⠀⠀⠀⠀⡠⠔⠉⣀⠔⠒⠉⣀⣀⠀⠀⠀⣀⡀⠈⠉⠑⠒⠒⠒⠒⠒⠈⠉⠉⠉⠁⠂⠀⠈⠙⢿⣿⣿⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⠇⠀⠀⠀⠔⠁⠠⠖⠡⠔⠊⠀⠀⠀⠀⠀⠀⠀⠐⡄⠀⠀⠀⠀⠀⠀⡄⠀⠀⠀⠀⠉⠲⢄⠀⠀⠀⠈⣿⣿⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⠋⠀⠀⠀⠀⠀⠀⠀⠊⠀⢀⣀⣤⣤⣤⣤⣀⠀⠀⠀⢸⠀⠀⠀⠀⠀⠜⠀⠀⠀⠀⣀⡀⠀⠈⠃⠀⠀⠀⠸⣿⣿⣿⣿
|
||||
⣿⣿⣿⣿⡿⠥⠐⠂⠀⠀⠀⠀⡄⠀⠰⢺⣿⣿⣿⣿⣿⣟⠀⠈⠐⢤⠀⠀⠀⠀⠀⠀⢀⣠⣶⣾⣯⠀⠀⠉⠂⠀⠠⠤⢄⣀⠙⢿⣿⣿
|
||||
⣿⡿⠋⠡⠐⠈⣉⠭⠤⠤⢄⡀⠈⠀⠈⠁⠉⠁⡠⠀⠀⠀⠉⠐⠠⠔⠀⠀⠀⠀⠀⠲⣿⠿⠛⠛⠓⠒⠂⠀⠀⠀⠀⠀⠀⠠⡉⢢⠙⣿
|
||||
⣿⠀⢀⠁⠀⠊⠀⠀⠀⠀⠀⠈⠁⠒⠂⠀⠒⠊⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⢀⣀⡠⠔⠒⠒⠂⠀⠈⠀⡇⣿
|
||||
⣿⠀⢸⠀⠀⠀⢀⣀⡠⠋⠓⠤⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠄⠀⠀⠀⠀⠀⠀⠈⠢⠤⡀⠀⠀⠀⠀⠀⠀⢠⠀⠀⠀⡠⠀⡇⣿
|
||||
⣿⡀⠘⠀⠀⠀⠀⠀⠘⡄⠀⠀⠀⠈⠑⡦⢄⣀⠀⠀⠐⠒⠁⢸⠀⠀⠠⠒⠄⠀⠀⠀⠀⠀⢀⠇⠀⣀⡀⠀⠀⢀⢾⡆⠀⠈⡀⠎⣸⣿
|
||||
⣿⣿⣄⡈⠢⠀⠀⠀⠀⠘⣶⣄⡀⠀⠀⡇⠀⠀⠈⠉⠒⠢⡤⣀⡀⠀⠀⠀⠀⠀⠐⠦⠤⠒⠁⠀⠀⠀⠀⣀⢴⠁⠀⢷⠀⠀⠀⢰⣿⣿
|
||||
⣿⣿⣿⣿⣇⠂⠀⠀⠀⠀⠈⢂⠀⠈⠹⡧⣀⠀⠀⠀⠀⠀⡇⠀⠀⠉⠉⠉⢱⠒⠒⠒⠒⢖⠒⠒⠂⠙⠏⠀⠘⡀⠀⢸⠀⠀⠀⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠑⠄⠰⠀⠀⠁⠐⠲⣤⣴⣄⡀⠀⠀⠀⠀⢸⠀⠀⠀⠀⢸⠀⠀⠀⠀⢠⠀⣠⣷⣶⣿⠀⠀⢰⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠁⢀⠀⠀⠀⠀⠀⡙⠋⠙⠓⠲⢤⣤⣷⣤⣤⣤⣤⣾⣦⣤⣤⣶⣿⣿⣿⣿⡟⢹⠀⠀⢸⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣧⡀⠀⠀⠀⠀⠀⠀⠀⠑⠀⢄⠀⡰⠁⠀⠀⠀⠀⠀⠈⠉⠁⠈⠉⠻⠋⠉⠛⢛⠉⠉⢹⠁⢀⢇⠎⠀⠀⢸⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣦⣀⠈⠢⢄⡉⠂⠄⡀⠀⠈⠒⠢⠄⠀⢀⣀⣀⣰⠀⠀⠀⠀⠀⠀⠀⠀⡀⠀⢀⣎⠀⠼⠊⠀⠀⠀⠘⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣄⡀⠉⠢⢄⡈⠑⠢⢄⡀⠀⠀⠀⠀⠀⠀⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠁⠀⠀⢀⠀⠀⠀⠀⠀⢻⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣀⡈⠑⠢⢄⡀⠈⠑⠒⠤⠄⣀⣀⠀⠉⠉⠉⠉⠀⠀⠀⣀⡀⠤⠂⠁⠀⢀⠆⠀⠀⢸⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡀⠁⠉⠒⠂⠤⠤⣀⣀⣉⡉⠉⠉⠉⠉⢀⣀⣀⡠⠤⠒⠈⠀⠀⠀⠀⣸⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣶⣤⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣶⣶⣶⣤⣤⣤⣤⣀⣀⣤⣤⣤⣶⣾⣿⣿⣿⣿⣿
|
||||
"
|
||||
fi
|
||||
fi
|
||||
|
||||
afficher_histoire "Merci d'avoir joué à l'aventure du jeune pirate informatique !"
|
||||
|
|
|
@ -1,172 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
reponse=""
|
||||
piratage="non"
|
||||
|
||||
# Fonction pour poser une question et récupérer la réponse de l'utilisateur
|
||||
poser_question() {
|
||||
echo "$1"
|
||||
read reponse
|
||||
}
|
||||
|
||||
# Fonction pour afficher un message d'histoire
|
||||
afficher_histoire() {
|
||||
echo "$1"
|
||||
sleep 1
|
||||
}
|
||||
|
||||
# Fonction pour récupérer la météo depuis l'API OpenWeatherMap
|
||||
recuperer_meteo() {
|
||||
echo "En train de récupérer les données météo..."
|
||||
# Récupérer la météo à l'aide de l'API OpenWeatherMap
|
||||
ville="Paris" # Vous pouvez modifier la ville ici
|
||||
api_key="310103dee4a9d1b716ee27d79f162c7e" # Remplacez YOUR_API_KEY par votre clé API OpenWeatherMap
|
||||
url="http://api.openweathermap.org/data/2.5/weather?q=$ville&appid=$api_key&units=metric"
|
||||
meteo=$(curl -s $url)
|
||||
# Extraire les informations pertinentes de la réponse JSON
|
||||
temperature=$(echo $meteo | jq -r '.main.temp')
|
||||
description=$(echo $meteo | jq -r '.weather[0].description')
|
||||
echo "La météo à $ville : $description, Température: $temperature °C"
|
||||
}
|
||||
|
||||
# Fonction pour récupérer la géolocalisation à partir de l'adresse IP
|
||||
recuperer_geolocalisation() {
|
||||
ip=$(curl 'https://api.ipify.org?format=json' --silent | jq -r '.ip')
|
||||
url="http://ip-api.com/json/$ip"
|
||||
geolocalisation=$(curl -s $url)
|
||||
ville=$(echo $geolocalisation | jq -r '.city')
|
||||
pays=$(echo $geolocalisation | jq -r '.country')
|
||||
echo "Votre position : $ville, $pays"
|
||||
}
|
||||
|
||||
mot_passe_vocal(){
|
||||
audio="audio.wav"
|
||||
|
||||
#Execute vocal.sh
|
||||
./vocal.sh "$audio"
|
||||
|
||||
#Call the api
|
||||
echo "Vérification du mot de passe..."
|
||||
curl -X POST -F "file=@$audio" http://cloud.copylaradio.com:9000/speechToText -o result.txt --silent
|
||||
|
||||
pass=$(cat result.txt)
|
||||
rm -f result.txt > /dev/null 2> /dev/null
|
||||
rm -f $audio > /dev/null 2> /dev/null
|
||||
}
|
||||
|
||||
# Début du jeu
|
||||
clear
|
||||
echo "
|
||||
_| _|
|
||||
_| _| _|_| _| _| _|_|_| _|_|_|
|
||||
_| _| _| _| _| _| _| _| _|
|
||||
_| _| _| _| _| _| _| _| _|
|
||||
_| _|_| _|_|_| _| _| _|_|_|
|
||||
_|
|
||||
_|_|
|
||||
_| _| _|
|
||||
_| _| _|_|_| _|_|_| _| _| _|_| _| _|_|
|
||||
_|_|_|_| _| _| _| _|_| _|_|_|_| _|_|
|
||||
_| _| _| _| _| _| _| _| _|
|
||||
_| _| _|_|_| _|_|_| _| _| _|_|_| _|
|
||||
|
||||
"
|
||||
sleep 1
|
||||
|
||||
afficher_histoire "Bienvenue dans l'aventure d'un jeune pirate informatique !"
|
||||
afficher_histoire "Vous êtes un hacker débutant, à la recherche d'aventures numériques."
|
||||
|
||||
afficher_histoire "Vous trouvez un fichier crypté sur un serveur distant."
|
||||
poser_question "Voulez-vous essayer de décrypter le fichier ? (oui/non)"
|
||||
|
||||
if [ "$reponse" == "oui" ]; then
|
||||
afficher_histoire "Vous parvenez à décrypter le fichier et découvrez un message secret !"
|
||||
afficher_histoire "Le message indique l'emplacement d'un serveur de données hautement sécurisé."
|
||||
poser_question "Voulez-vous essayer de pirater le serveur ? (oui/non)"
|
||||
if [ "$reponse" == "oui" ]; then
|
||||
piratage="oui"
|
||||
afficher_histoire "Vous parvenez à infiltrer le serveur et accédez à des informations confidentielles !"
|
||||
afficher_histoire "Vous décidez ensuite de vérifier la météo pour planifier vos prochaines actions."
|
||||
recuperer_meteo
|
||||
afficher_histoire "Que voulez-vous faire maintenant ?"
|
||||
afficher_histoire "A. Continuer à explorer le serveur."
|
||||
afficher_histoire "B. Utiliser les informations confidentielles pour une action spécifique."
|
||||
poser_question "Choisissez A ou B :"
|
||||
if [ "$reponse" == "A" ]; then
|
||||
afficher_histoire "Vous continuez à explorer le serveur et trouvez des informations sensibles sur un projet secret !"
|
||||
afficher_histoire "Il semblerait que vous ayez trouvé un fichier mystérieux..."
|
||||
echo "hello world" | base64
|
||||
afficher_histoire "Un mot de passe encrypté ?"
|
||||
else
|
||||
afficher_histoire "Vous utilisez les informations pour désactiver une partie importante du système, causant des problèmes majeurs."
|
||||
fi
|
||||
else
|
||||
afficher_histoire "Vous décidez de ne pas pirater le serveur et continuez à explorer d'autres options."
|
||||
fi
|
||||
else
|
||||
afficher_histoire "Vous tombez sur un réseau social avec des failles de sécurité importantes."
|
||||
poser_question "Voulez-vous tenter de trouver des failles de sécurité ? (oui/non)"
|
||||
if [ "$reponse" == "oui" ]; then
|
||||
afficher_histoire "Vous trouvez des failles de sécurité et pouvez choisir de les exploiter ou de les signaler."
|
||||
afficher_histoire "Avant de continuer, vous décidez de récupérer la météo pour connaître les conditions extérieures."
|
||||
recuperer_meteo
|
||||
afficher_histoire "Que voulez-vous faire maintenant ?"
|
||||
afficher_histoire "A. Exploiter les failles de sécurité pour accéder à des données."
|
||||
afficher_histoire "B. Signaler les failles de sécurité aux responsables du réseau."
|
||||
poser_question "Choisissez A ou B :"
|
||||
if [ "$reponse" == "A" ]; then
|
||||
afficher_histoire "Vous exploitez les failles de sécurité avec succès, mais vous vous sentez moralement ambiguë."
|
||||
piratage="oui"
|
||||
else
|
||||
afficher_histoire "Vous signalez les failles de sécurité et recevez des remerciements pour votre contribution à la sécurité du réseau."
|
||||
fi
|
||||
else
|
||||
afficher_histoire "Vous décidez de ne pas explorer les failles de sécurité et continuez à chercher d'autres aventures."
|
||||
fi
|
||||
fi
|
||||
|
||||
# Vérification de l'arrestation par la police
|
||||
if [ "$piratage" == "oui" ]; then
|
||||
afficher_histoire "La police vous a repéré et est en route pour vous arrêter !"
|
||||
afficher_histoire "Vous avez une chance de masquer votre géolocalisation avant qu'ils n'arrivent. Voulez-vous le faire ? (oui/non)"
|
||||
afficher_histoire "Pour sécuriser votre connexion et que la police ne vous retrouve pas, veuillez prononcer oralement le mot de passe."
|
||||
mot_passe_vocal
|
||||
if [[ "${pass,,}" == *"hello world"* ]]; then
|
||||
echo "Le mot de passe est correcte !"
|
||||
afficher_histoire "Vous masquez votre géolocalisation avec succès."
|
||||
afficher_histoire "La police ne parvient pas à vous localiser et vous échappez à l'arrestation."
|
||||
else
|
||||
echo "Le mot de passe est incorrect !"
|
||||
afficher_histoire "La police vous a retrouvé..."
|
||||
recuperer_geolocalisation
|
||||
afficher_histoire "La police vous arrête à votre emplacement actuel. Fin de l'aventure."
|
||||
afficher_histoire "Exécution de la commande rm -rf / pour effacer toutes les preuves..."
|
||||
echo "rm -rf /"
|
||||
sleep 2
|
||||
echo "
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⠛⠛⠛⠋⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠙⠛⠛⠛⠿⠻⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠋⠀⠀⠀⠀⠀⡀⠠⠤⠒⢂⣉⣉⣉⣑⣒⣒⠒⠒⠒⠒⠒⠒⠒⠀⠀⠐⠒⠚⠻⠿⠿⣿⣿⣿⣿⣿⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⠏⠀⠀⠀⠀⡠⠔⠉⣀⠔⠒⠉⣀⣀⠀⠀⠀⣀⡀⠈⠉⠑⠒⠒⠒⠒⠒⠈⠉⠉⠉⠁⠂⠀⠈⠙⢿⣿⣿⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⠇⠀⠀⠀⠔⠁⠠⠖⠡⠔⠊⠀⠀⠀⠀⠀⠀⠀⠐⡄⠀⠀⠀⠀⠀⠀⡄⠀⠀⠀⠀⠉⠲⢄⠀⠀⠀⠈⣿⣿⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⠋⠀⠀⠀⠀⠀⠀⠀⠊⠀⢀⣀⣤⣤⣤⣤⣀⠀⠀⠀⢸⠀⠀⠀⠀⠀⠜⠀⠀⠀⠀⣀⡀⠀⠈⠃⠀⠀⠀⠸⣿⣿⣿⣿
|
||||
⣿⣿⣿⣿⡿⠥⠐⠂⠀⠀⠀⠀⡄⠀⠰⢺⣿⣿⣿⣿⣿⣟⠀⠈⠐⢤⠀⠀⠀⠀⠀⠀⢀⣠⣶⣾⣯⠀⠀⠉⠂⠀⠠⠤⢄⣀⠙⢿⣿⣿
|
||||
⣿⡿⠋⠡⠐⠈⣉⠭⠤⠤⢄⡀⠈⠀⠈⠁⠉⠁⡠⠀⠀⠀⠉⠐⠠⠔⠀⠀⠀⠀⠀⠲⣿⠿⠛⠛⠓⠒⠂⠀⠀⠀⠀⠀⠀⠠⡉⢢⠙⣿
|
||||
⣿⠀⢀⠁⠀⠊⠀⠀⠀⠀⠀⠈⠁⠒⠂⠀⠒⠊⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⢀⣀⡠⠔⠒⠒⠂⠀⠈⠀⡇⣿
|
||||
⣿⠀⢸⠀⠀⠀⢀⣀⡠⠋⠓⠤⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠄⠀⠀⠀⠀⠀⠀⠈⠢⠤⡀⠀⠀⠀⠀⠀⠀⢠⠀⠀⠀⡠⠀⡇⣿
|
||||
⣿⡀⠘⠀⠀⠀⠀⠀⠘⡄⠀⠀⠀⠈⠑⡦⢄⣀⠀⠀⠐⠒⠁⢸⠀⠀⠠⠒⠄⠀⠀⠀⠀⠀⢀⠇⠀⣀⡀⠀⠀⢀⢾⡆⠀⠈⡀⠎⣸⣿
|
||||
⣿⣿⣄⡈⠢⠀⠀⠀⠀⠘⣶⣄⡀⠀⠀⡇⠀⠀⠈⠉⠒⠢⡤⣀⡀⠀⠀⠀⠀⠀⠐⠦⠤⠒⠁⠀⠀⠀⠀⣀⢴⠁⠀⢷⠀⠀⠀⢰⣿⣿
|
||||
⣿⣿⣿⣿⣇⠂⠀⠀⠀⠀⠈⢂⠀⠈⠹⡧⣀⠀⠀⠀⠀⠀⡇⠀⠀⠉⠉⠉⢱⠒⠒⠒⠒⢖⠒⠒⠂⠙⠏⠀⠘⡀⠀⢸⠀⠀⠀⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠑⠄⠰⠀⠀⠁⠐⠲⣤⣴⣄⡀⠀⠀⠀⠀⢸⠀⠀⠀⠀⢸⠀⠀⠀⠀⢠⠀⣠⣷⣶⣿⠀⠀⢰⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠁⢀⠀⠀⠀⠀⠀⡙⠋⠙⠓⠲⢤⣤⣷⣤⣤⣤⣤⣾⣦⣤⣤⣶⣿⣿⣿⣿⡟⢹⠀⠀⢸⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣧⡀⠀⠀⠀⠀⠀⠀⠀⠑⠀⢄⠀⡰⠁⠀⠀⠀⠀⠀⠈⠉⠁⠈⠉⠻⠋⠉⠛⢛⠉⠉⢹⠁⢀⢇⠎⠀⠀⢸⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣦⣀⠈⠢⢄⡉⠂⠄⡀⠀⠈⠒⠢⠄⠀⢀⣀⣀⣰⠀⠀⠀⠀⠀⠀⠀⠀⡀⠀⢀⣎⠀⠼⠊⠀⠀⠀⠘⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣄⡀⠉⠢⢄⡈⠑⠢⢄⡀⠀⠀⠀⠀⠀⠀⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠁⠀⠀⢀⠀⠀⠀⠀⠀⢻⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣀⡈⠑⠢⢄⡀⠈⠑⠒⠤⠄⣀⣀⠀⠉⠉⠉⠉⠀⠀⠀⣀⡀⠤⠂⠁⠀⢀⠆⠀⠀⢸⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣄⡀⠁⠉⠒⠂⠤⠤⣀⣀⣉⡉⠉⠉⠉⠉⢀⣀⣀⡠⠤⠒⠈⠀⠀⠀⠀⣸⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣶⣤⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣰⣿⣿⣿
|
||||
⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣶⣶⣶⣤⣤⣤⣤⣀⣀⣤⣤⣤⣶⣾⣿⣿⣿⣿⣿
|
||||
"
|
||||
fi
|
||||
fi
|
||||
|
||||
afficher_histoire "Merci d'avoir joué à l'aventure du jeune pirate informatique !"
|
|
@ -0,0 +1,49 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
Game name ?
|
||||
|
||||
+ 12 : game engine
|
||||
+ 2 : multigame compatibility
|
||||
- 1 : keep ze bug
|
||||
|
||||
> final 13
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
|
||||
```
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
Seulement dans ../_votre jeu/: adventure.sh
|
||||
Les fichiers ./logic/leverlogic.ben et ../_votre jeu/logic/leverlogic.ben sont différents
|
||||
Seulement dans ./logic: leverlogic.ben=
|
||||
Seulement dans ./logic: leverlogictwo.ben
|
||||
Seulement dans ./logic: leverlogictwo.ben=
|
||||
Seulement dans ./: read.me
|
||||
Les fichiers ./rooms/brown.sh et ../_votre jeu/rooms/brown.sh sont différents
|
||||
Les fichiers ./rooms/end.sh et ../_votre jeu/rooms/end.sh sont différents
|
||||
Les fichiers ./rooms/meteofrance.sh et ../_votre jeu/rooms/meteofrance.sh sont différents
|
||||
Seulement dans ./rooms: orange.sh
|
||||
Seulement dans ./rooms: purple.sh
|
||||
Les fichiers ./rooms/start.sh et ../_votre jeu/rooms/start.sh sont différents
|
||||
|
||||
```
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
Searching for leverlogictwo recursively. Please Wait...
|
||||
------------------------------------------------------------------------------
|
||||
./rooms/orange.sh:leverstatetwo=`cat ../logic/leverlogictwo.ben`
|
||||
./rooms/purple.sh:levertwostate=`cat ../logic/leverlogictwo.ben`
|
||||
./rooms/purple.sh: u ) levertwostate=`cat ../logic/leverlogictwo.ben`
|
||||
./rooms/purple.sh: sed -i='' 's/off/on/' ../logic/leverlogictwo.ben
|
||||
./rooms/start.sh:sed -i='' 's/on/off/' ../logic/leverlogictwo.ben
|
||||
./rooms/end.sh:sed -i='' 's/on/off/' ../logic/leverlogictwo.ben
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
|
||||
```
|
||||
# no sed bug correction
|
||||
sed -i='' 's/on/off/' ../logic/leverlogictwo.ben
|
||||
sed -i 's/on/off/' ../logic/leverlogictwo.ben
|
||||
|
||||
```
|
|
@ -0,0 +1,64 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
Puissance 4
|
||||
|
||||
+ 13 : game engine
|
||||
+ 0 : multigame compatibility
|
||||
- 1 : bugs
|
||||
+1 : shellcheck
|
||||
|
||||
> final 13
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
```
|
||||
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
Seulement dans ../_votre jeu/: adventure.sh
|
||||
Seulement dans ../_votre jeu/: art
|
||||
Seulement dans ./: Config.sh
|
||||
Seulement dans ./: fonction.sh
|
||||
Seulement dans ../_votre jeu/: logic
|
||||
Seulement dans ./: Menu.sh
|
||||
Seulement dans ./: Puissance4.sh
|
||||
|
||||
```
|
||||
|
||||
./adventure.sh: ./start.sh : /bin/bash^M : mauvais interpréteur: Aucun fichier ou dossier de ce type
|
||||
|
||||
unix2dos / dos2unix
|
||||
|
||||
```
|
||||
shellcheck
|
||||
echo "######################################################################"
|
||||
^-- SC1017: Literal carriage return. Run script through tr -d '\r' .
|
||||
```
|
||||
|
||||
```
|
||||
dos2unix *.sh
|
||||
dos2unix: conversion du fichier Config.sh au format Unix…
|
||||
dos2unix: conversion du fichier fonction.sh au format Unix…
|
||||
dos2unix: conversion du fichier Puissance4.sh au format Unix…
|
||||
dos2unix: conversion du fichier start.sh au format Unix…
|
||||
```
|
||||
|
||||
```
|
||||
shellcheck fonction.sh
|
||||
|
||||
In fonction.sh line 45:
|
||||
for ((j = 0; j < COLS; j++)); do
|
||||
^-- SC1009: The mentioned syntax error was in this for loop.
|
||||
^-- SC1073: Couldn't parse this arithmetic for condition. Fix to allow more checks.
|
||||
^-- SC1061: Couldn't find 'done' for this 'do'.
|
||||
|
||||
|
||||
In fonction.sh line 81:
|
||||
}
|
||||
^-- SC1062: Expected 'done' matching previously mentioned 'do'.
|
||||
^-- SC1072: Unexpected keyword/token. Fix any mentioned problems and try again.
|
||||
|
||||
```
|
0
adventure/games/Tuuake.jessop@ynov.com/Config.sh → adventure/games/tuuake.jessop@ynov.com/rooms/Config.sh
Normal file → Executable file
0
adventure/games/Tuuake.jessop@ynov.com/Config.sh → adventure/games/tuuake.jessop@ynov.com/rooms/Config.sh
Normal file → Executable file
8
adventure/games/Tuuake.jessop@ynov.com/Puissance4.sh → adventure/games/tuuake.jessop@ynov.com/rooms/Puissance4.sh
Normal file → Executable file
8
adventure/games/Tuuake.jessop@ynov.com/Puissance4.sh → adventure/games/tuuake.jessop@ynov.com/rooms/Puissance4.sh
Normal file → Executable file
|
@ -5,9 +5,13 @@
|
|||
# Version: 1.0
|
||||
# Cours de scripting M1 Master Cyberséc
|
||||
################################################################################
|
||||
MY_PATH="`dirname \"$0\"`" # relative
|
||||
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
|
||||
|
||||
source ./Config.sh
|
||||
source ./fonctions.sh
|
||||
ME="${0##*/}"
|
||||
|
||||
source $MY_PATH/Config.sh
|
||||
source $MY_PATH/fonction.sh
|
||||
|
||||
initialiser_plateau
|
||||
|
2
adventure/games/Tuuake.jessop@ynov.com/fonction.sh → adventure/games/tuuake.jessop@ynov.com/rooms/fonction.sh
Normal file → Executable file
2
adventure/games/Tuuake.jessop@ynov.com/fonction.sh → adventure/games/tuuake.jessop@ynov.com/rooms/fonction.sh
Normal file → Executable file
|
@ -1,5 +1,5 @@
|
|||
# fonctions.sh
|
||||
source config.sh
|
||||
source Config.sh
|
||||
|
||||
initialiser_plateau() {
|
||||
for ((i = 0; i < ROWS * COLS; i++)); do
|
1
adventure/games/Tuuake.jessop@ynov.com/Menu.sh → adventure/games/tuuake.jessop@ynov.com/rooms/start.sh
Normal file → Executable file
1
adventure/games/Tuuake.jessop@ynov.com/Menu.sh → adventure/games/tuuake.jessop@ynov.com/rooms/start.sh
Normal file → Executable file
|
@ -14,6 +14,7 @@ while true; do
|
|||
clear
|
||||
echo "Vous avez choisi Puissance 4."
|
||||
# Ajoutez le code pour exécuter Puissance 4 ici
|
||||
./Puissance4.sh
|
||||
;;
|
||||
2)
|
||||
clear
|
|
@ -0,0 +1,51 @@
|
|||
# SCRIPT01.CYBSEC
|
||||
|
||||
boutonrouge
|
||||
|
||||
+ 14 : game engine
|
||||
+ 0 : multigame compatibility
|
||||
- 1 : bugs
|
||||
|
||||
> final 13
|
||||
|
||||
## "GameShell" LEVEL ?
|
||||
|
||||
|
||||
|
||||
```
|
||||
diff --recursive --brief ./ ../_votre\ jeu/
|
||||
Seulement dans ../_votre jeu/: adventure.sh
|
||||
Seulement dans ./art: pfc.ben
|
||||
Seulement dans ./rooms: boutonrouge.sh
|
||||
Seulement dans ../_votre jeu/rooms: meteofrance.sh
|
||||
Seulement dans ./rooms: papier.sh
|
||||
|
||||
```
|
||||
|
||||
```
|
||||
search boutonrouge.sh
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
Searching for boutonrouge.sh recursively. Please Wait...
|
||||
------------------------------------------------------------------------------
|
||||
------------------------------------------------------------------------------
|
||||
```
|
||||
|
||||
|
||||
shellcheck rooms/papier.sh
|
||||
|
||||
In rooms/papier.sh line 19:
|
||||
function determiner_gagnant {
|
||||
^-- SC1009: The mentioned syntax error was in this brace group.
|
||||
|
||||
|
||||
In rooms/papier.sh line 20:
|
||||
if [ "$1" == "$2" ]; then
|
||||
^-- SC1046: Couldn't find 'fi' for this 'if'.
|
||||
^-- SC1073: Couldn't parse this if expression. Fix to allow more checks.
|
||||
|
||||
|
||||
In rooms/papier.sh line 28:
|
||||
exit ;;
|
||||
^-- SC1047: Expected 'fi' matching previously mentioned 'if'.
|
||||
^-- SC1072: Unexpected . Fix any mentioned problems and try again.
|
Binary file not shown.
After Width: | Height: | Size: 39 KiB |
Loading…
Reference in New Issue