163 Commits

Author SHA1 Message Date
9a17550b74
Register wrapper functions for ticks/render
Apparently dying breaks player entity checks, this fixes that. The
function will only run the tick/render if the player is alive.
2022-06-22 22:26:48 -04:00
b88e98d9fb
Ported to Figura 0.1.0
A lot of stuff is disabled, commented out, etc.
Most main features are functional. Networking still needs to be done.
Changes include:
- Rewrite a lot of API calls for the new API
- Modify model groups to fit new version
- Add a LOT of TODO comments
- Add a ping placeholder table (allows pre existing ping code to work
  locally)
- Register all tick functions, render() and player_init() to new
  EventsAPI
- Disable avatar switcher until it can be implemented on the new version
- Disable code that is reliant on checking vanilla editing permission:
	- rotation of vanilla torso/armor in tail animation
- Disable code reliant on data.save() and data.load() (settings)
- UVManager: disable table to vector conversion, rely on proper usage
- UV(): use vectors instead of table
- Disable action wheel until it can be rewritten
- Disable snore
- Disable Blockbench animations
- Convert colors to vectors
- Disable custom commands
- Disable tail armor. need to optimize in prewrite before changing
  anything
- Potentially more things that I may have missed
2022-06-22 22:03:06 -04:00
3db9cded3e
Move pm_refresh check to function 2022-04-05 20:34:35 -04:00
290af757e9
Clean up code for initial PartsManager refresh 2022-04-05 20:26:32 -04:00
f178094762
Make pmRefresh run PartsManager in same tick 2022-04-05 20:11:29 -04:00
fa7aab7f1d
Fix color handling in setExpression() 2022-03-29 10:07:14 -04:00
7b51269f8b
Add model switcher
Requires https://github.com/dragekk/figura_avatar_api
2022-03-28 22:03:19 -04:00
3989dfaece
Fix emissives for arms and legs 2022-03-28 21:51:04 -04:00
ef7b997294
UwU 2022-03-28 13:16:26 -04:00
9e70916c0e
Implement color locking and state checks 2022-03-28 11:21:06 -04:00
b72b045f29
Change color for lava 2022-03-28 01:42:18 -04:00
62038dd44e
Add extra emissives to head 2022-03-28 01:39:30 -04:00
8b08face5a
Fix nether check 2022-03-28 01:30:53 -04:00
31aada06b8
Add color checking to tick 2022-03-28 01:26:12 -04:00
10a09c51a5
Rework expression handling code 2022-03-28 01:23:02 -04:00
28f02d2ce1
Basic conversion to layered face, currently broken 2022-03-27 23:51:13 -04:00
2efcf33b18
Changes to emissives, emdots
Convert some blue emissives to emdots and handle their color in script
2022-03-27 22:20:26 -04:00
c35a0fcc25
Fix armor not showing on tail due to optimization
Now the armor handler checks amror_enabled has been toggled as well as
the armor state itself
2022-03-27 18:48:39 -04:00
17aba8701e
Rearrange script (move some portable code to top 2022-03-27 00:16:17 -04:00
f3687a47a6
Replace rad() with math.rad()
This provides more accurate angle calculation and removes an unneeded
function
2022-03-26 16:06:21 -04:00
12c8ffd2c1
Enable tail in lava 2022-03-26 00:00:09 -04:00
297ab9e40a
Keep tail while sleeping if visible (why?) 2022-03-25 21:54:52 -04:00
5e20434c71
Add animation to regular tail 2022-03-25 21:30:14 -04:00
4598c74df3
Enable mertail by default 2022-03-25 19:05:43 -04:00
58e727445a
Revert "Remove unnecessary PartsManager refreshes"
This reverts commit 625e784c579163009bd1c6eacff5f83b9d73556d.
Partial revert, only prevents syncState from clobbering local_state
2022-03-25 19:03:07 -04:00
dc630c863a
Prepopulate local_state table
This should ensure variables always exist on non-host clients
2022-03-25 18:44:16 -04:00
dfb501a3c0
Change tail switch cooldown 2022-03-25 15:13:55 -04:00
7b86d87cc2
Tail animation: rotate vanilla torso instead 2022-03-25 14:17:50 -04:00
625e784c57
Remove unnecessary PartsManager refreshes 2022-03-25 14:17:25 -04:00
07536bc979
Reset angles when out of water 2022-03-25 12:35:16 -04:00
25759bc004
Reduce tail speed if out of water (e.g., flying) 2022-03-25 10:10:50 -04:00
4445c2e370
Animate tail 2022-03-25 09:54:25 -04:00
b5bb6c6438
Add ugly workaround to fully load preview 2022-03-25 03:06:30 -04:00
90b48096a6
Add tail armor handling to script 2022-03-25 02:43:48 -04:00
6db1e839c2
Add UVManager 2022-03-25 02:42:47 -04:00
021aaaea5b
Update tail visibility rules 2022-03-25 00:15:14 -04:00
a68cb03da9
Add aquatic armor to PartsManager 2022-03-24 22:03:50 -04:00
cee4217b2d
Tail modeling done, add groups to script 2022-03-24 20:21:44 -04:00
f170553eba
Add start of UVManager code 2022-03-24 20:21:09 -04:00
cb72f0dc55
Add setting to always show mertail
mainly for debugging/screenshots, this looks stupid lmao
2022-03-24 12:43:04 -04:00
be66518564
Hide leggings/boots when mertail is visible 2022-03-24 12:05:28 -04:00
12096f29ec
Don't overwrite local_state in syncState() 2022-03-24 11:55:36 -04:00
2c59cbbefb
Fix Figura preview when game is paused
Works by setting local_state in player_init, then running refreshAll()
and manually setting cooldown in the same call instead of queueing it
for the next tick, which never happens if the game is paused.
2022-03-24 11:38:27 -04:00
5d38f2110e
Add getCanModifyVanilla() to PM rules 2022-03-24 09:48:06 -04:00
11ee2778ff
Enable all models in case disabled in Blockbench
This is done before running PartsManager.refreshAll(). All parts are
managed by PartsManager instead of using Blockbench visibility
2022-03-24 09:39:36 -04:00
0d3568e3d4
Merge branch 'feature/rate_limiter' into feature/aquatic 2022-03-24 09:04:12 -04:00
b6e4ec8a49
Add mertail to vanilla_partial list 2022-03-24 02:18:40 -04:00
858c7d401b
Add tpose emote 2022-03-24 02:15:07 -04:00
f0af26d609
Add mertail to model 2022-03-24 01:15:21 -04:00
0f16fc3579
Add rate limiter and rate limit refreshAll
refreshAll is a very instruction heavy call, it will easily overrun
instruction limit on unstrusted clients if not controlled
2022-03-23 22:13:43 -04:00