code pour simuler une activite "vivable" au sens strictement minimum ... (reposer/manger/deplacer/mourir)
il y aura plus plus tard comme le fait de pouvoir ou non manger (presence de nouriture sur les lieux)
une deplacement reel (pour trouver la nourriture)
etc...etc...
Code : Tout sélectionner
: agej+ ( compteur d'age en jours )
agej @ 365 = if
agea @ 1+ agea ! ( prendre 1 an )
0 agej !
then
agej @ 1+ agej !
;
[...............] etc [.......]
: faim+ faim @ 1+ faim ! ;
: mange
25 0 do
faim-
loop
4 0 do
fatigue+ ( ca fatigue la digestion )
loop
." Mange "
;
: affiche-stats
stat @ 1+ stat !
stat @ 10 > if
( n'afficher les stats que tous les 10 jours )
( pour faciliter la lisibilite )
cr ." STATS : "
affiche-age
cr ." Faim : " faim @ . ." Fatigue : " fatigue @ .
0 stat !
then
;
: mort?
faim @ 150 > if
1 mort !
cr cr ." M O R T ! de faim " cr
then
fatigue @ 150 > if
1 mort !
cr cr ." M O R T ! de fatigue " cr
then
agea @ 87 > if
( donner une limite pour eviter que le facteur aleatoire )
( ne puisse donner un resultat stupide )
( comme 5000 ans par exmeple )
1 mort !
cr cr ." M O R T ! de vieillesse " cr
then
;
: simu
reset ( vider la pile et les variables )
begin
mort @ 0 = if
sedeplace
agej+ ( 1 boucle = 1 jour )
2 0 do faim+ loop
2 0 do fatigue+ loop
agej @ 10 > if
2 0 do fatigue+ loop
2 0 do faim+ loop
then
agea @ 10 > if
( affaiblissement de la condition physique )
( selon l'age )
5 0 do fatigue+ loop
4 0 do faim+ loop
2 0 do sedeplace loop
then
agea @ 30 > if
15 0 do fatigue+ loop
6 0 do faim+ loop
sedeplace
then
faim @ 20 > if
sedeplace
mange
then
fatigue @ 50 > if
sedeplace
serepose
then
affiche-stats
mort?
( est on mort et si oui de quoi )
then
mort @ 0 > until
20 stat ! affiche-stats ( age atteint et autres stats )
reset ( vider la pile )
;
Code : Tout sélectionner
Age : 10 an(s) et 365 jour(s).
Faim : 4 Fatigue : 48 Se deplace Se deplace Se deplace Se deplace Mange Se deplace Se repose Se deplace Se deplace Se deplace Se deplace Mange Se deplace Se repose Se deplace Se deplace Se [......]
Se deplace Se deplace Mange Se deplace Se repose Se deplace Se deplace Se deplace Se deplace Mange Se deplace Se repose
STATS :
Age : 11 an(s) et 11 jour(s).
Faim : 107 Fatigue : 41 Se deplace Se deplace Se deplace Se deplace Mange Se deplace Se repose Se deplace Se deplace Se deplace Se deplace Mange Se deplace Se repose Se deplace Se deplace Se deplace Se deplace Mange Se deplace Se repose Se deplace Se deplace Se deplace Se deplace Mange Se deplace Se repose
M O R T ! de faim
STATS :
Age : 11 an(s) et 15 jour(s).
Faim : 155 Fatigue : 33 ok
Il faudra ajouter des fonctions supplementaires commes
-le besoin d'excretion,
-la presence coordonnees aleatoire de nourriture
-ne pouvoir manger que si on est a cote de nouriture
-la gestion de la soif
et eventuellemt un virus ? avec son remede si on a de la chance ?
et enfin donner une representation graphique de tout ca...plustot que textuellement....