Actor

Actor

public abstract class Actor extends java.lang.Object
Un Actor è un oggetto che esiste nel mondo di Greenfoot.
Ogni Actor ha una posizione nel mondo e una rappresentazione (cioè un’icona).
Normalmente un Actor viene istanziato ma può essere usato come superclasse per oggetti più specializzati nel mondo.
Ogni oggetto che deve apparire nel mondo deve estendere Actor.
Le sottoclassi possono definire il loro comportamento e la loro raffigurazione.
Uno degli aspetti più importanti di questa classe è il metodo act().
Questo metodo viene chiamato quando i pulsanti Azione o Esegui sono attivati nell’interfaccia di Greenfoot.
Qui il metodo è vuoto e normalmente le sottoclassi provvedono alla sua implementazione.

Actor()

public Actor()
Crea un Actor.
L’oggetto avrà un’immagine di default.

act()

public void act()
Il metodo act() verrà chiamato da Greenfoot per dare agli oggetti la possibilità di fare qualcosa.
Ad ogni passo dell’ambiente verrà invocato il metodo act() dell’oggetto, senza un ordine prefissato.
Questo metodo non fa nulla. Deve essere sovrascritto dalle sottoclassi per implentare un’azione dell’oggetto.

addedToWorld()

protected void addedToWorld(World mondo)
Il metodo viene chiamato da Greenfoot dopo che l’oggetto è stato inserito nel mondo.
Questo metodo può essere sovrascritto per implementare un comportamento specifico quando l’attore è inserito nel mondo.
L’implementazione standard è vuota.
Parametro:
mondo – Il mondo in cui è stato aggiunto il mondo.

getWorld()

public World getWorld()
Restituisce il mondo dentro il quale l’oggetto vive.
Restituisce:
il mondo.

getX()
getY()

public int getX() throws java.lang.IllegalStateException
public int getY() throws java.lang.IllegalStateException
Restituisce la coordinata x / y della posizione attuale dell’oggetto.
Il valore restituito è uno dei due indici della cella dell’oggetto nel mondo.
Restituisce:
la coordinata x / y della posizione attuale dell’oggetto.
Throws:
java.lang.IllegalStateException – Se l’attore non è stato aggiunto a un mondo.

setLocation()

public void setLocation(int x, int y)
Assegna una nuova posizione a questo oggetto.
La posizione è specificata con gli indici della cella nel mondo.
Se il metodo viene sovrascritto è importante che il metodo che sovrascrive richiami questo metodo consuper.setLocation(x,y).
Parametri:
x – Indice di posizione per l’asse x.
y – Indice di posizione per l’asse y.
Throws:
java.lang.IllegalStateException – Se l’attore non è stato aggiunto a un mondo.

getRotation()

public int getRotation()
Restituisce la rotazione corrente dell’oggetto.
Restituisce:
      la rotazione in gradi.

setRotation()

public void setRotation(int rotazione)
Imposta la rotazione dell’oggetto.
Parametro:
      rotazione – The rotation in degrees.
La rotazione è espressa in gradi, da 0 a 359. Zero gradi punta a Est.
L’angolo cresce in senso orario.

 getImage()

public GreenfootImage getImage()
Restituisce l’immagine utilizzata per rappresentare questo Actor.
L’immagine può essere modificata per cambiare la rappresentazione dell’oggetto.
Restituisce:
      l’immagine dell’oggetto.
public void setImage(java.lang.String nomeFile) throws java.lang.IllegalArgumentException
Imposta l’immagine di quest’oggetto tramite un file immagine.
Il file può essere nel formato jpeggif o png.
Il file deve trovarsi nella cartella del progetto.
Parametro:
nomeFile – Il nome del file immagine.
Throws:
java.lang.IllegalArgumentException – Se l’immagine non può essere caricata.
public void setImage(GreenfootImage immagine)
Imposta l’immagine di quest’oggetto all’immagine specifica.
Parametro:
immagine – La nuova immagine.
protected boolean intersects(Actor altro)
Check whether this object intersects with another given object.
NOTE: When rotated, it only uses the axis alligned bounds of the rotated image.
Parametro:
         altro …
Restituisce:
true if the object’s intersect, false otherwise.
protected java.util.List getIntersectingObjects(java.lang.Class classe)
protected Actor getOneIntersectingObject(java.lang.Class classe)
Restituisce tutti gli oggetti che intersecano questo oggetto.
Restituisce un oggetto che interseca questo oggetto.
Prende in considerazione l’estensione grafica degli oggetti.
NOTA: non considera la rotazione.
Parametri:
classe – La classe di oggetti che si stanno cercando (si passa null se si vogliono trovare tutti gli oggetti).
Restituisce:
una lista di oggetti / un oggetto.
protected java.util.List getNeighbours(int distanza, boolean diagonale, java.lang.Class classe)
Return the neighbours to this object within a given distance.
This method considers only logical location, ignoring extent of the image. Thus, it is most useful in scenarios where objects are contained in a single cell.
All cells that can be reached in the number of steps given in ‘distance’ from this object are considered.
Steps may be only in the four main directions, or may include diagonal steps, depending on the ‘diagonal’ parameter. Thus, a distance/diagonal specification of (1,false) will inspect four cells, (1,true) will inspect eight cells.
Parametri:
distanza – Distance (in cells) in which to look for other objects.
diagonale – If true, include diagonal steps.
classe – Class of objects to look for (passing ‘null’ will find all objects).
Restituisce:
A list of all neighbours found.
protected java.util.List getObjectsInRange(int raggio, java.lang.Class classe)
Restituisce tutti gli oggetti all’interno di un certo raggio intorno all’oggetto.
Un oggetto si trova all’interno del raggio se la distanza tra il suo centro e il centro dell’oggetto è minore o uguale diraggio.
Parametri:
raggio – Il raggio del cerchio in celle.
classe – La classe di oggetti da cercare (con null troverà tutti gli oggetti).
protected java.util.List getObjectsAtOffset(int dx, int dy, java.lang.Class classe)
Restituisce tutti gli oggetti che intersecano la posizione data (relativa alla posizione di questo oggetto).
Parametri:
dx – Coordinata x relativa alla posizione di questo oggetto.
dy – Coordinata x relativa alla posizione di questo oggetto.
classe – Classe di oggetti da cercare (con null cercherà tutti gli oggetti).
Restituisce:
Lista di oggetti alla distanza data.
Se la distanza è zero restituirà questo oggetto.

getOneObjectAtOffset

protected Actor getOneObjectAtOffset(int dx, int dy, java.lang.Class classe)
Return one object that is located at the specified cell (relative to this objects location).
Objects found can be restricted to a specific class (and its subclasses) by supplying the ‘cls’ parameter.
If more than one object of the specified class resides at that location, one of them will be chosen and returned.
Parametri:
dx – X-coordinate relative to this objects location.
dy – y-coordinate relative to this objects location.
classe – Class of objects to look for (passing ‘null’ will find all objects).
Restituisce:
An object at the given location, or null if none found.