Compare commits
No commits in common. "79cd101467ca528756e95a134378fc44a3705a4b" and "58881b06db40a962fd44acc655a17716f9a827b8" have entirely different histories.
79cd101467
...
58881b06db
2
nulllib
2
nulllib
@ -1 +1 @@
|
|||||||
Subproject commit d43bc611c794790129e55dd2aeb0a22318a273de
|
Subproject commit b891cf1efce1f68b1be09063e4cb83af5ac8a180
|
47
script.lua
47
script.lua
@ -3,6 +3,12 @@
|
|||||||
--- Initial definitions ---
|
--- Initial definitions ---
|
||||||
-- rewrite compat
|
-- rewrite compat
|
||||||
model=models.player_model
|
model=models.player_model
|
||||||
|
armor_model={
|
||||||
|
["BOOTS"]=vanilla_model.BOOTS,
|
||||||
|
["LEGGINGS"]=vanilla_model.LEGGINGS,
|
||||||
|
["CHESTPLATE"]=vanilla_model.CHESTPLATE,
|
||||||
|
["HELMET"]=vanilla_model.HELMET
|
||||||
|
}
|
||||||
ping=pings
|
ping=pings
|
||||||
|
|
||||||
-- Texture dimensions --
|
-- Texture dimensions --
|
||||||
@ -21,14 +27,13 @@ sharedconfig=require("nulllib.sharedconfig")
|
|||||||
wave=nmath.wave
|
wave=nmath.wave
|
||||||
lerp=math.lerp
|
lerp=math.lerp
|
||||||
|
|
||||||
-- Master config -- {{{
|
-- Master and local state variables -- {{{
|
||||||
-- Local State (these are copied by pings at runtime) --
|
-- Local State (these are copied by pings at runtime) --
|
||||||
---@deprecated use sharedstate or sharedconfig
|
|
||||||
local_state={}
|
local_state={}
|
||||||
---@deprecated use sharedstate or sharedconfig
|
|
||||||
old_state={}
|
old_state={}
|
||||||
-- master state variables and configuration (do not access within pings) --
|
-- master state variables and configuration (do not access within pings) --
|
||||||
do
|
do
|
||||||
|
local is_host=host:isHost()
|
||||||
local defaults={
|
local defaults={
|
||||||
["armor_enabled"]=true,
|
["armor_enabled"]=true,
|
||||||
["vanilla_enabled"]=false,
|
["vanilla_enabled"]=false,
|
||||||
@ -36,8 +41,6 @@ do
|
|||||||
["print_settings"]=false,
|
["print_settings"]=false,
|
||||||
["tail_enabled"]=true,
|
["tail_enabled"]=true,
|
||||||
}
|
}
|
||||||
|
|
||||||
sharedconfig.load_defaults(defaults)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function printSettings()
|
function printSettings()
|
||||||
@ -53,19 +56,20 @@ end
|
|||||||
-- Part groups {{{
|
-- Part groups {{{
|
||||||
VANILLA_GROUPS={
|
VANILLA_GROUPS={
|
||||||
["HEAD"]={vanilla_model.HEAD, vanilla_model.HAT},
|
["HEAD"]={vanilla_model.HEAD, vanilla_model.HAT},
|
||||||
["TORSO"]={vanilla_model.BODY, vanilla_model.JACKET},
|
["TORSO"]={vanilla_model.TORSO, vanilla_model.JACKET},
|
||||||
["LEFT_ARM"]={vanilla_model.LEFT_ARM, vanilla_model.LEFT_SLEEVE},
|
["LEFT_ARM"]={vanilla_model.LEFT_ARM, vanilla_model.LEFT_SLEEVE},
|
||||||
["RIGHT_ARM"]={vanilla_model.RIGHT_ARM, vanilla_model.RIGHT_SLEEVE},
|
["RIGHT_ARM"]={vanilla_model.RIGHT_ARM, vanilla_model.RIGHT_SLEEVE},
|
||||||
["LEFT_LEG"]={vanilla_model.LEFT_LEG, vanilla_model.LEFT_PANTS},
|
["LEFT_LEG"]={vanilla_model.LEFT_LEG, vanilla_model.LEFT_PANTS_LEG},
|
||||||
["RIGHT_LEG"]={vanilla_model.RIGHT_LEG, vanilla_model.RIGHT_PANTS},
|
["RIGHT_LEG"]={vanilla_model.RIGHT_LEG, vanilla_model.RIGHT_PANTS_LEG},
|
||||||
["OUTER"]={ vanilla_model.HAT, vanilla_model.JACKET, vanilla_model.LEFT_SLEEVE, vanilla_model.RIGHT_SLEEVE, vanilla_model.LEFT_PANTS, vanilla_model.RIGHT_PANTS },
|
["OUTER"]={ vanilla_model.HAT, vanilla_model.JACKET, vanilla_model.LEFT_SLEEVE, vanilla_model.RIGHT_SLEEVE, vanilla_model.LEFT_PANTS_LEG, vanilla_model.RIGHT_PANTS_LEG },
|
||||||
["INNER"]={ vanilla_model.HEAD, vanilla_model.BODY, vanilla_model.LEFT_ARM, vanilla_model.RIGHT_ARM, vanilla_model.LEFT_LEG, vanilla_model.RIGHT_LEG },
|
["INNER"]={ vanilla_model.HEAD, vanilla_model.TORSO, vanilla_model.LEFT_ARM, vanilla_model.RIGHT_ARM, vanilla_model.LEFT_LEG, vanilla_model.RIGHT_LEG },
|
||||||
["ALL"]={},
|
["ALL"]={},
|
||||||
["ARMOR"]={vanilla_model.HELMET, vanilla_model.LEGGINGS, vanilla_model.BOOTS, vanilla_model.CHESTPLATE}
|
["ARMOR"]={}
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, v in pairs(VANILLA_GROUPS.INNER) do table.insert(VANILLA_GROUPS.ALL,v) end
|
for _, v in pairs(VANILLA_GROUPS.INNER) do table.insert(VANILLA_GROUPS.ALL,v) end
|
||||||
for _, v in pairs(VANILLA_GROUPS.OUTER) do table.insert(VANILLA_GROUPS.ALL,v) end
|
for _, v in pairs(VANILLA_GROUPS.OUTER) do table.insert(VANILLA_GROUPS.ALL,v) end
|
||||||
|
for _, v in pairs(armor_model) do table.insert(VANILLA_GROUPS.ARMOR, v) end
|
||||||
|
|
||||||
MAIN_GROUPS={model.Head, model.RightArm, model.LeftArm, model.RightLeg, model.LeftLeg, model.Body } -- RightArm LeftArm RightLeg LeftLeg Body Head
|
MAIN_GROUPS={model.Head, model.RightArm, model.LeftArm, model.RightLeg, model.LeftLeg, model.Body } -- RightArm LeftArm RightLeg LeftLeg Body Head
|
||||||
TAIL_BONES={model.Body_Tail, model.Body_Tail.Tail2, model.Body_Tail.Tail2.Tail3, model.Body_Tail.Tail2.Tail3.Tail4}
|
TAIL_BONES={model.Body_Tail, model.Body_Tail.Tail2, model.Body_Tail.Tail2.Tail3, model.Body_Tail.Tail2.Tail3.Tail4}
|
||||||
@ -138,11 +142,11 @@ TAIL_ROT={vec( 37.5, 0, 0 ), vec( -17.5, 0, 0 ), vec( -17.5, 0, 0 ), vec( -15, 0
|
|||||||
do
|
do
|
||||||
local can_modify_vanilla=avatar:canEditVanillaModel()
|
local can_modify_vanilla=avatar:canEditVanillaModel()
|
||||||
local function forceVanilla()
|
local function forceVanilla()
|
||||||
return not can_modify_vanilla or sharedconfig.load("vanilla_enabled")
|
return not can_modify_vanilla or local_state.vanilla_enabled
|
||||||
end
|
end
|
||||||
|
|
||||||
local function vanillaPartial()
|
local function vanillaPartial()
|
||||||
return not sharedconfig.load("vanilla_enabled") and sharedconfig.load("vanilla_partial")
|
return not local_state.vanilla_enabled and local_state.vanilla_partial
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
@ -151,23 +155,23 @@ do
|
|||||||
local vanilla_partial_disabled=MAIN_GROUPS
|
local vanilla_partial_disabled=MAIN_GROUPS
|
||||||
|
|
||||||
-- Vanilla state
|
-- Vanilla state
|
||||||
PM.addPartListFunction(VANILLA_GROUPS.ALL, function() return false end)
|
PM.addPartGroupFunction(VANILLA_GROUPS.ALL, function() return false end)
|
||||||
PM.addPartListFunction(VANILLA_GROUPS.ALL, function(last) return last or forceVanilla() end)
|
PM.addPartGroupFunction(VANILLA_GROUPS.ALL, function(last) return last or forceVanilla() end)
|
||||||
|
|
||||||
PM.addPartListFunction(VANILLA_GROUPS.ALL, function(last) return last or vanillaPartial() end)
|
PM.addPartGroupFunction(VANILLA_GROUPS.ALL, function(last) return last or vanillaPartial() end)
|
||||||
|
|
||||||
-- disable cape if tail enabled
|
-- disable cape if tail enabled
|
||||||
PM.addPartFunction(vanilla_model.CAPE, function(last) return last and not sharedconfig.load("tail_enabled") end)
|
PM.addPartFunction(vanilla_model.CAPE, function(last) return last and not local_state.tail_enabled end)
|
||||||
|
|
||||||
-- Custom state
|
-- Custom state
|
||||||
PM.addPartListFunction(vanilla_partial_disabled, function(last) return last and not vanillaPartial() end)
|
PM.addPartGroupFunction(vanilla_partial_disabled, function(last) return last and not vanillaPartial() end)
|
||||||
PM.addPartListFunction(MAIN_GROUPS, function(last) return last and not forceVanilla() end)
|
PM.addPartGroupFunction(MAIN_GROUPS, function(last) return last and not forceVanilla() end)
|
||||||
|
|
||||||
-- enable tail
|
-- enable tail
|
||||||
PM.addPartFunction(model.Body_Tail, function(last) return last and sharedconfig.load("tail_enabled") end)
|
PM.addPartFunction(model.Body_Tail, function(last) return last and local_state.tail_enabled end)
|
||||||
|
|
||||||
-- Armor state
|
-- Armor state
|
||||||
PM.addPartListFunction(VANILLA_GROUPS.ARMOR, function(last) return last and sharedconfig.load("armor_enabled") end)
|
PM.addPartGroupFunction(VANILLA_GROUPS.ARMOR, function(last) return last and local_state.armor_enabled end)
|
||||||
|
|
||||||
|
|
||||||
end
|
end
|
||||||
@ -193,7 +197,6 @@ function player_init()
|
|||||||
-- end
|
-- end
|
||||||
-- syncState()
|
-- syncState()
|
||||||
events.ENTITY_INIT:remove("player_init")
|
events.ENTITY_INIT:remove("player_init")
|
||||||
PartsManager.refreshAll()
|
|
||||||
end
|
end
|
||||||
|
|
||||||
events.ENTITY_INIT:register(function() return player_init() end, "player_init")
|
events.ENTITY_INIT:register(function() return player_init() end, "player_init")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user