855 Commits over 2,830 Days - 0.01cph!
Toolgun bug fixes (#1739)
I noticed that there is a bug where the toolgun does not call Deploy on the first tool that is selected (both realms, so it's not a prediction thing), it's a simple fix. The bug is caused by SWEP:GetToolObject() being called before SWEP:Think(), which sets SWEP.Mode.
Also fixed Holster being called twice in the name of releasing ghost entities.
And finally, I have also re-enabled ToolObj:Allowed() on the client as FCVAR_REPLICATE now works for Lua ConVars.
Fix Pull Request #1728
Couldn't do it in the Pull Request itself sadly.
Improved DAdjustableModelPanel movement (#1728)
fix escapeables (#1930)
* Update player_extension.lua
* use string.format
Co-authored-by: Rubat <3299036+robotboy655@users.noreply.github.com>
Fixed a regression caused by PR #1609
Faster string path extension methods
Do not use string metatable methods in string extensions
Apparently its faster this way
A few string lib optimizations (#1812)
* A few string lib optimizations
* Undo problematic changes
StripExtension changes caused regressions with dots in folder names
string.GetPathFromFilename changes caused severe performance loss when given a file name over a file path.
Co-authored-by: Rubat <3299036+robotboy655@users.noreply.github.com>
Add string.Interpolate (#1480)
* Add string.Interpolate
* Throw error if lookup for key fails
* Get rid of the assert
* Simplify code
Co-authored-by: sanny <sannysc@users.noreply.github.com>
Co-authored-by: Rubat <3299036+robotboy655@users.noreply.github.com>
Simplify GM:OnUndo implentation
TTT: fix zoom keybind handling (#1929)
Call net.Receive "editvariable" once outside InstallDataTable (#1793)
Allow weapons and entities to set their own classname (#1299)
"How could this possibly be useful?" Some weapons and entities are made to override ones created in the map, or default engine entities. A CS:S weapon pack would do this to make weapons on CStrike maps usable, however, sometimes class names will conflict with other addons that attempt to do the same thing. I made a convar in my weapon/entity pack to let the server owner decide whether to override default entities with SENTs or SWEPs, and this setting is taken into account when creating the weapon. I currently have to use a nasty __newindex hack to get the ClassName overwritten since weapons/ents.Register will force the name of the file upon the weapon, and this simple change will remove the need for that while not breaking any addons. The engine does the same exact thing with LINK_ENTITY_TO_CLASS since it manually sends in what it wants the entity class name to be, which is almost always different than the file name.
Add Server Operator Rules to Legal in options tab (#1911)
* Add Server Operator Rules to Legal in options tab
Added modding guidelines, community server and hosting guidelines, as well as the server operator guidelines to the legal tab in options, which was previously not made aware before. It's important to note, the server operator guidelines are not linked anywhere on Facepunch's legal section of the Garry's Mod website.
* Add gmod_modding, gmod_servers, gmod_sor commands
These commands will open the appropriate legal content.
* Get rid of redundant "Server Guidelines" button
Co-authored-by: Rubat <3299036+robotboy655@users.noreply.github.com>
Add translations for Limit and Cleanup hints (#1761)
* Translations for Limit and Cleanup hints
Code copied from 6485daa50a2faf898a16e5e17a3f05ff7005884e
Related to Facepunch/garrysmod-issues#4781
* Fix mistake
Co-authored-by: Rubat <3299036+robotboy655@users.noreply.github.com>
Optimize some points (#1609)
* pairs -> ipairs
in places where the table is only a numeric orderly table
* new vector -> modify vector
Thanks ExtReMLapin
* micro oprimization
* string.Implode -> table.concat
* string.Implode to concatenate
* string.Implode -> table.concat
* micro optimize ScrW, ScrH calc
* a little better readability
Okay, it's gonna be like this.
* revert -> table.concat
* some changes
* resolving confict
* resolve confict
* resolve confict
* Fix unresolved
* Localized children table and little changes
One self.ChildNodes:GetChildren() call to locale
using a cheap method of calculating the length of a serial array
* Resolve confict
* Using the usual numerical for
There is no need to spend time on comparison every time, when you can just walk through the cycle to the penultimate element and say that it is not the last one, and then take the last element from the table and tell it that it is the last one.
* Let's not create new vectors to create a box.
* Added the math.ceil
that has been lost in past changes.
* A more readable MakeNiceName (#3)
* A more readable MakeNiceName
* Use string library instead of string methods
* Performance Enhancements
Co-authored-by: JarosLucky <snyashka@gmail.com>
* Fix extra "end" in outputs.lua
* Remove useless changes
* Fix usage of non existent function
Co-authored-by: CornerPin <cornerpinart@gmail.com>
Co-authored-by: Rubat <3299036+robotboy655@users.noreply.github.com>
Fix a crash with DListView fractional column width
Fixes garrysmod-issues/issues/5334
Added second argument to string.Comma (#1925)
added the option to convert any string inserted as second argument into a custom pattern
Improve string.JavascriptSafe
Update mainmenu.lua
If hud is disabled don't show lua error messages (#1917)
* If hud is disabled don't show lua error messages
Don't draw MenuDrawLuaErrors when hud is off in cl_drawhud
Fix word break for addon descriptions (#1916)
Fix markup alignment inconsistency (#1924)
Make markup text alignment respect the actual size of the object instead of the maximum size
Fix tooltip height position miscalculation with newlines. (#1912)
Removed useless varargs (#1921)
replace all usage of self.Owner with self:GetOwner (#1919)
Prop Spawn effect doesn't break other RenderOverrides
Remove extra unused arguments to prevent confusion
TTT: PT-BR minor translation updates (#1915)
TTT: tweak traitor button hint text (#1909)
Change "sec" to "seconds"
TTT: Add Ukrainian translation (#1910)
Add `util.IsBinaryModuleInstalled` (#1896)
Added support for Colors to table sanitization (#1885)
Also added 0's to the first argument of these, due to the fact that if the first argument of a vector/angle/? is set to NIL, then ALL the values will be 0.
This is probably due to the check where it tries to convert a string/function/? to a vector/angle/?
This is quite important because if you had Vector(0,1,2) and you sanitised it, the sanitisation replaces all 0's with nil, and your vector will break since the first value is 0 (nil now):
```lua
tbl[ k ] = Vector( v.x or 0, v.y, v.z )
```
and
```lua
tbl[ k ] = Angle( v.p or 0, v.y, v.r )
```
Have also made the nilled values of Color to 255 instead of 0, as 255 is going to be the most common number in a Color, especially in the alpha channel, and will save on data
Make NPC vs NPC killicon consistent with NPC vs Player
Add canvas IsValid check to dragndrop (#1902)
Prevent errors when the selection canvas is struggling before we call any functions on an invalid panel.
Added: Support for typing disable for text boxes (#1897)
* Added: Property read only to derma properties base
Co-authored-by: Rubat <3299036+robotboy655@users.noreply.github.com>
TTT: change comment (#1903)
Update language files
Fix vehicle collision group post dupe
Group NPC weapons by category
makes easier to see what's what
Added "Select Page" button to addons menu
Server Browser changes
Infinite scroll, "Outdated" now uses network version
Derma_Install_Convar_Functions no longer ties to set empty cvars
Fixed a visual bug with Lua error panel in Problems menu
Post PR cleanups
Add string.StartsWith (#1867)
Add HL1 357 and shotgun to NPCUsableWeapons (#1895)
Sure, some might argue that the animations are broken and the names can cause confusion, but the Glock does as well! so?
Remove hairy cocks (#1901)
This is disgusting. These comments were left everywhere. Absolutely gross. Please fix.
Add option to make hands skin match player skin (#1525)
Reload spawn menu when gmod_language changes (#1724)
* Run spawnmenu_reload when gmod_language changes
* Update spawn menu language switch refreshing logic
- The spawn menu needs to be recreated ("refreshed") after a language switch
- We SHOULDN'T refresh it if the user has unsaved changes to their spawn list (these would be lost!)
- We SHOULDN'T refresh it if the user has the spawn menu open (that would be bad user experience)
- But, we SHOULD refresh it if the user saves or reverts any changes and closes the spawn menu
- What if the user switches BACK to the original language they were using? Surely, a refresh is not needed now?
- No, in this case we should still refresh the spawn menu because some text and labels do actually update during use of the spawn menu and might be left "dirty"
Fixed nil player being passed to ENT.PostEntityPaste (#1408)
Only consider HUDShouldDraw's return if it's non-nil (#1894)
Fixes having to always return true in SWEP:HUDShouldDraw for an element to render unlike a HUDShouldDraw hook. Also now checks to make sure SWEP:HUDShouldDraw is a function before calling it.
Update dcheckbox.lua (#1893)
* Update dcheckbox.lua
* Update dcheckbox.lua
Co-authored-by: Rubat <3299036+robotboy655@users.noreply.github.com>
Fixed collision bounds of custom Sandbox NPCs
Fixed collision bounds of custom Sandbox NPCs with uppercase characters in model name
Fixed an error when dupe-spawning admin only NPCs without player obj
Delete progressbar.lua
It is unused
Redrawing of ping icons (#1845)
Add math.SnapTo (#1888)
* Add math.SnapTo
* Formatting consistency & small typo fix