Commit Graph

322 Commits

Author SHA1 Message Date
Max Cahill
635bf506dc Merge remote-tracking branch 'origin/master' into feature/vec2-friendly-api 2021-07-23 11:04:23 +10:00
Max Cahill
cb35811b8c start of vec2 friendly api - will settle on something here before touching vec3 2021-07-23 10:58:21 +10:00
Max Cahill
3b739380e4 manual_gc cleanup/clarification and default arguments 2021-07-23 10:53:29 +10:00
Max Cahill
6d0f21a7c0 readme cleanup 2021-07-23 10:53:16 +10:00
Max Cahill
1a8769fc22
removed debug print from :camelCase() 2021-07-22 09:06:12 +10:00
Max Cahill
9f65e1150b modified :camelCase to capitalise class names and fully capitalise known acronyms. __name changed to __type, used for :type() calls
fixes #29
2021-07-21 19:50:12 +10:00
Max Cahill
444df42569 added :camelCase() and a note about it being experimental 2021-07-20 17:11:01 +10:00
Max Cahill
8bbe71e406 Merge remote-tracking branch 'origin/master' 2021-07-20 16:20:28 +10:00
Max Cahill
4cea23e2e8 reworked intersect.lua - accepting that continuous collision is out of scope, reworking docs 2021-07-20 16:20:15 +10:00
Max Cahill
26c5920efe
Merge pull request #28 from flamendless/master
Fixed typos
2021-07-19 20:34:42 +10:00
flamendless
1d59b3623e Fixed typos 2021-07-18 09:30:22 +08:00
Max Cahill
453f00d82f updated class docs about super construction 2021-07-16 19:39:24 +10:00
Max Cahill
7813bf35a1 fixed stack overflow for 3-or-deeper hierarchies on super construction 2021-07-16 19:33:47 +10:00
Max Cahill
a339854651 fixed vec2/vec3 crashing on attempted copy construction from something that had a type field which wasn't a callable type() method (eg objects from tiled) 2021-07-16 19:23:59 +10:00
Max Cahill
6ef19cfde0 added make_pooled, refactor pooling out of vector classes for easy reuse 2021-07-15 16:15:58 +10:00
Max Cahill
3cc177a0c0 BREAKING class interface refactor - all classes will need a minor update, see class.lua
tl;dr is that new no longer needs to call init, calling :new() directly in user code is not allowed, properties are copied, metamethods work, and a config table is needed rather than a class to extend from, so use {extends = superclass} if you want a minimal fix
2021-07-15 16:15:27 +10:00
Max Cahill
e1bb76d419 Note about camelCase 2021-07-13 16:55:32 +10:00
Max Cahill
67264fe7a7 extensive readme work 2021-07-13 16:52:32 +10:00
Max Cahill
b570583e53 move to zlib license 2021-07-13 16:52:26 +10:00
Max Cahill
76ed4b1a02 stringx.apply_template works with $snake_case_symbols 2021-07-13 16:47:19 +10:00
Max Cahill
292345b953 fixed bug in filter_inplace for single element collections 2021-07-06 14:33:41 +10:00
Max Cahill
0691f2bd36 added tablex.random_index 2021-07-06 08:29:45 +10:00
Max Cahill
20aa83f79e added stringx.contains 2021-07-06 08:29:30 +10:00
Max Cahill
77d954e58a stringx.split delimiter optional 2021-07-06 08:29:13 +10:00
Max Cahill
65d06d01f6 fixed pretty default config getting modified by parameters 2021-07-05 16:20:03 +10:00
Max Cahill
67019de5b5 made pretty module default config and doc comments consistent order 2021-07-05 16:18:03 +10:00
Max Cahill
3c5455d616 added pretty module to readme 2021-07-05 16:13:45 +10:00
Max Cahill
e726f19a5e added pretty module with pretty.print and pretty.string
breaking: string.pretty still exists but takes new config argument
2021-07-05 16:12:16 +10:00
Max Cahill
b44b92a32d refactored state machine to be clear about which variables and parameters are state tables, and which are name strings
breaking - changed some property and function names

fixes #16
2021-07-05 14:53:55 +10:00
Max Cahill
1de942daa8 Use luajit table.clear properly
Fixes #25
2021-06-29 14:46:40 +10:00
Max Cahill
a2c7800290 Note about branchless or abs-based mathx.sign 2021-06-29 14:44:09 +10:00
Max Cahill
fe135c533b More pooled storage for intersect.lua 2021-06-29 14:43:55 +10:00
Max Cahill
009beadc68 Updated performance note on functional.lua 2021-06-25 13:31:33 +10:00
Max Cahill
af919da379 Fixed intersect.lua line functions not all working properly with un-exported batteries 2021-06-17 11:29:14 +10:00
Max Cahill
9b95643e6e Added tablex.swap_and_pop 2021-06-09 19:49:04 +10:00
Max Cahill
0bc9ccb17b Merge branch 'feature/minmax-vector-ops-and-aabb-collisions' 2021-06-08 11:53:09 +10:00
Max Cahill
a92a0c0351 Reworked aabb vs point and circle methods 2021-06-08 11:51:18 +10:00
Max Cahill
99c496df24 Added maxcomp and mincomp and specified major/minor to always mask an axis - removed farthest and closest because they were under-specified as a result (and questionable utility) 2021-06-08 11:50:54 +10:00
Max Cahill
a73a44f424 Added vec2:signi and vec2:sign to get the sign of each component 2021-06-08 11:49:29 +10:00
Max Cahill
bcd94c134e Added vec2 support for multiple concurrent release to pool 2021-06-08 11:48:58 +10:00
Max Cahill
2128a38702
Merge pull request #24 from emdete/master
fix super_call to call in the next higher class
2021-06-08 09:56:35 +10:00
M. Dietrich
a4e677466a fix super_call to call in the next higher class 2021-06-07 16:44:39 +02:00
Max Cahill
b3bae9b0f2
Merge pull request #23 from monolifed/patch-1
rgb to hsl
2021-06-06 20:04:50 +10:00
monolifed
e9687d763f
rgb to hsl 2021-06-06 09:00:43 +03:00
Max Cahill
7e467b279f [added] more vec2 angle functions 2021-05-23 20:43:51 +10:00
Max Cahill
c1a4e6898a
Merge pull request #22 from DUznanski/shuffle-fix
Fix shuffle to avoid bias
2021-05-21 09:14:01 +10:00
DUznanski
2846de2ea3
Fix shuffle to avoid bias
There's a subtle trick in shuffling: you should draw only from the part of the deck you have not seen!  Otherwise, some permutations are more common than others.
2021-05-20 12:33:52 -07:00
Max Cahill
2d06ec7b9c [fixed] intersect.line_circle_overlap bug 2021-05-13 16:13:30 +10:00
Max Cahill
6fae516630 [added] :ipairs method for sequence, for convenient inline chaining - should consider making it the __call metamethod probably 2021-05-13 15:03:06 +10:00
Max Cahill
80c44f3436 [added] intersect.line_circle_overlap for checking boolean overlap circles vs lines 2021-05-13 12:24:45 +10:00