rebase against latest Nuclide so far

This commit is contained in:
Marco Cawthorne 2024-08-31 23:04:25 -07:00
parent 177f423675
commit ba4ae18f14
26 changed files with 178 additions and 222 deletions

View file

@ -1,4 +1,4 @@
# FreeHL2 # Rad-Therapy 2 (FreeHL2)
Clean-room reimplementation of Half-Life 2 & Half-Life 2: Deathmatch in QuakeC. Clean-room reimplementation of Half-Life 2 & Half-Life 2: Deathmatch in QuakeC.
This is 100% original code, feel free to audit however you wish. This is 100% original code, feel free to audit however you wish.

View file

@ -1,4 +1,4 @@
CC=fteqcc QCC=fteqcc
all: all:
$(CC) progs.src $(QCC) progs.src

View file

@ -281,7 +281,7 @@ void
HUD_DrawHealth(void) HUD_DrawHealth(void)
{ {
vector pos; vector pos;
player pl = (player)pSeat->m_ePlayer; NSClientPlayer pl = (NSClientPlayer)pSeat->m_ePlayer;
if (pl.health != pSeatLocal->m_iHealthOld) { if (pl.health != pSeatLocal->m_iHealthOld) {
pSeatLocal->m_flHealthAlpha = 1.0; pSeatLocal->m_flHealthAlpha = 1.0;
@ -328,7 +328,7 @@ void
HUD_DrawArmor(void) HUD_DrawArmor(void)
{ {
vector pos; vector pos;
player pl = (player)pSeat->m_ePlayer; NSClientPlayer pl = (NSClientPlayer)pSeat->m_ePlayer;
if (pl.armor != pSeatLocal->m_iArmorOld) { if (pl.armor != pSeatLocal->m_iArmorOld) {
pSeatLocal->m_flArmorAlpha = 1.0; pSeatLocal->m_flArmorAlpha = 1.0;
@ -374,7 +374,7 @@ HUD_DrawArmor(void)
void void
HUD_DrawAmmo1(void) HUD_DrawAmmo1(void)
{ {
player pl = (player)pSeat->m_ePlayer; NSClientPlayer pl = (NSClientPlayer)pSeat->m_ePlayer;
vector pos; vector pos;
if (pl.a_ammo1 != pSeatLocal->m_iAmmo1Old) { if (pl.a_ammo1 != pSeatLocal->m_iAmmo1Old) {
@ -409,7 +409,7 @@ HUD_DrawAmmo1(void)
void void
HUD_DrawAmmo2(void) HUD_DrawAmmo2(void)
{ {
player pl = (player)pSeat->m_ePlayer; NSClientPlayer pl = (NSClientPlayer)pSeat->m_ePlayer;
vector pos; vector pos;
if (pl.a_ammo2 != pSeatLocal->m_iAmmo2Old) { if (pl.a_ammo2 != pSeatLocal->m_iAmmo2Old) {
@ -431,7 +431,7 @@ HUD_DrawAmmo2(void)
void void
HUD_DrawAmmo3(void) HUD_DrawAmmo3(void)
{ {
player pl = (player)pSeat->m_ePlayer; NSClientPlayer pl = (NSClientPlayer)pSeat->m_ePlayer;
vector pos; vector pos;
if (pl.a_ammo3 != pSeatLocal->m_iAmmo3Old) { if (pl.a_ammo3 != pSeatLocal->m_iAmmo3Old) {
@ -466,7 +466,7 @@ HUD_DrawAmmoBar(vector pos, float val, float max, float a)
void void
HUD_DrawNotify(void) HUD_DrawNotify(void)
{ {
player pl = (player)self; NSClientPlayer pl = (NSClientPlayer)self;
vector pos; vector pos;
float a; float a;
@ -481,7 +481,7 @@ HUD_DrawNotify(void)
a = bound(0.0, pSeatLocal->m_flPickupAlpha, 1.0); a = bound(0.0, pSeatLocal->m_flPickupAlpha, 1.0);
pos[1] += 48 * (1.0 - a); pos[1] += 48 * (1.0 - a);
Weapons_HUDPic(pl, pSeatLocal->m_iPickupWeapon, 1, pos, a); //Weapons_HUDPic(pl, pSeatLocal->m_iPickupWeapon, 1, pos, a);
//HUD_ItemNotify_Draw(pos); //HUD_ItemNotify_Draw(pos);
//HUD_AmmoNotify_Draw(pos); //HUD_AmmoNotify_Draw(pos);
pSeatLocal->m_flPickupAlpha -= (clframetime * 0.5); pSeatLocal->m_flPickupAlpha -= (clframetime * 0.5);
@ -490,20 +490,6 @@ HUD_DrawNotify(void)
void void
HUD_WeaponPickupNotify(int w) HUD_WeaponPickupNotify(int w)
{ {
#if defined (VALVE) || defined (GEARBOX)
switch (w) {
case WEAPON_SNARK:
case WEAPON_SATCHEL:
case WEAPON_HANDGRENADE:
case WEAPON_TRIPMINE:
#if defined(GEARBOX)
case WEAPON_PENGUIN:
#endif
return;
default:
}
#endif
pSeatLocal->m_iPickupWeapon = w; pSeatLocal->m_iPickupWeapon = w;
pSeatLocal->m_flPickupAlpha = 2.5f; pSeatLocal->m_flPickupAlpha = 2.5f;
} }
@ -548,15 +534,13 @@ HUD_TimeRemaining(void)
void void
HUD_Draw(void) HUD_Draw(void)
{ {
player pl = (player)pSeat->m_ePlayer; NSClientPlayer pl = (NSClientPlayer)pSeat->m_ePlayer;
g_hud_color = [1, 0.75f, 0.25]; g_hud_color = [1, 0.75f, 0.25];
/* little point in not drawing these, even if you don't have a suit */ /* little point in not drawing these, even if you don't have a suit */
Weapons_DrawCrosshair(pl); if (pl.m_activeWeapon) {
pl.m_activeWeapon.UpdateGUI();
{
} }
HUD_DrawDamageIndicator(); HUD_DrawDamageIndicator();
@ -566,7 +550,7 @@ HUD_Draw(void)
HUD_TimeRemaining(); HUD_TimeRemaining();
if (!(pl.g_items & ITEM_SUIT)) { if (pl.HasItem("item_suit") == false) {
return; return;
} }

View file

@ -4,42 +4,38 @@
#define CSQC #define CSQC
#define CLIENT #define CLIENT
#define HL2 #define VALVE
#define SOUNDSHADER_MAX 9000 #define SOUNDSHADER_MAX 9000
#includelist #includelist
../../../src/shared/fteextensions.qc ../../../src/shared/fteextensions.qc
../../../src/shared/defs.h ../../../src/shared/defs.h
../../../valve/src/client/defs.h
../../../src/client/defs.h ../../../src/client/defs.h
defs.h ../../../valve/src/client/defs.h
../../../hl2/src/client/defs.h
../../../src/vgui/include.src ../../../src/vgui/include.src
../../../src/gs-entbase/client.src ../../../src/gs-entbase/client.src
../../../src/gs-entbase/shared.src ../../../src/gs-entbase/shared.src
../shared/include.src ../shared/include.src
../../../valve/src/client/draw.qc
flashlight.qc
../../../valve/src/client/damage.qc ../../../valve/src/client/damage.qc
draw.qc ../../../valve/src/client/init.qc
init.qc ../../../valve/src/client/flashlight.qc
../../../valve/src/client/entities.qc ../../../valve/src/client/entities.qc
cmds.qc ../../../valve/src/client/cmds.qc
../../../valve/src/client/game_event.qc ../../../valve/src/client/game_event.qc
../../../valve/src/client/camera.qc ../../../valve/src/client/camera.qc
viewmodel.qc ../../../valve/src/client/viewmodel.qc
../../../valve/src/client/obituary.qc ../../../valve/src/client/obituary.qc
../../../valve/src/client/hud_sprite.qc ../../../valve/src/client/hud_sprite.qc
../../../valve/src/client/hud_ammonotify.qc
../../../valve/src/client/hud_dmgnotify.qc
../../../valve/src/client/hud_itemnotify.qc ../../../valve/src/client/hud_itemnotify.qc
hud.qc ../../../valve/src/client/hud_dmgnotify.qc
hud_weaponselect.qc ../../../valve/src/client/hud_ammonotify.qc
../../../hl2/src/client/hud.qc
../../../valve/src/client/HLWeaponSelect.qc
../../../valve/src/client/hud_weaponselect.qc
../../../valve/src/client/scoreboard.qc ../../../valve/src/client/scoreboard.qc
../../../src/client/include.src ../../../src/client/include.src
vgui_changechar.qc ../../../valve/src/client/vgui_motd.qc
vgui_chooseteam.qc
../../../src/shared/include.src ../../../src/shared/include.src
#endlist #endlist

View file

@ -1,4 +1,4 @@
CC=fteqcc QCC=fteqcc
all: all:
$(CC) progs.src $(QCC) progs.src

View file

@ -86,12 +86,6 @@ HLGameRules::LevelDecodeParms(NSClientPlayer pp)
pl.sniper_mag = parm37; pl.sniper_mag = parm37;
pl.m249_mag = parm38; pl.m249_mag = parm38;
pl.sporelauncher_mag = parm39; pl.sporelauncher_mag = parm39;
if (pl.flags & FL_CROUCHING) {
setsize(pl, VEC_CHULL_MIN, VEC_CHULL_MAX);
} else {
setsize(pl, VEC_HULL_MIN, VEC_HULL_MAX);
}
} }
void void

View file

@ -206,7 +206,7 @@ HLMultiplayerRules::PlayerSpawn(NSClientPlayer pp)
pl.SetInfoKey("*dead", "0"); pl.SetInfoKey("*dead", "0");
pl.SetInfoKey("*deaths", ftos(pl.deaths)); pl.SetInfoKey("*deaths", ftos(pl.deaths));
pl.SetPropData("actor_human"); pl.SetPropData("actor_human");
pl.SetCanBleed(true); pl.EnableBleeding();
LevelNewParms(); LevelNewParms();
LevelDecodeParms(pl); LevelDecodeParms(pl);

View file

@ -85,7 +85,7 @@ HLSingleplayerRules::PlayerSpawn(NSClientPlayer pl)
pl.ClearVelocity(); pl.ClearVelocity();
pl.SetInfoKey("*spec", "0"); pl.SetInfoKey("*spec", "0");
pl.SetInfoKey("*deaths", ftos(pl.deaths)); pl.SetInfoKey("*deaths", ftos(pl.deaths));
pl.SetCanBleed(true); pl.EnableBleeding();
if (startspot != "") { if (startspot != "") {
LevelDecodeParms(pl); LevelDecodeParms(pl);

View file

@ -13,40 +13,19 @@
../../../src/shared/defs.h ../../../src/shared/defs.h
../../../src/server/defs.h ../../../src/server/defs.h
../../../src/botlib/botinfo.h ../../../src/botlib/botinfo.h
../../../src/gs-entbase/server.src ../../../src/gs-entbase/server.src
../../../src/gs-entbase/shared.src ../../../src/gs-entbase/shared.src
../../../valve/src/server/defs.h
defs.h
../shared/include.src ../shared/include.src
../../../valve/src/server/player.qc ../../../valve/src/server/player.qc
../../../valve/src/server/items.qc ../../../valve/src/server/HLScientist.qc
item_suit.qc
item_healthkit.qc
item_battery.qc
../../../valve/src/server/world_items.qc
../../../valve/src/server/xen_spore_small.qc
../../../valve/src/server/xen_spore_medium.qc
../../../valve/src/server/xen_spore_large.qc
../../../valve/src/server/xen_hair.qc
../../../valve/src/server/xen_plantlight.qc
../../../valve/src/server/ammo.qc
../../../src/botlib/include.src ../../../src/botlib/include.src
../../../valve/src/server/gamerules.qc
gamerules.qc ../../../valve/src/server/gamerules_singleplayer.qc
gamerules_singleplayer.qc ../../../valve/src/server/gamerules_multiplayer.qc
gamerules_multiplayer.qc ../../../valve/src/server/server.qc
server.qc
../../../valve/src/server/damage.qc
../../../valve/src/server/flashlight.qc ../../../valve/src/server/flashlight.qc
../../../valve/src/server/modelevent.qc
../../../valve/src/server/spawn.qc ../../../valve/src/server/spawn.qc
../../../src/server/include.src ../../../src/server/include.src
../../../src/shared/include.src ../../../src/shared/include.src
#endlist #endlist

View file

@ -2,33 +2,13 @@
../../../valve/src/shared/entities.h ../../../valve/src/shared/entities.h
../../../valve/src/shared/events.h ../../../valve/src/shared/events.h
../../../valve/src/shared/flags.h ../../../valve/src/shared/flags.h
../../../hl2/src/shared/player.qc ../../../valve/src/shared/skeleton.h
../../../valve/src/shared/weapon_common.h ../../../valve/src/shared/player.qc
../../../valve/src/shared/animations.h
../../../valve/src/shared/animations.qc ../../../valve/src/shared/animations.qc
../../../hl2/src/shared/pmove.qc
../../../valve/src/shared/fx_blood.qc ../../../valve/src/shared/fx_blood.qc
../../../valve/src/shared/fx_gaussbeam.qc ../../../valve/src/shared/fx_gaussbeam.qc
../../../valve/src/shared/fx_corpse.qc ../../../valve/src/shared/fx_corpse.qc
../../../valve/src/shared/HLGaussBeam.qc
../../../hl2/src/shared/items.h ../../../valve/src/shared/HLWeapon.qc
../../../hl2/src/shared/weapons.h ../../../valve/src/shared/w_tripmine.qc
../../../hl2/src/shared/w_357.qc
../../../hl2/src/shared/w_ar2.qc
../../../hl2/src/shared/w_bugbait.qc
../../../hl2/src/shared/w_crossbow.qc
../../../hl2/src/shared/w_crowbar.qc
../../../hl2/src/shared/w_frag.qc
../../../hl2/src/shared/w_gravitygun.qc
../../../hl2/src/shared/w_pistol.qc
../../../hl2/src/shared/w_rpg.qc
../../../hl2/src/shared/w_shotgun.qc
../../../hl2/src/shared/w_smg1.qc
../../../hl2/src/shared/w_stunstick.qc
../../../hl2/src/shared/w_slam.qc
../../../hl2/src/shared/weapons.qc
../../../hl2/src/shared/prop_vehicle_jeep.qc
../../../valve/src/shared/weapon_common.qc
#endlist #endlist

View file

@ -135,7 +135,7 @@ w_357_primary(player pl)
Weapons_ViewPunchAngle(pl, [-10,0,0]); Weapons_ViewPunchAngle(pl, [-10,0,0]);
Weapons_ViewAnimation(pl, PYTHON_FIRE); Weapons_ViewAnimation(pl, PYTHON_FIRE);
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTPYTHON, 0.43f); Animation_PlayerTop(pl, ANIM_CR_SHOOTPYTHON, 0.43f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTPYTHON, 0.43f); Animation_PlayerTop(pl, ANIM_SHOOTPYTHON, 0.43f);
@ -236,7 +236,7 @@ w_357_crosshair(player pl)
float float
w_357_aimanim(player pl) w_357_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIMPYTHON : ANIM_AIMPYTHON; return pl.IsCrouching() ? ANIM_CR_AIMPYTHON : ANIM_AIMPYTHON;
} }
void void

View file

@ -140,7 +140,7 @@ w_ar2_primary(player pl)
int r = floor(pseudorandom() * 4.0); int r = floor(pseudorandom() * 4.0);
Weapons_ViewAnimation(pl, AR2_FIRE1 + r); Weapons_ViewAnimation(pl, AR2_FIRE1 + r);
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTHIVE, 0.43f); Animation_PlayerTop(pl, ANIM_CR_SHOOTHIVE, 0.43f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTHIVE, 0.43f); Animation_PlayerTop(pl, ANIM_SHOOTHIVE, 0.43f);
@ -172,7 +172,7 @@ w_ar2_secondary(player pl)
pl.ammo_hornet--; pl.ammo_hornet--;
Weapons_ViewAnimation(pl, AR2_ALTFIRE); Weapons_ViewAnimation(pl, AR2_ALTFIRE);
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTHIVE, 0.43f); Animation_PlayerTop(pl, ANIM_CR_SHOOTHIVE, 0.43f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTHIVE, 0.43f); Animation_PlayerTop(pl, ANIM_SHOOTHIVE, 0.43f);
@ -213,7 +213,7 @@ w_ar2_crosshair(player pl)
float float
w_ar2_aimanim(player pl) w_ar2_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIMHIVE : ANIM_AIMHIVE; return pl.IsCrouching() ? ANIM_CR_AIMHIVE : ANIM_AIMHIVE;
} }
void void

View file

@ -178,7 +178,7 @@ void w_bugbait_release(player pl)
pl.w_attack_next = 1.0f; pl.w_attack_next = 1.0f;
pl.w_idle_next = 0.5f; pl.w_idle_next = 0.5f;
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTCROWBAR, 0.41f); Animation_PlayerTop(pl, ANIM_CR_SHOOTCROWBAR, 0.41f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTCROWBAR, 0.5f); Animation_PlayerTop(pl, ANIM_SHOOTCROWBAR, 0.5f);
@ -201,7 +201,7 @@ void w_bugbait_release(player pl)
float float
w_bugbait_aimanim(player pl) w_bugbait_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIMCROWBAR : ANIM_AIMCROWBAR; return pl.IsCrouching() ? ANIM_CR_AIMCROWBAR : ANIM_AIMCROWBAR;
} }
void void

View file

@ -173,7 +173,7 @@ w_crossbow_primary(player pl)
Weapons_ViewAnimation(pl, CROSSBOW_FIRE); Weapons_ViewAnimation(pl, CROSSBOW_FIRE);
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTBOW, 0.25f); Animation_PlayerTop(pl, ANIM_CR_SHOOTBOW, 0.25f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTBOW, 0.25f); Animation_PlayerTop(pl, ANIM_SHOOTBOW, 0.25f);
@ -274,7 +274,7 @@ w_crossbow_crosshair(player pl)
float float
w_crossbow_aimanim(player pl) w_crossbow_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIMBOW : ANIM_AIMBOW; return pl.IsCrouching() ? ANIM_CR_AIMBOW : ANIM_AIMBOW;
} }
void void

View file

@ -117,7 +117,7 @@ w_crowbar_primary(player pl)
Weapons_ViewAnimation(pl, trace_fraction >= 1 ? CBAR_ATTACK2MISS:CBAR_ATTACK3HIT); Weapons_ViewAnimation(pl, trace_fraction >= 1 ? CBAR_ATTACK2MISS:CBAR_ATTACK3HIT);
} }
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTCROWBAR, 0.41f); Animation_PlayerTop(pl, ANIM_CR_SHOOTCROWBAR, 0.41f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTCROWBAR, 0.5f); Animation_PlayerTop(pl, ANIM_SHOOTCROWBAR, 0.5f);
@ -161,7 +161,7 @@ w_crowbar_release(player pl)
float float
w_crowbar_aimanim(player pl) w_crowbar_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIMCROWBAR : ANIM_AIMCROWBAR; return pl.IsCrouching() ? ANIM_CR_AIMCROWBAR : ANIM_AIMCROWBAR;
} }
void void

View file

@ -160,7 +160,7 @@ void w_frag_release(player pl)
pl.w_attack_next = 1.0f; pl.w_attack_next = 1.0f;
pl.w_idle_next = 0.5f; pl.w_idle_next = 0.5f;
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTCROWBAR, 0.41f); Animation_PlayerTop(pl, ANIM_CR_SHOOTCROWBAR, 0.41f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTCROWBAR, 0.5f); Animation_PlayerTop(pl, ANIM_SHOOTCROWBAR, 0.5f);
@ -184,7 +184,7 @@ void w_frag_release(player pl)
float float
w_frag_aimanim(player pl) w_frag_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIMCROWBAR : ANIM_AIMCROWBAR; return pl.IsCrouching() ? ANIM_CR_AIMCROWBAR : ANIM_AIMCROWBAR;
} }
void void

View file

@ -182,7 +182,7 @@ void w_gravitygun_crosshair(player pl)
float w_gravitygun_aimanim(player pl) float w_gravitygun_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIMEGON : ANIM_AIMEGON; return pl.IsCrouching() ? ANIM_CR_AIMEGON : ANIM_AIMEGON;
} }
void w_gravitygun_hudpic(player pl, int selected, vector pos, float a) void w_gravitygun_hudpic(player pl, int selected, vector pos, float a)

View file

@ -216,7 +216,7 @@ w_pistol_primary(player pl)
Weapons_ViewAnimation(pl, PISTOL_FIRE_EMPTY); Weapons_ViewAnimation(pl, PISTOL_FIRE_EMPTY);
} }
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOT1HAND, 0.2f); Animation_PlayerTop(pl, ANIM_CR_SHOOT1HAND, 0.2f);
else else
Animation_PlayerTop(pl, ANIM_SHOOT1HAND, 0.2f); Animation_PlayerTop(pl, ANIM_SHOOT1HAND, 0.2f);
@ -286,7 +286,7 @@ w_pistol_release(player pl)
float float
w_pistol_aimanim(player pl) w_pistol_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIM1HAND : ANIM_AIM1HAND; return pl.IsCrouching() ? ANIM_CR_AIM1HAND : ANIM_AIM1HAND;
} }
void void

