Fixed the model replacement system. Its no longer an ugly hack.

This commit is contained in:
Richard Allen 2003-02-05 20:21:38 +00:00
parent 725f12cadc
commit 2be8d9281d
3 changed files with 180 additions and 124 deletions

View file

@ -5,6 +5,9 @@
//-----------------------------------------------------------------------------
//
// $Log$
// Revision 1.134 2003/02/05 20:21:38 jbravo
// Fixed the model replacement system. Its no longer an ugly hack.
//
// Revision 1.133 2003/02/01 02:15:31 jbravo
// Replacement models and items
//
@ -375,7 +378,9 @@
#define TEAM_OVERLAY_MAXNAME_WIDTH 12
#define TEAM_OVERLAY_MAXLOCATION_WIDTH 16
//#define DEFAULT_MODEL "sarge"
// JBravo: used to store replacement models
#define MAX_MODEL_LEN 128
// Elder: changed to good ol' resdog
#define DEFAULT_MODEL "grunt"
// Elder: this is added

View file

@ -5,6 +5,9 @@
//-----------------------------------------------------------------------------
//
// $Log$
// Revision 1.119 2003/02/05 20:21:38 jbravo
// Fixed the model replacement system. Its no longer an ugly hack.
//
// Revision 1.118 2003/02/01 02:15:31 jbravo
// Replacement models and items
//
@ -280,6 +283,23 @@ void CG_Shutdown(void);
//Blaze: used to access the names of the breakables
char rq3_breakables[RQ3_MAX_BREAKABLES][80];
// JBravo: used to store replacement models
char RQ3_knife_model[MAX_MODEL_LEN], RQ3_knife_icon[MAX_MODEL_LEN];
char RQ3_pistol_model[MAX_MODEL_LEN], RQ3_pistol_icon[MAX_MODEL_LEN];
char RQ3_m4_model[MAX_MODEL_LEN], RQ3_m4_icon[MAX_MODEL_LEN];
char RQ3_ssg3000_model[MAX_MODEL_LEN], RQ3_ssg3000_icon[MAX_MODEL_LEN];
char RQ3_mp5_model[MAX_MODEL_LEN], RQ3_mp5_icon[MAX_MODEL_LEN];
char RQ3_handcannon_model[MAX_MODEL_LEN], RQ3_handcannon_icon[MAX_MODEL_LEN];
char RQ3_m3_model[MAX_MODEL_LEN], RQ3_m3_icon[MAX_MODEL_LEN];
char RQ3_akimbo_model[MAX_MODEL_LEN], RQ3_akimbo_icon[MAX_MODEL_LEN];
char RQ3_grenade_model[MAX_MODEL_LEN], RQ3_grenade_icon[MAX_MODEL_LEN];
char RQ3_kevlar_model[MAX_MODEL_LEN], RQ3_kevlar_icon[MAX_MODEL_LEN];
char RQ3_silencer_model[MAX_MODEL_LEN], RQ3_silencer_icon[MAX_MODEL_LEN];
char RQ3_laser_model[MAX_MODEL_LEN], RQ3_laser_icon[MAX_MODEL_LEN];
char RQ3_bandolier_model[MAX_MODEL_LEN], RQ3_bandolier_icon[MAX_MODEL_LEN];
char RQ3_slippers_model[MAX_MODEL_LEN], RQ3_slippers_icon[MAX_MODEL_LEN];
char RQ3_helmet_model[MAX_MODEL_LEN], RQ3_helmet_icon[MAX_MODEL_LEN];
/*
================
vmMain
@ -2218,133 +2238,162 @@ static qboolean JB_FileExists(const char *filename)
=================
CG_ReplaceModels
Hack by JBravo to replace world_models in bg_itemlist
Routine by JBravo to replace world_models in bg_itemlist
=================
*/
void CG_ReplaceModels(void)
{
gitem_t *item;
char newname[MAX_QPATH], newicon[MAX_QPATH];
for (item = bg_itemlist + 1; item->classname; item++) {
if (!strcmp(item->classname, "weapon_knife")) {
Com_sprintf(newname, MAX_QPATH, "models/weapons2/%s/knife.md3", cg_RQ3_knife.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconw_%s", cg_RQ3_knife.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "weapon_knife") && strcmp(cg_RQ3_knife.string, "knife")) {
Com_sprintf(RQ3_knife_model, MAX_MODEL_LEN, "models/weapons2/%s/knife.md3", cg_RQ3_knife.string);
Com_sprintf(RQ3_knife_icon, MAX_MODEL_LEN, "icons/iconw_%s", cg_RQ3_knife.string);
if (JB_FileExists(RQ3_knife_model) && (strlen(RQ3_knife_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_knife_model;
bg_itemlist[item - bg_itemlist].icon = (char *)&RQ3_knife_icon;
} else {
CG_Printf("^1Error loading knife replacement model %s\n", cg_RQ3_knife.string);
}
}
if (!strcmp(item->classname, "weapon_pistol")) {
Com_sprintf(newname, MAX_QPATH, "models/weapons2/%s/mk23.md3", cg_RQ3_mk23.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconw_%s", cg_RQ3_mk23.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "weapon_pistol") && strcmp(cg_RQ3_mk23.string, "mk23")) {
Com_sprintf(RQ3_pistol_model, MAX_MODEL_LEN, "models/weapons2/%s/mk23.md3", cg_RQ3_mk23.string);
Com_sprintf(RQ3_pistol_icon, MAX_MODEL_LEN, "icons/iconw_%s", cg_RQ3_mk23.string);
if (JB_FileExists(RQ3_pistol_model) && (strlen(RQ3_pistol_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_pistol_model;
bg_itemlist[item - bg_itemlist].icon = (char *)&RQ3_pistol_icon;
} else {
CG_Printf("^1Error loading pistol replacement model %s\n", cg_RQ3_mk23.string);
}
}
if (!strcmp(item->classname, "weapon_m4")) {
Com_sprintf(newname, MAX_QPATH, "models/weapons2/%s/m4.md3", cg_RQ3_m4.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconw_%s", cg_RQ3_m4.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "weapon_m4") && strcmp(cg_RQ3_m4.string, "m4")) {
Com_sprintf(RQ3_m4_model, MAX_MODEL_LEN, "models/weapons2/%s/m4.md3", cg_RQ3_m4.string);
Com_sprintf(RQ3_m4_icon, MAX_MODEL_LEN, "icons/iconw_%s", cg_RQ3_m4.string);
if (JB_FileExists(RQ3_m4_model) && (strlen(RQ3_m4_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_m4_model;
bg_itemlist[item - bg_itemlist].icon = (char *)&RQ3_m4_icon;
} else {
CG_Printf("^1Error loading m4 replacement model %s\n", cg_RQ3_m4.string);
}
}
if (!strcmp(item->classname, "weapon_ssg3000")) {
Com_sprintf(newname, MAX_QPATH, "models/weapons2/%s/ssg3000.md3", cg_RQ3_ssg3000.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconw_%s", cg_RQ3_ssg3000.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "weapon_ssg3000") && strcmp(cg_RQ3_ssg3000.string, "ssg3000")) {
Com_sprintf(RQ3_ssg3000_model, MAX_MODEL_LEN, "models/weapons2/%s/ssg3000.md3", cg_RQ3_ssg3000.string);
Com_sprintf(RQ3_ssg3000_icon, MAX_MODEL_LEN, "icons/iconw_%s", cg_RQ3_ssg3000.string);
if (JB_FileExists(RQ3_ssg3000_model) && (strlen(RQ3_ssg3000_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_ssg3000_model;
bg_itemlist[item - bg_itemlist].icon = (char *)&RQ3_ssg3000_icon;
} else {
CG_Printf("^1Error loading ssg3000 replacement model %s\n", cg_RQ3_ssg3000.string);
}
}
if (!strcmp(item->classname, "weapon_mp5")) {
Com_sprintf(newname, MAX_QPATH, "models/weapons2/%s/mp5.md3", cg_RQ3_mp5.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconw_%s", cg_RQ3_mp5.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "weapon_mp5") && strcmp(cg_RQ3_mp5.string, "mp5")) {
Com_sprintf(RQ3_mp5_model, MAX_MODEL_LEN, "models/weapons2/%s/mp5.md3", cg_RQ3_mp5.string);
Com_sprintf(RQ3_mp5_icon, MAX_MODEL_LEN, "icons/iconw_%s", cg_RQ3_mp5.string);
if (JB_FileExists(RQ3_mp5_model) && (strlen(RQ3_mp5_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_mp5_model;
bg_itemlist[item - bg_itemlist].icon = (char *)&RQ3_mp5_icon;
} else {
CG_Printf("^1Error loading mp5 replacement model\n", cg_RQ3_mp5.string);
}
}
if (!strcmp(item->classname, "weapon_handcannon")) {
Com_sprintf(newname, MAX_QPATH, "models/weapons2/%s/handcannon.md3", cg_RQ3_handcannon.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconw_%s", cg_RQ3_handcannon.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "weapon_handcannon") && strcmp(cg_RQ3_handcannon.string, "handcannon")) {
Com_sprintf(RQ3_handcannon_model, MAX_MODEL_LEN, "models/weapons2/%s/handcannon.md3", cg_RQ3_handcannon.string);
Com_sprintf(RQ3_handcannon_icon, MAX_MODEL_LEN, "icons/iconw_%s", cg_RQ3_handcannon.string);
if (JB_FileExists(RQ3_handcannon_model) && (strlen(RQ3_handcannon_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_handcannon_model;
bg_itemlist[item - bg_itemlist].icon = (char *)&RQ3_handcannon_icon;
} else {
CG_Printf("^1Error loading handcannon replacement model %s\n", cg_RQ3_handcannon.string);
}
}
if (!strcmp(item->classname, "weapon_m3")) {
Com_sprintf(newname, MAX_QPATH, "models/weapons2/%s/m3.md3", cg_RQ3_m3.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconw_%s", cg_RQ3_m3.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "weapon_m3") && strcmp(cg_RQ3_m3.string, "m3")) {
Com_sprintf(RQ3_m3_model, MAX_MODEL_LEN, "models/weapons2/%s/m3.md3", cg_RQ3_m3.string);
Com_sprintf(RQ3_m3_icon, MAX_MODEL_LEN, "icons/iconw_%s", cg_RQ3_m3.string);
if (JB_FileExists(RQ3_m3_model) && (strlen(RQ3_m3_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_m3_model;
bg_itemlist[item - bg_itemlist].icon = (char *)&RQ3_m3_icon;
} else {
CG_Printf("^1Error loading m3 replacement model %s\n", cg_RQ3_m3.string);
}
}
if (!strcmp(item->classname, "weapon_akimbo")) {
Com_sprintf(newname, MAX_QPATH, "models/weapons2/%s/akimbo.md3", cg_RQ3_akimbo.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconw_%s", cg_RQ3_akimbo.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "weapon_akimbo") && strcmp(cg_RQ3_akimbo.string, "akimbo")) {
Com_sprintf(RQ3_akimbo_model, MAX_MODEL_LEN, "models/weapons2/%s/akimbo.md3", cg_RQ3_akimbo.string);
Com_sprintf(RQ3_akimbo_icon, MAX_MODEL_LEN, "icons/iconw_%s", cg_RQ3_akimbo.string);
if (JB_FileExists(RQ3_akimbo_model) && (strlen(RQ3_akimbo_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_akimbo_model;
bg_itemlist[item - bg_itemlist].icon = (char *)&RQ3_akimbo_icon;
} else {
CG_Printf("^1Error loading akimbo replacement model %s\n", cg_RQ3_akimbo.string);
}
}
if (!strcmp(item->classname, "weapon_grenade")) {
Com_sprintf(newname, MAX_QPATH, "models/weapons2/%s/grenade.md3", cg_RQ3_grenade.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconw_%s", cg_RQ3_grenade.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "weapon_grenade") && strcmp(cg_RQ3_grenade.string, "grenade")) {
Com_sprintf(RQ3_grenade_model, MAX_MODEL_LEN, "models/weapons2/%s/grenade.md3", cg_RQ3_grenade.string);
Com_sprintf(RQ3_grenade_icon, MAX_MODEL_LEN, "icons/iconw_%s", cg_RQ3_grenade.string);
if (JB_FileExists(RQ3_grenade_model) && (strlen(RQ3_grenade_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_grenade_model;
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_grenade_icon;
} else {
CG_Printf("^1Error loading grenade replacement model %s\n", cg_RQ3_grenade.string);
}
}
if (!strcmp(item->classname, "item_kevlar")) {
Com_sprintf(newname, MAX_QPATH, "models/items/%s.md3", cg_RQ3_kevlar.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconi_%s", cg_RQ3_kevlar.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "item_kevlar") && strcmp(cg_RQ3_kevlar.string, "kevlar")) {
Com_sprintf(RQ3_kevlar_model, MAX_MODEL_LEN, "models/items/%s.md3", cg_RQ3_kevlar.string);
Com_sprintf(RQ3_kevlar_icon, MAX_MODEL_LEN, "icons/iconi_%s", cg_RQ3_kevlar.string);
if (JB_FileExists(RQ3_kevlar_model) && (strlen(RQ3_kevlar_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_kevlar_model;
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_kevlar_icon;
} else {
CG_Printf("^1Error loading kevlar replacement model %s\n", cg_RQ3_kevlar.string);
}
}
if (!strcmp(item->classname, "item_silencer")) {
Com_sprintf(newname, MAX_QPATH, "models/items/%s.md3", cg_RQ3_silencer.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconi_%s", cg_RQ3_silencer.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "item_silencer") && strcmp(cg_RQ3_silencer.string, "silencer")) {
Com_sprintf(RQ3_silencer_model, MAX_MODEL_LEN, "models/items/%s.md3", cg_RQ3_silencer.string);
Com_sprintf(RQ3_silencer_icon, MAX_MODEL_LEN, "icons/iconi_%s", cg_RQ3_silencer.string);
if (JB_FileExists(RQ3_silencer_model) && (strlen(RQ3_silencer_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_silencer_model;
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_silencer_icon;
} else {
CG_Printf("^1Error loading silencer replacement model %s\n", cg_RQ3_silencer.string);
}
}
if (!strcmp(item->classname, "item_laser")) {
Com_sprintf(newname, MAX_QPATH, "models/items/%s.md3", cg_RQ3_laser.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconi_%s", cg_RQ3_laser.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "item_laser") && strcmp(cg_RQ3_laser.string, "laser")) {
Com_sprintf(RQ3_laser_model, MAX_MODEL_LEN, "models/items/%s.md3", cg_RQ3_laser.string);
Com_sprintf(RQ3_laser_icon, MAX_MODEL_LEN, "icons/iconi_%s", cg_RQ3_laser.string);
if (JB_FileExists(RQ3_laser_model) && (strlen(RQ3_laser_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_laser_model;
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_laser_icon;
} else {
CG_Printf("^1Error loading laser replacement model %s\n", cg_RQ3_laser.string);
}
}
if (!strcmp(item->classname, "item_bandolier")) {
Com_sprintf(newname, MAX_QPATH, "models/items/%s.md3", cg_RQ3_bandolier.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconi_%s", cg_RQ3_bandolier.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "item_bandolier") && strcmp(cg_RQ3_bandolier.string, "bandolier")) {
Com_sprintf(RQ3_bandolier_model, MAX_MODEL_LEN, "models/items/%s.md3", cg_RQ3_bandolier.string);
Com_sprintf(RQ3_bandolier_icon, MAX_MODEL_LEN, "icons/iconi_%s", cg_RQ3_bandolier.string);
if (JB_FileExists(RQ3_bandolier_model) && (strlen(RQ3_bandolier_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_bandolier_model;
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_bandolier_icon;
} else {
CG_Printf("^1Error loading bandolier replacement model %s\n", cg_RQ3_bandolier.string);
}
}
if (!strcmp(item->classname, "item_slippers")) {
Com_sprintf(newname, MAX_QPATH, "models/items/%s.md3", cg_RQ3_slippers.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconi_%s", cg_RQ3_slippers.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "item_slippers") && strcmp(cg_RQ3_slippers.string, "slippers")) {
Com_sprintf(RQ3_slippers_model, MAX_MODEL_LEN, "models/items/%s.md3", cg_RQ3_slippers.string);
Com_sprintf(RQ3_slippers_icon, MAX_MODEL_LEN, "icons/iconi_%s", cg_RQ3_slippers.string);
if (JB_FileExists(RQ3_slippers_model) && (strlen(RQ3_slippers_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_slippers_model;
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_slippers_icon;
} else {
CG_Printf("^1Error loading slippers replacement model %s\n", cg_RQ3_slippers.string);
}
}
if (!strcmp(item->classname, "item_helmet")) {
Com_sprintf(newname, MAX_QPATH, "models/items/%s.md3", cg_RQ3_helmet.string);
Com_sprintf(newicon, MAX_QPATH, "icons/iconi_%s", cg_RQ3_helmet.string);
if (JB_FileExists(newname) && (strlen(newname) < 59)) {
strcpy(bg_itemlist[item - bg_itemlist].world_model[0], newname);
strcpy(bg_itemlist[item - bg_itemlist].icon, newicon);
if (!strcmp(item->classname, "item_helmet") && strcmp(cg_RQ3_helmet.string, "helmet")) {
Com_sprintf(RQ3_helmet_model, MAX_MODEL_LEN, "models/items/%s.md3", cg_RQ3_helmet.string);
Com_sprintf(RQ3_helmet_icon, MAX_MODEL_LEN, "icons/iconi_%s", cg_RQ3_helmet.string);
if (JB_FileExists(RQ3_helmet_model) && (strlen(RQ3_helmet_model) < MAX_MODEL_LEN)) {
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_helmet_model;
bg_itemlist[item - bg_itemlist].world_model[0] = (char *)&RQ3_helmet_icon;
} else {
CG_Printf("^1Error loading helmet replacement model %s\n", cg_RQ3_helmet.string);
}
}
}

View file

@ -5,6 +5,9 @@
//-----------------------------------------------------------------------------
//
// $Log$
// Revision 1.49 2003/02/05 20:21:38 jbravo
// Fixed the model replacement system. Its no longer an ugly hack.
//
// Revision 1.48 2003/02/01 02:15:31 jbravo
// Replacement models and items
//
@ -134,12 +137,11 @@ gitem_t bg_itemlist[] = {
//Knife
{
"weapon_knife",
//"sound/weapons/knife/knife.wav",
"sound/misc/am_pkup.wav",
{"models/weapons2/knife/knife.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/weapons2/knife/knife.md3",
0, 0, 0}
,
"icons/iconw_knife\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
"icons/iconw_knife",
RQ3_KNIFE_NAME,
1,
IT_WEAPON,
@ -152,10 +154,10 @@ gitem_t bg_itemlist[] = {
{
"weapon_pistol",
"sound/weapons/mk23/mk23slide.wav",
{"models/weapons2/mk23/mk23.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/weapons2/mk23/mk23.md3",
0, 0, 0}
,
/* icon */ "icons/iconw_mk23\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
/* icon */ "icons/iconw_mk23",
/* pickup */ RQ3_PISTOL_NAME,
12,
IT_WEAPON,
@ -169,10 +171,10 @@ gitem_t bg_itemlist[] = {
{
"weapon_m4",
"sound/weapons/m4/m4slide.wav",
{"models/weapons2/m4/m4.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/weapons2/m4/m4.md3",
0, 0, 0}
,
/* icon */ "icons/iconw_m4\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
/* icon */ "icons/iconw_m4",
/* pickup */ RQ3_M4_NAME,
24,
IT_WEAPON,
@ -186,10 +188,10 @@ gitem_t bg_itemlist[] = {
{
"weapon_ssg3000",
"sound/weapons/ssg3000/ssgin.wav",
{"models/weapons2/ssg3000/ssg3000.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/weapons2/ssg3000/ssg3000.md3",
0, 0, 0}
,
/* icon */ "icons/iconw_ssg\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
/* icon */ "icons/iconw_ssg",
/* pickup */ RQ3_SSG3000_NAME,
6,
IT_WEAPON,
@ -203,10 +205,10 @@ gitem_t bg_itemlist[] = {
{
"weapon_mp5",
"sound/weapons/mp5/mp5slide.wav",
{"models/weapons2/mp5/mp5.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/weapons2/mp5/mp5.md3",
0, 0, 0}
,
/* icon */ "icons/iconw_mp5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
/* icon */ "icons/iconw_mp5",
/* pickup */ RQ3_MP5_NAME,
30,
IT_WEAPON,
@ -220,10 +222,10 @@ gitem_t bg_itemlist[] = {
{
"weapon_handcannon",
"sound/weapons/handcannon/hcopen.wav",
{"models/weapons2/handcannon/handcannon.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/weapons2/handcannon/handcannon.md3",
0, 0, 0}
,
/* icon */ "icons/iconw_handcannon\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
/* icon */ "icons/iconw_handcannon",
/* pickup */ RQ3_HANDCANNON_NAME,
2,
IT_WEAPON,
@ -237,10 +239,10 @@ gitem_t bg_itemlist[] = {
{
"weapon_m3",
"sound/weapons/m3/m3in.wav",
{"models/weapons2/m3/m3.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/weapons2/m3/m3.md3",
0, 0, 0}
,
/* icon */ "icons/iconw_m3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
/* icon */ "icons/iconw_m3",
/* pickup */ RQ3_M3_NAME,
7,
IT_WEAPON,
@ -254,10 +256,10 @@ gitem_t bg_itemlist[] = {
{
"weapon_akimbo",
"sound/weapons/mk23/mk23slide.wav",
{"models/weapons2/akimbo/akimbo.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/weapons2/akimbo/akimbo.md3",
0, 0, 0}
,
/* icon */ "icons/iconw_akimbo\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
/* icon */ "icons/iconw_akimbo",
/* pickup */ RQ3_AKIMBO_NAME,
24,
IT_WEAPON,
@ -272,10 +274,10 @@ gitem_t bg_itemlist[] = {
"weapon_grenade",
//"sound/grenade/tink2.wav",
"sound/misc/am_pkup.wav",
{"models/weapons2/grenade/grenade.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/weapons2/grenade/grenade.md3",
0, 0, 0}
,
/* icon */ "icons/iconw_grenade\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
/* icon */ "icons/iconw_grenade",
/* pickup */ RQ3_GRENADE_NAME,
1,
IT_WEAPON,
@ -591,10 +593,10 @@ Only in CTF games
{
"item_kevlar",
"sound/items/kevlar.wav",
{"models/items/kevlar.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/items/kevlar.md3",
0, 0, 0}
,
"icons/iconi_kevlar\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
"icons/iconi_kevlar",
RQ3_KEVLAR_NAME,
0,
IT_HOLDABLE,
@ -606,10 +608,10 @@ Only in CTF games
{
"item_silencer",
"sound/items/silencer.wav",
{"models/items/silencer.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/items/silencer.md3",
0, 0, 0}
,
"icons/iconi_silencer\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
"icons/iconi_silencer",
RQ3_SILENCER_NAME,
0,
IT_HOLDABLE,
@ -621,10 +623,10 @@ Only in CTF games
{
"item_laser",
"sound/items/laser.wav",
{"models/items/laser.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/items/laser.md3",
0, 0, 0}
,
"icons/iconi_laser\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
"icons/iconi_laser",
RQ3_LASER_NAME,
0,
IT_HOLDABLE,
@ -636,10 +638,10 @@ Only in CTF games
{
"item_bandolier",
"sound/items/bandolier.wav",
{"models/items/bandolier.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/items/bandolier.md3",
0, 0, 0}
,
"icons/iconi_bandolier\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
"icons/iconi_bandolier",
RQ3_BANDOLIER_NAME,
0,
IT_HOLDABLE,
@ -651,10 +653,10 @@ Only in CTF games
{
"item_slippers",
"sound/items/slippers.wav",
{"models/items/slippers.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/items/slippers.md3",
0, 0, 0}
,
"icons/iconi_slippers\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
"icons/iconi_slippers",
RQ3_SLIPPERS_NAME,
0,
IT_HOLDABLE,
@ -666,10 +668,10 @@ Only in CTF games
{
"item_helmet",
"sound/items/slippers.wav",
{"models/items/helmet.md3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
{"models/items/helmet.md3",
0, 0, 0}
,
"icons/iconi_helmet\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0",
"icons/iconi_helmet",
RQ3_HELMET_NAME,
0,
IT_HOLDABLE,