Renamed from ENT:GetContraption() to ENT:GetCameraFilterEntities()
Fixes a conflict with Contraption Framework
- CFW adds a meta function to all entities, ENT:GetContraption, which returns the contraption an entity is a part of
- Prior to this PR, Wire Camera Controllers have a function of the same name that is called nowhere else within wire, and hopefully nowhere outside of wire either. This function serves as a way to get all of the entities part of a vehicle the camera pod is attached to, and then adds on whatever FilterEntities has.
* Tau fallback value
* Change error to WireLib.Notify and add context
* Add antispam to WireLib.Notify on the client
* Change tau to use mathematically calculated always
1. It's defined like this in the math extension
2. Since I'm already going through the effort of reincluding its literal definition I may as well have it by default
* fix time calc
Co-authored-by: thegrb93 <grbrown93@sbcglobal.net>
---------
Co-authored-by: thegrb93 <grbrown93@sbcglobal.net>
* Refactor objectcontrol.lua
Rewrote EGPLib init
Moved EGP to a subtable of E2Lib(?)
Modified E2Lib init to merge any preexisting value
* Rename objectcontrol.lua to objects.lua
* Update API usage
* Somehow removed this by accident
* Fix improper function call
* Add missing `isAllowed` local
* Possibly insufficient check if error is legitimate
* Add nil checks
* Change EGP postinit handling
* Reduce E2 __index calls
* Update name usage
* Even more __index call reduction
* Quick linter complaint fix
* Variable cleanup
* Further caching
This also caches the lookup in base_wire_entity for being looked at because that seems to give a decent performance improvement.
* Pod controller refactoring
* Further cleanup
* Modify output caching method
This also removes a few other sources of __index calls in the Think method and moves the Team output to occur only once upon entering the pod.
* Add fallback to use typename in debugger when no format defined
Fixed bug with table cutting off a single character
Removed ranger debugger format (was just "ranger")
* Remove redundancy
* Harden against case where ret can be erroneously set to false
* Avoid EGP:CreateObject mutating original object
* Fix Poly contains/GetGlobalVertices functions
+ Minor optimizations
* Remove redundant egpobject getter function(???)
* Remove debug print
* Fix egp draw again
* Fixed Wire Map Interfaces not working on new maps
The way GMod handles Hammer input/outputs has been changed and no longer conflicts with Wiremod's self.Output. So we can remove the override workaround.
* Removed dead code and uneeded parentheses
* Added FPS limiter to RT Cameras, refactored code a bit
* Changed RT Camera FPS limiter algorithm
* Actually made good RT Camera FPS limiter
* Changed ActiveCameras to be set-like array instead of set-like table.
* Fixed undefined behavior in RT Camera ENT:SetIsObserved
* Linter pass
* Removed debug print
* Fixed undefined behavior on `ObservedCameras` iteration
* Removed debug print *again*
* Removed unused `table.SeqCount` function