@Kotra25: Här är lite kommentarer på din huvudloop, se kommentarer i koden:
// Detta borde som sagt vara:
// while (Humans > 0 && Zombies > 0)
// Det råkar fungera ändå i detta fall, men du bör lära dig att använda && korrekt.
while (Humans && Zombies > 0) {
// Detta slumpar fram ett tal, men gör ingenting med det.
hitpercenthuman(randomgenerator);
// Detta slumpar fram *ett nytt* tal, så raden ovan kan tas bort om du inte av någon anledning
// bara vill använda vartannat slumptal.
if (hitpercenthuman(randomgenerator) <= 5) {
// Jag antar att du egentligen vill dra bort HumanAtack från ZombieHealth, då borde det vara:
// ZombieHealth = ZombieHealth - HumanAtack;
// Eller kortformen:
// ZombieHealth -= HumanAtack;
ZombieHealth = HumanAtack - ZombieHealth;
}
// Samma som ovan.
hitpercentzombie(randomgenerator);
if (hitpercentzombie(randomgenerator) <= 3) {
HumanHealth = ZombieAtack - HumanHealth;
}
// Detta kommer bara trigga om ZombieHealth är *exakt* 0.
// ZombieHealth är 40 och HumanAtack är 100, så ZombieHealth kommer aldrig bli exakt 0.
// Använd <= 0 istället för att även trigga när ZombieHealth blir negativ.
if (ZombieHealth == 0) {
Zombies--;
}
// Samma som ovan.
if (HumanHealth == 0) {
Humans--;
}
}
Sen vet jag inte hur du tänkt hantera "overkill". En människoattack är just nu nog för att döda 2.5 zombies, men enligt koden kan aldrig mer än en zombie i taget dö. Men det är väl något du får fundera på när du fått koden att fungera som den är nu.