mirror of
https://github.com/Ttanasart-pt/Pixel-Composer.git
synced 2024-12-24 14:06:23 +01:00
angle dir filter
This commit is contained in:
parent
0cd6019806
commit
9881f33b1c
9 changed files with 250 additions and 185 deletions
|
@ -18,7 +18,7 @@ event_inherited();
|
|||
var propPath = directory + "\\meta.json";
|
||||
context_menus = {};
|
||||
panels = {};
|
||||
|
||||
|
||||
if(file_exists_empty(propPath)) {
|
||||
var meta = json_load_struct(propPath);
|
||||
if(struct_has(meta, "panels")) {
|
||||
|
|
|
@ -1,135 +1,137 @@
|
|||
function __addon_lua_setup_constants(lua, context) {
|
||||
lua_add_code(lua, $"ID = '{context.ID}'");
|
||||
|
||||
lua_add_code(lua, $"c_aqua = {c_aqua}");
|
||||
lua_add_code(lua, $"c_black = {c_black}");
|
||||
lua_add_code(lua, $"c_blue = {c_blue}");
|
||||
lua_add_code(lua, $"c_dkgray = {c_dkgray}");
|
||||
lua_add_code(lua, $"c_fuchsia = {c_fuchsia}");
|
||||
lua_add_code(lua, $"c_gray = {c_gray}");
|
||||
lua_add_code(lua, $"c_green = {c_green}");
|
||||
lua_add_code(lua, $"c_lime = {c_lime}");
|
||||
lua_add_code(lua, $"c_ltgray = {c_ltgray}");
|
||||
lua_add_code(lua, $"c_maroon = {c_maroon}");
|
||||
lua_add_code(lua, $"c_navy = {c_navy}");
|
||||
lua_add_code(lua, $"c_olive = {c_olive}");
|
||||
lua_add_code(lua, $"c_orange = {c_orange}");
|
||||
lua_add_code(lua, $"c_purple = {c_purple}");
|
||||
lua_add_code(lua, $"c_red = {c_red}");
|
||||
lua_add_code(lua, $"c_silver = {c_silver}");
|
||||
lua_add_code(lua, $"c_teal = {c_teal}");
|
||||
lua_add_code(lua, $"c_white = {c_white}");
|
||||
lua_add_code(lua, $"c_yellow = {c_yellow}");
|
||||
lua_add_code(lua, $"c_aqua = {c_aqua}");
|
||||
lua_add_code(lua, $"c_black = {c_black}");
|
||||
lua_add_code(lua, $"c_blue = {c_blue}");
|
||||
lua_add_code(lua, $"c_dkgray = {c_dkgray}");
|
||||
lua_add_code(lua, $"c_fuchsia = {c_fuchsia}");
|
||||
lua_add_code(lua, $"c_gray = {c_gray}");
|
||||
lua_add_code(lua, $"c_green = {c_green}");
|
||||
lua_add_code(lua, $"c_lime = {c_lime}");
|
||||
lua_add_code(lua, $"c_ltgray = {c_ltgray}");
|
||||
lua_add_code(lua, $"c_maroon = {c_maroon}");
|
||||
lua_add_code(lua, $"c_navy = {c_navy}");
|
||||
lua_add_code(lua, $"c_olive = {c_olive}");
|
||||
lua_add_code(lua, $"c_orange = {c_orange}");
|
||||
lua_add_code(lua, $"c_purple = {c_purple}");
|
||||
lua_add_code(lua, $"c_red = {c_red}");
|
||||
lua_add_code(lua, $"c_silver = {c_silver}");
|
||||
lua_add_code(lua, $"c_teal = {c_teal}");
|
||||
lua_add_code(lua, $"c_white = {c_white}");
|
||||
lua_add_code(lua, $"c_yellow = {c_yellow}");
|
||||
|
||||
lua_add_code(lua, $"color_accent = {COLORS._main_accent}");
|
||||
lua_add_code(lua, $"color_icon = {COLORS._main_icon}");
|
||||
lua_add_code(lua, $"color_icon_dark = {COLORS._main_icon_dark}");
|
||||
lua_add_code(lua, $"color_accent = {COLORS._main_accent}");
|
||||
lua_add_code(lua, $"color_icon = {COLORS._main_icon}");
|
||||
lua_add_code(lua, $"color_icon_dark = {COLORS._main_icon_dark}");
|
||||
lua_add_code(lua, $"color_icon_light = {COLORS._main_icon_light}");
|
||||
lua_add_code(lua, $"color_text = {COLORS._main_text}");
|
||||
lua_add_code(lua, $"color_text_sub = {COLORS._main_text_sub}");
|
||||
lua_add_code(lua, $"color_positive = {COLORS._main_value_positive}");
|
||||
lua_add_code(lua, $"color_negative = {COLORS._main_value_negative}");
|
||||
lua_add_code(lua, $"color_text = {COLORS._main_text}");
|
||||
lua_add_code(lua, $"color_text_sub = {COLORS._main_text_sub}");
|
||||
lua_add_code(lua, $"color_positive = {COLORS._main_value_positive}");
|
||||
lua_add_code(lua, $"color_negative = {COLORS._main_value_negative}");
|
||||
|
||||
lua_add_code(lua, $"color_dkblack = {CDEF.main_dkblack}");
|
||||
lua_add_code(lua, $"color_mdblack = {CDEF.main_mdblack}");
|
||||
lua_add_code(lua, $"color_black = {CDEF.main_black}");
|
||||
lua_add_code(lua, $"color_dkgrey = {CDEF.main_dkgrey}");
|
||||
lua_add_code(lua, $"color_dark = {CDEF.main_dark}");
|
||||
lua_add_code(lua, $"color_grey = {CDEF.main_grey}");
|
||||
lua_add_code(lua, $"color_ltgrey = {CDEF.main_ltgrey}");
|
||||
lua_add_code(lua, $"color_white = {CDEF.main_white}");
|
||||
lua_add_code(lua, $"color_black = {CDEF.main_black}");
|
||||
lua_add_code(lua, $"color_dkgrey = {CDEF.main_dkgrey}");
|
||||
lua_add_code(lua, $"color_dark = {CDEF.main_dark}");
|
||||
lua_add_code(lua, $"color_grey = {CDEF.main_grey}");
|
||||
lua_add_code(lua, $"color_ltgrey = {CDEF.main_ltgrey}");
|
||||
lua_add_code(lua, $"color_white = {CDEF.main_white}");
|
||||
|
||||
lua_add_code(lua, $"fa_left = {fa_left}");
|
||||
lua_add_code(lua, $"fa_middle = {fa_middle}");
|
||||
lua_add_code(lua, $"fa_right = {fa_right}");
|
||||
lua_add_code(lua, $"fa_left = {fa_left}");
|
||||
lua_add_code(lua, $"fa_middle = {fa_middle}");
|
||||
lua_add_code(lua, $"fa_right = {fa_right}");
|
||||
//
|
||||
lua_add_code(lua, $"fa_top = {fa_top}");
|
||||
lua_add_code(lua, $"fa_center = {fa_center}");
|
||||
lua_add_code(lua, $"fa_bottom = {fa_bottom}");
|
||||
lua_add_code(lua, $"fa_top = {fa_top}");
|
||||
lua_add_code(lua, $"fa_center = {fa_center}");
|
||||
lua_add_code(lua, $"fa_bottom = {fa_bottom}");
|
||||
|
||||
lua_add_code(lua, $"mb_left = {mb_left}");
|
||||
lua_add_code(lua, $"mb_middle = {mb_middle}");
|
||||
lua_add_code(lua, $"mb_right = {mb_right}");
|
||||
lua_add_code(lua, $"mb_left = {mb_left}");
|
||||
lua_add_code(lua, $"mb_middle = {mb_middle}");
|
||||
lua_add_code(lua, $"mb_right = {mb_right}");
|
||||
|
||||
lua_add_code(lua, $"vk_nokey = {vk_nokey}");
|
||||
lua_add_code(lua, $"vk_anykey = {vk_anykey}");
|
||||
lua_add_code(lua, $"vk_left = {vk_left}");
|
||||
lua_add_code(lua, $"vk_right = {vk_right}");
|
||||
lua_add_code(lua, $"vk_up = {vk_up}");
|
||||
lua_add_code(lua, $"vk_down = {vk_down}");
|
||||
lua_add_code(lua, $"vk_enter = {vk_enter}");
|
||||
lua_add_code(lua, $"vk_escape = {vk_escape}");
|
||||
lua_add_code(lua, $"vk_space = {vk_space}");
|
||||
lua_add_code(lua, $"vk_shift = {vk_shift}");
|
||||
lua_add_code(lua, $"vk_control = {vk_control}");
|
||||
lua_add_code(lua, $"vk_alt = {vk_alt}");
|
||||
lua_add_code(lua, $"vk_backspace = {vk_backspace}");
|
||||
lua_add_code(lua, $"vk_tab = {vk_tab}");
|
||||
lua_add_code(lua, $"vk_home = {vk_home}");
|
||||
lua_add_code(lua, $"vk_end = {vk_end}");
|
||||
lua_add_code(lua, $"vk_delete = {vk_delete}");
|
||||
lua_add_code(lua, $"vk_insert = {vk_insert}");
|
||||
lua_add_code(lua, $"vk_pageup = {vk_pageup}");
|
||||
lua_add_code(lua, $"vk_nokey = {vk_nokey}");
|
||||
lua_add_code(lua, $"vk_anykey = {vk_anykey}");
|
||||
lua_add_code(lua, $"vk_left = {vk_left}");
|
||||
lua_add_code(lua, $"vk_right = {vk_right}");
|
||||
lua_add_code(lua, $"vk_up = {vk_up}");
|
||||
lua_add_code(lua, $"vk_down = {vk_down}");
|
||||
lua_add_code(lua, $"vk_enter = {vk_enter}");
|
||||
lua_add_code(lua, $"vk_escape = {vk_escape}");
|
||||
lua_add_code(lua, $"vk_space = {vk_space}");
|
||||
lua_add_code(lua, $"vk_shift = {vk_shift}");
|
||||
lua_add_code(lua, $"vk_control = {vk_control}");
|
||||
lua_add_code(lua, $"vk_alt = {vk_alt}");
|
||||
lua_add_code(lua, $"vk_backspace = {vk_backspace}");
|
||||
lua_add_code(lua, $"vk_tab = {vk_tab}");
|
||||
lua_add_code(lua, $"vk_home = {vk_home}");
|
||||
lua_add_code(lua, $"vk_end = {vk_end}");
|
||||
lua_add_code(lua, $"vk_delete = {vk_delete}");
|
||||
lua_add_code(lua, $"vk_insert = {vk_insert}");
|
||||
lua_add_code(lua, $"vk_pageup = {vk_pageup}");
|
||||
lua_add_code(lua, $"vk_pagedown = {vk_pagedown}");
|
||||
lua_add_code(lua, $"vk_pause = {vk_pause}");
|
||||
lua_add_code(lua, $"vk_printscreen = {vk_printscreen}");
|
||||
lua_add_code(lua, $"vk_f1 = {vk_f1}");
|
||||
lua_add_code(lua, $"vk_f2 = {vk_f2}");
|
||||
lua_add_code(lua, $"vk_f3 = {vk_f3}");
|
||||
lua_add_code(lua, $"vk_f4 = {vk_f4}");
|
||||
lua_add_code(lua, $"vk_f5 = {vk_f5}");
|
||||
lua_add_code(lua, $"vk_f6 = {vk_f6}");
|
||||
lua_add_code(lua, $"vk_f7 = {vk_f7}");
|
||||
lua_add_code(lua, $"vk_f8 = {vk_f8}");
|
||||
lua_add_code(lua, $"vk_f9 = {vk_f9}");
|
||||
lua_add_code(lua, $"vk_pause = {vk_pause}");
|
||||
lua_add_code(lua, $"vk_printscreen = {vk_printscreen}");
|
||||
|
||||
lua_add_code(lua, $"vk_f1 = {vk_f1}");
|
||||
lua_add_code(lua, $"vk_f2 = {vk_f2}");
|
||||
lua_add_code(lua, $"vk_f3 = {vk_f3}");
|
||||
lua_add_code(lua, $"vk_f4 = {vk_f4}");
|
||||
lua_add_code(lua, $"vk_f5 = {vk_f5}");
|
||||
lua_add_code(lua, $"vk_f6 = {vk_f6}");
|
||||
lua_add_code(lua, $"vk_f7 = {vk_f7}");
|
||||
lua_add_code(lua, $"vk_f8 = {vk_f8}");
|
||||
lua_add_code(lua, $"vk_f9 = {vk_f9}");
|
||||
lua_add_code(lua, $"vk_f10 = {vk_f10}");
|
||||
lua_add_code(lua, $"vk_f11 = {vk_f11}");
|
||||
lua_add_code(lua, $"vk_f12 = {vk_f12}");
|
||||
lua_add_code(lua, $"vk_numpad0 = {vk_numpad0}");
|
||||
lua_add_code(lua, $"vk_numpad1 = {vk_numpad1}");
|
||||
lua_add_code(lua, $"vk_numpad2 = {vk_numpad2}");
|
||||
lua_add_code(lua, $"vk_numpad3 = {vk_numpad3}");
|
||||
lua_add_code(lua, $"vk_numpad4 = {vk_numpad4}");
|
||||
lua_add_code(lua, $"vk_numpad5 = {vk_numpad5}");
|
||||
lua_add_code(lua, $"vk_numpad6 = {vk_numpad6}");
|
||||
lua_add_code(lua, $"vk_numpad7 = {vk_numpad7}");
|
||||
lua_add_code(lua, $"vk_numpad8 = {vk_numpad8}");
|
||||
lua_add_code(lua, $"vk_numpad9 = {vk_numpad9}");
|
||||
|
||||
lua_add_code(lua, $"vk_numpad0 = {vk_numpad0}");
|
||||
lua_add_code(lua, $"vk_numpad1 = {vk_numpad1}");
|
||||
lua_add_code(lua, $"vk_numpad2 = {vk_numpad2}");
|
||||
lua_add_code(lua, $"vk_numpad3 = {vk_numpad3}");
|
||||
lua_add_code(lua, $"vk_numpad4 = {vk_numpad4}");
|
||||
lua_add_code(lua, $"vk_numpad5 = {vk_numpad5}");
|
||||
lua_add_code(lua, $"vk_numpad6 = {vk_numpad6}");
|
||||
lua_add_code(lua, $"vk_numpad7 = {vk_numpad7}");
|
||||
lua_add_code(lua, $"vk_numpad8 = {vk_numpad8}");
|
||||
lua_add_code(lua, $"vk_numpad9 = {vk_numpad9}");
|
||||
lua_add_code(lua, $"vk_multiply = {vk_multiply}");
|
||||
lua_add_code(lua, $"vk_divide = {vk_divide}");
|
||||
lua_add_code(lua, $"vk_add = {vk_add}");
|
||||
lua_add_code(lua, $"vk_divide = {vk_divide}");
|
||||
lua_add_code(lua, $"vk_add = {vk_add}");
|
||||
lua_add_code(lua, $"vk_subtract = {vk_subtract}");
|
||||
lua_add_code(lua, $"vk_decimal = {vk_decimal}");
|
||||
lua_add_code(lua, $"vk_decimal = {vk_decimal}");
|
||||
|
||||
lua_add_code(lua, $"gp_face1 = {gp_face1}");
|
||||
lua_add_code(lua, $"gp_face2 = {gp_face2}");
|
||||
lua_add_code(lua, $"gp_face3 = {gp_face3}");
|
||||
lua_add_code(lua, $"gp_face4 = {gp_face4}");
|
||||
lua_add_code(lua, $"gp_shoulderl = {gp_shoulderl}");
|
||||
lua_add_code(lua, $"gp_shoulderlb = {gp_shoulderlb}");
|
||||
lua_add_code(lua, $"gp_shoulderr = {gp_shoulderr}");
|
||||
lua_add_code(lua, $"gp_shoulderrb = {gp_shoulderrb}");
|
||||
lua_add_code(lua, $"gp_select = {gp_select}");
|
||||
lua_add_code(lua, $"gp_start = {gp_start}");
|
||||
lua_add_code(lua, $"gp_stickl = {gp_stickl}");
|
||||
lua_add_code(lua, $"gp_stickr = {gp_stickr}");
|
||||
lua_add_code(lua, $"gp_padu = {gp_padu}");
|
||||
lua_add_code(lua, $"gp_padd = {gp_padd}");
|
||||
lua_add_code(lua, $"gp_padl = {gp_padl}");
|
||||
lua_add_code(lua, $"gp_padr = {gp_padr}");
|
||||
lua_add_code(lua, $"gp_face1 = {gp_face1}");
|
||||
lua_add_code(lua, $"gp_face2 = {gp_face2}");
|
||||
lua_add_code(lua, $"gp_face3 = {gp_face3}");
|
||||
lua_add_code(lua, $"gp_face4 = {gp_face4}");
|
||||
lua_add_code(lua, $"gp_shoulderl = {gp_shoulderl}");
|
||||
lua_add_code(lua, $"gp_shoulderlb = {gp_shoulderlb}");
|
||||
lua_add_code(lua, $"gp_shoulderr = {gp_shoulderr}");
|
||||
lua_add_code(lua, $"gp_shoulderrb = {gp_shoulderrb}");
|
||||
lua_add_code(lua, $"gp_select = {gp_select}");
|
||||
lua_add_code(lua, $"gp_start = {gp_start}");
|
||||
lua_add_code(lua, $"gp_stickl = {gp_stickl}");
|
||||
lua_add_code(lua, $"gp_stickr = {gp_stickr}");
|
||||
lua_add_code(lua, $"gp_padu = {gp_padu}");
|
||||
lua_add_code(lua, $"gp_padd = {gp_padd}");
|
||||
lua_add_code(lua, $"gp_padl = {gp_padl}");
|
||||
lua_add_code(lua, $"gp_padr = {gp_padr}");
|
||||
|
||||
lua_add_code(lua, $"gp_axislh = {gp_axislh}");
|
||||
lua_add_code(lua, $"gp_axislv = {gp_axislv}");
|
||||
lua_add_code(lua, $"gp_axisrh = {gp_axisrh}");
|
||||
lua_add_code(lua, $"gp_axisrv = {gp_axisrv}");
|
||||
|
||||
lua_add_code(lua, $"bm_normal = {bm_normal}");
|
||||
lua_add_code(lua, $"bm_add = {bm_add}");
|
||||
lua_add_code(lua, $"bm_normal = {bm_normal}");
|
||||
lua_add_code(lua, $"bm_add = {bm_add}");
|
||||
lua_add_code(lua, $"bm_subtract = {bm_subtract}");
|
||||
lua_add_code(lua, $"bm_max = {bm_max}");
|
||||
lua_add_code(lua, $"bm_max = {bm_max}");
|
||||
|
||||
lua_add_code(lua, $"tb_text = {TEXTBOX_INPUT.text}");
|
||||
lua_add_code(lua, $"tb_number = {TEXTBOX_INPUT.number}");
|
||||
lua_add_code(lua, $"tb_text = {TEXTBOX_INPUT.text}");
|
||||
lua_add_code(lua, $"tb_number = {TEXTBOX_INPUT.number}");
|
||||
|
||||
lua_add_code(lua, "Panel = {};");
|
||||
lua_add_code(lua, "Animator = {};");
|
||||
|
@ -143,20 +145,18 @@ function __addon_lua_setup_constants(lua, context) {
|
|||
|
||||
function __addon_lua_panel_variable(lua, panel) {
|
||||
lua_add_code(lua,
|
||||
"Panel.mouse = {" + string(panel.mx) + ", " + string(panel.my) + "}\n" +
|
||||
"Panel.mouseUI = {" + string(mouse_mx) + ", " + string(mouse_my) + "}\n" +
|
||||
"Panel.x = " + string(panel.x ) + "\n" +
|
||||
"Panel.y = " + string(panel.y ) + "\n" +
|
||||
"Panel.w = " + string(panel.w ) + "\n" +
|
||||
"Panel.h = " + string(panel.h ) + "\n" +
|
||||
$"Panel.mouse = \{{panel.mx}, {panel.my}\}\n" +
|
||||
$"Panel.mouseUI = \{{mouse_mx}, {mouse_my}\}\n" +
|
||||
$"Panel.x = {panel.x}\n" +
|
||||
$"Panel.y = {panel.y}\n" +
|
||||
$"Panel.w = {panel.w}\n" +
|
||||
$"Panel.h = {panel.h}\n" +
|
||||
|
||||
"Panel.hoverable = " + string(panel.pHOVER) + "\n" +
|
||||
"Panel.clickable = " + string(panel.pFOCUS) + "\n"
|
||||
);
|
||||
$"Panel.hoverable = {panel.pHOVER}\n" +
|
||||
$"Panel.clickable = {panel.pFOCUS}\n" +
|
||||
|
||||
lua_add_code(lua,
|
||||
"Animator.frame_current = " + string(CURRENT_FRAME) + "\n" +
|
||||
"Animator.frame_total = " + string(TOTAL_FRAMES) + "\n" +
|
||||
"Animator.frame_rate = " + string(PROJECT.animator.framerate) + "\n"
|
||||
$"Animator.frame_current = {CURRENT_FRAME}\n" +
|
||||
$"Animator.frame_total = {TOTAL_FRAMES}\n" +
|
||||
$"Animator.frame_rate = {PROJECT.animator.framerate}\n"
|
||||
);
|
||||
}
|
||||
|
|
|
@ -34,48 +34,48 @@
|
|||
[ "draw_set_colour", draw_set_colour ],
|
||||
|
||||
// gpu
|
||||
[ "gpu_get_blendenable", gpu_get_blendenable],
|
||||
[ "gpu_get_ztestenable", gpu_get_ztestenable],
|
||||
[ "gpu_get_zfunc", gpu_get_zfunc],
|
||||
[ "gpu_get_zwriteenable", gpu_get_zwriteenable],
|
||||
[ "gpu_get_fog", gpu_get_fog],
|
||||
[ "gpu_get_cullmode", gpu_get_cullmode],
|
||||
[ "gpu_get_blendmode", gpu_get_blendmode],
|
||||
[ "gpu_get_blendmode_ext", gpu_get_blendmode_ext],
|
||||
[ "gpu_get_blendmode_ext_sepalpha", gpu_get_blendmode_ext_sepalpha],
|
||||
[ "gpu_get_blendmode_src", gpu_get_blendmode_src],
|
||||
[ "gpu_get_blendmode_dest", gpu_get_blendmode_dest],
|
||||
[ "gpu_get_blendmode_srcalpha", gpu_get_blendmode_srcalpha],
|
||||
[ "gpu_get_blendmode_destalpha", gpu_get_blendmode_destalpha],
|
||||
[ "gpu_get_colourwriteenable", gpu_get_colourwriteenable],
|
||||
[ "gpu_get_alphatestenable", gpu_get_alphatestenable],
|
||||
[ "gpu_get_alphatestref", gpu_get_alphatestref],
|
||||
[ "gpu_get_texfilter", gpu_get_texfilter],
|
||||
[ "gpu_get_texfilter_ext", gpu_get_texfilter_ext],
|
||||
[ "gpu_get_texrepeat", gpu_get_texrepeat],
|
||||
[ "gpu_get_texrepeat_ext", gpu_get_texrepeat_ext],
|
||||
[ "gpu_get_blendenable", gpu_get_blendenable ],
|
||||
[ "gpu_get_ztestenable", gpu_get_ztestenable ],
|
||||
[ "gpu_get_zfunc", gpu_get_zfunc ],
|
||||
[ "gpu_get_zwriteenable", gpu_get_zwriteenable ],
|
||||
[ "gpu_get_fog", gpu_get_fog ],
|
||||
[ "gpu_get_cullmode", gpu_get_cullmode ],
|
||||
[ "gpu_get_blendmode", gpu_get_blendmode ],
|
||||
[ "gpu_get_blendmode_ext", gpu_get_blendmode_ext ],
|
||||
[ "gpu_get_blendmode_ext_sepalpha", gpu_get_blendmode_ext_sepalpha ],
|
||||
[ "gpu_get_blendmode_src", gpu_get_blendmode_src ],
|
||||
[ "gpu_get_blendmode_dest", gpu_get_blendmode_dest ],
|
||||
[ "gpu_get_blendmode_srcalpha", gpu_get_blendmode_srcalpha ],
|
||||
[ "gpu_get_blendmode_destalpha", gpu_get_blendmode_destalpha ],
|
||||
[ "gpu_get_colourwriteenable", gpu_get_colourwriteenable ],
|
||||
[ "gpu_get_alphatestenable", gpu_get_alphatestenable ],
|
||||
[ "gpu_get_alphatestref", gpu_get_alphatestref ],
|
||||
[ "gpu_get_texfilter", gpu_get_texfilter ],
|
||||
[ "gpu_get_texfilter_ext", gpu_get_texfilter_ext ],
|
||||
[ "gpu_get_texrepeat", gpu_get_texrepeat ],
|
||||
[ "gpu_get_texrepeat_ext", gpu_get_texrepeat_ext ],
|
||||
|
||||
[ "gpu_set_blendenable", gpu_set_blendenable],
|
||||
[ "gpu_set_ztestenable", gpu_set_ztestenable],
|
||||
[ "gpu_set_zfunc", gpu_set_zfunc],
|
||||
[ "gpu_set_zwriteenable", gpu_set_zwriteenable],
|
||||
[ "gpu_set_fog", gpu_set_fog],
|
||||
[ "gpu_set_cullmode", gpu_set_cullmode],
|
||||
[ "gpu_set_blendmode", gpu_set_blendmode],
|
||||
[ "gpu_set_blendmode_ext", gpu_set_blendmode_ext],
|
||||
[ "gpu_set_blendmode_ext_sepalpha", gpu_set_blendmode_ext_sepalpha],
|
||||
[ "gpu_set_colourwriteenable", gpu_set_colourwriteenable],
|
||||
[ "gpu_set_alphatestenable", gpu_set_alphatestenable],
|
||||
[ "gpu_set_alphatestref", gpu_set_alphatestref],
|
||||
[ "gpu_set_texfilter", gpu_set_texfilter],
|
||||
[ "gpu_set_texfilter_ext", gpu_set_texfilter_ext],
|
||||
[ "gpu_set_texrepeat", gpu_set_texrepeat],
|
||||
[ "gpu_set_texrepeat_ext", gpu_set_texrepeat_ext],
|
||||
[ "gpu_set_blendenable", gpu_set_blendenable ],
|
||||
[ "gpu_set_ztestenable", gpu_set_ztestenable ],
|
||||
[ "gpu_set_zfunc", gpu_set_zfunc ],
|
||||
[ "gpu_set_zwriteenable", gpu_set_zwriteenable ],
|
||||
[ "gpu_set_fog", gpu_set_fog ],
|
||||
[ "gpu_set_cullmode", gpu_set_cullmode ],
|
||||
[ "gpu_set_blendmode", gpu_set_blendmode ],
|
||||
[ "gpu_set_blendmode_ext", gpu_set_blendmode_ext ],
|
||||
[ "gpu_set_blendmode_ext_sepalpha", gpu_set_blendmode_ext_sepalpha ],
|
||||
[ "gpu_set_colourwriteenable", gpu_set_colourwriteenable ],
|
||||
[ "gpu_set_alphatestenable", gpu_set_alphatestenable ],
|
||||
[ "gpu_set_alphatestref", gpu_set_alphatestref ],
|
||||
[ "gpu_set_texfilter", gpu_set_texfilter ],
|
||||
[ "gpu_set_texfilter_ext", gpu_set_texfilter_ext ],
|
||||
[ "gpu_set_texrepeat", gpu_set_texrepeat ],
|
||||
[ "gpu_set_texrepeat_ext", gpu_set_texrepeat_ext ],
|
||||
|
||||
[ "gpu_push_state", gpu_push_state],
|
||||
[ "gpu_pop_state", gpu_pop_state],
|
||||
[ "gpu_get_state", gpu_get_state],
|
||||
[ "gpu_set_state", gpu_set_state],
|
||||
[ "gpu_push_state", gpu_push_state ],
|
||||
[ "gpu_pop_state", gpu_pop_state ],
|
||||
[ "gpu_get_state", gpu_get_state ],
|
||||
[ "gpu_set_state", gpu_set_state ],
|
||||
|
||||
// basic form
|
||||
[ "draw_set_color", draw_set_color ],
|
||||
|
@ -233,7 +233,7 @@
|
|||
[ "__sprite_add", function(_ID, _path, _amo, rem = false, smt = false, xoff = 0, yoff = 0) {
|
||||
var _addon = noone;
|
||||
with(_addon_custom) if(self.ID == _ID) _addon = self;
|
||||
if(_addon == noone) return 0;
|
||||
if(_addon == noone) return undefined;
|
||||
|
||||
_path = string_replace(_path, "./", _addon.directory + "/");
|
||||
return sprite_add(_path, _amo, rem, smt, xoff, yoff);
|
||||
|
@ -792,6 +792,8 @@
|
|||
case "inspector" : return PANEL_INSPECTOR;
|
||||
case "main" : return PANEL_MAIN;
|
||||
}
|
||||
|
||||
return undefined;
|
||||
} ],
|
||||
|
||||
[ "draw_text_set_format", function(ind) {
|
||||
|
@ -802,35 +804,37 @@
|
|||
case 3 : draw_set_font(f_p2); draw_set_color(COLORS._main_text_sub); break;
|
||||
case 4 : draw_set_font(f_p3); draw_set_color(COLORS._main_text_sub); break;
|
||||
}
|
||||
|
||||
return undefined;
|
||||
}],
|
||||
|
||||
//nodes
|
||||
[ "node_get", function(nodeId) {
|
||||
if(!ds_map_exists(PROJECT.nodeNameMap, nodeId)) return 0;
|
||||
if(!ds_map_exists(PROJECT.nodeNameMap, nodeId)) return undefined;
|
||||
return PROJECT.nodeNameMap[? nodeId];
|
||||
}],
|
||||
|
||||
[ "node_get_input_value", function(nodeId, input) {
|
||||
if(!ds_map_exists(PROJECT.nodeNameMap, nodeId)) return 0;
|
||||
if(!ds_map_exists(PROJECT.nodeNameMap, nodeId)) return undefined;
|
||||
var node = PROJECT.nodeNameMap[? nodeId];
|
||||
|
||||
if(!ds_map_exists(node.inputMap, input)) return 0;
|
||||
if(!ds_map_exists(node.inputMap, input)) return undefined;
|
||||
return node.inputMap[? input].getValue();
|
||||
}],
|
||||
|
||||
[ "node_set_input_value", function(nodeId, input, value) {
|
||||
if(!ds_map_exists(PROJECT.nodeNameMap, nodeId)) return 0;
|
||||
if(!ds_map_exists(PROJECT.nodeNameMap, nodeId)) return undefined;
|
||||
var node = PROJECT.nodeNameMap[? nodeId];
|
||||
|
||||
if(!ds_map_exists(node.inputMap, input)) return 0;
|
||||
if(!ds_map_exists(node.inputMap, input)) return undefined;
|
||||
return node.inputMap[? input].setValue(value);
|
||||
}],
|
||||
|
||||
[ "node_get_output_value", function(nodeId, input) {
|
||||
if(!ds_map_exists(PROJECT.nodeNameMap, nodeId)) return 0;
|
||||
if(!ds_map_exists(PROJECT.nodeNameMap, nodeId)) return undefined;
|
||||
var node = PROJECT.nodeNameMap[? nodeId];
|
||||
|
||||
if(!ds_map_exists(node.outputMap, input)) return 0;
|
||||
if(!ds_map_exists(node.outputMap, input)) return undefined;
|
||||
return node.outputMap[? input].getValue();
|
||||
}],
|
||||
|
||||
|
@ -840,7 +844,8 @@
|
|||
|
||||
var ele = HOVERING_ELEMENT;
|
||||
for( var i = 0; i < argument_count; i++ ) {
|
||||
if(!struct_has(ele, argument[i])) return undefined;
|
||||
if(!is_struct(ele) || !struct_has(ele, argument[i]))
|
||||
return undefined;
|
||||
ele = ele[$ argument[i]];
|
||||
}
|
||||
return ele;
|
||||
|
@ -849,7 +854,7 @@
|
|||
[ "__panel_create", function(ID, panel = "") {
|
||||
var _addon = noone;
|
||||
with(_addon_custom) if(self.ID == ID) _addon = self;
|
||||
if(_addon == noone) return noone;
|
||||
if(_addon == noone) return undefined;
|
||||
|
||||
var arr = variable_struct_get_names(_addon.panels);
|
||||
|
||||
|
@ -860,7 +865,7 @@
|
|||
dialogPanelCall(new addonPanel(_addon, pane));
|
||||
}
|
||||
|
||||
return noone;
|
||||
return undefined;
|
||||
}],
|
||||
|
||||
@"
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
function buttonAnchor(_onClick) : widget() constructor {
|
||||
onClick = _onClick;
|
||||
index = 4;
|
||||
click = true;
|
||||
|
||||
static drawParam = function(params) {
|
||||
return draw(params.x, params.y, params.w, params.h, params.m);
|
||||
|
@ -16,17 +17,20 @@ function buttonAnchor(_onClick) : widget() constructor {
|
|||
var cy = y + h / 2;
|
||||
hovering = false;
|
||||
|
||||
var spacing = 9;
|
||||
|
||||
for( var i = -1; i <= 1; i++ )
|
||||
for( var j = -1; j <= 1; j++ ) {
|
||||
var _bx = cx + j * 9;
|
||||
var _by = cy + i * 9;
|
||||
var _in = (i + 1) * 3 + (j + 1);
|
||||
var _bx = cx + j * spacing;
|
||||
var _by = cy + i * spacing;
|
||||
var _in = (i + 1) * 3 + (j + 1);
|
||||
var _fil = is_array(index)? index[_in] : _in == index;
|
||||
|
||||
var hov = hover && point_in_rectangle(_m[0], _m[1], _bx - 4, _by - 4, _bx + 4, _by + 4);
|
||||
var cc = hov? COLORS._main_accent : COLORS._main_icon;
|
||||
var aa = 0.75 + (_in == index || hov) * 0.25;
|
||||
var aa = 0.75 + (_fil || hov) * 0.25;
|
||||
|
||||
draw_sprite_ext(THEME.prop_anchor, _in == index, _bx, _by, 1, 1, 0, cc, aa);
|
||||
draw_sprite_ext(THEME.prop_anchor, _fil, _bx, _by, 1, 1, 0, cc, aa);
|
||||
|
||||
if(hov) {
|
||||
hovering = true;
|
||||
|
@ -41,9 +45,7 @@ function buttonAnchor(_onClick) : widget() constructor {
|
|||
}
|
||||
|
||||
static clone = function() { #region
|
||||
var cln = new buttonAnchor();
|
||||
|
||||
cln.onClick = onClick;
|
||||
var cln = new buttonAnchor(onClick);
|
||||
|
||||
return cln;
|
||||
} #endregion
|
||||
|
|
|
@ -1,9 +1,18 @@
|
|||
function Node_Outline(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) constructor {
|
||||
name = "Outline";
|
||||
|
||||
filtering_vl = false;
|
||||
filter_button = new buttonAnchor(function(ind) {
|
||||
if(mouse_press(mb_left))
|
||||
filtering_vl = !attributes.filter[ind];
|
||||
attributes.filter[ind] = filtering_vl;
|
||||
triggerRender();
|
||||
});
|
||||
|
||||
inputs[| 0] = nodeValue("Surface in", self, JUNCTION_CONNECT.input, VALUE_TYPE.surface, noone);
|
||||
|
||||
inputs[| 1] = nodeValue("Width", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 0)
|
||||
.setDisplay(VALUE_DISPLAY._default, { front_button : filter_button })
|
||||
.setMappable(15);
|
||||
|
||||
inputs[| 2] = nodeValue("Color", self, JUNCTION_CONNECT.input, VALUE_TYPE.color, c_white);
|
||||
|
@ -61,7 +70,10 @@ function Node_Outline(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c
|
|||
attribute_surface_depth();
|
||||
attribute_oversample();
|
||||
|
||||
attributes.filter = array_create(9, 1);
|
||||
|
||||
static step = function() { #region
|
||||
var _wid = getInputData(1);
|
||||
var _side = getInputData(5);
|
||||
|
||||
inputs[| 12].setVisible(_side == 0);
|
||||
|
@ -84,6 +96,8 @@ function Node_Outline(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c
|
|||
var sam = struct_try_get(attributes, "oversample");
|
||||
var _crop = _data[12];
|
||||
|
||||
filter_button.index = attributes.filter;
|
||||
|
||||
surface_set_shader(_outSurf, sh_outline);
|
||||
shader_set_f("dimension", ww, hh);
|
||||
shader_set_f_map("borderSize", _data[1], _data[15], inputs[| 1]);
|
||||
|
@ -97,6 +111,7 @@ function Node_Outline(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c
|
|||
shader_set_f_map("blend_alpha", _data[4], _data[16], inputs[| 4]);
|
||||
shader_set_i("sampleMode", sam);
|
||||
shader_set_i("crop_border", _crop);
|
||||
shader_set_i("filter", attributes.filter);
|
||||
|
||||
draw_surface_safe(_data[0]);
|
||||
surface_reset_shader();
|
||||
|
|
|
@ -90,6 +90,7 @@ enum VALUE_DISPLAY {
|
|||
matrix,
|
||||
path_anchor,
|
||||
gradient_range,
|
||||
boolean_grid,
|
||||
|
||||
//Curve
|
||||
curve,
|
||||
|
@ -381,6 +382,7 @@ function typeArray(_type) { #region
|
|||
case VALUE_DISPLAY.puppet_control :
|
||||
case VALUE_DISPLAY.matrix :
|
||||
case VALUE_DISPLAY.transform :
|
||||
case VALUE_DISPLAY.boolean_grid :
|
||||
|
||||
case VALUE_DISPLAY.curve :
|
||||
|
||||
|
@ -905,12 +907,10 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
|
|||
editWidget = new textBox(_txt, function(val) { return setValueInspector(val); } );
|
||||
editWidget.setSlidable();
|
||||
|
||||
if(struct_has(display_data, "slide_speed")) editWidget.setSlidable(display_data.slide_speed);
|
||||
if(struct_has(display_data, "unit")) editWidget.unit = display_data.unit;
|
||||
if(struct_has(display_data, "side_button")) {
|
||||
editWidget.side_button = display_data.side_button;
|
||||
editWidget.side_button.context = self;
|
||||
}
|
||||
if(struct_has(display_data, "slide_speed")) editWidget.setSlidable(display_data.slide_speed);
|
||||
if(struct_has(display_data, "unit")) editWidget.unit = display_data.unit;
|
||||
if(struct_has(display_data, "side_button")) editWidget.side_button = display_data.side_button;
|
||||
if(struct_has(display_data, "front_button")) editWidget.front_button = display_data.front_button;
|
||||
|
||||
extract_node = "Node_Number";
|
||||
break; #endregion
|
||||
|
@ -1128,7 +1128,18 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
|
|||
if(type == VALUE_TYPE.integer) editWidget.setSlideSpeed(1 / 10);
|
||||
|
||||
for( var i = 0, n = array_length(animators); i < n; i++ )
|
||||
animators[i].suffix = " " + string(i);
|
||||
animators[i].suffix = $" {i}";
|
||||
|
||||
extract_node = "";
|
||||
break; #endregion
|
||||
|
||||
case VALUE_DISPLAY.boolean_grid : #region
|
||||
editWidget = new matrixGrid(_txt, display_data.size, function(index, val) {
|
||||
return setValueInspector(val, index);
|
||||
}, unit );
|
||||
|
||||
for( var i = 0, n = array_length(animators); i < n; i++ )
|
||||
animators[i].suffix = $" {i}";
|
||||
|
||||
extract_node = "";
|
||||
break; #endregion
|
||||
|
|
|
@ -436,6 +436,14 @@ function textBox(_input, _onModify) : textInput(_input, _onModify) constructor {
|
|||
|
||||
var _bs = min(h, ui(32));
|
||||
|
||||
if(_w - _bs > ui(100) && front_button) {
|
||||
front_button.setFocusHover(active, hover);
|
||||
front_button.draw(_x, _y + _h / 2 - _bs / 2, _bs, _bs, _m, THEME.button_hide);
|
||||
|
||||
_x += _bs + ui(4);
|
||||
_w -= _bs + ui(4);
|
||||
}
|
||||
|
||||
if(_w - _bs > ui(100) && side_button) {
|
||||
side_button.setFocusHover(active, hover);
|
||||
side_button.draw(_x + _w - _bs, _y + _h / 2 - _bs / 2, _bs, _bs, _m, THEME.button_hide);
|
||||
|
|
|
@ -6,7 +6,9 @@ function widget() constructor {
|
|||
ihover = false;
|
||||
parent = noone;
|
||||
interactable = true;
|
||||
|
||||
side_button = noone;
|
||||
front_button = noone;
|
||||
|
||||
hide = false;
|
||||
|
||||
|
|
|
@ -18,6 +18,7 @@ uniform int side;
|
|||
uniform int crop_border;
|
||||
uniform int is_aa;
|
||||
uniform int is_blend;
|
||||
uniform int filter[9];
|
||||
|
||||
uniform vec2 blend_alpha;
|
||||
uniform int blend_alphaUseSurf;
|
||||
|
@ -61,6 +62,24 @@ vec4 blendColor(vec4 base, vec4 colr, float alpha) {
|
|||
return col;
|
||||
}
|
||||
|
||||
bool angleFiltered(float angle) {
|
||||
float _dg = mod((degrees(angle) + 360. + ((side == 0)? 180. : 0.)), 360.);
|
||||
|
||||
int _ind = 0;
|
||||
|
||||
if(_dg <= 22.5 + 45. * 0.) _ind = 3;
|
||||
else if(_dg <= 22.5 + 45. * 1.) _ind = 0;
|
||||
else if(_dg <= 22.5 + 45. * 2.) _ind = 1;
|
||||
else if(_dg <= 22.5 + 45. * 3.) _ind = 2;
|
||||
else if(_dg <= 22.5 + 45. * 4.) _ind = 5;
|
||||
else if(_dg <= 22.5 + 45. * 5.) _ind = 8;
|
||||
else if(_dg <= 22.5 + 45. * 6.) _ind = 7;
|
||||
else if(_dg <= 22.5 + 45. * 7.) _ind = 6;
|
||||
else _ind = 3;
|
||||
|
||||
return filter[_ind] == 0;
|
||||
}
|
||||
|
||||
void main() { #region
|
||||
#region params
|
||||
float bStr = borderStart.x;
|
||||
|
@ -117,6 +136,7 @@ void main() { #region
|
|||
base *= 2.;
|
||||
}
|
||||
|
||||
if(angleFiltered(ang)) continue;
|
||||
vec2 pxs = pixelPosition + vec2( cos(ang), sin(ang)) * i;
|
||||
vec2 txs = pxs / dimension;
|
||||
pxs = floor(pxs) + 0.5;
|
||||
|
@ -143,6 +163,8 @@ void main() { #region
|
|||
float tauDiv = TAU / 4.;
|
||||
for(float j = 0.; j < 4.; j++) {
|
||||
float ang = j * tauDiv;
|
||||
if(angleFiltered(ang)) continue;
|
||||
|
||||
vec2 pxs = (pixelPosition + vec2( cos(ang), sin(ang)) ) / dimension;
|
||||
if(side == 0 && crop_border == 1 && (pxs.x < 0. || pxs.x > 1. || pxs.y < 0. || pxs.y > 1.)) continue;
|
||||
|
||||
|
|
Loading…
Reference in a new issue