Immagine
This commit is contained in:
parent
fa72b365c0
commit
5c99f837cf
2 changed files with 16 additions and 13 deletions
BIN
hackathon.png
Normal file
BIN
hackathon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 38 KiB |
29
main.go
29
main.go
|
@ -102,16 +102,19 @@ func muovi(h int, w int) { //FUNZIONE MUOVI: aggiorna la posizione di tutti gli
|
||||||
nuovaPosizioneW >= Larghezza || nuovaPosizioneW < 0 { //se esce dai bordi
|
nuovaPosizioneW >= Larghezza || nuovaPosizioneW < 0 { //se esce dai bordi
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
tmpNewElem := Matrix[nuovaPosizioneH][nuovaPosizioneW]
|
tmpNewElem := Matrix[nuovaPosizioneH][nuovaPosizioneW]
|
||||||
|
|
||||||
if tmpNewElem != nil {
|
if tmpNewElem != nil {
|
||||||
if tmpNewElem.Razza != elemento.Razza { //se non è dalla stessa razza
|
if tmpNewElem.Razza != elemento.Razza { //se non è dalla stessa razza
|
||||||
if tmpNewElem.IsFood || (tmpNewElem.Health+tmpNewElem.Evoluzione) < (elemento.Health+elemento.Evoluzione) { // se e' cibo o un insetto piu debole
|
if tmpNewElem.IsFood || (tmpNewElem.Health+tmpNewElem.Evoluzione) < (elemento.Health+elemento.Evoluzione) { // se e' cibo o un insetto piu debole
|
||||||
elemento.Health += tmpNewElem.Health //prelevamento energia essere fagocitato
|
elemento.Health += tmpNewElem.Health //prelevamento energia essere fagocitato
|
||||||
Matrix[nuovaPosizioneH][nuovaPosizioneW] = elemento //inglobamento essere perito
|
tmpNewElem = elemento //inglobamento essere perito
|
||||||
elemento.Health -= elemento.CostoMov
|
elemento = nil
|
||||||
} else {
|
tmpNewElem.Health -= tmpNewElem.CostoMov
|
||||||
Matrix[h][w] = nil //perdita nel combattimento per la sopravvivenza
|
} else { //perdita nel combattimento per la sopravvivenza
|
||||||
tmpNewElem.Health += elemento.Health //il nemico prende l'energia
|
tmpNewElem.Health += elemento.Health //il nemico prende l'energia
|
||||||
|
elemento = nil
|
||||||
}
|
}
|
||||||
} else { //se sono amici
|
} else { //se sono amici
|
||||||
if nuovaPosizioneH == h && nuovaPosizioneW == w { //se cerca di mangiare il suo amico
|
if nuovaPosizioneH == h && nuovaPosizioneW == w { //se cerca di mangiare il suo amico
|
||||||
|
@ -119,20 +122,20 @@ func muovi(h int, w int) { //FUNZIONE MUOVI: aggiorna la posizione di tutti gli
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else { //si muove sulla nuova casella
|
} else { //si muove sulla nuova casella
|
||||||
Matrix[nuovaPosizioneH][nuovaPosizioneW] = Matrix[h][w]
|
tmpNewElem = elemento
|
||||||
Matrix[h][w] = nil
|
elemento = nil
|
||||||
Matrix[nuovaPosizioneH][nuovaPosizioneW].Health -= Matrix[nuovaPosizioneH][nuovaPosizioneW].CostoMov
|
tmpNewElem.Health -= tmpNewElem.CostoMov
|
||||||
|
|
||||||
if rand.Intn(10) == 0 { //se ha fortuna (o sfortuna) si evolve
|
/*if rand.Intn(10) == 0 { //se ha fortuna (o sfortuna) si evolve
|
||||||
if rand.Intn(3) == 0 {
|
if rand.Intn(3) == 0 {
|
||||||
Matrix[nuovaPosizioneH][nuovaPosizioneW].Evoluzione--
|
tmpNewElem.Evoluzione--
|
||||||
} else {
|
} else {
|
||||||
Matrix[nuovaPosizioneH][nuovaPosizioneW].Evoluzione++
|
tmpNewElem.Evoluzione++
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}*/
|
||||||
|
|
||||||
if (Matrix[nuovaPosizioneH][nuovaPosizioneW].Health-Matrix[nuovaPosizioneH][nuovaPosizioneW].Premura)>Matrix[nuovaPosizioneH][nuovaPosizioneW].CostoSex { //se ha energia a sufficienza per riprodursi
|
if (tmpNewElem.Health-tmpNewElem.Premura)>tmpNewElem.CostoSex { //se ha energia a sufficienza per riprodursi
|
||||||
//Matrix[h][w] = Costruttore(elemento.Razza, elemento.Evoluzione, elemento.CostoMov, elemento.CostoSex, elemento.Premura, SaluteIniziale)
|
//tmpNewElem = Costruttore(elemento.Razza, elemento.Evoluzione, elemento.CostoMov, elemento.CostoSex, elemento.Premura, SaluteIniziale)
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Reference in a new issue