You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
add "jump to" option on proxy-affected properties and part reference properties, to navigate to the relevant part directly
add reset to booleans, font-related fix for the label resizes the label for when using large enough fonts
add apply size to scales option (for models, sprites) to normalize size to 1
generic multiline text panel for notes
code panels for commands and proxies, derived from the luapad used in the hidden script part
command part features: most of these are to reduce event load and duplicate parts
-OnHide command string
-Delayed command string
-pac_event presets for both mainline pac_events and pac_event_sequenced. Random mode will replace lua command randomizers (people have consistently brought up the issue that cs lua is not allowed on many servers)
-Dynamic mode: run a command repeatedly when the appended number is changed (e.g. for post-processing gradual fading)
-Safe Guard: option to delay execution by 1 frame in order to attempt to fix certain specific event logic issues, thereby preventing false triggers. a lua timer is probably better than timerx events constantly running
BUILDER:GetSet("SafeGuard", false, {description="Delays the execution by 1 frame to attempt to prevent false triggers due to events' runtime quirks"})
16
+
17
+
--fading re-run mode
18
+
BUILDER:SetPropertyGroup("dynamic mode")
19
+
BUILDER:GetSet("DynamicMode", false, {description="Dynamically assign an argument, adding the appended number to the string.\nWhen the appended number is changed, run the command again.\nFor example, it could be used with post processing fades. With pp_colormod 1, pp_colormod_color represents saturation multiplier. You could fade that to slowly fade to gray."})
20
+
BUILDER:GetSet("AppendedNumber", 1, {description="Argument to use. When it changes, the command will run again with the updated value."})
21
+
22
+
--common alternate activations
23
+
BUILDER:SetPropertyGroup("alternates")
24
+
BUILDER:GetSet("OnHideString", "", {description="An alternate command when the part is hidden. Governed by execute on show", editor_panel="code_script"})
25
+
BUILDER:GetSet("DelayedString", "", {description="An alternate command after a delay. Governed by execute on show", editor_panel="code_script"})
26
+
BUILDER:GetSet("Delay", 1)
27
+
28
+
--we might as well have a section for command events since they are so useful for logic, and often integrated with command parts
29
+
--There should be a more convenient front-end for pac_event stuff and to fix the issue where people want to randomize their command (e.g. random attacks) when cs lua isn't allowed on some servers.
30
+
BUILDER:SetPropertyGroup("pac_event")
31
+
BUILDER:GetSet("CommandName", "", {description="name of the pac_event to manage, or base name of the sequenced series.\n\nfor example, if you have commands hat1, hat2, hat3, and hat4:\n-the base name is hat\n-the minimum is 1\n-the maximum is 4"})
32
+
BUILDER:GetSet("Action", "Default", {enums= {
33
+
["Default: single-shot"] ="Default",
34
+
["Default: On (1)"] ="On",
35
+
["Default: Off (0)"] ="Off",
36
+
["Default: Toggle (2)"] ="Toggle",
37
+
["Sequence: forward"] ="Sequence+",
38
+
["Sequence: back"] ="Sequence-",
39
+
["Sequence: set"] ="SequenceSet",
40
+
["Random"] ="Random",
41
+
["Random (Sequence set)"] ="RandomSet",
42
+
}, description="The Default series corresponds to the normal pac_event command modes. Minimum and maximum don't apply.\nSequences run the sequence command pac_event_sequenced with the corresponding mode.\nRandom will select a random number to append to the base name and run the pac_event as a single-shot. This is intended to replace the lua randomizer method when sv_allowcslua is disabled."})
43
+
BUILDER:GetSet("Minimum", 1, {description="The defined minimum for the pac_event if it's for a numbered series.\nOr, when using the sequence set action, this will be used.", editor_onchange=function(self, val) returnmath.floor(val) end})
44
+
BUILDER:GetSet("Maximum", 1, {description="The defined maximum for the pac_event if it's for a numbered series.", editor_onchange=function(self, val) returnmath.floor(val) end})
Copy file name to clipboardExpand all lines: lua/pac3/core/client/parts/proxy.lua
+27-7Lines changed: 27 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,7 @@ BUILDER:StartStorableVars()
31
31
BUILDER:GetSet("MultipleTargetParts", "", {description="send output to multiple external partss.\npaste multiple UIDs or names here, separated by semicolons. With bulk select, you can select parts and right click to get that done quickly.."})
BUILDER:GetSet("Expression", "", {description="write math here. hit F1 for a tutorial or right click for examples."})
34
+
BUILDER:GetSet("Expression", "", {description="write math here. hit F1 for a tutorial or right click for examples.", editor_panel="code_proxy"})
35
35
36
36
BUILDER:SetPropertyGroup("easy setup")
37
37
BUILDER:GetSet("Input", "time", {enums=function(part) returnpart.Inputsend, description="base (inner) function for easy setup\nin sin(time()) it is time"})
@@ -54,11 +54,11 @@ BUILDER:StartStorableVars()
54
54
55
55
BUILDER:SetPropertyGroup("extra expressions")
56
56
BUILDER:GetSet("ExpressionOnHide", "", {description="Math to apply once, when the proxy is hidden. It computes once, so it will not move."})
57
-
BUILDER:GetSet("Extra1", "", {description="Write extra math here.\nIt computes before the main expression and can be accessed from the main expression as extra1() or var1() to save space, or by another proxy as extra1(\"uid or name\") or var1(\"uid or name\")"})
58
-
BUILDER:GetSet("Extra2", "", {description="Write extra math here.\nIt computes before the main expression and can be accessed from the main expression as extra2() or var2() to save space, or by another proxy as extra2(\"uid or name\") or var2(\"uid or name\")"})
59
-
BUILDER:GetSet("Extra3", "", {description="Write extra math here.\nIt computes before the main expression and can be accessed from the main expression as extra3() or var3() to save space, or by another proxy as extra3(\"uid or name\") or var3(\"uid or name\")"})
60
-
BUILDER:GetSet("Extra4", "", {description="Write extra math here.\nIt computes before the main expression and can be accessed from the main expression as extra4() or var4() to save space, or by another proxy as extra4(\"uid or name\") or var4(\"uid or name\")"})
61
-
BUILDER:GetSet("Extra5", "", {description="Write extra math here.\nIt computes before the main expression and can be accessed from the main expression as extra5() or var5() to save space, or by another proxy as extra5(\"uid or name\") or var5(\"uid or name\")"})
57
+
BUILDER:GetSet("Extra1", "", {description="Write extra math here.\nIt computes before the main expression and can be accessed from the main expression as extra1() or var1() to save space, or by another proxy as extra1(\"uid or name\") or var1(\"uid or name\")", editor_panel="code_proxy"})
58
+
BUILDER:GetSet("Extra2", "", {description="Write extra math here.\nIt computes before the main expression and can be accessed from the main expression as extra2() or var2() to save space, or by another proxy as extra2(\"uid or name\") or var2(\"uid or name\")", editor_panel="code_proxy"})
59
+
BUILDER:GetSet("Extra3", "", {description="Write extra math here.\nIt computes before the main expression and can be accessed from the main expression as extra3() or var3() to save space, or by another proxy as extra3(\"uid or name\") or var3(\"uid or name\")", editor_panel="code_proxy"})
60
+
BUILDER:GetSet("Extra4", "", {description="Write extra math here.\nIt computes before the main expression and can be accessed from the main expression as extra4() or var4() to save space, or by another proxy as extra4(\"uid or name\") or var4(\"uid or name\")", editor_panel="code_proxy"})
61
+
BUILDER:GetSet("Extra5", "", {description="Write extra math here.\nIt computes before the main expression and can be accessed from the main expression as extra5() or var5() to save space, or by another proxy as extra5(\"uid or name\") or var5(\"uid or name\")", editor_panel="code_proxy"})
62
62
BUILDER:EndStorableVars()
63
63
64
64
-- redirect
@@ -1818,10 +1818,14 @@ local function set(self, part, x, y, z, children)
0 commit comments