Commit Graph

1299 Commits

Author SHA1 Message Date
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 82e1f2e044
GS-EntBase: Move prop_static fully to the client-side. 2022-02-04 10:52:37 -08:00
Marco Cawthorne c4a5070027
NSProjectile: Fix small compiler warning. 2022-02-04 10:22:01 -08:00
Marco Cawthorne 4c6800aa4f
Some fixes/checks for prop_dynamic that I forgot to revert while testing.
Also added some changes to NSVehicle/prop_vehicle_drivable.
2022-02-03 21:18:31 -08:00
Marco Cawthorne 54cf7f8273
GS-EntBase: Add SetScale(), SetOwner(), SetVelocity() and SetTouch() methods
to NSEntity.
2022-02-02 10:23:31 -08:00
Marco Cawthorne bcf9e2e758
Cleaning up some warnings. 2022-02-01 13:37:21 -08:00
Marco Cawthorne 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
Marco Cawthorne 04fe9ae215
Menu-FN: Make this progs aware of DRAWFLAG_ADDITIVE 2022-01-31 18:26:34 -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 5a3f59a24c
BotLib: Add checks to validate the result of Way_FintClosestNode() 2022-01-31 16:07:04 -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 7ce222007c
NSMonster: Fix oversight where targets would get overriden by AlertNearby()
Make it so Pain() has a random chance to change targets.
2022-01-31 10:12:41 -08:00
Marco Cawthorne 3fc7c477f0
info_particle_system: Fix the emitting speed/angle. Apparently that's
specified in the particle config itself.
2022-01-28 17:55:45 -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 abdce0b61d
NSMonster: Improve 'seeing', don't target just anything with takedamage set to YES.
Add 'AlertNearby()' which is called when a monster sees a new enemy,
gets hit or dies.
2022-01-28 12:31:24 -08:00
Marco Cawthorne 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
Marco Cawthorne 92bb821ad9
NSMonster: Add GetWalk/Run/ChaseSpeed methods to override movement speeds
of each monster class that's based upon it.
2022-01-25 20:07:25 -08:00
Marco Cawthorne f0a8fa0889
Client: Games can now override base-Nuclide commands. 2022-01-25 20:06:40 -08:00
Marco Cawthorne 63d7b04852
NSMonster: Do some basic interpolation between new/old frames. HLMDL are
currently not supported however (engine needs a fix)
2022-01-24 17:29:58 -08:00
Marco Cawthorne 7963b11a7d
NSMonster: Add MeleeMaxDistance() and MeleeCondition(), so classes can
easily override condition and distance of their melee attacks.
2022-01-24 12:29:06 -08:00
Marco Cawthorne 709f0a2297
scripted_sequence: More work to make c1a3 and t0a0a work properly 2022-01-21 17:24:39 -08:00
Marco Cawthorne 82b1cb68fa
Improvements to some GoldSrc rendermode code, better teleporting behaviour
for scripted_sequences.
2022-01-21 12:24:25 -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 fbb53d62f4
prop_dynamic: Filter the 'solid' field by its 3 supported collision types. 2022-01-20 14:27:39 -08:00
Marco Cawthorne 8bf7315253
prop_dynamic: Now solid by default, unless spawnflags bit 256 is set. 2022-01-20 12:57:17 -08:00
Marco Cawthorne 24b00565e3
Make it easier to parse Input/Output entity data by adding PrepareOutput()
to the NSIO class
2022-01-20 12:47:59 -08:00
Marco Cawthorne 9e2b89e386
NSEntity: BBox will now account for rotation whenever SetModel() is used. 2022-01-20 12:30:53 -08:00
Marco Cawthorne d41c770393
func_physbox and prop_physics now respect the 'start asleep' spawnflags
they have.
2022-01-20 10:37:17 -08:00
Marco Cawthorne 33795822a9
Rework env_global, entities communicating with it as well as support for
changetarget/changedelay in trigger_changelevel, which will make Hazard
Course its last level work in terms of elevator shenanigans.
2022-01-10 23:48:14 -08:00
Marco Cawthorne ec9432fe73
NSRenderableEntity: Save/Restore tracking for 'frame' field. 2022-01-10 23:46:28 -08:00
Marco Cawthorne 009462f3ee
GS-EntBase: Add game_counter_set entity. 2022-01-10 13:34:07 -08:00
Marco Cawthorne e98f751071
Add missing Save/Restore methods for ambient_generic, env_beverage, and
a dozen more.
2022-01-10 13:20:00 -08:00
Marco Cawthorne a95354c09a
trigger_multiple: Add missing save field for OnEndTouchAll I/O trigger. 2022-01-10 13:18:59 -08:00
Marco Cawthorne 11c37f789d
NSMonster: Add TriggerCondition for death of an NSMonster. 2022-01-10 13:18:25 -08:00
Marco Cawthorne e4b7d55b3c
NSEntity: Add Destroy() which makes sure a sub-class is cleanly removed
from the game when possible.
2022-01-10 13:17:36 -08:00
Marco Cawthorne f42263dbfe
game_counter: Revise QUAKED comment, as it is apparently a point entity. 2022-01-10 13:07:58 -08:00
Marco Cawthorne 826e6c3150
GS-EntBase: Add game_counter entity. 2022-01-10 13:06:35 -08:00
Marco Cawthorne 02c2ff7be5
env_glow: Add 'rotate' key to rotate the sprite/material by X degree amount 2022-01-07 17:04:43 -08:00
Marco Cawthorne 52dfde0cf1
Sound: Add Sound_PlayLocal() which is a 'sound shader' analogue to to
localsound()
2022-01-07 13:46:16 -08:00
Marco Cawthorne 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
CYBERDEViL 7607c249f6 Fix bug where dropped items shouldn't be respawned.
`spawn()` will cast it's params to floats, so when `m_iWasDropped: TRUE`
was given it would set `m_iWasDropped` to `1065353216`; and conditions like
`m_iWasDropped == TRUE` where never met. Which would cause
`valve/src/server/items.qc:item_pickup::touch` to set `think` to `Respawn`.
2022-01-05 23:41:13 +01:00
Marco Cawthorne 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
Marco Cawthorne 08e112e128
trigger_changelevel: check if we're inside a trigger_transition under
certain conditions (and only compare the activator...)
2022-01-03 19:28:22 -08:00
Marco Cawthorne df2a385bbd
func_door: 'netname' trigger happens when door returns to its original
position, not the other way around.
2022-01-03 19:27:47 -08:00
Marco Cawthorne 3726139eda
func_guntarget: Add Save/Restore, as well as a fix for Respawn() and health
being reset.
2022-01-03 19:08:30 -08:00
Marco Cawthorne a0cec88f3b
Merge pull request #2 from cyber-bridge/master
Honor weapon .pickup return value.
2022-01-04 01:30:07 +01:00
Marco Cawthorne 6dcf76ac5d
func_breakable: Be more paranoid about checking health and propdata overrides 2022-01-03 13:02:56 -08:00
CYBERDEViL f6b0b5c348 Honor weapon .pickup return value.
For FreeCS this means CT-team wil no longer be able to pickup the bomb.
2022-01-03 19:12:26 +01:00
Marco Cawthorne d3dcb3a12b
GS-EntBase: Cleanup and fixes regarding which func_ entities support the
'angles' key for visuals. trigger_hurt damagetype tweaks (needs more tests)
as well as monstermaker fixes and SF_ROT_TOGGLE func_door_rotatings no
longer auto-return...
2022-01-03 00:23:20 -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 c920e4c3e8
NSRenderableEntity: Support for scrolling textures (requires shader
overrides for now, stay tuned) with variable speeds. Improvements to
func_conveyor, other rendering fix involving alphamasking textures.
2022-01-02 20:50:50 -08:00
Marco Cawthorne 623754ec5a
GLSL, NSRenderableEntity: Added hack to prevent alphatesting against world
surfaces utilizing the default lightmapped shader.
2021-12-31 01:47:47 -08:00
Marco Cawthorne 3ca728e1d0
func_conveyor: Add Save/Restore methods for save-games. 2021-12-29 15:54:51 -08:00
Marco Cawthorne 6ca3900b4d
NSSurfacePropEntity: Handle health more appropriately to avoid conflicts,
unbreaks func_button's health behaviour.
2021-12-29 14:13:08 -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 043c6878d6
Server: Waypoint flagging will now link two nodes if they weren't linked
already.
2021-12-18 17:20:25 -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 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
Marco Cawthorne 6ec29e9985
SurfData_IDtoImpact: Fix IMPACT_METAL lookup 2021-12-17 21:23:30 -08:00
Marco Cawthorne 60fefa8c94
Server: Fix bug where clients would not receive damage notifications when
armor is the only affected attribute.
2021-12-17 20:27:36 -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 8075616d6d
SurfaceProperties: We were missing a few material ID lookups for GoldSrc
regarding impacts.
2021-12-16 13:12:44 -08:00
Marco Cawthorne 00e9eec764
Menu-FN: To make standard load faster, the parsing of game-info now happens
whenever try to enter 'Custom Game'.
2021-12-15 22:33: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 094e87f957
Server: Add support for maps/$MAPNAME_skl.cfg to support Sven Coop's map
specific skill overrides.
2021-12-14 10:25:32 -08:00
Marco Cawthorne 7bfea15dd0
Add base/shared/fx_corpse.qc, change set to seta in masters.lst 2021-12-13 11:47:55 -08:00
Marco Cawthorne a80def1d12
Server: Fix that you're unable to pick up weapons when you've hit the ammo
cap of said weapon.
2021-12-12 20:36:11 -08:00
Marco Cawthorne 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
Marco Cawthorne a2f8fd0a5d
NSSurfacePropEntity: Keep track if .health is ever set manually, take that
and PropData info into account for determining if any child classes will
'break' by default
2021-11-21 03:57:18 +01:00
Marco Cawthorne 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
Marco Cawthorne 1e31ab2955
Following last commit, we allocate EFX data statically up-front too. 2021-11-15 03:59:39 +01:00
Marco Cawthorne 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
Marco Cawthorne 0085403c95
NSSurfacePropEntity: Save/Restore for its attributes, OnBreak output etc. 2021-11-13 07:55:33 +01:00
Marco Cawthorne 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
Marco Cawthorne 40da8b09f9
NSPhysicsEntity: Filter out the various damage types when applying force upon
the ent taking damage.
2021-11-10 13:06:57 +01:00
Marco Cawthorne c7845fd694
NSRenderableEntity: m_iBody should be applied to the first two geomset groups (for now)
to deal with funky GS model behaviour.
2021-11-10 10:42:52 +01:00
Marco Cawthorne 7d717779b3
NSRenderableEntity: Fix "body" key not being read in SpawnKey() 2021-11-10 09:50:59 +01:00
Marco Cawthorne 568716ca78
NSEntity: Check .scale before applying setsize() in case someone's funny 2021-11-10 03:00:09 +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 93d46022fa
HLMaterials_Load: Fix typo that prevented us from adding an processed
texture name to our hash table
2021-11-06 07:31:51 +01:00
Marco Cawthorne 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
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 2484f6c283
func_rotating: Set think and nextthink to something in order for an infinite
avelocity to work. Great.
2021-11-04 00:01:38 +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 0a8dbd0edb
Menu-FN: Skip intro page if we're playing with steambg in the liblist.gam. 2021-11-01 21:43:01 +01:00
Marco Cawthorne 69d58edbb6
trigger_multiple: Implement the output "OnEndTouchAll". Needs stress-testing. 2021-11-01 02:38:24 +01:00
Marco Cawthorne 2a23eebc79
NSRenderableEntity: Render RM_SOLID rendermode ents invisible when m_flRenderAmt is 0. 2021-10-31 20:07:56 +01:00
Marco Cawthorne 908a9fd524
GS-EntBase: Add initial implementation of func_areaportal. 2021-10-31 19:52:55 +01:00
Marco Cawthorne fe15241b2d
GS-EntBase: add PortalOpen/Close methods to func_door and func_door_rotating
which keeps track of our areaportal state more reliably.
2021-10-31 19:15:32 +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 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
Marco Cawthorne 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
Marco Cawthorne 98d9f8f618
Sound: Convert legacy attenuations to Q unit radii upon parsing. 2021-10-23 13:45:59 +02:00
Marco Cawthorne 090edf53ff
NSTrigger: Make sure SpawnKey sets 'target' on the client progs too.
prop_rope: Fix the ropes not looking towards the right direction.
2021-10-23 12:40:35 +02:00
Marco Cawthorne f5a8ec8ef3
Added support for the triggers/think states across Save/Restore functionality 2021-10-23 01:00:15 +02:00
Marco Cawthorne 4c2b37c34d
NSEntity: Save/Restore behaviour for some more fields. 2021-10-22 21:20:22 +02:00
Marco Cawthorne fa5cdd5a80
Initial commit of the Save/Restore system, this is the first reference
implementation of QuakeC controlled save-files and SV_PerformLoad() and
SV_PerformSave that Spoike added into FTEQW for Nuclide.
2021-10-22 20:51:51 +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 64eb0cc11d
PMove: Be more aggressive with our unstuck function. 2021-10-21 21:27:58 +02:00
Marco Cawthorne ac8eefc313
NSEntity: Fix a very bad bug that caused Client entities to not parse
any fields through SpawnKey.
2021-10-21 00:36:15 +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 e53a7a33e2
TraceAttack: Accumulate trace_surface_id's into g_multiDamage_HitBod
so we keep track of which body types we hit
2021-10-16 21:28:03 +02:00
Marco Cawthorne 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
Marco Cawthorne 736ecb61f8
TraceAttack: check surfaceflags on world traces, m_iMaterial on anything
else.
2021-10-15 09:37:51 +02:00
Marco Cawthorne 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
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 574980bb1d
CGameRules: Now incorporates DamageApply and DamageRadius, thus making you
able to have gamerule specific logic for inflicting damage to entities.
2021-10-07 23:30:21 +02:00
Marco Cawthorne dd94d7d75f
View: Move muzzleflash precaches out to be game specific. 2021-10-06 22:00:23 +02:00
Marco Cawthorne 3d7e132699
CBaseEntity: add SetParent and ClearParent Inputs for level designers. 2021-10-04 13:56:18 +02:00
Marco Cawthorne 726332c78e
CBaseEntity: Add Ignite(), Exinguish(), IsOnFire() methods according to the
Source 2004 spec (controllable lifetimes etc.)
2021-10-04 13:22:40 +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 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
Marco Cawthorne 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
Marco Cawthorne 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
Marco Cawthorne 5439bfb59b
CBaseEntity: Mark some methods as nonvirtual, fix some regressions with
func_healthcharger/recharger, trigger_gravity
2021-09-22 20:56:20 +02:00
Marco Cawthorne 451beedb0c
CBasePhysics: add support for explosions upon destruction, provided via
propdata.
2021-09-21 21:11:02 +02:00
Marco Cawthorne 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
Marco Cawthorne f34b78b11c
CBaseMonster: Fix being able to push monsters around when you're standing on them 2021-09-17 20:41:48 +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 3cc01ca512
CBaseMonster/NPC: Tweak what qu/s speed is considered falling 2021-09-17 01:24:47 +02:00
Marco Cawthorne 211a28692b
CBaseMonster: Add FALLING flag, and FallNoise() method so monsters/npcs can
specify what to do/play when they start falling.
2021-09-17 00:41:58 +02:00
Marco Cawthorne 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
Marco Cawthorne 1764677394
Add hacks to func_door(_rotating) that deal with 'wait' being 0. 2021-09-16 20:26:03 +02:00
Marco Cawthorne 2cebd560c3
multi_manager: Remove old debug prints 2021-09-16 19:19:22 +02:00
Marco Cawthorne 56a616ec8b
CBaseEntity: Add reliable methods to query what certain attributes where
when the entity first spawned. (e.g. GetSpawnOrigin())
2021-09-16 17:34:56 +02:00
Marco Cawthorne cba54d3e2b
Added crossprint, changed input_sequence from int to float as
it's now integrated into the engine, however as a float (blame DP)
2021-09-15 22:44:31 +02:00
Marco Cawthorne 034575ac87
Plugins: chatsounds.dat will now look for any definitions
file named chatsounds_*.txt.
2021-09-12 12:19:28 +02:00
Marco Cawthorne 81116646e4
Sound_Distance: Use pointsound, because the engine may do a funny
with channels and whatnot in the OpenAL backend. It works when
no entities are involved.
2021-09-12 01:17:26 +02:00
Marco Cawthorne ab34230016
GS-EntBase: func_door_rotating gets the 'locked_sound' too. That's
it for today.
2021-09-12 01:11:36 +02:00
Marco Cawthorne eda2e3e751
GS-EntBase: Implement 'locked_sound' in func_door. 2021-09-12 01:06:45 +02:00
Marco Cawthorne c9d502f364
GS-EntBase: env_shooter's Respawn should set .think to __NULL__
to avoid potential Respawn() calls not working as expected.
2021-09-12 00:30:37 +02:00
Marco Cawthorne dfa7e32eca
CBaseNPC: Don't allow us to 'Speak' or 'Sentence' when we're dead. 2021-09-12 00:21:28 +02:00
Marco Cawthorne f884b3d35d
Separate networking between CBaseEntity and CBaseMonster, needs
cleaning.
2021-09-12 00:13:24 +02:00
Marco Cawthorne 10b2ff1fca
Add setorigin_safe(), which is just like setorigin but pushes
entities upwards out of the ground.
2021-09-12 00:12:55 +02:00
Marco Cawthorne b8de87d45c
func_pushable: Mark collision-helper as non-solid upon breaking. 2021-09-12 00:11:12 +02:00
Marco Cawthorne d4fe258d62
prop_vehicle_driveable: Fix QUAKED definition classifying it as
a brush entity, oops.
2021-09-11 22:46:29 +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 8ba5bc56d2
Sound: Added 'distshader' keyword support... which will play a
another sound definition at global attenuation (explosions like this)
2021-09-02 10:10:27 +02:00
Marco Cawthorne 4a2cde56cc
Clean up pseudorandom() a bit. 2021-09-02 09:47:48 +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
Marco Cawthorne fd05c2419c
Minor cleanup of SendFlags assignments, fix for 'sv respawn_ents' affecting players. 2021-09-01 22:11:30 +02:00
Marco Cawthorne f0957141cc
CBaseEntity: Add inputs for 'Kill' and 'KillHierarchy' 2021-09-01 21:39:21 +02:00
Marco Cawthorne 1657ff3e29
GS-EntBase: Move I/O system into CBaseEntity, add Skin, Disable/EnableShadow inputs... 2021-09-01 21:30:10 +02:00
Marco Cawthorne 57f1408b8c Add UpdateView() to CBaseVehicle, to let vehicles override the
camera properties in CSQC_UpdateView before rendering.
2021-09-01 15:19:50 +02:00
Marco Cawthorne 0bc83d289d Menu-FN: Add r_pixelscale, to be used in combination with r_autoscale 2021-08-29 21:41:31 +02:00
Marco Cawthorne 2377734e60 Client: Remove drawpic and drawsubpic wrappers. 2021-08-29 19:42:45 +02:00
Marco Cawthorne 6cea322f6a base_player: Network v_angle[1] along with angles[1] 2021-08-29 18:28:11 +02:00
Marco Cawthorne 42b1abf668 Menu-FN/FS: Only parse sprays from logos/, not root of mod-dir
anymore. Users with giant BMP screenshots will rejoice
2021-08-29 09:53:36 +02:00
Marco Cawthorne 34505bcacf GS-EntBase: Fix crash with vehicles by networking them separately
from CBaseEntity, which will assign the needed client-side input
method for prediction
2021-08-28 21:25:38 +02:00
Marco Cawthorne 4952e7fbe0 Menu-FN & GLSL: Hack to allow for .colormap style top/bottom color
onto vertexlit entities. Requires .colormod[2] to be 2.
Used by the menu with MODEL_PREVIEW.
2021-08-27 21:52:41 +02:00
Marco Cawthorne 6de82ca18c Menu-FN: if a menu.dat is compiled with MODEL_PREVIEW defined,
we'll use a 3D player-model previews instead of the image based one
2021-08-27 21:15:57 +02:00
Marco Cawthorne e28de86415 Call DSP_UpdateSoundscape(), seems I forgot all about it! 2021-08-27 11:35:59 +02:00
Marco Cawthorne be0df99c8d Menu-FN: Add WEBMENU define, to get rid of all the filesystem
searches related to mods and packages for potential web builds
2021-08-23 11:04:56 +02:00
Marco Cawthorne 76b26fd3af func_brush: Clarify default state in the QUAKED description 2021-08-19 19:11:46 +02:00
Marco Cawthorne d4fccac03f Work towards making vehicles predicted, this is ongoing. 2021-08-19 17:54:08 +02:00
Marco Cawthorne 62b5e300d7 Set default physics cvars up on init, as the engine has some set to "" and
thus renders our autocvar definitions useless.
2021-08-14 09:13:27 +02:00
Marco Cawthorne f562991ada Clean-up defines for physics vars. Those are handled elsewhere... 2021-08-14 08:49:40 +02:00
Marco Cawthorne a3e0cceba0 GS-Entbase: Add detailed QUAKED definition for light_environment! 2021-08-12 21:34:32 +02:00
Marco Cawthorne 0d759c724c Menu-FN: Support for mIRC color codes in the Chat-Room function (fg only) 2021-08-12 12:36:48 +02:00
Marco Cawthorne fbf6ee7367 Switch from iqmtool to vvmtool. 2021-08-10 12:07:09 +02:00
Marco Cawthorne c7004625ae Menu-FN: Add LOGO_STATIC, rename LOGO to LOGO_AVI. Allowing mods to have
non video menu headers
2021-08-08 14:06:26 +02:00
Marco Cawthorne 844c29bf23 Menu-FN: Off-load font definitions into external .font files, like cgame 2021-08-08 13:54:05 +02:00
Marco Cawthorne 0cd6694c32 Menu-FN: Parse locale file info, then gfx/shell definition overrides to
allow for proper translations of the menu system.
2021-08-08 12:12:17 +02:00
Marco Cawthorne fb63b4f774 GS-EntBase: Fix rendermodes for more complicated entities, ts_bikini will
now display properly.
2021-08-08 07:47:20 +02:00
Marco Cawthorne 1230a6d636 prop_rope: Fix PVS culling. It may be more aggressive now, so fix your maps. 2021-08-08 06:51:57 +02:00
Marco Cawthorne ca9e42a49c Add 'testPointLight' command. 2021-08-06 08:46:12 +02:00
Marco Cawthorne 9fb574d920 CBaseEntity: Fix error for when games are not compiled with GS_RENDERFX 2021-08-03 07:15:25 +02:00
Marco Cawthorne 0709688f9f Add base/default.cfg, some fallback menu assets. 2021-08-02 22:36:36 +02:00
Marco Cawthorne 3ca7b5451c Menu-FN: set create-server maxplayers to 8 when cvar is at 1, search pak
archives in reverse for liblist etc. files to ensure we read the latest +
more fixes
2021-08-01 11:49:00 +02:00
Marco Cawthorne 0ca3d03927 Remove some debug stuff. 2021-08-01 11:21:24 +02:00
Marco Cawthorne 1ec3cf2e8e Decouple Camera/Viewmodel effects from src/ into base/src/ 2021-08-01 08:53:21 +02:00
Marco Cawthorne 3ef55c5e48 build_engine.sh: iqm has been renamed to iqmtool, so adjust those basenames 2021-07-20 12:19:27 +02:00
Marco Cawthorne 3b0ad9468a Menu-FN: Fix broken training map button. 2021-07-19 08:37:08 +02:00
Marco Cawthorne affa7b4a0c Client: add camera.qc and viewmodel.qc, better restructure how we apply
effects to the view. Add CVARs v_cambob, v_camroll, v_bobstyle...
2021-07-19 08:36:19 +02:00
Marco Cawthorne 37c5c6efdd GS-Entbase: Make sure we use Set*() functions for networked fields all the
time to notify clients of any changes
2021-07-19 08:34:46 +02:00
Marco Cawthorne 50c3f27a69 GS-Entbase: Document spawnflags throughly in QUAKED comments. 2021-07-17 21:04:34 +02:00
Marco Cawthorne d744bf2272 GS-Entbase: QUAKED comment improvements for level editors 2021-07-14 11:49:30 +02:00
Marco Cawthorne 9798e0c91b QUAKED light_surface, a new vmap-only entity that enables you to
quickly add map-specific material overrides for the purpose of lighting.
It's similar to the "_surfname" key in tyrutils_ericw, but it is more
advanced than that.
2021-07-12 10:17:10 +02:00
Marco Cawthorne 8a2820f15b func_brush: Ironed out most of the behaviour, thanks Xylemon for creating
a great test map documenting how this entity should behave in Source.
2021-07-12 10:15:00 +02:00
Marco Cawthorne e13323e07d Client: when 'buildcubemaps' is running, make sure the views are centered
at all times to avoid FTE dumping weird projections
2021-07-09 22:18:25 +02:00
Marco Cawthorne 60313aa3ce GS-Entbase: env_particle needed setorigin() and setsize(), since that's
how FTE will now set a pvs sample in CSQC
2021-07-09 22:16:36 +02:00
Marco Cawthorne 3f3e61689d GS-Entbase: Move client/worldspawn to shared/worldspawn, defined QUAKED
comments that we encourage using for new maps
2021-07-03 12:42:33 +02:00
Marco Cawthorne 03ecfbabfb Menu-FN: Don't push the updater into anyones face right now until this is
rock-solid under the hood
2021-07-02 23:42:03 +02:00
Marco Cawthorne 3d236a64ed Client: console command 'dev_sunpos' will now also report the sunangle and
pitch values for a light_environment entity.
2021-07-02 13:43:58 +02:00
Marco Cawthorne dc592c1deb Client: Muzzleflash will now follow the viewmodel angle, in case it's
a 3D model (The Wastes)
2021-07-02 11:16:57 +02:00
Marco Cawthorne 3a69435a6b Platform: Update test_lightwarmth.bsp/map 2021-06-29 22:27:25 +02:00
Marco Cawthorne 334f880462 Menu-FN: Remove cvar_set line overriding scr_sshot_type 2021-06-29 19:56:20 +02:00
Marco Cawthorne 767f610e5a light_dynamic: normalize color values for static dlights 2021-06-29 12:16:52 +02:00
Marco Cawthorne 9309aef925 Client: Remove redundant addentity() calls from predraws of entity classes that
don't require drawing of a modelindex.
2021-06-29 10:53:36 +02:00
Marco Cawthorne 883a64b744 Remove ftebug_checkpvs(), undefined behaviour was causing things to pop
in and out of existence. There was no fault with FTE's implementation after
all. Change func_dustmotes, prop_rope and env_glow to querying player pos
more reliably.
2021-06-29 10:47:51 +02:00
Marco Cawthorne 97bc849abe Add cvar ftebug_checkpvs, to see work around something that hasn't been
fixed yet.
2021-06-28 19:52:36 +02:00
Marco Cawthorne b0755d36cb Way-Menu: Move 'remove nearest' into the waypoint creation menu for
convenience
2021-06-27 22:13:07 +02:00
Marco Cawthorne 4d042ea062 Client: Font_LoadFont() will now have some credible defaults as a fallback. 2021-06-27 09:56:25 +02:00
Marco Cawthorne 88e5084f38 Client: Added Entities_RendererRestarted, giving entity classes a chance
to reload their assets. env_glow and prop_rope support in this commit.
2021-06-27 09:55:48 +02:00
Marco Cawthorne e42b714458 Client: Added Font_LoadFont() as a wrapper for loadfont(), which will
parse definitions located in the filesystem instead of hardcoding font
paths and sizes.
2021-06-26 21:45:46 +02:00
Marco Cawthorne fc63f9af55 Menu-FN: disable models/spray widgets in m_customize if we've got none. 2021-06-26 17:14:00 +02:00
Marco Cawthorne c0050b9798 prop_static: Only MakeStatic if avelocity isn't set. 2021-06-26 10:25:46 +02:00
Marco Cawthorne c55317711c trigger_hurt: Make damage timer relative to the entity, not relative to
the trigger itself.
2021-06-18 22:59:54 +02:00
Marco Cawthorne 7f00e9354d Add shared/platform.h which will send hints as to what target platform
we're dealing with (pc, touch, web, console etc.)
2021-06-18 09:26:24 +02:00
Marco Cawthorne 75dfffaf4b func_pushable: only run physics routine when velocity is > 0 2021-06-18 09:24:58 +02:00
Marco Cawthorne de63f37a52 Call Math_FixDelta before networking a bunch of different entity angles. 2021-06-16 11:56:28 +02:00
Marco Cawthorne 12e02bd019 multi_manager: clean up the way we trigger our sub-triggers, avoid string
tokenization
2021-06-16 11:53:29 +02:00
Marco Cawthorne dabe93a9ce func_wall_toggle: Fix networking bug, we weren't using SetModelindex() 2021-06-16 11:52:59 +02:00
Marco Cawthorne ef66642c7f Server: Prevent the engine from handling spawnflags or else it'll remove
entities depending on mode/difficulty
2021-06-16 11:52:36 +02:00
Marco Cawthorne ff39eda49d Menu-FN: Keep track of where games got their gameinfo from and accomodate
the different game/mod switching methods in case of manifests
2021-06-15 10:49:57 +02:00
Marco Cawthorne 971b76f938 Menu-FN: Added support for parsing gameinfo.txt from Source Engine games 2021-06-13 09:04:29 +02:00
Marco Cawthorne 95707a005b Menu-FN: If the engine somehow doesn't report the game we're currently
playing as a valid dir, append it at the end manually.
2021-06-13 07:55:58 +02:00
Marco Cawthorne 64749cddda Menu-FS: Add support for gameinfo parsing via manifests 2021-06-12 20:39:56 +02:00
Marco Cawthorne 17368be5e7 Moved the PMove code into the base_player class, so mods can override
sections at will
2021-06-08 15:30:47 +02:00
Marco Cawthorne 3efae50481 GS-Entbase: Make use of setmodelindex() instead of directly assigning
modelindex.
PMove: Hack to get stop gravity=0 from breaking runstandardplayerphysics if
CUSTOMPHYSICS is not defined
2021-06-08 09:17:35 +02:00
Marco Cawthorne cc3a652119 GS-Entbase: Remove duplicate func_lod definition for QUAKED 2021-06-07 11:39:02 +02:00
Marco Cawthorne b2c15d8fa4 build_editor.sh: Add check for env variable BUILD_CLEAN 2021-06-04 13:03:26 +02:00
Marco Cawthorne 0a5e254963 Menu-FN: Fix typo in strings.cpp, thanks to 'unsettled'! 2021-06-04 12:59:32 +02:00
Marco Cawthorne af139751e0 setmodel(): verify if model exists in PATH and set it to an error one if
it's not present.
2021-06-01 12:40:53 +02:00
Marco Cawthorne 243c875a3f CBaseTrigger: Add support for Source Engine's FireUser/OnUser 1-4 trigger
inputs/outputs.
2021-05-29 10:52:47 +02:00
Marco Cawthorne a4a40be8ae Menu-FN: Parse "minversion" command from liblist.gam.
Base: Document example liblist heavily.
2021-05-28 21:24:57 +02:00
Marco Cawthorne 407e2deb89 Menu-FN: Allow GAME_DIR to be overriden at a progs.src level 2021-05-28 19:35:41 +02:00
Marco Cawthorne 2082f1355a Menu-FN: Parse liblist.gam files instead of relying on manifests outright. 2021-05-28 10:26:42 +02:00
Marco Cawthorne 42960cda05 GS-Entbase: Initial func_pushable implementation 2021-05-27 09:44:01 +02:00
Marco Cawthorne 03b16ff905 Add Vox_Sentence_Broadcast() and Vox_Sentence_Single 2021-05-25 10:25:20 +02:00
Marco Cawthorne 4964ba3859 Shared: Give base_player class a constructor. 2021-05-25 08:35:22 +02:00
Marco Cawthorne 6c59c47c93 Menu-FN: Top/Bottom color sliders should only be visible when gameinfo says
nomodels is 0.
2021-05-25 08:34:35 +02:00
Marco Cawthorne c821112d05 Menu-FN: Store top and bottomcolor in a global and recalculate the RGB values only
when the sliders are used.
2021-05-22 15:42:41 +02:00
Marco Cawthorne 4e20200f46 Menu-FN: Set platform defaults upon init, in case the engine does not exec
platform_defaults.cfg - however only crucial ones that should not be
touched anyway.
2021-05-22 15:21:28 +02:00
Marco Cawthorne 09528c2944 Add support for top/bottom color on players and viewmodels.
Fix func_breakable's sound shader from precaching non existing sounds.
2021-05-20 16:01:07 +02:00
Marco Cawthorne 2d17321554 Small fix to avoid spam in my inbox. 2021-05-17 20:15:49 +02:00
Marco Cawthorne fbbcfd5d5f BotLib: Attempt to duck when we're between 512 and 1024 units 2021-05-16 23:08:41 +02:00
Marco Cawthorne 448b9bd20d Client: MakeStatic func_wall ents where we can do it on.
Shared: Bench PMove_Run using the engines builtin runstandardplayerphysics
2021-05-16 23:08:08 +02:00
Marco Cawthorne c5cea7a162 Base: Weapons now track weight (for Weapons_SwitchBest)
BotLib: Add CreateObjective() method that can be overridden
2021-05-12 15:42:20 +02:00
Marco Cawthorne eb3603335e GS-EntBase: func_ladder moved into shared/, will now avoid networking
entirely if it can be avoided.
2021-05-10 19:05:57 +02:00
Marco Cawthorne 728b261471 func_wall: Change MOVETYPE_NONE to MOVETYPE_PUSH 2021-05-10 14:52:41 +02:00
Marco Cawthorne aef65b5749 Shared: Add frametime parameter to Animation_TimerUpdate(). 2021-05-10 12:22:12 +02:00
Marco Cawthorne 368e19f784 Spectator: Make sure we set spec_mode and spec_ent in the constructor to
some in-bound defaults. Fixes crash in HUD_Spectator()
2021-05-10 12:21:40 +02:00
Marco Cawthorne 1485544b91 Base: Get rid of g_eAttacker, which had been replaced by g_dmg_eAttacker.
Go over TraceAttack and make it combine multiple Damage_Apply calls into
one.
2021-05-10 11:33:31 +02:00
Marco Cawthorne a3ecd78f17 CBaseMonster: support for spawnflag MSF_IGNOREPLAYER (64). 2021-05-10 08:14:10 +02:00
Marco Cawthorne f4bbfe2e69 Revert commit 29e0e82f48 2021-05-09 22:02:19 +02:00
Marco Cawthorne 29e0e82f48 Server: Don't network RM_TRIGGER ents unless the developer cvar is 1. 2021-05-09 10:03:10 +02:00
Marco Cawthorne e0a2f47f4d Dereference pSeat and pSeatLocal to __NULL__ instead, it's not like we ever
caught an error with the previous assignment anyway.
2021-05-08 23:06:11 +02:00
Marco Cawthorne 64745eb23c Overhaul prediction routines by boxing the generic client attributes away
from the game specific code. Add some helper macros... clean a whole bunch
up.
2021-05-08 17:44:16 +02:00
Marco Cawthorne 8e4ec974e0 Menu: Add gameinfo_steambg manifest setting, so we can support background
images for games designed for the SteamUI-era
2021-05-08 17:20:30 +02:00
Marco Cawthorne 76507b3e9e Client: Handle EFX_Shutdown() for OpenAL Environmental FX 2021-05-07 16:29:24 +02:00
Marco Cawthorne 31ae020cba Plugins: Add example plugins.txt config, add support for inline comments,
move searchpath to gamedir/plugins/
2021-05-07 14:15:08 +02:00
Marco Cawthorne df2525aae6 GS-Entbase: Add BASEFL_CHANGED_VELOCITY and make sure velocity is networked
when required.
2021-04-27 17:45:13 +02:00
Marco Cawthorne eaff488dc2 Client: Add an OSD for various EFX debug info when s_al_debug is enabled. 2021-04-27 12:53:21 +02:00
Marco Cawthorne 69caffe91c Fix typo where flReflectionsPan isn't getting set in the EFX loader. 2021-04-23 11:43:40 +02:00
Marco Cawthorne 96a748f189 Server: Flush 'skyname' serverinfo before setting the .bsp one, to prevent
it from bleeding to maps that don't define 'skyname' from old configs.
2021-04-22 12:14:56 +02:00
Marco Cawthorne ead2ab6a6b EFX/env_sound: Add bound checks for legacy roomtypes. 2021-04-22 11:44:53 +02:00
Marco Cawthorne f09f5833e0 Introduced the new OpenAL EFX handling subsystem. It's fully user-definable
via plain-text definitions and allows even legacy/GoldSrc content to take
advantage of it.
2021-04-22 11:33:48 +02:00
Marco Cawthorne 74f6d1a033 Client: Remove the last reference to g_iWorldInitialized 2021-04-22 01:59:37 +02:00
Marco Cawthorne ce8731079f func_door(_rotating): Support for separate sound shaders handling opening
and closing of doors. See QUAKED comment in WorldSpawn for details.
2021-04-21 10:03:18 +02:00
Marco Cawthorne d37c4d9d0a env_sound: Remove antiquated check for g_iWorldInitialized and change an
ifdef'd print to a dprint.
2021-04-20 19:54:11 +02:00
Marco Cawthorne 8ec9960264 Revert "Materials: Support for Opposing Force its SNOW identifer for surfaces in"
This reverts commit b0bc59a49c.
2021-04-19 11:30:50 +02:00
Marco Cawthorne b0bc59a49c Materials: Support for Opposing Force its SNOW identifer for surfaces in
materials.txt
2021-04-19 11:23:30 +02:00
Marco Cawthorne 27b5b59f0d Server: Precache step_sand.left/right, add to footsteps.sndshd.
Fix some botlib waypointing strings.
2021-04-18 08:24:55 +02:00
Marco Cawthorne da62296b9c Menu-FN: Added cvar menu_helptext_size, don't expect this one to be around
forever, it'll be used to detect quirks in freetype scaling.
2021-04-15 20:46:54 +02:00
Marco Cawthorne 07094f1cb4 CBaseMonster: Cancel out of AttackThink if m_eEnemy is not set 2021-04-10 23:25:06 +02:00
Marco Cawthorne 929a8f8630 GS-Entbase: Fix missing return on SendFlags in func_wall and func_illusionary 2021-04-10 23:06:59 +02:00
Marco Cawthorne 25f657532c Server: Limit hitbody sound in traceattacks to entities that can actually bleed, not just take damage 2021-04-10 22:49:30 +02:00
Marco Cawthorne 6da1f3c4fa GS-Entbase: massive optimisation - any func_wall and illusionary without a
targetname will not be networked and handled 100% client-side.
2021-04-10 09:35:06 +02:00
Marco Cawthorne fca8620cba Server: Physics variables are now controlled via sv_ cvars like they
usually are in idTech, however we're now checking them every frame and
updating the networked infokeys in question
2021-04-06 12:22:32 +02:00
Marco Cawthorne 6e38bac564 Server: add support for more ways of loading HLBSP material definitions.
Explanation is provided under docs/hlmaterials, about the ways you can go
about this and which methods provided by the community are supported
2021-04-06 10:43:38 +02:00
Marco Cawthorne 44ab18793c Rearrange how we execute and time our player animation logic 2021-04-06 09:18:17 +02:00
Marco Cawthorne 94762dfa89 Merge branch 'master' of ssh://git.code.sf.net/p/freecs-1-5/code 2021-04-04 23:18:44 +02:00
Marco Cawthorne dffc8f9ac5 GS-EntBase: RM_NORMAL and RM_SOLID no longer respect colormod and alpha overrides. Maps like de_railstation will
now look proper.
2021-04-04 23:17:35 +02:00
Marco Cawthorne eeda69f6d2 Client: Damage indicators now use the spriteframe() builtin for precaches 2021-04-02 08:35:54 +02:00
Marco Cawthorne e5ba0406fd Added pSeatLocal, which is like pSeat but games no longer break if upstream
Nuclide expects new fields. You might have to migrate some fields over.
2021-03-31 13:40:27 +02:00
Marco Cawthorne 14e3690cd4 Create platform/masters.lst and change it so menu-fn doesn't change the
sv_public cvar all the time.
2021-03-31 11:54:41 +02:00
Marco Cawthorne 9319e63619 View_AddEvent: Add hack to cache and verify we're playing the event only on our frame of choice 2021-03-30 07:30:33 +02:00
Marco Cawthorne b043b57ed5 Get rid of the View_EjectShell* functions I added last week and replace it
with the much cooler View_AddEvent() which allows for much more.
2021-03-29 21:52:53 +02:00
Marco Cawthorne 9c4487b2e9 Weapons_AddItem: Don't assign bitflag to inventory if pickup() returns 0 2021-03-28 12:16:31 +02:00
Marco Cawthorne 075033e93c func_breakable: fix typo in sound shader name 2021-03-27 09:15:02 +01:00
Marco Cawthorne 5b07ee41a9 Add damage_bullet sound shader definitions. Those are played when a bullet
successfully hits a hurtable body.
2021-03-27 09:09:10 +01:00
Marco Cawthorne 08a4080c66 Some minor spectate input code cleanup, make it so that we cache the last
valid player position so we don't get warped to [0,0,0] when a player being
tracked dies.
2021-03-27 07:50:40 +01:00
Marco Cawthorne ab355d6a52 Add drawrect(), a simple helper for drawing rectangles with specified
thickness
2021-03-27 07:49:13 +01:00
Marco Cawthorne 2c7f540787 botlib: add USER linkflag. When a bot passes that link, he'll USE the
closest func_button nearby.
2021-03-27 07:48:46 +01:00
Marco Cawthorne cec4872994 Add modelevent_shell sound shader definitions, so mods can set shell eject
sounds.
2021-03-27 07:47:56 +01:00
Marco Cawthorne 95739c7a20 Basic spectator implementation for all games. 2021-03-24 07:50:30 +01:00
Marco Cawthorne 48d1b1ad0d Client: View_EjectShell is now replaced by three different variations. 2021-03-17 14:34:26 +01:00
Marco Cawthorne 69b087c7e4 Client: add View_EjectShell(); and integrate it. 2021-03-17 13:24:00 +01:00
Marco Cawthorne f553a79250 Util_FixModel: Add another hack to fix hostages spawning on cs_747. 2021-03-17 11:49:41 +01:00
Marco Cawthorne 3d1041fcf6 Added ClientGame callbacks for PreDraw and PostDraw calls. 2021-03-17 06:24:38 +01:00
Marco Cawthorne 00141d5ab0 Add View_PreDraw() and move View_Stairsmooth() into that. 2021-03-17 06:12:50 +01:00
Marco Cawthorne 0207b52d0f func_breakable: Add indepth explanation of SF_TRIGGER in the QUAKED comment 2021-03-13 04:57:06 +01:00
Marco Cawthorne b49815872c Sound Shaders: Exit out when we attempt to play a shader that hasn't been
precached.
2021-03-13 04:24:53 +01:00
Marco Cawthorne 923f0f424b func_door_rotating: Don't touch door when it's inbetween two positions.
FIXME: How does HL handle this? Test that out.
2021-03-13 04:24:16 +01:00
Marco Cawthorne 47149d46f0 func_door_rotating: Handle possible NAN on calculating an avelocity, this
fixes the door from freezing in rare situations
2021-03-12 02:49:26 +01:00