ItemObject

Esta entidad se utiliza para situar todo tipo de objetos en el escenario.
Parámetros de esta entidad:
ActorFile
Introducir aquí el nombre del fichero .act que quieras situar como objeto en el escenario.
Este fichero .act debe existir en la carpeta 'Objects' de Entidad 3D.
ObjectGroup
Podrás asociar distintos objetos a un nombre de grupo para que el jugador sólo pueda
llevar en su inventario un solo objeto de cada grupo.
Esta caja también se utiliza para asignar a un objeto la propiedad de generar luz si lo lleva el jugador.
Basta con rellenar esta caja con la palabra Luz y añadir la entidad 'LuzJugador' a
nuestro mapa, cuando el jugador recoja este objeto podrá activar y desactivar (con la teclas 'M' y 'N') una
luz que siempre le acompañará hasta que pierda el objeto.
ObjectName
Permite asignarle un nombre al objeto. Este nombre sólo lo utiliza 'Entidad 3D' para ponerlo en pantalla
mientras el jugador recoge este objeto. Si ponemos más de un objeto igual en nuestro escenario (por ejemplo dos llaves) este parámetro
sólo hay que rellenarlo en la primera entidad que hemos añadido para el primer objeto, el resto de objetos de ese tipo tomarán el mismo nombre.
Orientation
Son tres cifras (X Y Z) que determinan la orientación que presentará el objeto en el escenario.
Variando estos tres ángulos (con valores entre 0 y 365 grados) podremos hacer aparecer nuestro objeto boca abajo, tumbado, ladeado, etc..
Si ponemos 0 0 0 el objeto se presentará en la orientación inicial de diseño de este objeto 3D.

Ejes X Y Z en Entidad 3D
Origin
Son tres cifras (X Y Z) que determinan la posición de este
objeto en el escenario. Estos 3 datos normalmente no se modifican aquí y se deja que se modifiquen
según movemos este objeto (con el ratón) desde 'World Editor'.
Scale
Permite agrandar o reducir el tamaño inicial de nuestro objeto. Si ponemos 1 el objeto
aparecerá en el escenario en el tamaño inicial de diseño de este objeto 3D. Si ponemos 2 aparecerá
el doble de grande. Si ponemos 0.5 aparecerá a la mitad de su tamaño.
Rotate
Con 'True' haremos que el objeto aparezca rotando sobre si mismo.
Respawn
Con 'True' haremos que el objeto vuelva a aparecer al cabo de unos segundos de haberlo recogido el jugador.
Catch
Con 'False', aún siendo un objeto recogible, podemos hacer que este objeto en concreto no lo sea.
Brillo
Con un valor que puede variar entre 0 y 255 podemos dar más o menos brillo al modelo 3D que represente este objeto.
CommandsFile
Introduciremos el nombre del fichero de comandos .ini que contiene los comandos que deseamos procesar cuando
el jugador recoja este objeto. Este fichero .ini ha de estar en la carpeta 'Comandos' de Entidad 3D.
Inventario_objeto
Con 'True', el objeto pasará al inventario de objetos del jugador cuando éste simplemente lo toque.
Con 'False', el objeto no pasará al inventario de objetos del jugador al tocarlo, aunque desaparecerá del escenario.
¿ Para que sirve coger objetos que no se añaden al inventario ?. Pues puede
que te interese recoger ciertos objetos que no tengan repercusión en el inventario del
jugador pero quieres que cuando el jugador los recoja sólo desaparezcan y se lance un fichero de comandos
(el que se indique en el parámetro 'CommandsFile') para controlar lo que quieras
al recoger este objeto.
Ejemplos de objetos que se recogen pero que no se añaden al inventario:
- Las bolas del juego 'Pacman'.
- Hechizos que transforman o dan al instante una cualidad especial al jugador.
- Mapas que sólo pueden verse un instante.
- Antídotos contra venenos.
- Depósitos de oxígeno para que el jugador pueda seguir respirando en una cueva.
- Objetos que restan salud al jugador, tendrá que esquivarlos entre otros que le dan salud.
Tiempo_reaparicion
Una vez recogido este objeto, establece el tiempo (en segundos) que ha de transcurrir para que el objeto vuelva a reaparecer.
El parámetro 'Respawn' ha de estar a 'True' para que funcione este tiempo.
Transparencia
De 0 a 255.
Nivel de transparencia del objeto.
255 opaco, 0 completamente transparente, 128 semi-transparente.
Usos
Se usa para asignar la cantidad de usos que el jugador podrá realizar con este objeto. También se puede usar como desgaste para ciertos objetos.
En este parámetro debemos introducir la cantidad de usos máximo que tendrá
este objeto cuando entre en el inventario del jugador. Esta cifra la verá
el jugador en el interior del icono del objeto en el propio inventario de objetos.
El valor de 'Usos' puede ser de 1 a 99.
Si no quieres que un objeto tenga número de usos, simplemente deja este parámetro con valor 1.
Boton_accion
Con 'True', condiciona la recogida del objeto y el procesamiento del fichero
de comandos .INI del parámetro 'CommandsFile', a la pulsación de la tecla 'Acción' por parte del jugador.
Es importante que lo pongas a 'True' si es un objeto que debe comprar el
jugador para conseguirlo.
Con 'False', el objeto será recogido por el jugador sin necesidad de pulsar
la tecla 'Acción'. El fichero de comandos .INI que hayas indicado en el parámetro 'CommandsFile'
también se procesará sin necesidad de que el jugador use la tecla 'Acción'.
Descrip1
Primera línea de texto para describir este objeto. Máximo 28 caracteres por línea.
Las cuatro líneas de texto (Descrip1, Descrip2, Descrip3 y Descrip4) se mostrarán en el cuadro de información
del inventario del jugador cuando seleccione este objeto.
También se muestran en el panel de objeto que aparece en pantalla cuando el
jugador toca la entidad 'ItemObject' de este objeto.
Descrip2
Segunda línea de texto para describir este objeto. Máximo 28 caracteres por línea.
Descrip3
Tercera línea de texto para describir este objeto. Máximo 28 caracteres por línea.
Descrip4
Cuarta línea de texto para describir este objeto. Máximo 28 caracteres por línea.
PanelObjeto
Con 'True', cuando el jugador toque este objeto, el programa presentará el panel de objeto
conteniendo datos del objeto.
Con 'False', no se mostrará el panel de objeto cuando el jugador toque el objeto.

