00001 00006 /* 00007 All original material Copyright (C) 2002-2010 UFO: Alien Invasion. 00008 00009 This program is free software; you can redistribute it and/or 00010 modify it under the terms of the GNU General Public License 00011 as published by the Free Software Foundation; either version 2 00012 of the License, or (at your option) any later version. 00013 00014 This program is distributed in the hope that it will be useful, 00015 but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00017 00018 See the GNU General Public License for more details. 00019 00020 You should have received a copy of the GNU General Public License 00021 along with this program; if not, write to the Free Software 00022 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00023 00024 */ 00025 00026 #ifndef CL_SHARED_H 00027 #define CL_SHARED_H 00028 00029 #include "../common/common.h" 00030 00031 /* i18n support via gettext */ 00032 #include <libintl.h> 00033 00034 /* the used textdomain for gettext */ 00035 #define TEXT_DOMAIN "ufoai" 00036 #include <locale.h> 00037 #define _(String) gettext(String) 00038 #define gettext_noop(String) String 00039 #define N_(String) gettext_noop (String) 00040 00041 /* Macros for faster access to the inventory-container. */ 00042 #define CONTAINER(e, containerID) ((e)->i.c[(containerID)]) 00043 #define ARMOUR(e) (CONTAINER(e, csi.idArmour)) 00044 #define RIGHT(e) (CONTAINER(e, csi.idRight)) 00045 #define LEFT(e) (CONTAINER(e, csi.idLeft)) 00046 #define FLOOR(e) (CONTAINER(e, csi.idFloor)) 00047 #define HEADGEAR(e) (CONTAINER(e, csi.idHeadgear)) 00048 #define EXTENSION(e) (CONTAINER(e, csi.idExtension)) 00049 #define HOLSTER(e) (CONTAINER(e, csi.idHolster)) 00050 00051 #define INVDEF(containerID) (&csi.ids[(containerID)]) 00052 00053 typedef struct chr_list_s { 00054 character_t* chr[MAX_ACTIVETEAM]; 00055 int num; /* Number of entries */ 00056 } chrList_t; 00057 00058 typedef struct mapDef_s { 00059 /* general */ 00060 char *id; 00061 char *map; 00062 char *param; 00063 char *description; 00064 char *size; 00066 /* multiplayer */ 00067 qboolean multiplayer; 00068 int teams; 00069 linkedList_t *gameTypes; 00071 /* singleplayer */ 00072 int maxAliens; 00073 qboolean hurtAliens; 00075 linkedList_t *terrains; 00076 linkedList_t *populations; 00077 linkedList_t *cultures; 00078 qboolean storyRelated; 00079 int timesAlreadyUsed; 00080 linkedList_t *ufos; 00081 linkedList_t *aircraft; 00086 char *onwin; 00087 char *onlose; 00088 } mapDef_t; 00089 00090 mapDef_t* Com_GetMapDefinitionByID(const char *mapDefID); 00091 mapDef_t* Com_GetMapDefByIDX(int index); 00092 00093 #endif