summaryrefslogtreecommitdiffstats
path: root/src/object.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/object.h')
-rw-r--r--src/object.h132
1 files changed, 73 insertions, 59 deletions
diff --git a/src/object.h b/src/object.h
index 785c6db..c44fc5b 100644
--- a/src/object.h
+++ b/src/object.h
@@ -1,4 +1,18 @@
-// object.h
+// * This file is part of the COLOBOT source code
+// * Copyright (C) 2001-2008, Daniel ROUX & EPSITEC SA, www.epsitec.ch
+// *
+// * This program is free software: you can redistribute it and/or modify
+// * it under the terms of the GNU General Public License as published by
+// * the Free Software Foundation, either version 3 of the License, or
+// * (at your option) any later version.
+// *
+// * This program is distributed in the hope that it will be useful,
+// * but WITHOUT ANY WARRANTY; without even the implied warranty of
+// * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// * GNU General Public License for more details.
+// *
+// * You should have received a copy of the GNU General Public License
+// * along with this program. If not, see .
#ifndef _OBJECT_H_
#define _OBJECT_H_
@@ -26,8 +40,8 @@ enum D3DShadowType;
-// Le père de toutes les parties doit toujours être la partie
-// numéro zéro !
+// Le p�re de toutes les parties doit toujours �tre la partie
+// num�ro z�ro !
#define OBJECTMAXPART 40
#define MAXCRASHSPHERE 40
@@ -37,52 +51,52 @@ enum D3DShadowType;
enum ObjectType
{
- OBJECT_NULL = 0, // objet détruit
- OBJECT_FIX = 1, // décor fixe
+ OBJECT_NULL = 0, // objet d�truit
+ OBJECT_FIX = 1, // d�cor fixe
OBJECT_PORTICO = 2, // portique
OBJECT_BASE = 3, // grande base principale
OBJECT_DERRICK = 4, // derrick fixe
OBJECT_FACTORY = 5, // usine fixe
OBJECT_STATION = 6, // station de recharge
OBJECT_CONVERT = 7, // station de transformation
- OBJECT_REPAIR = 8, // réparation
- OBJECT_TOWER = 9, // tour de défense
+ OBJECT_REPAIR = 8, // r�paration
+ OBJECT_TOWER = 9, // tour de d�fense
OBJECT_NEST = 10, // nid
OBJECT_RESEARCH = 11, // centre de recherches
OBJECT_RADAR = 12, // radar
- OBJECT_ENERGY = 13, // centrale d'énergie
+ OBJECT_ENERGY = 13, // centrale d'�nergie
OBJECT_LABO = 14, // laboratoire d'analyse pour insectes
- OBJECT_NUCLEAR = 15, // centrale nucléaire
- OBJECT_START = 16, // départ
- OBJECT_END = 17, // arrivée
+ OBJECT_NUCLEAR = 15, // centrale nucl�aire
+ OBJECT_START = 16, // d�part
+ OBJECT_END = 17, // arriv�e
OBJECT_INFO = 18, // borne d'information
OBJECT_PARA = 19, // paratonnerre
OBJECT_TARGET1 = 20, // portique cible
OBJECT_TARGET2 = 21, // centre cible
OBJECT_SAFE = 22, // coffre fort
- OBJECT_HUSTON = 23, // centre de contrôle
+ OBJECT_HUSTON = 23, // centre de contr�le
OBJECT_DESTROYER = 24, // destructeur
OBJECT_FRET = 30, // transportable
OBJECT_STONE = 31, // pierre
OBJECT_URANIUM = 32, // uranium
- OBJECT_METAL = 33, // métal
+ OBJECT_METAL = 33, // m�tal
OBJECT_POWER = 34, // pile normale
OBJECT_ATOMIC = 35, // pile atomique
OBJECT_BULLET = 36, // boulet
OBJECT_BBOX = 37, // black-box
OBJECT_TNT = 38, // caisse de TNT
- OBJECT_SCRAP1 = 40, // déchet métallique
- OBJECT_SCRAP2 = 41, // déchet métallique
- OBJECT_SCRAP3 = 42, // déchet métallique
- OBJECT_SCRAP4 = 43, // déchet plastique
- OBJECT_SCRAP5 = 44, // déchet plastique
+ OBJECT_SCRAP1 = 40, // d�chet m�tallique
+ OBJECT_SCRAP2 = 41, // d�chet m�tallique
+ OBJECT_SCRAP3 = 42, // d�chet m�tallique
+ OBJECT_SCRAP4 = 43, // d�chet plastique
+ OBJECT_SCRAP5 = 44, // d�chet plastique
OBJECT_MARKPOWER = 50, // marque pile en sous-sol
OBJECT_MARKSTONE = 51, // marque minerai en sous-sol
OBJECT_MARKURANIUM = 52, // marque uranium en sous-sol
- OBJECT_MARKKEYa = 53, // marque clé en sous-sol
- OBJECT_MARKKEYb = 54, // marque clé en sous-sol
- OBJECT_MARKKEYc = 55, // marque clé en sous-sol
- OBJECT_MARKKEYd = 56, // marque clé en sous-sol
+ OBJECT_MARKKEYa = 53, // marque cl� en sous-sol
+ OBJECT_MARKKEYb = 54, // marque cl� en sous-sol
+ OBJECT_MARKKEYc = 55, // marque cl� en sous-sol
+ OBJECT_MARKKEYd = 56, // marque cl� en sous-sol
OBJECT_BOMB = 60, // bombe
OBJECT_WINFIRE = 61, // feu d'artifice
OBJECT_SHOW = 62, // montre un lieu
@@ -150,22 +164,22 @@ enum ObjectType
OBJECT_FLAGg = 262, // drapeau vert
OBJECT_FLAGy = 263, // drapeau jaune
OBJECT_FLAGv = 264, // drapeau violet
- OBJECT_KEYa = 270, // clé a
- OBJECT_KEYb = 271, // clé b
- OBJECT_KEYc = 272, // clé c
- OBJECT_KEYd = 273, // clé d
+ OBJECT_KEYa = 270, // cl� a
+ OBJECT_KEYb = 271, // cl� b
+ OBJECT_KEYc = 272, // cl� c
+ OBJECT_KEYd = 273, // cl� d
OBJECT_HUMAN = 300, // homme
OBJECT_TOTO = 301, // toto
OBJECT_TECH = 302, // technicien
- OBJECT_BARRIER0 = 400, // barrière
- OBJECT_BARRIER1 = 401, // barrière
- OBJECT_BARRIER2 = 402, // barrière
- OBJECT_BARRIER3 = 403, // barrière
- OBJECT_BARRIER4 = 404, // barrière
- OBJECT_MOTHER = 500, // mère pondeuse
+ OBJECT_BARRIER0 = 400, // barri�re
+ OBJECT_BARRIER1 = 401, // barri�re
+ OBJECT_BARRIER2 = 402, // barri�re
+ OBJECT_BARRIER3 = 403, // barri�re
+ OBJECT_BARRIER4 = 404, // barri�re
+ OBJECT_MOTHER = 500, // m�re pondeuse
OBJECT_EGG = 501, // oeuf
OBJECT_ANT = 502, // fourmi
- OBJECT_SPIDER = 503, // araignée
+ OBJECT_SPIDER = 503, // araign�e
OBJECT_BEE = 504, // abeille
OBJECT_WORM = 505, // ver
OBJECT_RUINmobilew1 = 600, // ruine 1
@@ -282,7 +296,7 @@ enum ObjectType
enum ObjectMaterial
{
- OM_METAL = 0, // métal
+ OM_METAL = 0, // m�tal
OM_PLASTIC = 1, // plastique
OM_HUMAN = 2, // cosmonaute
OM_ANIMAL = 3, // insecte
@@ -293,9 +307,9 @@ enum ObjectMaterial
typedef struct
{
char bUsed;
- int object; // numéro de l'objet dans CD3DEngine
- int parentPart; // numéro de la partie père
- int masterParti; // canal de la particule maître
+ int object; // num�ro de l'objet dans CD3DEngine
+ int parentPart; // num�ro de la partie p�re
+ int masterParti; // canal de la particule ma�tre
D3DVECTOR position;
D3DVECTOR angle;
D3DVECTOR zoom;
@@ -312,7 +326,7 @@ ObjectPart;
typedef struct
{
float wheelFront; // position X des roues avant
- float wheelBack; // position X des roues arrières
+ float wheelBack; // position X des roues arri�res
float wheelLeft; // position Z des roues gauches
float wheelRight; // position Z des roues droites
float height; // hauteur normale au-dessus du sol
@@ -672,40 +686,40 @@ protected:
ObjectType m_type; // OBJECT_*
int m_id; // identificateur unique
char m_name[50]; // nom de l'objet
- Character m_character; // caractéristiques
+ Character m_character; // caract�ristiques
int m_option; // option
- int m_partiReactor; // numéro de la particule du réacteur
- int m_shadowLight; // numéro de la lumière de l'ombre
- float m_shadowHeight; // hauteur de la lumière de l'ombre
- int m_effectLight; // numéro de la lumière des effets
- float m_effectHeight; // hauteur de la lumière des effets
- D3DVECTOR m_linVibration; // vibration linéaire
+ int m_partiReactor; // num�ro de la particule du r�acteur
+ int m_shadowLight; // num�ro de la lumi�re de l'ombre
+ float m_shadowHeight; // hauteur de la lumi�re de l'ombre
+ int m_effectLight; // num�ro de la lumi�re des effets
+ float m_effectHeight; // hauteur de la lumi�re des effets
+ D3DVECTOR m_linVibration; // vibration lin�aire
D3DVECTOR m_cirVibration; // vibration circulaire
D3DVECTOR m_inclinaison; // inclinaison
- CObject* m_power; // pile utilisée par le véhicule
- CObject* m_fret; // objet transporté
+ CObject* m_power; // pile utilis�e par le v�hicule
+ CObject* m_fret; // objet transport�
CObject* m_truck; // objet portant celui-ci
int m_truckLink; // partie
- float m_energy; // énergie contenue (si pile)
+ float m_energy; // �nergie contenue (si pile)
float m_lastEnergy;
- float m_capacity; // capacité (si pile)
+ float m_capacity; // capacit� (si pile)
float m_shield; // bouclier
float m_range; // autonomie de vol
float m_transparency; // transparence (0..1)
- int m_material; // matière (0..n)
+ int m_material; // mati�re (0..n)
float m_aTime;
float m_shotTime; // temps depuis dernier coup
- BOOL m_bVirusMode; // virus enclanché/déclanché
+ BOOL m_bVirusMode; // virus enclanch�/d�clanch�
float m_virusTime; // temps de vie du virus
float m_lastVirusParticule;
float m_lastParticule;
BOOL m_bHilite;
- BOOL m_bSelect; // objet sélectionné
- BOOL m_bSelectable; // objet sélectionnable
- BOOL m_bCheckToken; // objet avec tokens vérifiés
- BOOL m_bVisible; // objet actif mais indétectable
+ BOOL m_bSelect; // objet s�lectionn�
+ BOOL m_bSelectable; // objet s�lectionnable
+ BOOL m_bCheckToken; // objet avec tokens v�rifi�s
+ BOOL m_bVisible; // objet actif mais ind�tectable
BOOL m_bEnable; // objet mort
- BOOL m_bProxyActivate; // objet activé si proche
+ BOOL m_bProxyActivate; // objet activ� si proche
BOOL m_bGadget; // objet non indispensable
BOOL m_bLock;
BOOL m_bExplo;
@@ -713,8 +727,8 @@ protected:
BOOL m_bBurn;
BOOL m_bDead;
BOOL m_bFlat;
- BOOL m_bTrainer; // véhicule d'entraînement (sans télécommande)
- BOOL m_bToy; // jouet à clé
+ BOOL m_bTrainer; // v�hicule d'entra�nement (sans t�l�commande)
+ BOOL m_bToy; // jouet � cl�
BOOL m_bManual; // commandes manuelles (Scribbler)
BOOL m_bFixed;
BOOL m_bClip;
@@ -730,7 +744,7 @@ protected:
float m_proxyDistance;
float m_param;
- int m_crashSphereUsed; // nb de sphères utilisées
+ int m_crashSphereUsed; // nb de sph�res utilis�es
D3DVECTOR m_crashSpherePos[MAXCRASHSPHERE];
float m_crashSphereRadius[MAXCRASHSPHERE];
float m_crashSphereHardness[MAXCRASHSPHERE];