Commit Graph

365 Commits

Author SHA1 Message Date
samisalreadytaken
8672b7bb3f vscript changes:
c_baseentity.h
c_baseentity.cpp
   - Renamed GetLeftVector to GetRightVector
   - Renamed GetTeamNumber to GetTeam

baseentity.h
baseentity.cpp
   - Renamed GetLeftVector to GetRightVector
   - Renamed Get/SetRender functions (GetAlpha -> GetRenderAlpha)
   - Fixed CBaseEntity::GetScriptId
   - Added hook CBaseEntity::UpdateOnRemove
   - Added CBaseEntity::GetOrCreatePrivateScriptScope
   - Added CBaseEntity::GetDebugName
   - Added CBaseEntity::GetGravity
   - Added CBaseEntity::SetGravity
   - Added CBaseEntity::GetFriction
   - Added CBaseEntity::SetFriction
   - Added CBaseEntity::GetMass
   - Added CBaseEntity::SetMass
   - Added CBaseEntity::SetName (SetNameAsCStr)
   - Added CBaseEntity::SetParent (ScriptSetParent)
   - Added CBaseEntity::SetThink (ScriptSetThink)
   - Added CBaseEntity::StopThink (ScriptStopThink)
   - Added CBaseEntity::SetThinkFunction (ScriptSetThinkFunction)
   - Added CBaseEntity::StopThinkFunction (ScriptStopThinkFunction)
   - Added CBaseEntity::ApplyAbsVelocityImpulse
   - Added CBaseEntity::ApplyLocalAngularVelocityImpulse

player.h
player.cpp
   - Renamed GetPlayerUserId to GetUserID
   - Added CBasePlayer::GetFOV
   - Added CBasePlayer::GetFOVOwner (ScriptGetFOVOwner)
   - Added CBasePlayer::SetFOV (ScriptSetFOV)

vscript_consts_shared.cpp
   -Added RAD2DEG, DEG2RAD, MAX_COORD_FLOAT, MAX_TRACE_LENGTH

vscript_funcs_shared.cpp
   - Renamed IsClientScript,IsServerScript to IsClient,IsServer
   - Added IsDedicatedServer
   - Added NPrint (Con_NPrintf)
   - Removed DebugDrawBoxDirection (debugoverlay.BoxDirection)
   - Removed DebugDrawText (debugoverlay.Text)

vscript_server.cpp
   - Added CDebugOverlayScriptHelper (debugoverlay)
   - Added CEntities::GetLocalPlayer
   - Added DispatchParticleEffect (ScriptDispatchParticleEffect)
   - Removed DebugDrawBox (debugoverlay.Box)
   - Removed DebugDrawLine (debugoverlay.Line)

vscript_squirrel.cpp
   - Changed stub error messages for consistency and clarity
   - Changed errorfunc output to Warning instead of Msg
   - Added Msg, Warning
   - Added clamp, min, max, RemapVal, RemapValClamped
   - Added sqstdtime.h
   - Added clock, time, date