Panel de objeto
Precio_compra
Precio que se establece para este objeto si lo que quieres es que el jugador lo tenga que comprar para conseguirlo.
Este precio se muestra en el panel de objeto que aparece en pantalla cuando el jugador toca la entidad 'ItemObject' de este objeto.
Poner 0 si el objeto lo puede recoger el jugador sin necesidad de comprarlo.
Si has puesto un precio debes poner a 'True' el parámetro 'Boton_accion' para
que funcione la compra de este objeto por parte del jugador.
Para que el jugador pueda comprar este objeto, sólo debe colocarse cerca del objeto y seleccionar
la acción 'Comprar' del menú de acciones, si tiene suficiente dinero la compra se realizará de forma
automática, en caso contrario se informará al jugador de que no tiene suficiente dinero.
Precio_venta
Precio que se establece para este objeto en el caso que el jugador lo tenga en su inventario de objetos y desee venderlo.
Poner 0 si el objeto no tiene un precio concreto y por lo tanto el jugador no podrá venderlo usando la acción 'Vender' del menú de acciones.
Este precio aparecerá en el panel de descripción de objeto que acompaña al inventario de objetos.
Consulta el comando 'QINVVENDER' para saber como el jugador puede vender objetos.
Sombra
De 0 a 2.
Establece el tipo de sombra para este objeto.
Valor 0 sin sombra.
Valor 1 con sombra en círculo.
Valor 2 con sombra dinámica.
Si quieres ver ejemplos de estos tipos de sombras, consulta la sección de la entidad ConfigEnemigos.
Zona_influencia
Permite modificar el tamaño de una caja que define la zona de influencia de este objeto.
Esta zona influye, por ejemplo, en lo cerca que deberá estar el jugador para recoger el objeto. También tiene implicaciones a nivel de
visualización de objetos en el escenario, si la zona de influencia queda completamente fuera del campo de visión del jugador, el objeto que hayamos definido desaparecerá de
la vista del jugador.
Para ver en el escenario todas las zonas de influencia de todos los .ACT definidos con 'ItemObject', debes poner a 'True' el parámetro 'Ver_zona_ItemObjects' de la entidad
'Configuracion'.
Las imágenes que forman el panel de objeto son:
bmp \ menu \ panel_objeto.bmp
bmp \ menu \ a_panel_objeto.bmp

