mirror of
https://github.com/ReactionQuake3/reaction.git
synced 2024-11-22 20:31:11 +00:00
Adding helmet
This commit is contained in:
parent
4f2ae27006
commit
229aa6fe8c
15 changed files with 195 additions and 31 deletions
Binary file not shown.
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.69 2002/10/30 20:04:33 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.68 2002/08/25 07:09:00 niceass
|
||||
// added "life" setting to func_pressure
|
||||
//
|
||||
|
@ -217,7 +220,8 @@ static void CG_UseItem(centity_t * cent)
|
|||
trap_S_StartSound(NULL, es->number, CHAN_BODY, cgs.media.useNothingSound);
|
||||
break;
|
||||
|
||||
case HI_TELEPORTER:
|
||||
// JBravo: getting rid of NON RQ3 items.
|
||||
/* case HI_TELEPORTER:
|
||||
break;
|
||||
|
||||
case HI_MEDKIT:
|
||||
|
@ -227,7 +231,7 @@ static void CG_UseItem(centity_t * cent)
|
|||
ci->medkitUsageTime = cg.time;
|
||||
}
|
||||
trap_S_StartSound(NULL, es->number, CHAN_BODY, cgs.media.medkitSound);
|
||||
break;
|
||||
break; */
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.129 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.128 2002/10/21 21:01:09 niceass
|
||||
// no ref ready code
|
||||
//
|
||||
|
@ -1246,6 +1249,8 @@ typedef struct {
|
|||
qhandle_t rq3_silencerModel;
|
||||
qhandle_t rq3_laserModel;
|
||||
qhandle_t rq3_slippersModel;
|
||||
// JBravo: the helmet
|
||||
qhandle_t rq3_helmetModel;
|
||||
|
||||
// weapon effect shaders
|
||||
qhandle_t railExplosionShader;
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.113 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.112 2002/10/20 21:24:32 blaze
|
||||
// Added cg_rq3_gunname cvars. These can be used to choose weapon replacements. You will need 3 icons that I will upload to the ftp. These should go in the next pk3
|
||||
//
|
||||
|
@ -1874,6 +1877,8 @@ static void CG_RegisterGraphics(void)
|
|||
cgs.media.rq3_silencerModel = trap_R_RegisterModel("models/items/silencer.md3");
|
||||
cgs.media.rq3_laserModel = trap_R_RegisterModel("models/items/laser.md3");
|
||||
cgs.media.rq3_slippersModel = trap_R_RegisterModel("models/items/slippers.md3");
|
||||
// JBravo: adding the helmet
|
||||
cgs.media.rq3_helmetModel = trap_R_RegisterModel("models/items/helmet/helmet.md3");
|
||||
|
||||
cgs.media.smoke2 = trap_R_RegisterModel("models/weapons2/shells/s_shell.md3");
|
||||
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.46 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.45 2002/10/26 00:37:18 jbravo
|
||||
// New multiple item code and added PB support to the UI
|
||||
//
|
||||
|
@ -652,6 +655,21 @@ Only in CTF games
|
|||
"",
|
||||
""}
|
||||
,
|
||||
// JBravo: adding Helmet
|
||||
{
|
||||
"item_helmet",
|
||||
"sound/items/slippers.wav",
|
||||
{"models/items/helmet/helmet.md3",
|
||||
0, 0, 0}
|
||||
,
|
||||
"icons/iconi_helmet",
|
||||
RQ3_HELMET_NAME,
|
||||
0,
|
||||
IT_HOLDABLE,
|
||||
HI_HELMET,
|
||||
"",
|
||||
""}
|
||||
,
|
||||
// end of list marker
|
||||
{NULL}
|
||||
};
|
||||
|
@ -1490,6 +1508,8 @@ itemAlias_t itemAliases[] = {
|
|||
{RQ3_LASER_NAME, HI_LASER},
|
||||
{"laser", HI_LASER},
|
||||
{RQ3_SILENCER_NAME, HI_SILENCER},
|
||||
{RQ3_HELMET_NAME, HI_HELMET},
|
||||
{"helmet", HI_HELMET},
|
||||
{NULL, HI_KEVLAR}
|
||||
};
|
||||
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.98 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.97 2002/09/29 16:06:44 jbravo
|
||||
// Work done at the HPWorld expo
|
||||
//
|
||||
|
@ -358,6 +361,7 @@
|
|||
#define RQ3_BANDOLIER_NAME "Bandolier"
|
||||
#define RQ3_KEVLAR_NAME "Kevlar Vest"
|
||||
#define RQ3_LASER_NAME "Lasersight"
|
||||
#define RQ3_HELMET_NAME "Kevlar Helmet"
|
||||
|
||||
enum {
|
||||
LIGHTS,
|
||||
|
@ -829,16 +833,18 @@ typedef enum {
|
|||
HI_NONE,
|
||||
|
||||
//TODO: remove the baseQ3 ones
|
||||
HI_TELEPORTER,
|
||||
// JBravo: dat wuz an easy one :)
|
||||
/* HI_TELEPORTER,
|
||||
HI_MEDKIT,
|
||||
HI_KAMIKAZE,
|
||||
HI_PORTAL,
|
||||
HI_INVULNERABILITY,
|
||||
HI_INVULNERABILITY, */
|
||||
HI_KEVLAR,
|
||||
HI_LASER,
|
||||
HI_SILENCER,
|
||||
HI_BANDOLIER,
|
||||
HI_SLIPPERS,
|
||||
HI_HELMET,
|
||||
|
||||
HI_NUM_HOLDABLE
|
||||
} holdable_t;
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.93 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.92 2002/10/26 22:03:43 jbravo
|
||||
// Made TeamDM work RQ3 style.
|
||||
//
|
||||
|
@ -988,12 +991,19 @@ void ThrowItem(gentity_t * ent)
|
|||
xr_drop->count = -1;
|
||||
client->ps.stats[STAT_HOLDABLE_ITEM] &= ~(1 << HI_SILENCER);
|
||||
client->uniqueItems--;
|
||||
} else if (client->ps.stats[STAT_HOLDABLE_ITEM] & (1 << HI_HELMET)) {
|
||||
xr_item = BG_FindItemForHoldable(HI_HELMET);
|
||||
xr_drop = dropWeapon(ent, xr_item, 0, FL_DROPPED_ITEM | FL_THROWN_ITEM);
|
||||
xr_drop->count = -1;
|
||||
client->ps.stats[STAT_HOLDABLE_ITEM] &= ~(1 << HI_HELMET);
|
||||
client->uniqueItems--;
|
||||
} else if (client->ps.stats[STAT_HOLDABLE_ITEM] & (1 << HI_LASER)) {
|
||||
xr_item = BG_FindItemForHoldable(HI_LASER);
|
||||
xr_drop = dropWeapon(ent, xr_item, 0, FL_DROPPED_ITEM | FL_THROWN_ITEM);
|
||||
xr_drop->count = -1;
|
||||
client->ps.stats[STAT_HOLDABLE_ITEM] &= ~(1 << HI_LASER);
|
||||
client->uniqueItems--;
|
||||
// JBravo: adding the helmet :)
|
||||
} else if (client->ps.stats[STAT_HOLDABLE_ITEM] & (1 << HI_KEVLAR)) {
|
||||
xr_item = BG_FindItemForHoldable(HI_KEVLAR);
|
||||
xr_drop = dropWeapon(ent, xr_item, 0, FL_DROPPED_ITEM | FL_THROWN_ITEM);
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.175 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.174 2002/10/26 22:03:43 jbravo
|
||||
// Made TeamDM work RQ3 style.
|
||||
//
|
||||
|
@ -738,7 +741,12 @@ void Cmd_Give_f(gentity_t * ent)
|
|||
ent->client->ps.stats[STAT_HOLDABLE_ITEM] |= (1 << HI_SILENCER);
|
||||
ent->client->ps.stats[STAT_HOLDABLE_ITEM] |= (1 << HI_BANDOLIER);
|
||||
ent->client->ps.stats[STAT_HOLDABLE_ITEM] |= (1 << HI_SLIPPERS);
|
||||
ent->client->uniqueItems = 5;
|
||||
if (g_RQ3_haveHelmet.integer) {
|
||||
ent->client->ps.stats[STAT_HOLDABLE_ITEM] |= (1 << HI_HELMET);
|
||||
ent->client->uniqueItems = 6;
|
||||
} else {
|
||||
ent->client->uniqueItems = 5;
|
||||
}
|
||||
}
|
||||
|
||||
if (give_all || Q_stricmp(name, "ammo") == 0) {
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.131 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.130 2002/10/26 22:03:43 jbravo
|
||||
// Made TeamDM work RQ3 style.
|
||||
//
|
||||
|
@ -2193,29 +2196,55 @@ void G_Damage(gentity_t * targ, gentity_t * inflictor, gentity_t * attacker,
|
|||
case LOCATION_HEAD:
|
||||
if (attacker->client && ((g_gametype.integer == GT_TEAMPLAY && level.team_round_going) || g_gametype.integer != GT_TEAMPLAY))
|
||||
attacker->client->pers.records[REC_HEADSHOTS]++;
|
||||
//save headshot time for player_die
|
||||
targ->client->headShotTime = level.time;
|
||||
|
||||
//Elder: reusing line so we don't have to declare more variables
|
||||
line[0] = line[1] = 0;
|
||||
line[2] = 20;
|
||||
trap_SendServerCommand(attacker - g_entities,
|
||||
va("print \"You hit %s^7 in the head.\n\"",
|
||||
targ->client->pers.netname));
|
||||
trap_SendServerCommand(targ - g_entities, va("print \"Head Damage.\n\""));
|
||||
|
||||
//Setup headshot spray and sound
|
||||
//Only do if not knife or SSG -- SSG has its own trail of blood
|
||||
if (mod != MOD_SNIPER && mod != MOD_KNIFE && mod != MOD_KNIFE_THROWN) {
|
||||
VectorAdd(targ->s.pos.trBase, line, line);
|
||||
tent = G_TempEntity(line, EV_HEADSHOT);
|
||||
// JBravo: helmet stuff
|
||||
if ((targ->client->ps.stats[STAT_HOLDABLE_ITEM] & (1 << HI_HELMET)) &&
|
||||
mod != MOD_SNIPER && mod != MOD_KNIFE && mod != MOD_KNIFE_THROWN) {
|
||||
trap_SendServerCommand(attacker - g_entities,
|
||||
va("print \"%s has a Kevlar Helmet - AIM FOR THE BODY!\n\"",
|
||||
targ->client->pers.netname));
|
||||
trap_SendServerCommand(targ - g_entities,
|
||||
va("print \"Kevlar Helmet absorbed a part of %s's shot\n\"",
|
||||
attacker->client->pers.netname));
|
||||
tent = G_TempEntity(targ->s.pos.trBase, EV_BULLET_HIT_KEVLAR);
|
||||
tent->s.eventParm = DirToByte(dir);
|
||||
tent->s.otherEntityNum = targ->s.clientNum;
|
||||
take = (take / 2);
|
||||
targ->client->kevlarHit = qtrue;
|
||||
instant_dam = 1;
|
||||
bleeding = 0;
|
||||
} else if ((targ->client->ps.stats[STAT_HOLDABLE_ITEM] & (1 << HI_HELMET)) &&
|
||||
mod == MOD_SNIPER) {
|
||||
trap_SendServerCommand(attacker - g_entities,
|
||||
va("print \"%s has a Kevlar Helmet, too bad you have AP rounds...\n\"",
|
||||
targ->client->pers.netname));
|
||||
trap_SendServerCommand(targ - g_entities,
|
||||
va("print \"Kevlar Helmet absorbed some of %s's AP sniper round\n\"",
|
||||
attacker->client->pers.netname));
|
||||
take = (take * 0.325);
|
||||
instant_dam = 1;
|
||||
bleeding = 1;
|
||||
} else {
|
||||
//save headshot time for player_die
|
||||
targ->client->headShotTime = level.time;
|
||||
|
||||
line[0] = line[1] = 0;
|
||||
line[2] = 20;
|
||||
trap_SendServerCommand(attacker - g_entities,
|
||||
va("print \"You hit %s^7 in the head.\n\"",
|
||||
targ->client->pers.netname));
|
||||
trap_SendServerCommand(targ - g_entities, va("print \"Head Damage.\n\""));
|
||||
|
||||
//Setup headshot spray and sound
|
||||
//Only do if not knife or SSG -- SSG has its own trail of blood
|
||||
if (mod != MOD_SNIPER && mod != MOD_KNIFE && mod != MOD_KNIFE_THROWN) {
|
||||
VectorAdd(targ->s.pos.trBase, line, line);
|
||||
tent = G_TempEntity(line, EV_HEADSHOT);
|
||||
tent->s.eventParm = DirToByte(dir);
|
||||
tent->s.otherEntityNum = targ->s.clientNum;
|
||||
}
|
||||
// JBravo: order is important
|
||||
take = (take * 1.8) + 1;
|
||||
break;
|
||||
}
|
||||
// JBravo: order is important
|
||||
take = (take * 1.8) + 1;
|
||||
//take *= 1.8 + 1;
|
||||
break;
|
||||
case LOCATION_CHEST:
|
||||
if (attacker->client && ((g_gametype.integer == GT_TEAMPLAY && level.team_round_going) || g_gametype.integer != GT_TEAMPLAY))
|
||||
attacker->client->pers.records[REC_CHESTSHOTS]++;
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.54 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.53 2002/10/29 01:34:52 jbravo
|
||||
// Added g_RQ3_tdmMode (0 = TP style, 1 = DM style) including UI support.
|
||||
//
|
||||
|
@ -1094,6 +1097,9 @@ void ClearRegisteredItems(void)
|
|||
RegisterItem(BG_FindItemForHoldable(HI_SILENCER));
|
||||
RegisterItem(BG_FindItemForHoldable(HI_BANDOLIER));
|
||||
RegisterItem(BG_FindItemForHoldable(HI_LASER));
|
||||
// JBravo: adding the helmet
|
||||
if (g_RQ3_haveHelmet.integer)
|
||||
RegisterItem(BG_FindItemForHoldable(HI_HELMET));
|
||||
//Makro - all weapons should be loaded in teamplay
|
||||
//JBravo: and CTF
|
||||
if (g_gametype.integer == GT_TEAMPLAY || g_gametype.integer == GT_CTF || g_gametype.integer == GT_TEAM) {
|
||||
|
@ -1466,6 +1472,7 @@ void RQ3_DroppedItemThink(gentity_t * ent)
|
|||
case HI_SILENCER:
|
||||
case HI_BANDOLIER:
|
||||
case HI_SLIPPERS:
|
||||
case HI_HELMET:
|
||||
RQ3_ResetItem(ent->item->giTag);
|
||||
G_FreeEntity(ent);
|
||||
break;
|
||||
|
@ -1505,6 +1512,7 @@ void RQ3_ResetItem(int itemTag)
|
|||
case HI_SILENCER:
|
||||
case HI_BANDOLIER:
|
||||
case HI_SLIPPERS:
|
||||
case HI_HELMET:
|
||||
//Free entity and reset position in unique item array
|
||||
//level.uniqueItemsUsed &= ~(1 << ent->item->giTag);
|
||||
rq3_item = BG_FindItemForHoldable(itemTag);
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.130 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.129 2002/10/29 01:34:52 jbravo
|
||||
// Added g_RQ3_tdmMode (0 = TP style, 1 = DM style) including UI support.
|
||||
//
|
||||
|
@ -1391,6 +1394,7 @@ extern vmCvar_t g_RQ3_ctb_respawndelay; // JBravo: delay in seconds for ctb resp
|
|||
extern vmCvar_t g_RQ3_allWeapons; // JBravo: if set, TP/DM players get all the weapons
|
||||
extern vmCvar_t g_RQ3_allItems; // JBravo: if set, TP/DM players get all the items
|
||||
extern vmCvar_t g_RQ3_tdmMode; // JBravo: Which TDM mode do we want?
|
||||
extern vmCvar_t g_RQ3_haveHelmet; // JBravo: Is the helmet active on the server ?
|
||||
|
||||
//Slicer: Team Status Cvars for MM
|
||||
//extern vmCvar_t g_RQ3_team1ready;
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.126 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.125 2002/10/29 01:34:52 jbravo
|
||||
// Added g_RQ3_tdmMode (0 = TP style, 1 = DM style) including UI support.
|
||||
//
|
||||
|
@ -461,6 +464,7 @@ vmCvar_t g_RQ3_ctb_respawndelay;
|
|||
vmCvar_t g_RQ3_allWeapons;
|
||||
vmCvar_t g_RQ3_allItems;
|
||||
vmCvar_t g_RQ3_tdmMode;
|
||||
vmCvar_t g_RQ3_haveHelmet;
|
||||
|
||||
// aasimon: Ref System for MM
|
||||
vmCvar_t g_RQ3_AllowRef;
|
||||
|
@ -605,6 +609,7 @@ static cvarTable_t gameCvarTable[] = {
|
|||
{&g_RQ3_allWeapons, "g_RQ3_allWeapons", "0", CVAR_ARCHIVE, 0, qtrue},
|
||||
{&g_RQ3_allItems, "g_RQ3_allItems", "0", CVAR_ARCHIVE, 0, qtrue},
|
||||
{&g_RQ3_tdmMode, "g_RQ3_tdmMode", "0", CVAR_SERVERINFO | CVAR_LATCH | CVAR_SYSTEMINFO, 0, qtrue},
|
||||
{&g_RQ3_haveHelmet, "g_RQ3_haveHelmet", "0", CVAR_ARCHIVE, 0, qtrue},
|
||||
{&g_RQ3_idleaction, "g_RQ3_idleaction", "0", CVAR_ARCHIVE, 0, qtrue},
|
||||
{&g_RQ3_weaponban, "g_RQ3_weaponban", "511", CVAR_ARCHIVE, 0, qtrue},
|
||||
//Blaze: let cvar.cfg be set by the server admins
|
||||
|
@ -2607,6 +2612,13 @@ void RQ3_StartUniqueItems(void)
|
|||
rq3_temp = (gentity_t *) SelectRandomDeathmatchSpawnPoint();
|
||||
Drop_Item(rq3_temp, rq3_item, angle);
|
||||
angle += 30;
|
||||
|
||||
if (g_RQ3_haveHelmet.integer) {
|
||||
rq3_item = BG_FindItemForHoldable(HI_HELMET);
|
||||
rq3_temp = (gentity_t *) SelectRandomDeathmatchSpawnPoint();
|
||||
Drop_Item(rq3_temp, rq3_item, angle);
|
||||
angle += 30;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.52 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.51 2002/08/25 23:19:31 niceass
|
||||
// possible fix for ghost door problem
|
||||
//
|
||||
|
@ -1153,6 +1156,7 @@ void Blocked_Door(gentity_t * ent, gentity_t * other)
|
|||
case HI_KEVLAR:
|
||||
case HI_SILENCER:
|
||||
case HI_SLIPPERS:
|
||||
case HI_HELMET:
|
||||
RQ3_DroppedItemThink(other);
|
||||
return;
|
||||
break;
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.144 2002/10/30 20:04:34 jbravo
|
||||
// Adding helmet
|
||||
//
|
||||
// Revision 1.143 2002/10/29 01:34:52 jbravo
|
||||
// Added g_RQ3_tdmMode (0 = TP style, 1 = DM style) including UI support.
|
||||
//
|
||||
|
@ -748,6 +751,7 @@ void CleanLevel()
|
|||
case HI_SILENCER:
|
||||
case HI_BANDOLIER:
|
||||
case HI_SLIPPERS:
|
||||
case HI_HELMET:
|
||||
G_FreeEntity(ent);
|
||||
break;
|
||||
default:
|
||||
|
@ -1091,6 +1095,13 @@ void RQ3_Cmd_Choose_f(gentity_t * ent)
|
|||
} else if (Q_stricmp(cmd, RQ3_BANDOLIER_NAME) == 0 || Q_stricmp(cmd, "bandolier") == 0) {
|
||||
ent->client->teamplayItem = HI_BANDOLIER;
|
||||
trap_SendServerCommand(ent - g_entities, va("print \"Item selected: %s\n\"", RQ3_BANDOLIER_NAME));
|
||||
} else if (Q_stricmp(cmd, RQ3_HELMET_NAME) == 0 || Q_stricmp(cmd, "helmet") == 0) {
|
||||
if (g_RQ3_haveHelmet.integer) {
|
||||
ent->client->teamplayItem = HI_HELMET;
|
||||
trap_SendServerCommand(ent - g_entities, va("print \"Item selected: %s\n\"", RQ3_HELMET_NAME));
|
||||
} else {
|
||||
trap_SendServerCommand(ent - g_entities, va("print \"%s is disabled on this server.\n\"", RQ3_HELMET_NAME));
|
||||
}
|
||||
} else {
|
||||
trap_SendServerCommand(ent - g_entities, va("print \"Invalid weapon or item choice.\n\""));
|
||||
return;
|
||||
|
@ -1848,6 +1859,9 @@ void GetItemName(gentity_t * ent, char *buf)
|
|||
} else if (ent->client->ps.stats[STAT_HOLDABLE_ITEM] & (1 << HI_LASER)) {
|
||||
strcpy(buf, RQ3_LASER_NAME);
|
||||
return;
|
||||
} else if (ent->client->ps.stats[STAT_HOLDABLE_ITEM] & (1 << HI_HELMET)) {
|
||||
strcpy(buf, RQ3_HELMET_NAME);
|
||||
return;
|
||||
} else {
|
||||
strcpy(buf, "No Item");
|
||||
}
|
||||
|
|
|
@ -142,6 +142,24 @@
|
|||
action { play "sound/misc/menu1.wav" ; exec "choose bandolier" ; close ingame_item }
|
||||
}
|
||||
|
||||
itemdef {
|
||||
name "helmet"
|
||||
shortcutKey "6"
|
||||
rect 120 148 128 16
|
||||
style WINDOW_STYLE_EMPTY
|
||||
type ITEM_TYPE_BUTTON
|
||||
textstyle ITEM_TEXTSTYLE_SHADOWED
|
||||
textscale .225
|
||||
textalign ITEM_ALIGN_LEFT
|
||||
textalignx 8
|
||||
textaligny 12
|
||||
text "6. Kevlar Helmet"
|
||||
forecolor 1 1 1 1
|
||||
visible 1
|
||||
onFocus { hide items ; show "it_helmet" }
|
||||
action { play "sound/misc/menu1.wav" ; exec "choose helmet" ; close ingame_item }
|
||||
}
|
||||
|
||||
//Item preview
|
||||
//Background
|
||||
|
||||
|
@ -184,9 +202,9 @@
|
|||
style WINDOW_STYLE_EMPTY
|
||||
type ITEM_TYPE_MODEL
|
||||
asset_model "models/items/laser.md3"
|
||||
model_origin 24 0 0
|
||||
model_fovx 60
|
||||
model_fovy 60
|
||||
model_origin 24 15 0
|
||||
model_fovx 40
|
||||
model_fovy 40
|
||||
//textscale .75
|
||||
model_rotation 10
|
||||
model_angles 270 75 90
|
||||
|
@ -202,8 +220,8 @@
|
|||
type ITEM_TYPE_MODEL
|
||||
asset_model "models/items/silencer.md3"
|
||||
model_origin 20 0 0
|
||||
model_fovx 60
|
||||
model_fovy 60
|
||||
model_fovx 40
|
||||
model_fovy 40
|
||||
//textscale .75
|
||||
model_rotation 10
|
||||
model_angles 270 105 90
|
||||
|
@ -245,5 +263,22 @@
|
|||
visible 0
|
||||
}
|
||||
|
||||
itemdef {
|
||||
name it_helmet
|
||||
group items
|
||||
rect 16 48 96 96
|
||||
style WINDOW_STYLE_EMPTY
|
||||
type ITEM_TYPE_MODEL
|
||||
asset_model "models/items/helmet/helmet.md3"
|
||||
model_origin 30 0 0
|
||||
model_fovx 20
|
||||
model_fovy 20
|
||||
//textscale .75
|
||||
model_rotation 10
|
||||
model_angles 180 0 0
|
||||
decoration
|
||||
visible 0
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue