23b671956f
Weapons_AddItem: Only count NSGameRules' MaxItemPerSlot() when we're adding a new weapon
2023-02-14 22:02:47 -08:00
86dfb3ff1a
Fix various compiler warnings.
2023-02-14 12:54:06 -08:00
c939e790e8
Menu-FN: ifdef the reference to g_ePreviewModel out in cz_cxHQModelChanged
2023-02-12 13:02:35 -08:00
9738a6a525
prop_dynamic/static: support for 'sequence' key
2023-02-11 22:38:23 -08:00
370396a415
Menu-FN: Parsing user.scr and settings.scr in Advanced options is now mostly done. Still need to support LIST type layout elements.
2023-02-11 17:10:43 -08:00
7518e743b9
Menu-FN: further work to make the Multiplayer > Customize menu more accurate
2023-02-10 13:50:36 -08:00
943897e5ba
Menu-FN: add options in the Multiplayer > Customize menu for HQ models (with preview) and voice chat settings
2023-02-09 19:08:47 -08:00
53c8665b11
Menu-FN: update spray related infokeys upon init
2023-02-09 17:12:31 -08:00
8761b73e4a
NSGameRules: add some debug info for damage applications
2023-02-09 17:11:39 -08:00
0bf0fd42d1
Crosshair: terrible hack to deal with vid_conautoscale being inconsiderate
2023-02-09 17:11:00 -08:00
855daac7e7
Menu-FN: ensure g_iModInstallCache is set to -1 upon init to avoid Custom Game from being glitchy from a fresh install.
2023-02-08 15:55:13 -08:00
f0d77627ea
NSClientPlayer: Ensure .scale is reset upon spawning
2023-02-07 16:21:33 -08:00
65f21af405
env_beam, env_laser, prop_rope: Use GetEyePos() to assign the proper player view position
2023-02-07 16:21:01 -08:00
fb4e08c2bf
NSClientPlayer: fix the view_ofs check in EvaluateEntity()
2023-02-07 14:01:25 -08:00
daf8512aa2
NSTalkMonster: Don't greet non-friendly players.
...
NSMonster: Improvements to alerting, turning and what to do when they lose their target.
NSInteractiveSurface: Unbreak it by allowing it to spawn in CSQC
Server: Spawn AI nodes for info_player_{start,deathmatch} when no real nodes are present
2023-02-06 16:41:19 -08:00
099dba11f6
Client: some titles/text messages have an uppercase newline character. so handle those as well.
2023-01-23 16:44:18 -08:00
6aa3206d2b
Server: skip SV_RunClientCommand when our clients aren't fully initialized yet.
2023-01-23 00:12:35 -08:00
993c2a6ebc
Shared: Expose INPUT_BUTTON6 and INPUT_BUTTON7 so mods can define some extra movement/weapon inputs for clients.
2023-01-22 20:06:06 -08:00
46f6bfc1d3
Client: add r_showTexts to aid debugging of env_message and game_text entities
2023-01-22 20:03:22 -08:00
66b773508d
Client: add console command 'listTitles' to aid debugging of titles.txt entries
2023-01-22 20:02:46 -08:00
441079b30c
NSRenderableEntity: take RenderFX setting into account before culling some networked info
2023-01-22 20:01:52 -08:00
638825af56
NSEntity: add GetSpawnAge() and GetSpawnTime() methods, which communicate when an instance of an entity was brought into the world.
2023-01-22 20:01:24 -08:00
baadd35ffd
NSTimer: add method StopTimer() and invalidate any thinks during OnRemoveEntity()
2023-01-22 20:00:36 -08:00
5617000f77
NSClientPlayer: allow player to hold down Secondary attack after holding down Primary.
2023-01-18 21:31:36 -08:00
9accdcb68a
func_physbox: Use Disappear API call
2023-01-18 19:37:10 -08:00
655b5fa33e
NSEntity: add method IsFacing() which should make some common sneakish tasks easier.
2023-01-18 19:01:56 -08:00
fae4bc09e5
NSProjectile: some touchups in regards to the Spawned() method.
2023-01-18 17:33:09 -08:00
d562533111
NSProjectile: add AnimateOnce() method
2023-01-17 20:23:18 -08:00
fea5ed574f
Shared: add crandom() implementation into defs.h
2023-01-17 16:39:57 -08:00
19d7f30cc4
Replace some Hide calls with Disappear and we don't need this check in TalkMonster anymore
2023-01-17 13:37:03 -08:00
5f011a28dd
Shared: Removal of Game_Input().
2023-01-11 17:41:49 -08:00
179a95088f
NSGameRules: Add overridable methods ImpulseCommand(NSClient, float) and PlayerRequestRespawn(NSClientPlayer).
...
Game_Input, the game specific function every game had to implement will be
deprecated to streamline the overall codebase. Migrate custom impulses into your gamerule overrides.
This will make it much easier to separate cheat impulse from the multiplayer game too.
2023-01-11 17:12:20 -08:00
1069468be1
Client: add cvar net_debugUpdates, to show which entity updates.
...
NSSurfacePropEntity: Add method: TimeSinceDeath()
Also further improvements to consistency of cvars, etc.
2023-01-08 13:18:57 -08:00
0ac1bc4b68
NSEntity: Add method CanSpawn(bool) which will be used to determine mainly if an entity is to be spawned on the client or server module (but it can also let a class handle under which other conditions it spawns)
...
NSEntity: move RestoreComplete() into NSIO because NSGameRules needs this.
2023-01-06 13:23:48 -08:00
b2925d46e4
Lots of small clean ups and microoptimisations. ambient_generic has also been fixed in multiplayer and made to save more bandwidth.
...
Rename a bunch of cvars to be more in a more consitent style similar to later id Tech games.
2023-01-05 23:41:48 -08:00
6ee21bc0ea
NSEntity: add attribute m_bIsBrush, which will be set if the entity is using a brush model.
2023-01-05 22:30:49 -08:00
dbf511dfb9
NSClientPlayer: add extrapolation of other clients, should be a lot smoother players all around now.
2023-01-05 15:31:25 -08:00
d7012bff5b
Remove debug print that is no longer needed.
2023-01-05 11:36:31 -08:00
2c5bf43c58
Fixed spectator inputs getting stuck and physics being run twice, due to the recent changes to SV_RunClientCommand.
2023-01-02 18:10:20 -08:00
534b249ac4
Client: Call Weapons_PreDraw() inside NSClientPlayer's predraw.
2022-12-31 17:49:15 -08:00
46eae742cb
VGUI: Make sure defaults are filled into the attributes inside Spawned() for inherited ones.
2022-12-30 18:01:47 -08:00
b356994beb
NSTrigger: SetTeam() will now assign an InfoKey to the target, if it's a client.
2022-12-30 13:54:28 -08:00
4322f1fd93
GS-EntBase: prevent light entities from overriding the first built-in lightstyles.
...
worldspawn: Assign two more lightstyles that Half-Life registers.
2022-12-30 13:53:42 -08:00
1bd9a5ea01
Menu-FN: Respect gameinfo_chatroom if it was set from a manifest override.
2022-12-30 12:09:23 -08:00
7fe51a3fa5
Platform: Fix missing return value change for Achievement_RequestStarts
2022-12-30 11:54:07 -08:00
27b0c26a12
Documentation improvements for platform, vgui etc. headers and files.
2022-12-30 00:15:10 -08:00
88131dbb9a
NSClient: add {Set,Get}InfoKey() methods.
2022-12-30 00:12:36 -08:00
3c71b49b49
Client: Add Cross_ helper functions. This will take care of common crosshair specific rendering tasks, as well as handle third-person and XR versions of crosshairs.
2022-12-28 16:48:57 -08:00
633046d28e
NSClient: Rename ClientInput() method in NSClient to ProcessInput(), as well as add SharedInputFrame() that can be overriden by the game.
2022-12-28 16:47:44 -08:00
ce7cf4519f
Server: Set cvar s_nominaldistance to 1000 upon init. Dedicated server needs this to play sounds properly.
2022-12-28 15:15:30 -08:00
81ad389668
cycler: Set the bbox to be that of standing player
2022-12-22 22:48:52 -08:00
4f37e31677
Client: Fix /n to \n replacement mapping in fun-strings, used by game_text
...
and titles.txt type text overlays.
2022-12-22 17:29:05 -08:00
142d69b66a
Remove Game_RunClientCommand() entirely, as it will be replaced by a game-mode equivalent.
2022-12-22 16:54:11 -08:00
466787b3ff
env_shooter: set skin on the gib entity.
2022-12-22 16:53:41 -08:00
ff7ce15399
SV_ParseClientCommand: Forgot to pass the default case over to clientcommand(). That is now fixed.
2022-12-22 16:29:02 -08:00
6c8d785ce2
env_shooter: Respect rendering modes, also add support for the 'shootsounds' key. snark_pit will be more complete now.
2022-12-22 13:02:45 -08:00
1acbd8a34d
Remove calls to Game_ParseClientCommand with per-gamemode overridable ClientCommand() method within NSGameRules.
...
Also redo the way chat messages are handled, so mods don't have to implement it themselves all the time.
2022-12-22 11:53:15 -08:00
da4501a90d
multi_manager: m_iValue needs to be set TRUE on the multi_manager_sub.
2022-12-21 17:10:25 -08:00
3eb85ae400
Documentation improvements to various headers, also g_developer prints.
2022-12-21 17:09:35 -08:00
30bbede463
Client: Fix network error when receiving shake event as spectator.
2022-12-21 13:46:55 -08:00
2d911109cc
trigger_relay: Set m_iValue so that multisources will work properly that get targetted by them
...
trigger_auto: Delay the trigger of them in singleplayer until 1 player has joined
Misc cleanups. The 'Janitor Simulator' on TWHL should work now.
2022-12-14 16:51:16 -08:00
33295ff409
env_beverage/item_food: Fix item_food not rendering and or spawning.
2022-12-13 23:16:00 -08:00
94d5d5408c
GS-EntBase: Adjust QUAKED comments so they can be parsed by Doxygen.
2022-12-13 17:52:20 -08:00
dfcf0d183d
NSMonster: Gib properly using Disappear() instead of Hide()
2022-12-13 17:45:33 -08:00
711548465a
env_beam/env_laser: Visual overhaul of env_beam. env_laser now also rebased using my work on env_beam.
2022-12-08 14:58:30 -08:00
0f9439b956
env_beam: Initial implementation. Visual fluff still missing, but coming up!
2022-12-07 17:05:50 -08:00
67634bf6e5
env_beam: move from gs-entbase/server to gs-entbase/shared
2022-12-07 12:48:34 -08:00
56ec44700a
Lots of cleanup related to many entity classes to aid doxygen with generating documentation.
2022-12-06 15:04:07 -08:00
6f3a1d1d52
infodecal: set drawmask in the constructor, fixes decals not rendering.
2022-12-06 01:11:35 -08:00
0891d9ea65
Platform: Set net_masterextra1 to broadcast.
2022-11-30 22:25:08 -08:00
82653683ba
Client: add the following console commands for debugging: listModels, listSounds, listParticles
2022-11-30 17:51:07 -08:00
41ccbca2aa
GS-EntBase: Fix some more places where remove() was being called directly when it shouldn't be
2022-11-30 17:26:50 -08:00
b593c2694b
GS-EntBase: use Destroy() over remove() where applicable.
2022-11-30 16:55:17 -08:00
74b61f35ed
Print a warning + backtrace when we manually call remove() on an entity that hasn't been destroyed properly.
2022-11-30 16:47:24 -08:00
2c6da152ed
Clean up more and more warnings fteqcc yells about
2022-11-30 14:21:55 -08:00
29a1bea943
Misc consistency cleanups
2022-11-22 22:37:07 -08:00
2265047bfe
Fix a bunch of nonvirtual/virtual mismatching going on that's been caught by the new compiler.
2022-11-16 14:04:10 -08:00
ecf5988584
PropData: Breakmodels now spawn fully client-side! This will remove a lot of network overhead.
2022-11-14 19:50:23 -08:00
cbc8fda92a
PropData: Might as well extend the syntax to allow for more than just submodel specification. BreakModel text definition can now also override rendercolor, renderamt, rendermode and renderfx!
2022-11-11 17:06:35 -08:00
440f4b047f
PropData: Rewrite how BreakModel entries are precached, now that the model line no longer is just a path to a model.
2022-11-11 15:31:38 -08:00
8b15c59ecd
func_breakable: use BreakModel_Spawn instead of FX_BreakModel.
2022-11-11 15:04:33 -08:00
5f126516c6
Server: Add new global g_dmg_vecLocation, which gives an approximate damage impact location.
2022-11-11 15:04:11 -08:00
1b6cb974ed
PropData: Add Nuclide specific extension that allows developers to specify which submodels to use when spawning 'BreakModel' gibs.
2022-11-11 15:03:17 -08:00
39854c0740
NSClientPlayer: UpdatePlayerAnimation() is now calling when running player physics, and also run seperately for non predicted player entities during predraw.
2022-11-11 14:18:14 -08:00
298ba7a041
NSTraceAttack: offset decals a little when placing them near a wall so they don't count as inside of them on certain angles.
2022-11-10 17:21:56 -08:00
bb92aaf37f
NSClientPlayer: Fix ladder climbing sounds from not playing.
2022-11-10 15:41:42 -08:00
841e89e2c5
Physics_WaterMove: Fix the mistake of changing watertype to WaterLevel() which were two different things.
2022-11-02 14:44:26 -07:00
e9f735adc5
NSVehicle: Remove any velocity from the driver when they're attached to a vehicle.
2022-11-01 20:16:25 -07:00
003bc5d88a
Removal of Footsteps_Update outside of NSClientPlayer. Mods now have the full ability to override steps within the player class. Method name subject to change.
2022-11-01 19:54:56 -07:00
606edfadcc
Get rid of unused functions inside src/client/predict.qc that were long deprecated.
2022-11-01 19:23:18 -07:00
843dcc8284
Kill src/client/player.qc. We now have overridable methods dedicated for updating player animations, attachments and more inside NSClientPlayer.
...
Some of these APIs are still subject to change but they're being deployed in TW 1.35 right now.
2022-11-01 19:12:40 -07:00
2945e1f65d
Add support for Source Engine decal groups (scripts/decals.txt).
2022-10-27 20:04:11 -07:00
36fdd443d2
Change 'material' over to 'surfaceprop'. Implement new networked event EV_SURFIMPACT.
...
Surfaceproperty impacts are now fully done on the client. Server has no concept of
impacts beyond the point of announcing them.
The next step: NSTraceAttack should be fully shared between client/server so
that the local player doesn't need to be told about their own EV_SURFIMPACT events
by the server, thus saving a bit of bandwidth.
2022-10-26 12:50:08 -07:00
dcfdf531ce
Move the duties of hlmaterials.txt into surfaceproperties.txt, since Source has a 'gamematerial' keyword we should use instead.
2022-10-16 00:36:18 -07:00
f01e90ad2e
Merge material property definitions into the surfaceproperties system to streamline
...
everything more and to allow level designers custom properties without recompiling
the game-logic. This will also make it more Source Engine compatible.
2022-10-15 22:43:32 -07:00
db2d3b1730
Get rid of hlmaterials.qc by making the look-up happen fully within NSMaterial.qc as part of the newly unified material routines.
...
There's also a new file (hlmaterials.txt) that is subject to change which will allow you
to add many custom material definitions without hard-coding a thing. Which fixes conflicts between different GoldSrc games.
2022-10-15 20:32:40 -07:00
7ad6d9c457
Make games buildable again, caused by renaming Spraylogo and GameRules classes/files.
2022-10-14 15:49:59 -07:00
e499a7d484
Documented the Nuclide System (NS) classes.
2022-10-14 13:08:47 -07:00
d4ce7cb8c2
Documentation: started documenting all the functions in src/server/entry.qc
2022-10-10 12:30:31 -07:00
3a280f70f9
Documentation: Start documented all entry functions in src/client/entry.qc
2022-10-10 11:45:23 -07:00
45d58a8742
leave comment in base/mapcycle.txt
2022-10-03 14:43:52 -07:00
0713c390b9
Menu-FN: Force _pext_vrinputs to 0 upon init, as the physics will otherwise break. (FTEQW issue)
2022-09-25 16:29:20 -07:00
b92a3a9da5
PMove_Custom: Go over some checks, one trace_fraction check was wrong and caused us to not slide along rotating brushes (doors) properly.
2022-09-12 23:07:33 -07:00
3117042eef
NSRenderableEntity: give glowmod more precision over the network for shader enhancements...
2022-09-12 22:32:02 -07:00
2838984603
NSRenderableEntity: Network .frame1time whenever .frame changes.
2022-09-12 14:06:31 -07:00
b3755bf0a2
func_pushable: func_pushables shouldn't collide with anything but BODY type objects for now
...
to work around the collision issues on maps such as cs_estate
2022-09-12 14:01:51 -07:00
30195592ce
PMove_Custom: add LADDERFACING define so mods can decide whether clients have to face a ladder brush in order to climb it.
...
PMoveCustom_AccelLadder: calculate jump velocity depending on the direction facing the ladder.
2022-09-12 08:17:20 -07:00
843ef32908
PMove_Custom: unset the FL_ONLADDER flag when not directly facing a ladder
2022-09-11 14:14:40 -07:00
02a1218ee7
func_vehicle: unset any velocity applied to our driver, since they're sticking to us.
2022-09-11 13:56:11 -07:00
2aa6917026
Get rid of this debug line in NSTalkMonster
2022-09-10 11:21:13 -07:00
6c7e3e8c06
NSRenderableEntity: add new overridable method (void) HandleAnimEvent(float, int string)
...
Also fix the mouth-flapping on NSTalkMonster.
2022-09-10 09:56:15 -07:00
30a482e80e
NSVehicle: add two new overridable methods. (bool)PreventPlayerMovement and (bool)PreventPlayerFire
2022-09-08 13:59:18 -07:00
04fe295035
NSVehicle: don't change the drivers' movetype
2022-09-08 13:38:02 -07:00
9deb12b68d
func_breakable: This still used Hide() for some reason, changed to Disappear()
...
Misc cleanup.
2022-09-02 22:02:54 -07:00
5a7d082af7
Move touch handlers into NSTrigger, remove trigger_multiple's own version of the team check.
2022-08-31 15:18:06 -07:00
31bb9b4042
Abstract timers to make sure MOVETYPE_PUSH entities are handled without game/mod developers having to think much about them.
...
Also change rechargers to MOVETYPE_NONE instead of PUSH, as it won't be moving anyway.
2022-08-31 13:24:55 -07:00
05eb10904e
func_vehicle: Make it shared/predicted. The smoothest it's ever been!
2022-08-28 09:20:34 -07:00
1bb1f03167
Tweak item_pickup/drop behaviour a little
2022-08-27 22:07:03 -07:00
9e675c212d
Implement 'cleardecals' client command, as well as an SVC_CGAMEPACKET for servers to request clients' clear their decal cache.
2022-08-27 22:05:31 -07:00
27529eb3a6
NSTimer: Add SetupTimer(entity, void(), float, bool) and RunTimer() methods.
2022-08-27 11:21:11 -07:00
267a956ec9
NSEntity: add Disappear() method. Mods that used Hide() to remove an entity from the active game will have to switch to this instead.
2022-08-27 11:20:38 -07:00
7a252ad213
NSEntity: new methods to simplify a lot of common tasks added. ScheduleThink(void(), float) and WithinBounds(entity) will surely be helpful.
...
Went over gs-entbase/server and made sure to use the new Think handlers to safely deal with MOVETYPE_PUSH
and handle any fun edge cases where time may be 0.0f.
func_breakable has also been fixed, since the changed Show/Hide behaviour prevented
them from getting destroyed fully.
2022-08-26 15:39:00 -07:00
acaa918403
NSTimer: initial implementation of an object timer. Handles temporary (self garbgage collecting) timers as well.
2022-08-25 18:52:04 -07:00
c67e4b5276
NSView: move constructor and set the sensitivity defaults.
2022-08-25 18:35:20 -07:00
adecdb12f3
NSView: add get/set Sensitivity methods
2022-08-25 18:31:33 -07:00
146051dd67
Proper nonvirtual declarations for class methods.
2022-08-24 15:11:04 -07:00
a6da238e53
effects.h: Document EF_GREEN, which I missed.
2022-08-24 14:44:16 -07:00
7c40100e46
Cleanup time for some of our base classes. Go over Show/Hide methods, and document
...
the EFFECTS fields we have available. Since we do our own networking mostly we can reuse
some that are only available via CSQC (or NQSSQC)
2022-08-24 14:05:59 -07:00
3c673dcf6d
func_recharge: Only gives 30 armor points in multiplayer.
2022-08-24 10:26:20 -07:00
3ae65d41b7
func_plat: fix typo in ::Restore method, thanks heartologic for spotting
2022-08-22 08:32:12 -07:00
fcf846dee0
NSIO: Check is entity was freed before calling Respawn()
2022-08-12 12:58:26 -07:00
015eaa34fd
NSView: add cvar r_showView for debug information
2022-08-12 12:58:09 -07:00
7228c0d43a
NS{Entity,RenderableEntity,SurfacePropEntity}: network avelocity in a separate check
2022-08-11 14:19:10 -07:00
55427f718a
func_wall: Fix messup where the client game set it to SOLID_NOT
2022-08-11 14:18:28 -07:00
bc2f56b6d1
NSView: Don't run stair smoothing code when we're going up on elevators/platforms.
...
Change some type names around for consistency.
2022-08-10 16:51:26 -07:00
2526751db1
Clean up some areas where float logic happens to prepare for the compiler flag 'assumeint'
2022-08-10 16:15:44 -07:00
db74cf6ffa
NSRenderableEntity: Network .skin as a float for now for better precision for special cases.
2022-08-10 14:38:16 -07:00
517614fd37
Major overhaul that'll make savegames a lot better. Every entity we implement should have a Save/Restore function.
...
AI noes recalculates their route in case of a loaded savegame... And much more.
2022-08-10 14:24:06 -07:00
a4a0cc3c43
build.cfg: Bump BUILD_ENGINEREVISION to 6303, thus fixing FreeTS from not compiling.
...
Shared: Fix that colormap was evaluated as part of PLAYER_VELOCITY instead of PLAYER_MODELINDEX
This is a minor optimisation.
Add NSClientPlayer::OptimiseChangedFlags...
2022-08-09 09:05:31 -07:00
409ee3fa1f
Client: force set r_fullbrightSkins to 0 because otherwise the engine will mess with lighting on any entity with a colormap
2022-08-07 15:03:38 -07:00
5ca96bbcd9
Add helpers across the codebase to deal with networking ents. I tried prototyped a more elegant solution the compiler didn't like - the language should really deal with this.
2022-08-07 14:12:55 -07:00
41d3f3b520
func_water: Don't assign the toggle spawnflag. I don't know where that came from - this should fix sh_hdgibfactory
2022-08-07 13:24:55 -07:00
9e170795d5
func_tank/tankmortar: Make the smoke and flash sprites assume RM_ADDITIVE
2022-08-05 23:27:48 -07:00
6c09154f08
multi_manager: Clean up warnings
2022-08-05 22:21:21 -07:00
dd86e5a583
NSIO: Add SaveEntity/ReadEntity methods to help Save/Restore operations
2022-08-05 21:36:47 -07:00
6d8273331a
Client: Replace rogue setproperty calls with ones talking to our g_view object
2022-08-05 21:15:19 -07:00
81b4bc042f
func_illusionary/wall: Only makestatic() when our rendermode is RM_NORMAL
2022-08-05 20:02:24 -07:00
8a9c26daef
Client: Remove the game specific MUZZLE index definitions, as they're really only used in some of the sub-games.
2022-08-05 14:45:29 -07:00
8729e973ad
PMove: Define waterlevels more appropriately. Add WATERLEVEL_{OUTSIDE,KNEE,CHEST,SUBMERGED} types.
2022-08-05 14:44:42 -07:00
8532f1264f
Util_GetKeyString: Switch to findkeysforcommandex
2022-08-05 13:38:09 -07:00
0e77bad51d
Menu-FN: Initial implementation of CComboBox
2022-08-04 11:57:26 -07:00
6ce1961792
NSView: Document our header a bit more.
2022-08-03 18:41:11 -07:00
caefb77078
NSView: Move stair smoothing etc. into our class.
2022-08-03 10:50:44 -07:00
baab5c931c
NSView: Take over some duties
2022-07-29 16:25:02 -07:00
9183958893
Update README.md, suppress some warnings
2022-07-25 13:10:40 -07:00
ff17dea01f
Initial work towards the NSWeapon class. Testing will happen in base/ under the NEW_INVENTORY define.
...
Comitting this early to ensure nothing breaks and it'll co-exist.
2022-07-25 09:31:37 -07:00
bda01e0f0f
Shared: NSLog should just take whatever N args
2022-07-20 16:48:41 -07:00
df738da436
Get rid of src/gs-entbase/shared/{baseentity.h,env_sprite.h}
2022-07-20 16:38:12 -07:00
30b4007894
Get rid of src/gs-entbase/baseentity.h
2022-07-20 16:33:52 -07:00
197ce20c31
BotLib: Start making use of some of NSNavAI
2022-07-20 16:27:24 -07:00
8fccdcbad1
build.cfg: Bump BUILD_ENGINEREVISION to include qqshka's FTEQW fix.
2022-07-19 18:09:40 -07:00
356319a7b7
NSVehicle, NSPhysicsEntity get Save/Restore methods
2022-07-19 15:49:35 -07:00
2a220fb331
Move base classes out of gs-entbase. This evolution only happened because classes such as CBaseMonster that once existed were replaced and it grew from there.
...
Tweak g_developer prints for scripted_sequences.
2022-07-19 15:22:15 -07:00
6ff42e4176
NSNavAI: Continously check whether we can already run to the next node, and target that if that's the case.
2022-07-18 11:51:48 -07:00
f6ecc97fca
Server: Ignore scripted_sequences when building nodes. This was a wrong assumption.
2022-07-18 11:39:57 -07:00
dc1cbc5da8
NSMonster: add InSequence() method. Fix scripted sequences.
...
PMove: use self.mins instead of PHY_HULL_MINS when testing friction.
disable friction for monsters for now, as it can break some scripted sequences.
2022-07-18 11:32:18 -07:00
d7418151f0
Client: Disable some expensive routines when paused.
2022-07-18 10:02:04 -07:00
0ae901f5e1
NSMonster: Add InAnimation() method. Also prohibit movement when in an animation.
2022-07-18 09:22:18 -07:00
0d2e0627d4
Server: Added quick-and-dirty 'spawn' command. E.g. 'sv spawn monster_laidlaw'
2022-07-17 20:45:50 -07:00
4566d07313
NSMonster/NSTalkMonster: more reshuffling done. Started moving the pathfinding components over into a new class named NSNavAI
2022-07-17 20:34:19 -07:00
b275275652
GS-EntBase: Initial documentation for info_hint.
2022-07-17 09:04:16 -07:00
6c895d73b7
NSMonster: Initial work towards reworking states.
2022-07-17 00:04:01 -07:00
725a32a4d6
Menu-FN: Set up pkgname defaults for 'valve', so that the menu will go straight to the updater.
2022-07-16 16:51:37 -07:00
85cd67b798
Merge pull request #6 from dqus/monsters-clean-up
...
NSMonster: move enemy invalidation from AttackThink() to SeeThink()
2022-07-16 16:40:37 -07:00
Ivan Kukush
ea462ea8ac
NSMonster: move enemy invalidation from AttackThink() to SeeThink()
...
During enemy invalidation reseting m_eEnemy to __NULL__ also set monster state to idle,
should be a task for NSMonster::SetEnemy() which is missed right now.
Add new NSMonster::IsValidEnemy(entity enemy) - returns TRUE if 'enemy' should be
considered a valid target for killing, visibility/reachability is not checked.
Add sanity checkes in NSMonster::WalkRoute() otherwise __NULL__ m_eEnemy could be used.
NSMonster_FindClosestPlayer() use IsValidEnemy() insead of health checking,
probably too strict and that changes its behaviour too much, probably.
2022-07-17 01:35:22 +03:00
878df0941e
Cleanup for some CGameRules method types. Moved some Util_ functions into their own file.
2022-07-16 15:11:33 -07:00
c3be8002ad
add noref to g_mapcycle_override, to avoid an unnecessary compiler warning
2022-07-16 13:16:23 -07:00
Ivan Kukush
e3fcc1f57f
PMove: add a bunch of comments so peole would be aware of issues/limitations
2022-07-16 00:19:31 +03:00
Ivan Kukush
9455596a3a
PMove: make sv_maxspeed actually controlls players speed
2022-07-16 00:17:54 +03:00
Ivan Kukush
ac0e739170
PMove: swap heavy and light gasping sounds with each other
2022-07-16 00:14:06 +03:00
b06544aacc
PMove: crouching will no longer affect your movement underwater. noclip and crouching will no longer adjust the camera view and player bbox.
2022-07-14 21:38:54 -07:00
2f8b36c499
Get rid of pmove_water.qc and all that.
2022-07-14 21:29:53 -07:00
5ad849697e
Forgot to remove this define in pmove
2022-07-14 21:09:18 -07:00
93ba8c6cc9
Shared: Clean up some of the player_pmove code. Games can now via macros define some properties without overriding a method.
2022-07-14 21:02:31 -07:00
220b424e33
Fix some misc Damage_Apply calls in really old parts of the code. Add more useful PlayerConnect/PlayerDisconnect methods into the base gamerules.
2022-07-14 18:04:11 -07:00
98afd5fa28
NSRenderableEntity: add SetBoneControl methods.
2022-07-10 16:39:15 -07:00
2735bd26f6
Server: Add cvar 'mp_foosteps', which only works in multiplayer. Hence the name.
2022-07-09 19:47:44 -07:00
66b09de431
Big commit fixing many regressions since crunch hit. env_sprite has been reworked.
...
multi_manager entities now behave correctly when calling themselves in MULTITHREADED mode.
Remove GS_RENDERFX option. Too many entities rely on its functionality anyway.
Fixed some rendermode behaviour - ladders will no longer be visible.
You can now see the playermodel (and no longer the viewmodel) in mirrors.
Fixed a lot of warnings.
2022-07-07 09:10:14 -07:00
4dc1dc1143
prop_rope: adjust multiplier to match the original sag strength
2022-06-27 19:57:15 -07:00
5691fe518f
prop_rope: Minor performance boost. Add cvar rope_maxsegments.
2022-06-27 12:16:11 -07:00
c994a9ebaf
Client: Add cvar cl_crouch_toggle (Default: 0)
2022-06-27 09:30:12 -07:00
e7339b124e
NSRenderableEntity: Use the new addlight for RFX_Q2PULSE. Needs engine version bump.
2022-06-27 08:31:41 -07:00
08706fcacb
BotLib: Basic respect for bot_skill cvar.
2022-06-22 15:25:08 -07:00
87c706ded7
NSEntity: Respect 'team_no' entity key in all team games to filter out which team can touch what
2022-06-22 14:58:45 -07:00
cf5a4da751
NSTrigger: respect the 'message' key with any UseTargets call
2022-06-22 13:08:37 -07:00
8d16c58862
NSTraceAttack: Deal better with recursion by taking damage into account on whether or not we should continue 'penetrating'
2022-06-20 23:35:24 -07:00
7632d0debd
Mapcycle: add Mapcycle_Load(), which will allow modes to suggest their own mapcycle. Subject to change.
2022-06-20 11:46:29 -07:00
d1a90e9aa4
NSClientPlayer: Allow weapon input when in intermission & in vehicle, so the intermission end can get triggered.
2022-06-20 11:45:50 -07:00
d633e80846
light_dynamic: Focus/optimise for the use of static rtlights. This _should_ provide a significant speedup.
2022-06-17 10:11:17 -07:00
9ef275a2ac
NSTraceAttack: Fix typo
2022-06-17 07:35:25 -07:00
c996986631
prop_vehicle_driveable: respect clipvehicle
2022-06-16 23:04:26 -07:00
241c94368f
vguilib: only block inputs to engine if a widget successfully took a keypress into account
2022-06-16 21:57:53 -07:00
b51541a3ae
NSTraceAttack: Check if we're a client before making the assumptions that our owner class has attributes related to bullet patterns
2022-06-16 14:39:08 -07:00
e6bb5a6bc3
Client: Chat now uses a text-field for handling word wrap. Also fix the alignflags in font.h
2022-06-10 09:34:06 -07:00
24c869d9aa
Client: Make sure we're respecting .viewzoom of a target that we spectate in first-person.
2022-06-09 16:46:28 -07:00
7560bc12b8
Client: unbreak viewmodel not showing up when spectating after the OpenXR update
2022-06-09 15:54:49 -07:00
a7d7dcd9ee
Change the last commit by turning this into an NSMonster specific function instead.
2022-06-08 17:41:02 -07:00
80099317cb
Entity_FindClosest: Don't return any entity of class "player" if their health is equal or below 0.
2022-06-08 17:35:56 -07:00
e947e35cd6
Client: Make sure an K_ESCAPE input event gets forwarded to the menu regardless.
2022-06-08 17:21:20 -07:00
5e9a65924a
NSRenderableEntity: add cvar rfx_q2pulse_intensity, rfx_q2pulse_speed
2022-06-08 14:08:13 -07:00
7f85a6f924
NSRenderableEntity: add render FX Q2PULSE. Which emulates the pulsing, fullbright
...
rendering of items/pickups in Quake II
2022-06-08 13:30:52 -07:00
460eec7f76
PMoveCustom_: Check for MOVETYPE_NONE and disable any further interaction.
2022-06-08 11:39:28 -07:00
ad093548b5
Clean up some misc building stuff. Based on input by BartoCH, many thanks!
...
I'd like to make the gmake check nicer when I have more time.
2022-06-06 19:58:29 -07:00
14518aabf0
UI: Misc fixes... get 'base' building again
2022-06-05 11:56:23 -07:00
6982043380
Added NSInteractiveSurface. Make voting display which bindings to press for yes/no.
2022-06-04 14:09:50 -07:00
beb6f49620
Fixed dynamic lights not spawning properly, fix double init for CSQC ents. Be more specific about which ents can spawn and which won't on the client. Make sure __fullspawndata is wiped after every bsp ent init.
2022-06-03 15:22:33 -07:00
78d3942789
env_glow: Fix Spawned() not calling its prior self.
2022-06-02 20:01:06 -07:00
18fc98d7ec
Client: Draw chat and prints during intermission as well
2022-06-02 14:37:22 -07:00
1dab05fbd3
Menu-VGUI: Search for .vvm models alongside .mdl files in the modelviewer
2022-06-02 14:36:44 -07:00
d303ef9741
PropData: Respect fadetime for breakmodels.
2022-06-02 14:35:52 -07:00
a463498f60
Huge cleanup. Add initial code for the revamped material definition system.
2022-06-01 17:38:52 -07:00
73c762e875
NSEntity: Fix for IsVisible(entity), where we wouldn't 'see' the target correctly, as the trace collides with them and isn't returning a fraction of 1.0.
2022-05-27 14:55:33 -07:00
00364ad476
Client: add helper function drawpic3d. Which instead of a screen position takes a 3d-world position as an argument.
2022-05-26 17:43:22 -07:00
0f7d4fd214
prop_vehicle_drivable: Add spawnflag VEHSF_NOFLIP, which will prevent the vehicle from flipping over
2022-05-26 17:42:35 -07:00
50070b031b
NSMonster: Add MSF_HORDE flag. That marks a monster as constantly being aware and finding the nearest player for attack.
2022-05-26 15:24:08 -07:00
643211efae
Add helper functions Entity_FindClosests(string classname) and Entity_SelectRandom(string classname)
2022-05-26 13:25:02 -07:00
68974053f4
BotLib: add cvar bot_prefix, add method SetName() which respects it.
2022-05-24 15:32:37 -07:00
6bc54d4219
Menu-VGUI: Hack to get Input calls done in reverse to the drawing.
2022-05-24 13:30:58 -07:00
db97db6820
Menu-VGUI: Fix up, change Input() method to block input from other widgets
2022-05-24 13:04:48 -07:00
5f3570f140
VGUI: UIButton now resizes when an image is set that's larger than the button area. Also add method SetIconColor()
2022-05-20 16:35:36 -07:00
bb2b7dbddf
NSClient: add method UpdateAliveCam()
...
UITextbox: Misc polish regarding text entry
GLSL: Detail pass support for some materials
2022-05-15 13:32:53 -07:00
06efd9495d
func_door: Add some useful inputs.
...
VGUI: Some misc changes related to classic mode.
2022-05-13 14:10:07 -07:00
1e0534c922
NSSpraylogo: Handle vid_reload's gracefully
2022-05-13 11:41:33 -07:00
cdf9efd0ba
XR: Don't override VF_ORIGIN/VF_ANGLES in non-XR mode
2022-05-13 10:52:28 -07:00
80bd490127
Client: Also check if we're fake-spectator before showing scores
2022-05-13 10:50:24 -07:00
05efa415e3
Client: Display scores when client is dead.
2022-05-12 22:48:54 -07:00
38f6996940
PMove: Fix typos that caused shenanigans.
2022-05-12 20:42:09 -07:00
128404d5d3
Spraylogo: Handle both monochrome (BMP) and colored spraylogos.
2022-05-12 20:34:18 -07:00
a9b25c2f6f
Client: Regular prints will now use Font_DrawText.
2022-05-12 11:43:32 -07:00
7048cea248
NSSurfacePropEntity: Ignite() calls will now apply additional damage upon contact.
2022-05-12 11:42:45 -07:00
6653d18417
Forgot to add these files (NSClient/Player/Spectator)
2022-05-11 13:18:02 -07:00
25c54af62c
Spring cleaning part one.
2022-05-11 12:49:04 -07:00
a039a69dd3
Ultimately remove the deprecated old class names for base entities.
2022-05-10 15:01:40 -07:00
77c3cf4e10
Further fixes for OpenXR
2022-05-08 11:28:33 -07:00
a474b820e2
momentary_rot_button: Fix DOORHACK, it's spawnflag is apparently set by the affected and not the ent controlling it.
2022-05-07 21:02:49 -07:00
9e0f93c796
Initial support for OpenXR. Remember to side-load the openxr plugin and set _pext_vrinputs to 1.
2022-05-07 17:58:22 -07:00
5e70290017
ambient_generic: Make sure speech sentences use the attenuation as defined by the radius.
2022-05-05 19:18:26 -07:00
665572543f
prop_static: Support for the 'body' key.
2022-05-05 19:14:17 -07:00
10adaaff54
build scripts: shuffle things around so that we override FTE's makefile properly in regards to CC
2022-05-05 15:28:37 -07:00
c5b2107abf
ambient_generic: Implement support for playing back Sentences.
2022-05-04 21:31:37 -07:00
4d33098716
prop_vehicle_driveable: change dmg and velocity calculation for when you collide with an object that feels pain.
2022-05-04 17:22:43 -07:00
c4c84dbdf3
worldspawn: Unbreak client-side values not being read.
2022-05-04 15:47:25 -07:00
299b2eed72
scripted_sequence & multi_manager: Mark both their return values as positive once they've triggered their targets only.
2022-05-04 13:59:10 -07:00
f9c7807c1f
NSTalkMonster: comment the last commit a bit more for prosperity.
2022-05-04 11:19:19 -07:00
ef6c200751
NSTalkMonster: pause CHAN_VOICE and resume when unpaused.
2022-05-04 10:59:42 -07:00
7d780118ae
func_tracktrain: Implement support for TRAIN_NOPITCH
2022-05-02 11:04:26 -07:00
978cf8e1fc
env_message: When spawnflags EMF_ALLPLAYERS isn't set and our activator is NOT a client then broadcast to all players anyway.
...
This is a hack to make the credits in c0a0 etc. work. Hack.
2022-05-02 10:50:10 -07:00
66e982b901
NSMonster: Go over the animation code to add timers that handle ACT-based sequences better.
2022-05-01 22:45:30 -07:00
17611b7d38
PMove: Move some things around a bit.
2022-05-01 22:04:40 -07:00
70c2b43ff3
PMove: check for infokey 'autojump'...
2022-05-01 19:44:22 -07:00
4716615a89
Menu-FN: run games_set after initial init to update the window details.
2022-05-01 15:57:37 -07:00
594261cf7a
PMove: change default view offset to [0,0,28]
2022-05-01 15:57:10 -07:00
32668196bc
Forgot to uncomment a line in the last commit.
2022-05-01 12:13:38 -07:00
e64e72d155
env_bubbles: Implementation. Should be complete.
...
NSIO: Add methods ReadBool(), SaveBool(), and PREDICTED_BOOL macro.
2022-04-30 20:18:56 -07:00
d562e4d742
func_tracktrain: Do avelocity rotation a bit better. Still need to figure out turning faster.
2022-04-30 15:26:46 -07:00
cdfae26413
ambient_generic: Restructure and network more efficiently.
...
Client: add support for modelevent 1008 (CHAN_VOICE sound) and 1005 (plays Sentence)
2022-04-30 14:02:25 -07:00
59d46e1f63
New class: NSTraceAttack. Will make it much easier for games/mods to overrides parts of it.
2022-04-29 23:45:00 -07:00
df589de04c
BotLib: Will now set a protected *bot infokey to signal clients as to who is a bot.
2022-04-29 15:20:04 -07:00
0acdadefb0
GameRules: IntermissionEnd() will now unset itself to avoid multiple calls.
2022-04-29 15:19:31 -07:00
92826b3e5a
Deprecate FL_NOATTACK, replace it with FL_FAKESPEC.
2022-04-28 16:25:51 -07:00
ade1deb910
Revert "base_player: MakeTempSpectator() will now null think and nextthink."
...
This reverts commit 0c802295c3
.
2022-04-28 14:52:38 -07:00
94679f3a3f
SprayLogo: Add "player.spraylogo" soundDef call instead of sound().
2022-04-28 12:34:28 -07:00
0c802295c3
base_player: MakeTempSpectator() will now null think and nextthink.
2022-04-28 12:34:01 -07:00
70f32c97a4
NSVehicle: Add method CanDriverCrouch() to deal with player physics restrictions.
2022-04-27 15:03:00 -07:00
278d688159
Menu-FN: EAX and Aureal 3D audio options will now toggle reverb and HRTF respectively. Requires OpenAL.
2022-04-26 16:34:52 -07:00
2e43e671a4
Base_Player: Network movetype and solid together.
2022-04-26 14:10:17 -07:00
9030ad82d9
Base_Player: Make sure disconnected clients get removed from other clients.
...
Menu-FN: Clear Rich-presence when no longer in a game.
2022-04-26 11:22:12 -07:00
36b9661abd
Platform: Go over some of the RichPresence APIs I was working on.
2022-04-25 17:00:13 -07:00
2d403202b9
Avoid use of infokeys to communicate whether or not a client is spectating.
2022-04-25 15:25:35 -07:00
1cd2f320dc
env_sprite: Fix clumsy return.
2022-04-25 10:51:29 -07:00
607194957e
Player: Move UseUp/Down into the base_player class. Should now universally handle un-presses for all games.
2022-04-25 10:19:17 -07:00
87d9614b23
GS-EntBase: Convert more entities to the new Touch() method.
2022-04-24 22:10:35 -07:00
659be3db46
TraceAttack: Add case for when a weapon with a penetrationpower of 2 might have a fall-off.
2022-04-24 17:24:49 -07:00
27308ff1f4
env_sprite: Fix predraw for modelindex based entities.
...
TraceAttack: Add TraceAttack_SetRangeModifier(). This will enable CS-like bullet penetration behaviour.
2022-04-24 00:23:38 -07:00
6ec35387ae
TraceAttack: GoldSrc its blood color is a bit darker.
2022-04-23 22:34:10 -07:00
a28caedf40
trigger_one: Fix it up to bring it up to standards.
...
func_pushable: Ditto, simplify Touch()
2022-04-23 22:03:51 -07:00
767fdd0913
func_door_rotating: Apparently spawnflags 32 (TOGGLE) does not remove player touch. Odd.
2022-04-23 21:35:49 -07:00
0c89cd31ec
func_door_rotating: Redid the way how one-way-doors swing. This should avoid them swinging into your face constantly
2022-04-23 18:32:29 -07:00
f83b6b6725
func_door_rotating: Go over the code that handles touching. Stop assigning the .touch field as it's off-limits now.
2022-04-23 17:34:22 -07:00
1d216918e1
Client: added cvar cl_chat_enabled, which supresses chat notifications.
...
Spraylogos: Fix blendFunc
VGUI: Add method Visible() for CUIWindow
2022-04-22 12:00:04 -07:00
7395b8d421
Gamerules: exception for friendlyfire when it comes to self
...
point_message: make messages appear through entities, as they may be translucent.
Fixed a minor warning.
2022-04-21 18:50:21 -07:00
8814c66d1f
Merge pull request #3 from cyber-bridge/master
...
Fix bug where dropped items shouldn't be respawned.
2022-04-20 23:51:14 +02:00
af6412e283
Networking improvements to NSEntity, NSRenderableEntity and NSSurfacePropEntity
2022-04-20 14:29:37 -07:00
8781494822
prop_physics_multiplayer: Actively check if players are clipping inside TouchThink() and apply some velocity to wake the entity up
2022-04-20 12:04:17 -07:00
8e15f04c38
prop_physics_multiplayer: Initial implementation. Developed with the ODE plugin in mind.
2022-04-20 10:44:59 -07:00
c24c8b2435
Fix a self assignment bug in Weapons_AddItem(), added userinfo spraycolor support, fix accidentally double-drawing p_ models and add cvar sv_friendlyFire
2022-04-19 21:58:13 -07:00
bf00bfa60c
spectator: Several fixes to make spectating a bit more polished. Ignore fakespectators entirely, etc.
2022-04-18 15:53:15 -07:00
069c59628d
Mapcycle: Disable sanity check until the engine fixes whichpack
...
Gamerules: Intermission will now call 'nextmap' instead of 'restart'.
func_button: Basic support for 'message' field.
env_cubemap: default to saving .ktx
2022-04-17 13:50:14 -07:00
a34c9a8059
env_sprite: Hack to accept materials instead of models
...
func_breakable: Some minor fixes
prop_physics/func_physbox: Add PHYSICS_STATIC ifdef for when a game does not want fakephysics either
NSSurfacePropEntity: max_health will now be set along with health in SpawnKey()
2022-04-16 18:42:38 -07:00
274686a0df
Text/Titles: Use Font_DrawText_RGBA instead of Font_DrawText (GameText_DrawString)
2022-04-15 15:22:11 -07:00