Commit graph

333 commits

Author SHA1 Message Date
ce02de7eff
Physics_InputPostMove: Unset FROZEN _after_ physics frame... 2022-03-03 23:32:33 -08:00
d8a8f07432
Client: make sure customphysics is set 'Empty' on monsters, clients 2022-03-03 23:31:59 -08:00
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
6db98c88aa
BotLib: Add support for goalitems. These may include objectives for things
like CTF - flag your game-mode entities as either .botinfo BOTINFO_TEAM_GOALITEM
or BOTINFO_TEAM_GOALCAPTURE and BotLib will try to figure out what to do.
2022-03-02 09:17:57 -08:00
ee2d3f6b3f
SoundDef: add 'pitch' support to Sound_PlayAt(), the pointsound builtin does
support pitch on FTEQW but it's not advertised in the extensions .qc
2022-03-02 09:14:02 -08:00
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
8cb4c35e23
Remove SendFlags with constants from NSEntity and peers, make full use
of EvaluateEntity() to decide which attributes to send network updates of.
2022-02-18 00:30:24 -08:00
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
bcf9e2e758
Cleaning up some warnings. 2022-02-01 13:37:21 -08:00
eb3eb567ca
Shared: nil out the base_client predraw. Get rid of the .pitch attribute of
base_player. Fix some angle networking typos.
2022-02-01 09:33:28 -08:00
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
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
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
2c80a9f9ff NSSurfaceProp/PropData: Add support for breakable_skin. When a prop 'dies'
it doesn't necessarily have to disappear, it can change its material to one
of your choosing.
2022-01-28 06:53:32 +01:00
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
9e2b89e386
NSEntity: BBox will now account for rotation whenever SetModel() is used. 2022-01-20 12:30:53 -08:00
02c2ff7be5
env_glow: Add 'rotate' key to rotate the sprite/material by X degree amount 2022-01-07 17:04:43 -08:00
52dfde0cf1
Sound: Add Sound_PlayLocal() which is a 'sound shader' analogue to to
localsound()
2022-01-07 13:46:16 -08:00
749424aa84
NSMonster: Add support for actions (used in e.g. HLMDL) to query which seq
to play. This will be expanded shortly in-engine to support more formats...
2022-01-06 19:27:08 -08:00
9d4d7afdcd
Big overhaul of momentary_door, momentary_rot_button... now onto the last
entity until Hazard Course is fully functional from beginning to end.
2022-01-04 21:54:42 -08:00
f2e44b24fb
Add platform/base_sound.pk3, move base sound shaders in there. Add misc/null
and misc/missing PCM samples for fallback.
2021-12-18 15:06:37 -08:00
6ec29e9985
SurfData_IDtoImpact: Fix IMPACT_METAL lookup 2021-12-17 21:23:30 -08:00
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
8075616d6d
SurfaceProperties: We were missing a few material ID lookups for GoldSrc
regarding impacts.
2021-12-16 13:12:44 -08:00
bfad97f6eb
prop_dynamic: Remove redundant .health set code that's now handled in the
parent class.
PropData: Fix a bug that fails to check our cache properly, resulting in
the first entry being returned when no data is properly defined.
2021-11-21 04:23:33 +01:00
eb85121716
Add BUILD_ODE build.cfg setting. Add stubs for platform specific functions
like achievements, rich presense. Minor GLSL adjustments.
2021-11-20 17:27:52 +01:00
1e31ab2955
Following last commit, we allocate EFX data statically up-front too. 2021-11-15 03:59:39 +01:00
58734ec4d2
Improve VM memory usage by avoiding fragmentation in sound shaders and prop
data. Games can enable dynamic memory allocation by setting SOUNDSHADER_DYNAMIC
and PROPDATA_DYNAMIC in their progs.src
2021-11-15 03:46:59 +01:00
08c3a4a576
SurfData: Goodbye to DAMAGE_MATERIAL. We streamline that process now so
that all entities will use surfaceParm defined info by default unless
overriden by an entity. + Set up sane defaults for surface properties.
2021-11-13 01:38:20 +01:00
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
3bb88216c8
Add DAMAGE_MATERIAL as a possible .takedamage value, this may just be a
temp way for model based entities to communicate whether or not they use
that in-model surfaceflags.
2021-11-06 07:15:13 +01:00
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
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
5bf3545e69
GS-EntBase: Added a ton more Save/Restore functions for many core entities.
Player entity is also getting save/restored now.
2021-10-28 04:29:11 +02:00
98c234da48
SurfaceData: Non NSSurfacePropEntity class ents will just use the generic world check for impact effect lookup. 2021-10-27 03:06:29 +02:00
98d9f8f618
Sound: Convert legacy attenuations to Q unit radii upon parsing. 2021-10-23 13:45:59 +02:00
64eb0cc11d
PMove: Be more aggressive with our unstuck function. 2021-10-21 21:27:58 +02:00
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
70fe95e5a7
Add support for Source styled surfaceproperties.txt definitions, which
is incorporated into func_breakable/pushable already. Mods can now control
material/surface properties without code.
2021-10-15 19:01:36 +02:00
d283c309cd
Add missing material/impact definition for sand. Document some other ids
of interest that are used in L4D and GO.
2021-10-11 23:29:26 +02:00
726332c78e
CBaseEntity: Add Ignite(), Exinguish(), IsOnFire() methods according to the
Source 2004 spec (controllable lifetimes etc.)
2021-10-04 13:22:40 +02:00
12753616df
Remove some left-over junk code that no longer runs 2021-09-30 23:32:47 +02:00
59ee0bd359
PMove: Pressing jump will now make you jump off the ladder, like in HL and
some other games.
2021-09-30 23:19:01 +02:00
2b377fdd79
Document the various CONTENTBITS that are relevant to us and reserve
a GRENADECLIP content bit, so levels can be optimised for nade throws.
2021-09-24 10:48:05 +02:00
565d8ad7e7
PMove: Add flag FL_ONUSABLE, which will tell us if we're looking/hovering
over something that we can +use on.
2021-09-23 01:01:59 +02:00
5439bfb59b
CBaseEntity: Mark some methods as nonvirtual, fix some regressions with
func_healthcharger/recharger, trigger_gravity
2021-09-22 20:56:20 +02:00
451beedb0c
CBasePhysics: add support for explosions upon destruction, provided via
propdata.
2021-09-21 21:11:02 +02:00
251713121c
PropData: Add support for the BreakModel info parsing. Any CBaseEntity can
now be augmented. prop_physics entities can already make use of them.
2021-09-21 20:33:09 +02:00
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
56e07c3f06
CGameRules: Add MonstersSpawn(), now game-modes can be queried for whether
or not monster entities spawn on init.
2021-09-16 21:16:37 +02:00