View file

@ -126,7 +126,7 @@ void w_rpg_primary(player pl)
Weapons_ViewAnimation(pl, RPG_FIRE); Weapons_ViewAnimation(pl, RPG_FIRE);
Weapons_ViewPunchAngle(pl, [-10,0,0]); Weapons_ViewPunchAngle(pl, [-10,0,0]);
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTRPG, 0.43f); Animation_PlayerTop(pl, ANIM_CR_SHOOTRPG, 0.43f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTRPG, 0.43f); Animation_PlayerTop(pl, ANIM_SHOOTRPG, 0.43f);
@ -198,7 +198,7 @@ void w_rpg_secondary(player pl)
float w_rpg_aimanim(player pl) float w_rpg_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIMRPG : ANIM_AIMRPG; return pl.IsCrouching() ? ANIM_CR_AIMRPG : ANIM_AIMRPG;
} }
void w_rpg_hudpic(player pl, int selected, vector pos, float a) void w_rpg_hudpic(player pl, int selected, vector pos, float a)
@ -246,19 +246,19 @@ void w_rpg_hud(player pl)
/* crosshair/laser */ /* crosshair/laser */
if (pl.ammo_rpg_state == 1) { if (pl.ammo_rpg_state == 1) {
float lerp; float lerpFrac;
vector jitter = [0.0f, 0.0f, 0.0f]; vector jitter = [0.0f, 0.0f, 0.0f];
Weapons_MakeVectors(pl); Weapons_MakeVectors(pl);
vector src = pl.origin + pl.view_ofs; vector src = pl.origin + pl.view_ofs;
traceline(src, src + (v_forward * 256), FALSE, pl); traceline(src, src + (v_forward * 256), FALSE, pl);
lerp = Math_Lerp(18,6, trace_fraction); lerpFrac = lerp(18,6, trace_fraction);
jitter[0] = (random(0,2) - 2) * (1 - trace_fraction); jitter[0] = (random(0,2) - 2) * (1 - trace_fraction);
jitter[1] = (random(0,2) - 2) * (1 - trace_fraction); jitter[1] = (random(0,2) - 2) * (1 - trace_fraction);
laser_pos = g_hudmins + (g_hudres / 2) + ([-lerp,-lerp] / 2); laser_pos = g_hudmins + (g_hudres / 2) + ([-lerpFrac,-lerpFrac] / 2);
drawsubpic( drawsubpic(
laser_pos + jitter, laser_pos + jitter,
[lerp,lerp], [lerpFrac,lerpFrac],
"materials/Sprites/redglow1", "materials/Sprites/redglow1",
[0,0], [0,0],
[1.0, 1.0], [1.0, 1.0],

View file

@ -218,7 +218,7 @@ w_shotgun_primary(player pl)
Weapons_ViewAnimation(pl, SHOTGUN_FIRE); Weapons_ViewAnimation(pl, SHOTGUN_FIRE);
Weapons_ViewPunchAngle(pl, [-5,0,0]); Weapons_ViewPunchAngle(pl, [-5,0,0]);
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTSHOTGUN, 0.41f); Animation_PlayerTop(pl, ANIM_CR_SHOOTSHOTGUN, 0.41f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTSHOTGUN, 0.5f); Animation_PlayerTop(pl, ANIM_SHOOTSHOTGUN, 0.5f);
@ -270,7 +270,7 @@ w_shotgun_secondary(player pl)
Weapons_ViewAnimation(pl, SHOTGUN_ALTFIRE); Weapons_ViewAnimation(pl, SHOTGUN_ALTFIRE);
Weapons_ViewPunchAngle(pl, [-10,0,0]); Weapons_ViewPunchAngle(pl, [-10,0,0]);
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTSHOTGUN, 0.41f); Animation_PlayerTop(pl, ANIM_CR_SHOOTSHOTGUN, 0.41f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTSHOTGUN, 0.5f); Animation_PlayerTop(pl, ANIM_SHOOTSHOTGUN, 0.5f);
@ -369,7 +369,7 @@ w_shotgun_crosshair(player pl)
float float
w_shotgun_aimanim(player pl) w_shotgun_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIMSHOTGUN : ANIM_AIMSHOTGUN; return pl.IsCrouching() ? ANIM_CR_AIMSHOTGUN : ANIM_AIMSHOTGUN;
} }
void void

