Commit Graph

307 Commits

Author SHA1 Message Date
Marco Cawthorne 6fb067eed3
My name has changed, so an update to the copyright to reflect it. 2022-03-11 11:40:43 -08:00
Marco Cawthorne d8a8f07432
Client: make sure customphysics is set 'Empty' on monsters, clients 2022-03-03 23:31:59 -08:00
Marco Cawthorne 9765f4662b
Organize cmd.qc and fix centerprints from being 'font ambigious'. Use
the console font for now (like GoldSrc would, for example)
2022-03-03 16:13:30 -08:00
Marco Cawthorne 53f5780ac0
Improvements to console output to make debugging easier, simplified
entry.qc by pushing more code into external functions. Add support
for mods to override networked events (after we added support for
ent update overrides the other week).
2022-03-03 14:16:02 -08:00
Marco Cawthorne 93124fa6de
base_player: Add Death() method that'll let the client know when to render
the 'Deathcam'. Also add the mentioned UpdateDeathcam().
2022-03-02 20:37:40 -08:00
Marco Cawthorne a687d7b330
Various tweaks to documentation inside the codebase, more verbose general
information prints to console to aid non-devs in sending bug reports and
finding other issues. Updates to some of the GLSL. Minor material fixes.
2022-02-23 01:17:05 -08:00
Marco Cawthorne 084414db40
Client: Fix bug where muzzleflashes wouldn't show up in FreeHL. 2022-02-22 12:01:31 -08:00
Marco Cawthorne 1d9ade7319
NSEntity: Add ClientRemove() method so sub-classes can control what happens
when a SSQC ent representation is removed from the client.
prop_vehicle_drivable: All sorts of tweaks, lots subject to change.
VGUI elements now get a callback when the resolution gets resized, so they
get a chance to reposition themselves.
Deprecate function ClientGame_EntityRemove().
2022-02-17 22:16:35 -08:00
Marco Cawthorne 47a37af545
Client: Allow mods to override entity updates of gs-entbase.
prop_vehicle_drivable: Initial work towards suspension.
2022-02-11 17:09:08 -08:00
Marco Cawthorne f118e34792
Client: Verify our pSeat player entity directly, don't assume 'self' is the
player in CSQC_Parse_Event and CSQC_Input_Frame.
2022-02-10 13:31:57 -08:00
Marco Cawthorne bef8dfb117
Base: Some minor edits to facilitate the TW akimbo weapons (clean this later...) 2022-02-04 15:24:43 -08:00
Marco Cawthorne bcf9e2e758
Cleaning up some warnings. 2022-02-01 13:37:21 -08:00
Marco Cawthorne a3a5f9d626
Client: Some fixes for handling player/spectator classes, both share now the
same parent class on both client and server. Fix crash with spectators and
input-frame overrides. Add 'additive' command to fontdefs.
2022-01-31 17:38:01 -08:00
Marco Cawthorne eb01a1d8d2
Client: Add helper functions for right-aligned text drawing. 2022-01-31 17:04:08 -08:00
Marco Cawthorne 155b8c343b
Font_StringWidth: Fix me being tired and not returning anything valid in this 2022-01-31 16:21:09 -08:00
Marco Cawthorne 7bcd03c05e
Client: Change Font_GetStringWidth() to Font_StringWidth(). 2022-01-31 15:39:08 -08:00
Marco Cawthorne e11465018f
Client: Allow base_player and spectator classes to override CSQC_Input_Frame
with a new method: ClientInputFrame.
2022-01-31 15:31:07 -08:00
Marco Cawthorne 419e89e861
Client: Some minor work towards making the textmenu/game_text code respect
actual font data handled by Nuclide via external fontdef files.
2022-01-31 13:57:30 -08:00
Marco Cawthorne 578da4a779
Add VGUI_Active() which returns whether or not we're drawing VGUI elements,
add SNDFL_ALERTS to sound shaders, which will alert enemy AI of suspicious
behaviour, fix a health-setting bug in NSSurfacePropEntity and remove
playerslot check in item_pickup from base/
2022-01-28 16:02:00 -08:00
Marco Cawthorne f0a8fa0889
Client: Games can now override base-Nuclide commands. 2022-01-25 20:06:40 -08:00
Marco Cawthorne 06d07738b6
Clean up the base classes, get rid of having to manually include the entbase
defs.h for the respective progs.
2022-01-20 16:23:29 -08:00
Marco Cawthorne 758b28346d
Client: Add fade.h and add definition in worldspawn's QUAKED comment for
startdark.
2022-01-02 21:21:06 -08:00
Marco Cawthorne d375ec5f93
Client: Implement "startdark" key from worldspawn. Which is responsible for
the fade-in effect in c0a0 for example.
2022-01-02 21:04:55 -08:00
Marco Cawthorne cad1dfbcfe
Waypoint-system: You can now unlink waypoints (either one or two way...) 2021-12-18 17:50:43 -08:00
Marco Cawthorne e45c41610c
Client: Flip the first two entries under the link sub-menu in way_menu. 2021-12-18 16:38:35 -08:00
Marco Cawthorne 5637d49189
Waypoint-system: Add 'sv way addnear' which will create a node auto-linked
to the nearest node to the player.
2021-12-18 16:36:51 -08:00
Marco Cawthorne 30e0ca9ad5
Client: Auto-load waypoints for current map when first opening way_menu.
Add cvar: way_autoload
2021-12-18 16:27:28 -08:00
Marco Cawthorne c2e4050bae
Replace CSQC_Parse_Damage with our own, add EV_DAMAGE. Make sure trigger_hurt
respects the 'damagetype' field. Add CSQC_UpdateSeat to make querying of
the current player seat easier (splitscreen).
2021-12-17 18:20:30 -08:00
Marco Cawthorne c8a6b1f123
Added support for _detail.txt definitions, allowing maps to specify detail
textures. New cvars: r_detailtextures, r_detailtexture_xscale, r_detailtexture_yscale.
2021-12-15 11:17:25 -08:00
Marco Cawthorne 1e31ab2955
Following last commit, we allocate EFX data statically up-front too. 2021-11-15 03:59:39 +01:00
Marco Cawthorne a8e4cd5748
NSEntity: Make sure .scale affects SetSize() calls and is updated with
SetModel() calls. Also keep track of original .mins/.maxs in case scale
changes.
2021-11-10 02:33:31 +01:00
Marco Cawthorne b670c994c1
build_engine.sh: Support building of HL2/SRC2004 content via the new plugin
that you can enable in build.cfg...
base_player: Add MakeTempSpectator() and MakePlayer(), so gamemodes have it
easier to handle in-game status changes...
NSRenderableEntity: Add support for 'modelscale' key
2021-11-09 17:33:16 +01:00
Marco Cawthorne a48baff2d1
Menu-FN: Add a hack around drawtextfield(), wasting QC asm instructions in
the process for something as simple as specifying character size.
2021-11-06 11:17:54 +01:00
Marco Cawthorne 24070f9e37
Client: Secondary attack will now hide the weapon selection HUD overlay. 2021-11-06 08:24:12 +01:00
Marco Cawthorne c22b001f60
Cleanup: get rid of the ancient Font_LoadFont() wrapper, pipe _all_ text
font info through our internal font_s data structure.
2021-11-04 22:48:19 +01:00
Marco Cawthorne aa0ccf4413
Add test_grenadeclip.
Add helper functions to convert RGB255 to ^x color codes.
Small fixes for fonts in vguilib.
2021-11-03 21:54:43 +01:00
Marco Cawthorne d25a597d71
Player: SetSize() after the .flags field update in case their bbox changed
and we aren't running physics on their entity.
Viewmodels: Add cvar v_modellag (Default: 0)
2021-10-30 00:59:31 +02:00
Marco Cawthorne 0a4b0ea795
Client: Move Damage_Draw() and Damage_Precache() out of here, into the
game-specific realm
2021-10-21 23:30:42 +02:00
Marco Cawthorne 249e4bc612
Massive revamp of the Nuclide system classes, more efficient networking
and memory usage thanks to intelligent boxing of fields.
Added Util_TimeToString, removed old VOX code, added lots of new helper
classes...
2021-10-20 01:19:10 +02:00
Marco Cawthorne 147969e8a8
Client: Add Weapons_EnableModel() and Weapons_DisableModel() so weapons can
manually control the visibility regardless of viewzoom setting
2021-10-08 21:50:04 +02:00
Marco Cawthorne dd94d7d75f
View: Move muzzleflash precaches out to be game specific. 2021-10-06 22:00:23 +02:00
Marco Cawthorne 12753616df
Remove some left-over junk code that no longer runs 2021-09-30 23:32:47 +02:00
Marco Cawthorne 3bceff6a2c
Implement and parse the propdata system from Source 2004 and make our
func_breakable entity aware of it.
2021-09-17 19:31:22 +02:00
Marco Cawthorne f884b3d35d
Separate networking between CBaseEntity and CBaseMonster, needs
cleaning.
2021-09-12 00:13:24 +02:00
Marco Cawthorne d94a5f33eb
GS-EntBase: Add prop_vehicle_driveable, for model based 4-wheel
vehicles.
2021-09-11 22:43:14 +02:00
Marco Cawthorne bc2fbb4a69
Implement setpos() and setang(). The engine provides setpos, but
we may want to declare it for possible future overrides.
2021-09-09 19:03:26 +02:00
Marco Cawthorne 5578b0e602
GS-EntBase: Add client-side prediction for func_tankmortar. 2021-09-08 20:17:13 +02:00
Marco Cawthorne 2a86794d67
Add precache_cubemap() to src/client/defs.h 2021-09-02 21:11:54 +02:00
Marco Cawthorne 527318bd65
Deprecate CBaseFX, introduce .predraw for weapon functions. 2021-09-02 09:39:37 +02:00
Marco Cawthorne 9fa091db43
Reserve 3 SRC'04 rendermodes, implement RM_DONTRENDER. 2021-09-01 22:41:11 +02:00