Tabla de contenidos | Jerarquía de las clases
Actor
Cada actor es una instancia de un modelo: el personaje Character ).
Base : Objekt
Subclases directas :
| BarActor |
MovieActor |
Rope2DActor |
p
Propiedades del objeto:
Clase abstracta. No se puede instanciar directamente.
Puede usarse en referencias definidas por el usuario.
No necesita padre.
Descripción
Los actores suelen tener asociada una máquina de estados que define su comportamiento (clase Machine ).
Mediante ella los actores pueden autodestruirse o crear otros actores durante la acción.
Cada actor puede tener un dueño (master ), que es por defecto el actor que lo creó.
Con el master pueden establecerse algunas ligaduras importantes.
Atributos heredados
De Objekt :
_comment_ ,
parent ,
rand ,
randomize ,
children ,
child ,
front ,
back ,
childIndex ,
childByName ,
Atributos
Character character
Reference
No modificable por expresión..
Atributo no accesible desde el Objekt Inspector.
El valor no se guarda con el proyecto.
El modelo (Character ). Determina muchas de sus propiedades y funciones.
RefCharacter ref_character
Reference
No modificable por expresión..
El valor no se guarda con el proyecto.
RefCharacter que se usó para crear el actor, si así fue.
Dado que la clase RefCharacter es extensible ésta es una buena forma de personalizar actores.
bool alive
Bool
No modificable por expresión..
El valor no se guarda con el proyecto.
Indica si el actor está vivo. El actor muerto es destruido al final del frame excepto cuando existan referencias a él. En ese caso continuará existiendo hasta que pierda todas las referencias.
uint handle
Number
No modificable por expresión..
El valor no se guarda con el proyecto.
Un número único, distinto de 0, que distingue al actor. Puede usarse como identificador en ocasiones. Es posible encontrar el actor, si existe, a partir de su handle. Se pueden manipular conjuntos de handles de actores con la clase ActorSet .
Al contrario que el identificador del objeto, el handle es persistente y se conserva cuando se recupera el estado del mundo desde
un Slot .
World world
Reference
No modificable por expresión..
El valor no se guarda con el proyecto.
Mundo en el que el actor tiene su existencia. Los actores de diferentes mundos nunca pueden interaccionar.
Participant participant
Reference
El valor no se guarda con el proyecto.
Opcionalmente, se puede usar esta variable para almacenar el participante asociado a este actor en las partudas multijugador.
int z_offset
Number
El valor no se guarda con el proyecto.
Cuando el Character tiene la propiedad Auto_Z es el desplazamiento adicional a la profundidad (coordenada Z) calculada automáticamente. (Véase ActorLayer ).
int priority
Number
El valor no se guarda con el proyecto.
int label
Number
El valor no se guarda con el proyecto.
Símbolo clasificatorio del actor. Es del tipo Labels . Puede asignarse en la creación y modificarse después.
int tags
Number
El valor no se guarda con el proyecto.
Múltiples símbolos clasificatorios del actor. Son del tipo Tags . Pueden asignarse en la creación y modificarse después.
float value
Number
El valor no se guarda con el proyecto.
Valor del actor. Su interpretación depende del tipo de actor o de las necesidades del juego. Se inicializa a partir del valor
del atributo value de su Character .
int index
Number
El valor no se guarda con el proyecto.
Número que se asigna en la creación y que se puede modificar después. Puede usarse como se quiera.
Cuando el actor de crea a partir de un ActorLayer se asigna incrementalmente a partir de 0.
Si se crea mediante una CreateActorAction se calcula dependiendo del atributo indexing :
Increment
Se utiliza la expresión first_index de CreateActorAction y se incrementa cada vez que se crea un actor en la misma acción.
Expresssion
Se usa el número devuelto por la expresión index de CreateActorAction .
Master
Se usa el número de actores creados con ese master hasta el momento.
Character
Se usa el número de actores creados de este Character hasta el momento.
World
Se usa el número de actores creados en este mundo hasta el momento.
uint timer
Number
El valor no se guarda con el proyecto.
bool timer_enabled
Bool
No modificable por expresión..
El valor no se guarda con el proyecto.
bool timer_expired
Bool
No modificable por expresión..
El valor no se guarda con el proyecto.
uint timer_value
Number
No modificable por expresión..
El valor no se guarda con el proyecto.
vec3 position
Vector
El valor no se guarda con el proyecto.
Posición actual del actor en coordenadas del mundo.
float angle
Number
El valor no se guarda con el proyecto.
Ángulo del actor en el plano de la proyección de la vista.
vec2 scale
Vector
El valor no se guarda con el proyecto.
bool teleported
Bool
No modificable por expresión..
El valor no se guarda con el proyecto.
float distance (this: Actor, other: Actor)
Method
vec2 direction (this: Actor, other: Actor)
Method
float distance3d (this: Actor, other: Actor)
Method
vec3 direction3d (this: Actor, other: Actor)
Method
Actor slave (this: Actor, label: enum Labels)
Method
Actor slave (this: Actor, character: Character)
Method
void iterate_slaves (this: Actor, iter_expr: void)
Method
void kill (this: Actor)
Method
void setHook (this: Actor)
Method
void setMaster (this: Actor, new_master: Actor)
Method
void unlinkSlaves (this: Actor)
Method
uint slaves_created
Number
No modificable por expresión..
El valor no se guarda con el proyecto.
Número de actores creados con éste como master.
Actor master
Reference
No modificable por expresión..
El valor no se guarda con el proyecto.
Master de este actor. Si no tiene master vale &0.
uint master_handle
Number
No modificable por expresión..
El valor no se guarda con el proyecto.
Handle del master. Si no tiene master vale 0.
vec3 hook_position
Vector
No modificable por expresión..
El valor no se guarda con el proyecto.
Posición el hook relativa al master.
Actor detected
Reference
No modificable por expresión..
El valor no se guarda con el proyecto.
El actor detectado en la última condición cumplida de las clases:
CollideActorCondition , SensorCondition , CouplingCondition ,
ActorNearCondition o RadarActorCondition .
uint detected_handle
Number
No modificable por expresión..
El valor no se guarda con el proyecto.
Handle del actor detectado.
Actor message_from
Reference
No modificable por expresión..
El valor no se guarda con el proyecto.
Actor que envió el último mensaje recibido. Si el actor ya no existe o no se recibió ningún mensaje vale &0.
int message_code
Number
No modificable por expresión..
El valor no se guarda con el proyecto.
Código (símbolo de tipo Message ) del último mensaje recibido.
float message_arg
Number
No modificable por expresión..
El valor no se guarda con el proyecto.
Argumento del último mensaje recibido.
Data message_data
Reference
No modificable por expresión..
El valor no se guarda con el proyecto.
(C) Paco Suárez (pacosu@xitai,es). 2020.
XITAI