View file

@ -474,7 +474,7 @@ w_slam_release(player pl)
float float
w_slam_aimanim(player pl) w_slam_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIMSQUEAK : ANIM_AIMSQUEAK; return pl.IsCrouching() ? ANIM_CR_AIMSQUEAK : ANIM_AIMSQUEAK;
} }
void void

View file

@ -192,7 +192,7 @@ w_smg1_primary(player pl)
Sound_Play(pl, CHAN_WEAPON, "Weapon_SMG1.Single"); Sound_Play(pl, CHAN_WEAPON, "Weapon_SMG1.Single");
#endif #endif
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTMP5, 0.1f); Animation_PlayerTop(pl, ANIM_CR_SHOOTMP5, 0.1f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTMP5, 0.1f); Animation_PlayerTop(pl, ANIM_SHOOTMP5, 0.1f);
@ -229,7 +229,7 @@ w_smg1_secondary(player pl)
Weapons_ViewPunchAngle(pl, [-10.0f, 0.0f, 0.0f]); Weapons_ViewPunchAngle(pl, [-10.0f, 0.0f, 0.0f]);
Weapons_ViewAnimation(pl, SMG1_ALTFIRE); Weapons_ViewAnimation(pl, SMG1_ALTFIRE);
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTMP5, 0.45f); Animation_PlayerTop(pl, ANIM_CR_SHOOTMP5, 0.45f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTMP5, 0.45f); Animation_PlayerTop(pl, ANIM_SHOOTMP5, 0.45f);

