src/hcode/btech/btechstats.h

Go to the documentation of this file.
00001 
00002 /*
00003  * $Id: btechstats.h,v 1.1.1.1 2005/01/11 21:18:03 kstevens Exp $
00004  *
00005  * Author: Markus Stenberg <fingon@iki.fi>
00006  *
00007  *  Copyright (c) 1996 Markus Stenberg
00008  *  Copyright (c) 1998-2002 Thomas Wouters
00009  *  Copyright (c) 2000-2002 Cord Awtry
00010  *  Copyright (c) 1999-2005 Kevin Stevens
00011  *       All rights reserved
00012  *
00013  * Last modified: Mon Jul 13 11:10:38 1998 fingon
00014  *
00015  */
00016 
00017 /* Function declarations / skill list for btechstats.c */
00018 
00019 #ifndef BTECHSTATS_H
00020 #define BTECHSTATS_H
00021 
00022 #include "db.h"
00023 #include "externs.h"
00024 #include "interface.h"
00025 #include "config.h"
00026 #include "powers.h"
00027 #include "btechstats_global.h"
00028 
00029 #ifdef BTECHSTATS_C
00030 char *btech_charvaluetype_names[] = {
00031     "Char_value",
00032     "Char_skill",
00033     "Char_advantage",
00034     "Char_attribute"
00035 };
00036 
00037 char *btech_charskillflag_names[] = {
00038     "Athletic",
00039     "Mental",
00040     "Physical",
00041     "Social"
00042 };
00043 
00044 #endif
00045 
00046 #define EE_NUMBER 11
00047 
00048 #ifdef BTECHSTATS
00049 
00050 /* *INDENT-OFF* */
00051 
00052 struct char_value {
00053     char *name;
00054     char type;
00055     int flag;
00056     int xpthreshold;
00057 } char_values[] = {
00058 
00059     {"XP", CHAR_VALUE, 0, 0},
00060     {"MaxXP", CHAR_VALUE, 0, 0},
00061     {"Type", CHAR_VALUE, 0, 0},
00062     {"Level", CHAR_VALUE, 0, 0},
00063     {"Package", CHAR_VALUE, 0, 0},
00064     {"Lives", CHAR_VALUE, 0, 0},
00065     {"Bruise", CHAR_VALUE, 0, 0},
00066     {"Lethal", CHAR_VALUE, 0, 0},
00067     {"Unused1", CHAR_VALUE, 0, 0},
00068 
00069 /* Advantages */
00070     {"Ambidextrous", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00071     {"Bloodname", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00072     {"Combat_Sense", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00073     {"Contact", CHAR_ADVANTAGE, CHAR_ADV_VALUE, 0},
00074     {"Dropship", CHAR_ADVANTAGE, CHAR_ADV_VALUE, 0},
00075     {"EI_Implant", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00076     {"Exceptional_Attribute", CHAR_ADVANTAGE, CHAR_ADV_EXCEPT, 0},
00077     {"Extra_Edge", CHAR_ADVANTAGE, CHAR_ADV_VALUE, 0},
00078     {"Land_Grant", CHAR_ADVANTAGE, CHAR_ADV_VALUE, 0},
00079     {"Reputation", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00080     {"Sixth_Sense", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00081     {"Title", CHAR_ADVANTAGE, CHAR_ADV_VALUE, 0},
00082     {"Toughness", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00083     {"Wealth", CHAR_ADVANTAGE, CHAR_ADV_VALUE, 0},
00084     {"Well-Connected", CHAR_ADVANTAGE, CHAR_ADV_VALUE, 0},
00085     {"Well_Equipped", CHAR_ADVANTAGE, CHAR_ADV_VALUE, 0},
00086     {"Dodge_Maneuver", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00087     {"Maneuvering_Ace", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00088     {"Melee_Specialist", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00089     {"Pain_Resistance", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00090     {"Speed_Demon", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00091     {"Tech_Aptitude", CHAR_ADVANTAGE, CHAR_ADV_BOOL, 0},
00092 
00093 /* Attributes */
00094     {"Build", CHAR_ATTRIBUTE, 0, 0},
00095     {"Reflexes", CHAR_ATTRIBUTE, 0, 0},
00096     {"Intuition", CHAR_ATTRIBUTE, 0, 0},
00097     {"Learn", CHAR_ATTRIBUTE, 0, 0},
00098     {"Charisma", CHAR_ATTRIBUTE, 0, 0},
00099 
00100 /* Skills themselves */
00101     {"Acrobatics", CHAR_SKILL, CHAR_ATHLETIC, 50},
00102     {"Administration", CHAR_SKILL, CHAR_MENTAL, 50},
00103     {"Alternate_Identity", CHAR_SKILL, CHAR_MENTAL, 50},
00104     {"Appraisal", CHAR_SKILL, CHAR_MENTAL, 50},
00105     {"Archery", CHAR_SKILL, CHAR_ATHLETIC, 50},
00106     {"Blade", CHAR_SKILL, CHAR_ATHLETIC | CAREER_MISC, 50},
00107     {"Bureaucracy", CHAR_SKILL, CHAR_SOCIAL | CAREER_MISC, 50},
00108     {"Climbing", CHAR_SKILL, CHAR_ATHLETIC, 50},
00109     {"Comm-Conventional", CHAR_SKILL, CHAR_MENTAL | CAREER_TECH, 150},
00110     {"Comm-Hyperpulse", CHAR_SKILL, CHAR_MENTAL | CAREER_TECH, 50},
00111     {"Computer", CHAR_SKILL, CHAR_MENTAL | CAREER_TECH, 50},
00112     {"Cryptography", CHAR_SKILL, CHAR_MENTAL | CAREER_TECH, 50},
00113     {"Demolitions", CHAR_SKILL, CHAR_MENTAL, 50},
00114     {"Disguise", CHAR_SKILL, CHAR_MENTAL | CAREER_RECON, 50},
00115 #ifndef BT_EXILE_MW3STATS
00116     {"Drive", CHAR_SKILL, CHAR_PHYSICAL | CAREER_CAVALRY, 3000},
00117     {"Drive-Naval", CHAR_SKILL, CHAR_PHYSICAL, 3000},
00118 #endif
00119     {"Engineering", CHAR_SKILL, CHAR_MENTAL | CAREER_TECH, 50},
00120     {"Escape_Artist", CHAR_SKILL, CHAR_PHYSICAL | CAREER_RECON, 50},
00121     {"Forgery", CHAR_SKILL, CHAR_MENTAL, 50},
00122     {"Gambling", CHAR_SKILL, CHAR_MENTAL, 50},
00123 #ifndef BT_EXILE_MW3STATS
00124     {"Gunnery-Aerospace", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_AERO, 1000},
00125     {"Gunnery-Artillery", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_ARTILLERY, 500},
00126     {"Gunnery-Battlemech", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_BMECH, 3000},
00127     {"Gunnery-BSuit", CHAR_SKILL, SK_XP | CHAR_PHYSICAL, 500},
00128     {"Gunnery-Conventional", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_CAVALRY, 3000},
00129     {"Gunnery-Spacecraft", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_DROPSHIP, 50},
00130     {"Gunnery-Spotting", CHAR_SKILL, CHAR_PHYSICAL | CAREER_ARTILLERY, 50},
00131 #else
00132     {"Gunnery-Artillery", CHAR_SKILL, SK_XP | CHAR_PHYSICAL, 500},
00133     {"Gunnery-Ballistic", CHAR_SKILL, SK_XP | CHAR_PHYSICAL, 2500},
00134     {"Gunnery-Flamer", CHAR_SKILL, SK_XP | CHAR_PHYSICAL, 500},
00135     {"Gunnery-Laser", CHAR_SKILL, SK_XP | CHAR_PHYSICAL, 2500},
00136     {"Gunnery-Missile", CHAR_SKILL, SK_XP | CHAR_PHYSICAL, 2500},
00137     {"Gunnery-Spotting", CHAR_SKILL, SK_XP | CHAR_PHYSICAL, 250},
00138 #endif
00139     {"Impersonation", CHAR_SKILL, CHAR_SOCIAL, 50},
00140     {"Interrogation", CHAR_SKILL, CHAR_SOCIAL | CAREER_RECON, 50},
00141     {"Jump_Pack", CHAR_SKILL, CHAR_ATHLETIC, 50},
00142     {"Leadership", CHAR_SKILL, CHAR_SOCIAL | CAREER_ACADMISC, 50},
00143     {"Medtech", CHAR_SKILL, CHAR_MENTAL | CAREER_MISC, 300},
00144     {"Navigation", CHAR_SKILL, CHAR_MENTAL, 25},
00145     {"Negotiation", CHAR_SKILL, CHAR_SOCIAL, 25},
00146     {"Perception", CHAR_SKILL, CHAR_MENTAL | CAREER_RECON, 150},
00147 #ifndef BT_EXILE_MW3STATS
00148     {"Piloting-Aerospace", CHAR_SKILL, CHAR_PHYSICAL | CAREER_AERO, 2500},
00149     {"Piloting-Battlemech", CHAR_SKILL, CHAR_PHYSICAL | CAREER_BMECH, 3000},
00150     {"Piloting-Battlesuit", CHAR_SKILL, CHAR_ATHLETIC, 3000},
00151     {"Piloting-BSuit", CHAR_SKILL, CHAR_PHYSICAL, 3000},
00152     {"Piloting-Spacecraft", CHAR_SKILL, CHAR_PHYSICAL | CAREER_DROPSHIP, 50},
00153 #else
00154     {"Piloting-Aerospace", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_AERO, 3000},
00155     {"Piloting-Biped", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_BMECH, 3000},
00156     {"Piloting-BSuit", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_CAVALRY, 3000},
00157     {"Piloting-Hover", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_CAVALRY, 3000},
00158     {"Piloting-Naval", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_CAVALRY, 3000},
00159     {"Piloting-Quad", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_BMECH, 3000},
00160     {"Piloting-Spacecraft", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_DROPSHIP, 3000},
00161     {"Piloting-Tracked", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_CAVALRY, 3000},
00162     {"Piloting-Wheeled", CHAR_SKILL, SK_XP | CHAR_PHYSICAL | CAREER_CAVALRY, 3000},
00163 #endif
00164     {"Protocol", CHAR_SKILL, CHAR_SOCIAL, 50},
00165     {"Quickdraw", CHAR_SKILL, CHAR_PHYSICAL, 50},
00166     {"Research", CHAR_SKILL, CHAR_MENTAL | CAREER_TECH, 100},
00167     {"Running", CHAR_SKILL, SK_XP | CHAR_ATHLETIC, 100},
00168     {"Riding", CHAR_SKILL, CHAR_ATHLETIC, 50},
00169     {"Scrounge", CHAR_SKILL, CHAR_SOCIAL | CAREER_TECH, 50},
00170     {"Security_Systems", CHAR_SKILL, CHAR_MENTAL | CAREER_RECON, 50},
00171     {"Seduction", CHAR_SKILL, CHAR_SOCIAL, 50},
00172     {"Small_Arms", CHAR_SKILL, CHAR_PHYSICAL | CAREER_MISC, 50},
00173     {"Stealth", CHAR_SKILL, CHAR_PHYSICAL | CAREER_RECON, 50},
00174     {"Strategy", CHAR_SKILL, CHAR_MENTAL | CAREER_ACADMISC, 50},
00175     {"Streetwise", CHAR_SKILL, CHAR_SOCIAL, 50},
00176     {"Support_Weapons", CHAR_SKILL, CHAR_PHYSICAL | CAREER_MISC, 50},
00177     {"Survival", CHAR_SKILL, CHAR_MENTAL, 50},
00178     {"Swimming", CHAR_SKILL, CHAR_ATHLETIC, 50},
00179     {"Tactics", CHAR_SKILL, CHAR_MENTAL | CAREER_ACADMISC, 50},
00180     {"Technician-Aerospace", CHAR_SKILL, SK_XP | CHAR_MENTAL | CAREER_TECHVEH, 50},
00181     {"Technician-Battlemech", CHAR_SKILL, SK_XP | CHAR_MENTAL | CAREER_TECHMECH, 600},
00182     {"Technician-Battlesuit", CHAR_SKILL, SK_XP | CHAR_MENTAL, 300},
00183     {"Technician-Electronics", CHAR_SKILL, SK_XP | CHAR_MENTAL | CAREER_TECH, 50},
00184     {"Technician-Mechanic", CHAR_SKILL, SK_XP | CHAR_MENTAL | CAREER_TECHVEH, 400},
00185     {"Technician-Weapons", CHAR_SKILL, SK_XP | CHAR_MENTAL | CAREER_TECH, 300},
00186     {"Technician-Spacecraft", CHAR_SKILL, SK_XP | CHAR_MENTAL, 300},
00187     {"Throwing_Weapons", CHAR_SKILL, CHAR_PHYSICAL, 50},
00188     {"Tinker", CHAR_SKILL, CHAR_MENTAL | CAREER_TECH, 50},
00189     {"Tracking", CHAR_SKILL, CHAR_MENTAL | CAREER_RECON, 50},
00190     {"Training", CHAR_SKILL, CHAR_SOCIAL, 50},
00191     {"Unarmed_Combat", CHAR_SKILL, CHAR_ATHLETIC | CAREER_MISC, 50},
00192     {"Zero-G_Operations", CHAR_SKILL, CHAR_PHYSICAL, 50},
00193 };
00194 
00195 /* *INDENT-ON* */
00196 
00197 #define NUM_CHARVALUES sizeof(char_values)/sizeof(struct char_value)
00198 
00199 char *char_values_short[NUM_CHARVALUES];
00200 
00201 /*************************************************************************/
00202 
00203 char *char_levels[] = {
00204     "Green",
00205     "Regular",
00206     "Veteran",
00207     "Elite",
00208     "Historical"
00209 };
00210 
00211 #define NUM_CHARLEVELS 5
00212 
00213 char *char_types[] = {
00214     "Inner_Sphere",
00215     "Clan_MechWarrior",
00216     "Clan_Aerospace",
00217     "Clan_Elemental",
00218     "Clan_Freebirth",
00219     "Clan_Other"
00220 };
00221 
00222 #define NUM_CHARTYPES 6
00223 
00224 char *char_packages[] = {
00225     "None",
00226     "Primary_Clan_Warrior",
00227     "Secondary_Clan_Warrior",
00228     "Secondar_Clan_Pilot",
00229     "Clan_Elemental",
00230     "Basic_Academy",
00231     "Advanced_Academy",
00232     "Basic_University",
00233     "Advanced_University"
00234 };
00235 
00236 
00237 #define NUM_CHARPACKAGES 9
00238 
00239 /* 
00240     XP is added only if the player is online AND
00241     the skill is marked SK_XP OR the last xp-gain is 30 seconds or more ago.
00242  */
00243 
00244 typedef struct {
00245     dbref dbref;
00246     unsigned char values[NUM_CHARVALUES];
00247     time_t last_use[NUM_CHARVALUES];
00248     int xp[NUM_CHARVALUES];
00249 } PSTATS;
00250 
00251 #endif
00252 
00253 #include "p.btechstats.h"
00254 
00255 #endif                          /* BTECHSTATS_H */

Generated on Mon May 28 04:25:20 2007 for BattletechMUX by  doxygen 1.4.7