# Events have properties like event.target # This lets you use the same event handler for many different units. game.addDefeatGoal() soldier1 = game.spawnXY("soldier", 50, 30) soldier2 = game.spawnXY("soldier", 50, 35) soldier3 = game.spawnXY("soldier", 50, 40) munchkin1 = game.spawnXY("munchkin", 25, 30) munchkin2 = game.spawnXY("munchkin", 25, 35) munchkin3 = game.spawnXY("munchkin", 25, 40) # This function has munchkin1 attack its enemies. # Use event.target to make this function work for all units! def fightEnemies(event): while True: # Create a unit variable, and assign event.target to it fightEnemies= event.target # Now change the lines below to use unit instead of munchkin1 enemy = munchkin1.findNearestEnemy() enemy = munchkin2.findNearestEnemy() enemy = munchkin3.findNearestEnemy() enemy2 = soldier1.findNearestEnemy() enemy2 = soldier2.findNearestEnemy() enemy2 = soldier3.findNearestEnemy() if enemy: munchkin1.attack(enemy) munchkin2.attack(enemy) munchkin3.attack(enemy) if enemy2: soldier1.attack(enemy2) soldier2.attack(enemy2) soldier3.attack(enemy2) # Use game.setActionFor() to assign event handlers to many units. game.setActionFor("munchkin", "spawn", fightEnemies) game.setActionFor("soldier", "spawn", fightEnemies)