View file

@ -114,7 +114,7 @@ w_stunstick_primary(player pl)
Weapons_ViewAnimation(pl, trace_fraction >= 1 ? CBAR_ATTACK2MISS:CBAR_ATTACK3HIT); Weapons_ViewAnimation(pl, trace_fraction >= 1 ? CBAR_ATTACK2MISS:CBAR_ATTACK3HIT);
} }
if (pl.flags & FL_CROUCHING) if (pl.IsCrouching())
Animation_PlayerTop(pl, ANIM_CR_SHOOTCROWBAR, 0.41f); Animation_PlayerTop(pl, ANIM_CR_SHOOTCROWBAR, 0.41f);
else else
Animation_PlayerTop(pl, ANIM_SHOOTCROWBAR, 0.5f); Animation_PlayerTop(pl, ANIM_SHOOTCROWBAR, 0.5f);
@ -158,7 +158,7 @@ w_stunstick_release(player pl)
float float
w_stunstick_aimanim(player pl) w_stunstick_aimanim(player pl)
{ {
return pl.flags & FL_CROUCHING ? ANIM_CR_AIMCROWBAR : ANIM_AIMCROWBAR; return pl.IsCrouching() ? ANIM_CR_AIMCROWBAR : ANIM_AIMCROWBAR;
} }
void void

