diff --git a/Libraries/shaderlib/Sources/arm/shader/MaterialParser.hx b/Libraries/shaderlib/Sources/arm/shader/MaterialParser.hx index c3d2923e..f0cb6285 100644 --- a/Libraries/shaderlib/Sources/arm/shader/MaterialParser.hx +++ b/Libraries/shaderlib/Sources/arm/shader/MaterialParser.hx @@ -643,7 +643,7 @@ class MaterialParser { else if (node.type == "VALTORGB") { // ColorRamp var fac = parse_value_input(node.inputs[0]); var interp = node.buttons[0].data == 0 ? "LINEAR" : "CONSTANT"; - var elems = node.buttons[0].default_value; + var elems: Array> = node.buttons[0].default_value; if (elems.length == 1) { return vec3(elems[0]); } diff --git a/Sources/arm/Config.hx b/Sources/arm/Config.hx index a992c7c3..83dce97a 100644 --- a/Sources/arm/Config.hx +++ b/Sources/arm/Config.hx @@ -12,11 +12,12 @@ import arm.render.Inc; import arm.sys.Path; import arm.Enums; import arm.ConfigFormat; +import arm.KeymapFormat; class Config { public static var raw: TConfig = null; - public static var keymap: Dynamic; + public static var keymap: TKeymap; public static var configLoaded = false; public static function load(done: Void->Void) { diff --git a/Sources/arm/KeymapFormat.hx b/Sources/arm/KeymapFormat.hx new file mode 100644 index 00000000..10ebe842 --- /dev/null +++ b/Sources/arm/KeymapFormat.hx @@ -0,0 +1,67 @@ +package arm; + +typedef TKeymap = { + public var action_paint: String; + public var action_rotate: String; + public var action_pan: String; + public var action_zoom: String; + public var rotate_light: String; + public var rotate_envmap: String; + public var set_clone_source: String; + public var stencil_transform: String; + public var stencil_hide: String; + public var decal_mask: String; + public var select_material: String; + public var cycle_layers: String; + public var brush_radius: String; + public var brush_radius_decrease: String; + public var brush_radius_increase: String; + public var brush_opacity: String; + public var brush_angle: String; + public var brush_ruler: String; + public var file_new: String; + public var file_open: String; + public var file_open_recent: String; + public var file_save: String; + public var file_save_as: String; + public var file_reimport_mesh: String; + public var file_reimport_textures: String; + public var file_import_assets: String; + public var file_export_textures: String; + public var file_export_textures_as: String; + public var edit_undo: String; + public var edit_redo: String; + public var edit_prefs: String; + public var view_reset: String; + public var view_front: String; + public var view_back: String; + public var view_right: String; + public var view_left: String; + public var view_top: String; + public var view_bottom: String; + public var view_camera_type: String; + public var view_orbit_left: String; + public var view_orbit_right: String; + public var view_orbit_up: String; + public var view_orbit_down: String; + public var view_orbit_opposite: String; + public var view_zoom_in: String; + public var view_zoom_out: String; + public var view_distract_free: String; + public var tool_brush: String; + public var tool_eraser: String; + public var tool_fill: String; + public var tool_decal: String; + public var tool_text: String; + public var tool_clone: String; + public var tool_blur: String; + public var tool_particle: String; + public var tool_bake: String; + public var tool_colorid: String; + public var tool_picker: String; + public var swap_brush_eraser: String; + public var toggle_2d_view: String; + public var toggle_node_editor: String; + public var toggle_browser: String; + public var node_search: String; +} diff --git a/Sources/arm/io/ImportFolder.hx b/Sources/arm/io/ImportFolder.hx index db4aea1b..ae3f4d41 100644 --- a/Sources/arm/io/ImportFolder.hx +++ b/Sources/arm/io/ImportFolder.hx @@ -130,7 +130,7 @@ class ImportFolder { n.buttons[0].default_value = App.getAssetIndex(asset); n.x = 72; n.y = ny; - var l = { id: nodes.getLinkId(canvas.links), from_id: n.id, from_socket: 0, to_id: to_id, to_socket: to_socket }; + var l: TNodeLink = { id: nodes.getLinkId(canvas.links), from_id: n.id, from_socket: 0, to_id: to_id, to_socket: to_socket }; canvas.links.push(l); } } diff --git a/Sources/arm/node/MakeMaterial.hx b/Sources/arm/node/MakeMaterial.hx index c01c2883..1b6b545f 100644 --- a/Sources/arm/node/MakeMaterial.hx +++ b/Sources/arm/node/MakeMaterial.hx @@ -154,7 +154,7 @@ class MakeMaterial { } var sdata = new NodeShaderData({ name: "Material", canvas: UINodes.inst.getCanvasMaterial() }); - var mcon = { name: "paint", bind_textures: [] }; + var mcon: TMaterialContext = { name: "paint", bind_textures: [] }; var con = MakePaint.run(sdata, mcon); var compileError = false; @@ -214,7 +214,7 @@ class MakeMaterial { public static function parseNodePreviewMaterial(node: TNode): { scon: ShaderContext, mcon: MaterialContext } { var sdata = new NodeShaderData({ name: "Material", canvas: UINodes.inst.getCanvasMaterial() }); - var mcon_raw = { name: "mesh", bind_textures: [] }; + var mcon_raw: TMaterialContext = { name: "mesh", bind_textures: [] }; var con = MakeNodePreview.run(sdata, mcon_raw, node); var compileError = false; var scon = new ShaderContext(con.data, function(scon: ShaderContext) {