Je travaille sur un jeu de tir pour mon projet de programmation scolaire et en utilisant la détection de collision avec des acteurs. Plus tard, j'ai réalisé que je devais utiliser une autre méthode qui peut renvoyer tous les acteurs dans une zone, mais le seul problème est qu'il retourne une liste. Je ne sais pas comment utiliser une liste et la nécessité de transformer chaque élément de la liste en un acteurTransformer une liste en acteurs (Greenfoot)
Voici la section du code:
MyWorld w = (MyWorld) getWorld();
List<Actor> a = getObjectsInRange(20, null) ;
//if it hits the soldier
if (a instanceof Soldier)
{
Soldier s = (Soldier) a;
//kill the enemy
s.die();
//add 100 score to the enemy
w.addScore(100);
//if the weapon is not laser
if (weaponId != 2)
{
//getting the world to make the bullet able to fire again
w.setBulletLive(false);
//remove the bullet
getWorld().removeObject(this);
}
}
// if it hits the enemy
else if (a instanceof EnemyWeapon)
{
EnemyWeapon g = (EnemyWeapon) a;
//intercept the missile
g.intercepted();
Qu'est-ce qu'un acteur exactement et comment est-il lié aux autres objets? Vous voulez probablement commencer par (Actor acteur: acteurs) {core here} – stevedbrown