View file

@ -1,71 +1,12 @@
// Generic Binds exec cvar_defaults.cfg
bind "ESC" "togglemenu" exec default_controls.cfg
bind "w" "+forward"
bind "s" "+back"
bind "a" "+moveleft"
bind "d" "+moveright"
bind "SPACE" "+jump"
bind "CTRL" "+duck"
bind "SHIFT" "+speed"
bind "0" "slot10"
bind "1" "slot1"
bind "2" "slot2"
bind "3" "slot3"
bind "4" "slot4"
bind "5" "slot5"
bind "6" "slot6"
bind "7" "slot7"
bind "8" "slot8"
bind "9" "slot9"
bind "UPARROW" "+forward"
bind "DOWNARROW" "+back"
bind "LEFTARROW" "+left"
bind "RIGHTARROW" "+right"
bind "MOUSE1" "+attack"
bind "MOUSE2" "+attack2"
bind "MWHEELDOWN" "invnext"
bind "MWHEELUP" "invprev"
bind "r" "+reload"
bind "e" "+use"
bind "TAB" "+showscores"
bind "y" "messagemode"
bind "u" "messagemode2"
bind "t" "impulse 201"
bind "f" "impulse 100"
bind "f1" "vote yes"
bind "f2" "vote no"
// Game Variables
seta "hostname" "FreeHL2 Server"
seta "maxplayers" "8"
// 2D/HUD Variables
seta "con_color" "255 150 0"
seta "vgui_color" "255 170 0"
seta "cross_color" "0 255 0"
// disable some nuclide niceties
seta cg_muzzleDLight 01
// config compat
alias mp_timelimit timelimit
alias mp_fraglimit fraglimit
// video settings
seta gl_overbright 2
seta gl_ldr 0
seta r_lightmap_format rgb9e5
seta rate 30000 // some HL configs set this to 2500 by default!
seta cl_forwardspeed 190 seta "hostname" "Rad-Therapy II Server"
seta cl_sidespeed 190 seta "maxplayers" "8"
seta cl_backspeed 190
seta cl_movespeedkey 1.684
seta pm_maxspeed 320
exec skill_hl2.cfg seta "con_color" "255 150 0"
seta "vgui_color" "255 170 0"
seta "cross_color" "0 255 0"
seta pm_walkspeed 190
seta pm_runspeed 320
seta fov 75
seta viewmodel_fov 54

