- Setting directionality < 0 hides the tracker if the target is in front of the screen/emitter.
- Setting directionality > 0 hides the tracker if the target is behind the screen/emitter.
- Setting directionality = 0 (the default and previous behaviour) shows the tracker in both cases.
This only affects EGP screen and EGP emitter.
EGP HUD ignores this parameter because everything is only visible in front of you anyway.
* Overall optimizations, Normalize DEFAULT usage to a new E2Lib function, newE2Table, Fix D+R Functions
Really long title, but that's because I ended up putting A LOT into the PR. This fixes #2006, as I replaced the usage of the DEFAULT e2 table variable with a new function in the E2Lib, newE2Table, which returns a default e2 table structure.
Also fixed and optimized the Death + Respawn functions I added a year ago. Some functions were broken actually and overall I didn't like the code at all. It is much smaller / neater and avoids memory leaks.
* Use #2110's PlayerTable system
There are also other cores that need to use these new tables, I'm not sure if I want to add more to this PR though.
Thanks to gohidas pointing it out to me.. I got rid of the hook inside player.lua that cleaned up the player death / respawn events and replaced it with #2210's player table system.
* Get rid of redundant comments, whitespace and args
newE2Table had an unused arg left over from when I thought the depth / istable parameters were needed, and I removed the pointed out redundant comments along with another one
Co-authored-by: Vurv78 <Vurv78@users.noreply.github.com>
* Fixes seat switching bug on Pod Controllers
Noticed a bug which was possibly introduced by commit d6662b2ed4 where left clicking on a seat would transfer the player to said seat, and the player would then not be able to enter the original seat until it is respawned/the player rejoins.
I've recently returned to GMod after about 4-5 years, and do not remember this being an issue.
It is possible that this is intended functionality, and the returning to seat issue is just a bug.
Fixes seat switching bug on Pod Controllers with "Allow Buttons" enabled.
* Update gmod_wire_pod.lua
Changed ```!``` to ```not```
Fix e2's assert to now check properly if the condition was 0. Before it checked if the condition would be false or nil, which wouldn't be possible on a number
* Add a system for automatically cleaning up tables with player keys on disconnect
* Use the player table cleanup system for EGP's ScrHW
* Use the player table cleanup system everywhere else
* Convert some files to standard Lua
* Insert TODO for a function that looks off
* Remove some continue statements
* Fixed some bugs relating to an "undefined variable" luacheck warnings
* Update wire_paths.lua
* Update queuesystem.lua
Co-authored-by: thegrb93 <grbrown93@sbcglobal.net>
* Update HUD Indicator vehicle check
* Update HUD Indicator vehicle linking
Made the vehicle linking code more consistent with other entities.
Also made the entity's linking methods compatible with
WireToolSetup.SetupLinking().
* Fix typo
* Make HUDIndicator use DrawHUD from SetupLinking
* Add automatic calculation of monitor scale
why do it by hand when the computer can do it for you?
* Correct GPU monitor bounds
Cube, panels, window bounds are based on the model's verts
Tray bounds were calculated from previous scale factor of 0.009
Note: the values of the x{1,2}, y{1,2} pairs are only ever used to
calculate the screen's width - the only thing that matters is the
sum of the two values
* Add findUseHardcodedFilter(N)
findUseHardcodedFilter(1) - (default behaviour) Use the hardcoded entity type filter from A Land Before Git History
findUseHardcodedFilter(0) - Don't.
* Add e2doc comment to findUseHardcodedFilter
* Make findUseHardcodedFilter(0) use filter_all instead of filter_none
* Make findUseHardcodedFilter(0) still prevent the chip from being found
* Rename findUseHardcodedFilter to findAllowBlockedClasses and invert its function
* Add E2Helper description for findAllowBlockedClasses
* Linked vehicle in/out for vehicle controller
* Update gmod_wire_vehicle.lua
* Update gmod_wire_vehicle.lua
* Update gmod_wire_vehicle.lua
I'll get it eventually
* Add files via upload
* Add files via upload
remove trailing whitespace and various other renaming
* Add files via upload
Clean up garry style commenting and logical operators from the Astar function and its children
* General code cleanup
Mostly just to follow the coding style guideline.
Also fixed navNearestMesh(vn) in the e2 helper not showing up because of the comma.
* missed one
* christ
* ok
* typo
line of sight to that navmvesh.
* Add files via upload
change local variable formatting to CONSTANTS
* ops iterator
loop check to come later
* variable typo
* un/fix navmesh:navIsConnected
* something
(attempt to use getid instead of directly comparing navmesh data, not sure how gmod would handle this so gonna go by tick quota.)
* Delete nav.lua
* Delete cl_nav.lua
* Update bone.lua
* Update prop.lua
* Update prop.lua
* Update bone.lua
use comparison code from propcore to set gravity instead of if condition
* oops
oops
* one moment
check additionally if the bone it iterates over is a valid bone. idk, weird cases.
* should i call it phys instead of bone?
seems like a reasonable change if i'm not directly referring to a model's bones but rather their physics objects
* 😬
* it is now the third time I have forgotten that the IsValid global is capitalized
* utilize E2Lib functions instead of GMod standard
i hate myself, not for any particular reason resulting from the disonnance of this or that on the spagetthification of code or whatever, but there we go.
* Update bone.lua
copy pasting is bad mkay
* fuck go back
* Update e2descriptions.lua
* Update e2descriptions.lua
* for now just check validity independently
* Type checking is not necessary
IsValid already covers whether the physobj is correct, and we're only feeding it physobjs anyways, assuming ValidAction already runs as expected.
* In the context of bone.lua this is fine, but ech.
Sorry, I had confused the code format with propcore.