Usar la entidad 'ItemObject' en el modo de juego online 'Capturar la bandera' para definir la bandera:
Para este modo de juego online es necesario definir en nuestro nivel la posición de la bandera a capturar por los jugadores. Esto lo realizaremos añadiendo una
entidad 'ItemObject' de la manera habitual, pero rellenando sus parámetros como se indican a continuación:
ActorFile:
2_flag_coe.act
Boton_accion:
False
Brillo:
191
Catch:
True
CommandsFile:
Descrip1:
Descrip2:
Descrip3:
Descrip4:
Inventario_objeto:
True
ObjetcGroup:
Bandera
ObjectName:
Orientation:
0 0 0
Origin:
'la posición de la bandera en el nivel'
PanelObjeto:
False
Precio_compra:
0
Precio_venta:
0
Respawn:
False
Rotate:
True
Scale:
1
Sombra:
1
Tiempo_reaparicion:
60
Transparencia:
255
Usos:
1
Zona_influencia:
20 20 20

Usar la entidad 'ItemObject' para definir las bases de los equipos online:
Para algunos modos de juego online es necesario definir las posiciones de cada una de las bases de los equipos que participan en el juego. Esto lo realizaremos añadiendo una
entidad 'ItemObject' de la manera habitual, pero rellenando sus parámetros como se indican a continuación:
ActorFile:
3_base_equipo_a.act
(en el caso de la base del equipo Rojo (A))
ActorFile:
4_base_equipo_b.act
(en el caso de la base del equipo Verde (B))
ActorFile:
5_base_equipo_c.act
(en el caso de la base del equipo Azul claro (C))
ActorFile:
6_base_equipo_d.act
(en el caso de la base del equipo Amarillo (D))
ActorFile:
7_base_equipo_e.act
(en el caso de la base del equipo Azul oscuro (E))
ActorFile:
8_base_equipo_f.act
(en el caso de la base del equipo Magenta (F))
ActorFile:
9_base_equipo_g.act
(en el caso de la base del equipo Blanco (G))
ActorFile:
10_base_equipo_h.act
(en el caso de la base del equipo Negro (H))
Boton_accion:
False
Brillo:
190
Catch:
True
CommandsFile:
Descrip1:
Descrip2:
Descrip3:
Descrip4:
Inventario_objeto:
False
ObjetcGroup:
Base equipo A
(en el caso de la base del equipo Rojo (A))
ObjetcGroup:
Base equipo B
(en el caso de la base del equipo Verde (B))
ObjetcGroup:
Base equipo C
(en el caso de la base del equipo Azul claro (C))
ObjetcGroup:
Base equipo D
(en el caso de la base del equipo Amarillo (D))
ObjetcGroup:
Base equipo E
(en el caso de la base del equipo Azul oscuro (E))
ObjetcGroup:
Base equipo F
(en el caso de la base del equipo Magenta (F))
ObjetcGroup:
Base equipo G
(en el caso de la base del equipo Blanco (G))
ObjetcGroup:
Base equipo H
(en el caso de la base del equipo Negro (H))
ObjectName:
Orientation:
0 0 0
Origin:
'la posición de la base en el nivel'
PanelObjeto:
False
Precio_compra:
0
Precio_venta:
0
Respawn:
False
Rotate:
True
Scale:
3
Sombra:
1
Tiempo_reaparicion:
60
Transparencia:
255
Usos:
1
Zona_influencia:
20 320 20
Sólo se permiten hasta un máximo de 50 entidades 'ItemObject' por nivel.
Consulta los comandos 'QINV',
'QTIN' y 'QINVUSO', para saber como eliminar un objeto
del inventario del jugador.
Consulta la sección 'Objetos' para ver ejemplos de esta entidad.