View file

@ -1,5 +1,12 @@
{ {
{ {
map "materials/console/background01.vtf" // 01 = Train station/HL2:DM
// 02 = River bed
// 03 = Ravenholm
// 04 = Highway
// 05 = Nova Prospect
// 06 = City17 Ruins
// 07 = Citadel Interior
map "materials/console/background02.vtf"
} }
} }

View file

@ -17,7 +17,7 @@ r_part +ember
count 1 count 1
texture "particles/fteparticlefont.tga" texture "particles/fteparticlefont.tga"
tcoords 97 97 191 191 256 tcoords 97 97 191 191 256
rgb 255 128 76 rgb 255 64 16
alpha 0 alpha 0
scale 20 scale 20
scalefactor 1 scalefactor 1
@ -35,16 +35,59 @@ r_part +ember
ramp 0 0 0 0.1 0 ramp 0 0 0 0.1 0
} }
r_part +ember
{
count 1
texture "particles/fteparticlefont.tga"
tcoords 97 97 191 191 256
rgb 255 64 16
alpha 0
scale 8
scalefactor 1
die 2
friction 2.5
blend add
randomvel 512
spawnorg 32 32
rampmode delta
gravity 100
ramp 0 0 0 -0.5 0
ramp 0 0 0 0.1 0
ramp 0 0 0 0.1 0
ramp 0 0 0 0.1 0
ramp 0 0 0 0.1 0
ramp 0 0 0 0.1 0
}
r_part hotbits
{
count 1
texture "particles/fteparticlefont.tga"
tcoords 97 97 191 191 256
rgb 255 255 200
alpha 1
scale 4
scalefactor 1
die 2
friction 2.5
randomvel 512
spawnorg 32 32
gravity 800
cliptype bounce
}
r_part +main r_part +main
{ {
lighttime 1 lighttime 1
lightradius 350 lightradius 350
lightradiusfade 300 lightradiusfade 300
lightrgb 1.0 0.5 0.4 lightrgb 1.0 0.5 0.4
lightrgbfade 0.36 0.19 0.19 lightrgbfade 0.36 0.19 0.19
count 0 0 1 count 0 0 2
model "sprites/fexplo.spr" framestart=0 framecount=29 framerate=20 additive spawnorg 0 32
} orgadd 32
model "sprites/fexplo.spr" framestart=0 framecount=29 framerate=20 additive scalemin=0.5 scalemax=2.5
}
r_part +main r_part +main
{ {
@ -82,16 +125,48 @@ r_part +main
texture ball texture ball
tcoords 1 65 31 95 256 8 32 tcoords 1 65 31 95 256 8 32
scale 1 scale 1
count 8 count 16
scalefactor 1 scalefactor 1
alpha 0.5 alpha 0.5
die 0.8 die 0.8
rgb 255 115 0 rgb 255 180 30
blend add blend add
spawnmode ball spawnmode ball
spawnvel 100 spawnvel 512
spawnorg 48 48
veladd 100 veladd 100
friction 0.5 friction 0.5
gravity 800 gravity 200
cliptype spark
emit hotbits
emitinterval 0.04
}
r_part spark
{
type texturedspark
texture ball
tcoords 1 65 31 95 256 8 32
scale 1
count 5
scalefactor 1
alpha 0.5
die 0.4
rgb 255 180 30
blend add
spawnmode ball
spawnvel 256
veladd 200
gravity 600
} }
r_part +spark
{
lighttime 1
lightradius 64
lightradiusfade 300
lightrgb 1.0 0.5 0.4
lightrgbfade 0.36 0.19 0.19
count 0 0 1
model "sprites/muzzleflash.spr" framestart=0 framecount=2 framerate=20 additive scalemin=0.1 scalemax=0.5
}