diff --git a/main.go b/main.go index adf4036..11f15f0 100644 --- a/main.go +++ b/main.go @@ -16,7 +16,7 @@ var Altezza int var Larghezza int var SaluteIniziale int = 50 var CostoMovIniziale int = 5 -var CostoSexIniziale int = 40 +var CostoSexIniziale int = 50 var EvoluzioneIniziale int = 0 var PremuraIniziale int = 10 var AgeMaxInizio int = 30 @@ -24,10 +24,11 @@ var Clock uint var NumClock uint var LivelloSblocco int = 1 var Possibilita int = 5 -var ValoreNutrizionale int =15 -var ValoreNutrizionaleCarcassa int =10 -var ZonaCiboX int -var ZonaCiboY int +var ValoreNutrizionale int =10 +var ValoreNutrizionaleCarcassa int =5 +var Supestiti bool=true +//var ZonaCiboX int +//var ZonaCiboY int func main() { //FUNZIONE MAIN @@ -58,13 +59,13 @@ func main() { //FUNZIONE MAIN fmt.Scan(&SaluteIniziale) fmt.Println("Inserisci il costo di uno spostamento iniziale (riduce l'energia ad ogni movimento) [default = 5]: ") fmt.Scan(&CostoMovIniziale) - fmt.Println("Inserisci il costo di una riproduzione iniziale (riduce l'energia ad ogni riproduzione) [default = 40]: ") + fmt.Println("Inserisci il costo di una riproduzione iniziale (riduce l'energia ad ogni riproduzione) [default = 50]: ") fmt.Scan(&CostoSexIniziale) fmt.Println("Inserisci i secondi di vita massimi (limita la durata della vita) [default = 30]: ") fmt.Scan(&AgeMaxInizio) - fmt.Println("Inserisci il valore nutrizionale del cibo (di quanto aumenta l'energia di chi lo mangia) [default = 15]: ") + fmt.Println("Inserisci il valore nutrizionale del cibo (di quanto aumenta l'energia di chi lo mangia) [default = 10]: ") fmt.Scan(&ValoreNutrizionale) - fmt.Println("Inserisci il valore nutrizionale delle carcasse (di quanto aumenta l'energia di chi lo mangia) [default = 10]: ") + fmt.Println("Inserisci il valore nutrizionale delle carcasse (di quanto aumenta l'energia di chi lo mangia) [default = 5]: ") fmt.Scan(&ValoreNutrizionaleCarcassa) fmt.Println("Inserisci il grado di evoluzione iniziale (se maggiore di zero migliora le prestazioni vitali)[default = 0]: ") fmt.Scan(&EvoluzioneIniziale) @@ -109,14 +110,17 @@ func main() { //FUNZIONE MAIN fmt.Println("Situazione iniziale: ") + for Supestiti{ aggiorna() - + rimasti() + } +aggiorna() } func aggiorna() { //FUNZIONE AGGIORNA: chiama la funzione muovi - for { + time.Sleep(time.Second * time.Duration(Clock)) NumClock++ for i := 0; i < Altezza; i++ { @@ -128,9 +132,8 @@ func aggiorna() { //FUNZIONE AGGIORNA: chiama la funzione muovi fmt.Printf("\nSituazione dopo %d movimenti:\n", NumClock) stampaMatrice() - giraMatrice() + //giraMatrice() - } } func muovi(h int, w int) { //FUNZIONE MUOVI: aggiorna la posizione di tutti gli oggetti in tabella // h verticale, w orizzontale @@ -258,15 +261,28 @@ func muovi(h int, w int) { //FUNZIONE MUOVI: aggiorna la posizione di tutti gli } } - if (Matrix[nuovaPosizioneH][nuovaPosizioneW].Health-(Matrix[nuovaPosizioneH][nuovaPosizioneW].Premura)*5)>Matrix[nuovaPosizioneH][nuovaPosizioneW].CostoSex { //se ha energia a sufficienza per riprodursi + if (Matrix[nuovaPosizioneH][nuovaPosizioneW].Health-(Matrix[nuovaPosizioneH][nuovaPosizioneW].Premura)*10)>Matrix[nuovaPosizioneH][nuovaPosizioneW].CostoSex { //se ha energia a sufficienza per riprodursi Matrix[h][w] = Costruttore(Matrix[nuovaPosizioneH][nuovaPosizioneW].Razza, Matrix[nuovaPosizioneH][nuovaPosizioneW].Evoluzione, Matrix[nuovaPosizioneH][nuovaPosizioneW].CostoMov, Matrix[nuovaPosizioneH][nuovaPosizioneW].CostoSex, Matrix[nuovaPosizioneH][nuovaPosizioneW].Premura, SaluteIniziale, AgeMaxInizio) } } } - - +func rimasti(){ +var i int +var j int +Supestiti=false + for i=0;i