È possibile includere una funzione all'interno di un'altra? Per imparare le funzioni, sto provando a creare una sequenza di combattimento usando PHP. La sequenza sarebbe simile a questa:Posso includere una funzione all'interno di un'altra funzione?
- I dadi rotolerebbero, assegnando numeri alle variabili;
- I risultati di attacco di Hero1 sono stampati;
- I dadi rotolavano, assegnando numeri alle variabili;
- I risultati di attacco di Hereo2 sono stampati;
- I dadi rotolavano, assegnando numeri alle variabili;
- I risultati di attacco di Hero3 sono stampati.
Il lancio dei dadi sarebbe una funzione automatica. Ecco il codice:
<?
rollSim();
combatSim();
function rollSim() {
$hAttack = rand(1,20);
$mDefend = rand(1,20);
$mAttack = rand(1,20);
$hDefend = rand(1,20);
$mDamage = rand(10,25);
$hDamage = rand(1,20);
} // end rollSim
function combatSim() {
rollSim();
if ($hAttack>$mDefend) {
print "Hero hit monster for $hDamage damage.<br>";
} else if ($hAttack<=$mDefend) {
print "Hero missed monster.";
}
} // end combatSim
?>
Grazie per la risposta; questo è molto molto utile. Domanda di follow-up veloce: potrò avere la funzione "ripetizione" ogni volta? Quindi, ad esempio, avrei bisogno di un set separato di lanci di dadi per hero2 e hero3. Grazie ancora a tutti coloro che hanno risposto. –
Il corpo del secondo se in combatSim non è necessario.(So che hai copiato gli OP se, volevo solo dirlo.) – strager
@Matt, passa i risultati dei rotoli come parametri a combatSim. – strager