Life Simulation Game example
Here is an example of callback functions in the context of a life simulation game
class LifeSimulation {
// Public field
events = [];
// Public method
addEvent(event, callback) {
// Add the event and callback to the list of events
this.events.push({ event, callback });
}
runSimulation() {
console.log('Running simulation...');
for (const { event, callback } of this.events) {
// Check if the event has occurred
if (event()) {
// If the event has occurred, call the callback function
callback();
}
}
}
}
const sim = new LifeSimulation();
// This function will be called when the event occurs
function haveBaby() {
console.log('Congratulations, you had a baby!');
}
// Add the event and callback to the simulation
sim.addEvent(() => Math.random() < 0.1, haveBaby);
// Run the simulation
sim.runSimulation();In this example, the LifeSimulation class has a public method called addEvent that adds an event and a callback function to a list of events. The runSimulation method runs through the list of events, and calls the callback function for any event that has occurred.
The event in this example is a random event that occurs with a probability of 10%. The callback function is a function called haveBaby that logs a message to the console.
The addEvent method allows you to add any number of events and callbacks to the simulation, and the runSimulation method will call the appropriate callback function for any event that has occurred.
Using callback functions in this way allows you to create a flexible and customizable life simulation game. You can add any number of events and callbacks to the simulation, and the callback functions can perform any action that you want to happen when the event occurs.
Last updated