2020-08-30 15:58:34 +03:00
samisalreadytaken
0087e6d734 Fix string pool dump 2020-08-30 15:58:07 +03:00
Blixibon
c448f194ae Mapbase v5.0
- Added keyvalue to hl2_gamerules which allows respawning in singleplayer
- Added the game instructor system (including env_instructor_hint) from later Valve games using a VDC tutorial which adjusts the version from the Alien Swarm SDK to FPS rules and a Source 2013 environment; Also added new KV and icons for further control from mappers (tutorial mentioned by Maestra Fenix)
- Added L4D/TF2 glows + point_glow entity as an all-purpose SDK-based off-shoot of tf_glow
- Fixed weapon pickup sound not playing (reported by Sl0th and later Cvoxulary)
- Fixed env_projectedtextures not updating on save/load
- Added func_fake_worldportal, a spatial point_camera inspired by linked_portal_door based on SDK code alone (WIP, may be changed a lot in future updates)
- Added option for point_camera and func_reflective_glass to use different render targets, therefore allowing multiple cameras and mirrors to be active at the same time
- Added additional RT camera textures to choose from with a default of 3, but also controllable through a -numcameratextures command line param
- Added adjustable convars for main view NearZ and skybox NearZ (suggested by someone recently, also suggested by Klems over a year ago)
- Fixed map-specific localization files, cleaned up map-specific file code
- Added a new block to gameinfo.txt which allows mods to automatically append their own command line parameters
- Fixed math_lightpattern corruption when setting pattern/style while active
- Fixed the "Touch" input crashing when given no entity
- Added a way to add EFlags via keyvalue (suggested by Niker107)
- Fixed ai_script_conditions not working without a NPC actor (reported by MetroHam)
- Fixed point_radiation_source causing huge problems when intensity is 0, even though it was already advised against (reported by beefbacon)
- Added "Mapbase" header to Mapbase-specific code files
- Fixed an issue with updating sky_camera not obtaining area correctly, causing some entities to not draw in the skybox
- Added "CopyFogController" and "CopyFogControllerWithScale" inputs to sky_camera, which copy fog parameters directly from a fog controller
- Added "SetScale" input to sky_camera for live scale changing
- Added convar to control player crouch speed multiplier (suggested by ArtyIF)
- Added a ton of fixes for people running the Debug configuration of the codebase (partial credit to stepa2)
- Added support for pre-defined enums and constants in VScript, starting with various values from the SDK code (damage types, trace masks, etc.)
- Added limited support for Valve's Quaternion class in VScript
- Added new instance helper capabilities, destructible game instances, and other misc. changes to VScript library
- Replaced most of the VScript "accessor" classes with direct references to the original classes, as they were getting complicated fast and adding new VScript-only functions to the original classes might not be as bad as previously thought
- Added base NPC hooks for AI sensing in VScript (allows control over sight and hearing), also exposed CSound for it
- Added various functions and hooks for VPhysics integration in VScript
- Added VScript-based custom suit devices
- Expanded trace info exposed to VScript to allow plane and surface access (suggested by krassell)
- Added ability to insert localization strings through VScript
- Added various misc. VScript functions with various purposes, including reading/writing EFlags, movetypes, collision groups, etc.
- Fixed VBSP not being able to correctly parse parallax corrected cubemaps in maps with instances
2020-08-14 21:21:25 +00:00
Blixibon
f9ba141a31 Merge branch 'master' of https://github.com/mapbase-source/source-sdk-2013 2020-07-16 10:47:03 -05:00
Blixibon
63323222fe Mapbase v4.3
- Fixed a crash with multiple trigger_look targets
- Fixed an issue where some zombie submodel server ragdolls are not solid to the world
- Fixed a crash with certain instance classes being loaded in a savegame before the class is registered
- Added some of Tony Sergi's missing Source 2007 fixes (contributed by Kris)
- Added "ClientCommand" hook for VScript to allow handling of unknown console commands
- Added "PlayerRunCommand" hook for VScript to control player movement
- Added new button-related script functions for players (GetButtons, DisableButtons, etc.)
- Added CUserCmd accessor in VScript for the "PlayerRunCommand" hook
- Added "GetWaterLevel" function for VScript
- Exposed "Ignite" to VScript for controlling how a fire starts
- Fixed NPCs being unable to unholster weapons
- Fixed Mapbase crashing when Steam isn't running
- Fixed issues with angled/updating sky_camera save/restore
- Added VBSP "-skyboxcubemap" parameter to enable skybox default cubemaps + "-defaultcubemapres" to control their resolution
- Added ability to disable VScript in a map (and fixed a few potential complications from disabling VScript)
- Made clientside VScript only initialize after world is spawned in order to receive serverside script language in time
- Added tons of VScript functions to CBaseAnimating related to bodygroups, sequences, etc.
- Added VScript functions to players for getting user ID and player name, similar to logic_playerinfo
- Added a few L4D2 script functions missing from the ASW SDK
- Added "Localize" singleton with a single "GetTokenAsUTF8" function for getting localization strings
- Disabled r_hunkalloclightmaps by the request of various users (apparently this completely removes the "Engine hunk overflow" error and allows for really high-res lightmaps)
- Fixed npc_antlionguard NPC_TranslateActivity not hooking into base class (allows for VScript manipulation)
- Added various unused antlion guard activities to npc_antlionguard AI, allowing for usage as registered activities
- Added keyvalue to set LOS mask on combine_mine
- Added +USE bounding box limiter to prop_interactable
2020-07-16 15:43:30 +00:00
Blixibon
b0739b8296
Merge pull request #33 from ReDucTor/vscript/register-all-classes
Making vscript register all classes
2020-07-16 10:40:45 -05:00
James Mitchell
57848d7e3b Making vscript register all classes 2020-07-12 11:46:43 +10:00
Blixibon
f636089003 Mapbase v4.2
- Added keyvalue to use random bounds on logic_timer to limit AddToTimer/SubtractFromTimer inputs (suggested by White_Red_Dragons)
- Fixed inconsistent env_projectedtexture state on save/load
- Added code to allow skybox to use a direct entity handle instead of a stored origin and angles in order to take advantage of entity interpolation while moving (less jittering)
- Moved map-specific file manifest parsing to happen after other entities are created (highly experimental)
- Added various misc. code improvements related to debug build and MP branch
- Fixed some VScript ammo type-related code forgotten in the previous update
- Added more VScript functions to CBaseAnimating, including pose parameter functions and the ability to look up bones and get bone position
- Added more origin and angles functions for VScript (suggested by krassell)
2020-07-01 19:32:49 +00:00
Blixibon
bc6a35a99c
Merge pull request #30 from ReDucTor/vscript-fixes
Various vscript fixes
2020-07-01 14:13:25 -05:00
James Mitchell
dfa67fb9de Making Vector.Norm in VScript act like NormalizeInPlace 2020-06-25 17:35:14 +10:00
James Mitchell
faf4928ba5 Fixing issue with default values not being saved with vscript 2020-06-25 17:30:19 +10:00
Blixibon
f219b14420 Merge branch 'master' of https://github.com/mapbase-source/source-sdk-2013 2020-06-21 10:13:29 -05:00
Blixibon
418a9dcccc Mapbase v4.1
- Exposed CAmmoDef to VScript and changed ammo type functions accordingly
- Added TakeHealth and IsAlive to CBaseEntity
- Added $treeSway
- Added several inputs to control env_wind keyvalues + a new $treeSway scale keyvalue
- Added "Expanded name fixup" keyvalue to point_template which allows name fixup to fix up output parameters
- Fixed the rope on rappelling NPCs causing graphical issues
- Fixed prop_vehicle_prisoner_pod missing "EnterVehicle", "EnterVehicleImmediate", and "ExitVehicle" inputs
- Fixed hostile citizens not damaging player
- Fixed an uncommon npc_metropolice crash from when it's not in a squad
- Made SetTarget input update target handling on NPCs
- Changed ammo type functions to be more organized, added AmmoDef singleton
- Added more precache functions
- Added various misc. entity functions, like GetAllWeapons or AddOutput
- Added more utility functions
2020-06-21 15:10:56 +00:00
Blixibon
d2ef54f1aa
Merge pull request #24 from ReDucTor/vscript/isvalid
Adding IsValid to vscript
2020-06-21 10:08:59 -05:00
Blixibon
1f69727efc
Merge pull request #21 from z33ky/mapbase/gcc-linux
gcc/Linux fixes
2020-06-21 10:08:41 -05:00
James
1d4dfe7d4c
Fixing IsValid outputting the opposite of being valid 2020-06-20 14:10:10 +10:00
James Mitchell
e9cbcd173d Adding IsValid to vscript 2020-06-20 13:10:37 +10:00
Alexander 'z33ky' Hirsch
ae1162d907 Fix compilation without MAPBASE_RPC 2020-06-19 18:02:21 +02:00
Alexander 'z33ky' Hirsch
eca6fd8864 Fix shadow render target
Caused cut off shadows on Linux.
Taken from Entropy : Zero.
2020-06-19 18:02:21 +02:00
Alexander 'z33ky' Hirsch
5ba311b9e6 Fix stdshaders #includes casing
This is important for case-sensitive filesystems/operating systems (i.e.
Linux).
2020-06-19 18:02:06 +02:00
Alexander 'z33ky' Hirsch
9d0f5197bd Fix gcc 9/10 & mapbase build errors 2020-06-19 18:02:06 +02:00
Alexander 'z33ky' Hirsch
4d45c32be9 Switch to malloc() for C_SceneEntity::LoadScene()
It used new char[] before, but it seems when the buffer is allocated
using filesystem->ReadFileEx() we should free() the buffer, not delete[]
it. CUtlBuffer also free()s the buffer, so malloc() should be the saner
choice here.
2020-06-14 11:29:54 +02:00
Alexander 'z33ky' Hirsch
77fada1ca2 Fix gcc 8.2 build errors 2020-06-14 11:29:54 +02:00
Alexander 'z33ky' Hirsch
2c60bd368d Get rid of some unnecessary temporary buffers 2020-06-14 11:15:58 +02:00
Alexander 'z33ky' Hirsch
d72d817eac Fix #includes casing
This is important for case-sensitive filesystems/operating systems (i.e.
Linux).
2020-06-14 11:14:18 +02:00
Alexander 'z33ky' Hirsch
48fb4ab56c Fix crash on startup
This crashes on Linux as pKeyValuesData is NULL when deleteThis() is
invoked. This likely is caused by another issue, but fixing this here
seems good regardless.
2020-06-14 11:14:18 +02:00
Blixibon
5b2547a6ff Merge branch 'master' of https://github.com/mapbase-source/source-sdk-2013 2020-06-13 16:06:41 -05:00
Blixibon
0c0a26dea6
Mapbase v4.0; VScript support
VScript support in Mapbase
2020-06-13 16:06:05 -05:00
Blixibon
49b7b92e28 Added line crediting reductor for VScript library in README 2020-06-13 15:48:04 -05:00
Blixibon
a7e23e46e9 Mapbase v4.0
- Fixed SDK_Refract and SDK_Water not using new cubemap method
- Added missing .inc files for SDK_ShatteredGlass
- Updated gitignore
- Fixed parallax corrected cubemaps sometimes causing VBSP to crash
- Added spawnflag to npc_headcrab which can prevent a headcrab from drowning
- Added spawnflag to npc_headcrab which can prevent a headcrab from instantly dying to a melee weapon
2020-06-13 20:45:37 +00:00
Blixibon
ea0c830a62 Added VScript utility functions + loosened VScript EntFire(ByHandle) restrictions 2020-06-13 12:44:40 -05:00
Blixibon
03632df565 Fixed matrix3x4_t constructor not working before instantiated by other means 2020-06-12 11:12:41 -05:00
Blixibon
0094d707b9 Created a limited clientside CScriptEntityIterator 2020-06-11 23:48:59 -05:00
Blixibon
7d2c6315b5 Added more VScript functions for player classes 2020-06-11 23:47:28 -05:00
Blixibon
66a44d0739 Exposed matrix3x4_t and FireBulletsInfo_t to VScript, expanded available math functions 2020-06-11 23:30:22 -05:00
Blixibon
05303c9e66
Merge pull request #19 from ReDucTor/feature/vscript
Fixing load/restore issue with classes that existed before
2020-06-11 09:59:15 -05:00
James Mitchell
07eb28ffe8 Fixing issue with restored vscript classes that are not registered being unable to be instantiated 2020-06-09 19:51:20 +10:00
Blixibon
b0549a894d
Merge pull request #17 from ReDucTor/feature/vscript
Hiding squirrel compiler warnings when building vscript
2020-06-07 10:28:54 -05:00
James Mitchell
859447ee69 Hiding squirrel compiler warnings when building vscript (fixes #14) 2020-06-07 14:47:49 +10:00
Blixibon
14efc92e33 Fixed VScript material proxy retaining VM handles after level unload 2020-05-31 20:58:50 -05:00
Blixibon
82b0460d8f Merge branch 'feature/vscript' of https://github.com/mapbase-source/source-sdk-2013 into feature/vscript 2020-05-31 08:57:35 -05:00
Blixibon
4225e9d570 Minor VScript VPC fixes + misc. adjustments 2020-05-31 08:57:19 -05:00
Blixibon
528a2815e4
Merge pull request #8 from ReDucTor/vscript/script_help
Misc vscript fixes
2020-05-31 08:49:24 -05:00
James Mitchell
cd31f9db15 Fixing repeated save/restore where regexp would fail to serialize 2020-05-31 17:06:24 +10:00
James Mitchell
1ebb257648 Changing vscript convars class to CConvars to avoid duplicating the variable 2020-05-31 17:05:30 +10:00
James Mitchell
8316cf05ec Enabling vscript_client.nut and vscript_server.nut (fixes issue with doc aliases) 2020-05-31 15:39:17 +10:00
James Mitchell
76db66f70a Adding script_help support 2020-05-31 15:37:54 +10:00
Blixibon
c88da172d7
Merge pull request #7 from ReDucTor/wip/vscript_support
Fixing vscript load/restore bug
2020-05-30 21:41:59 -05:00
James Mitchell
30032b70c9 Fixing issue with vscript restore having issues with cached weak references 2020-05-31 12:22:31 +10:00
Blixibon
4966b79f84 Added VScript material proxy, exposed more stuff to clientside VScript 2020-05-30 10:48:00 -05:00