diff --git a/Game/Assets/Effects/ExplosionFlames.png b/Game/Assets/Effects/ExplosionFlames.png new file mode 100644 index 0000000..badace9 Binary files /dev/null and b/Game/Assets/Effects/ExplosionFlames.png differ diff --git a/Game/Assets/Effects/ExplosionFlames.png.import b/Game/Assets/Effects/ExplosionFlames.png.import new file mode 100644 index 0000000..1c688d9 --- /dev/null +++ b/Game/Assets/Effects/ExplosionFlames.png.import @@ -0,0 +1,36 @@ +[remap] + +importer="texture" +type="StreamTexture" +path.s3tc="res://.import/ExplosionFlames.png-742a7ec019a4639c7e006fa5a2759fd6.s3tc.stex" +path.etc2="res://.import/ExplosionFlames.png-742a7ec019a4639c7e006fa5a2759fd6.etc2.stex" +metadata={ +"imported_formats": [ "s3tc", "etc2" ], +"vram_texture": true +} + +[deps] + +source_file="res://Assets/Effects/ExplosionFlames.png" +dest_files=[ "res://.import/ExplosionFlames.png-742a7ec019a4639c7e006fa5a2759fd6.s3tc.stex", "res://.import/ExplosionFlames.png-742a7ec019a4639c7e006fa5a2759fd6.etc2.stex" ] + +[params] + +compress/mode=2 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=true +flags/filter=true +flags/mipmaps=true +flags/anisotropic=false +flags/srgb=1 +process/fix_alpha_border=true +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +stream=false +size_limit=0 +detect_3d=false +svg/scale=1.0 diff --git a/Game/Assets/Effects/ExplosionFlames.ptex b/Game/Assets/Effects/ExplosionFlames.ptex new file mode 100644 index 0000000..f07bc20 --- /dev/null +++ b/Game/Assets/Effects/ExplosionFlames.ptex @@ -0,0 +1,1732 @@ +{ + "connections": [ + { + "from": "perlin_2", + "from_port": 0, + "to": "warp", + "to_port": 0 + }, + { + "from": "perlin", + "from_port": 0, + "to": "warp", + "to_port": 1 + }, + { + "from": "tiler", + "from_port": 0, + "to": "blend", + "to_port": 0 + }, + { + "from": "warp", + "from_port": 0, + "to": "blend", + "to_port": 1 + }, + { + "from": "noise", + "from_port": 0, + "to": "fast_blur", + "to_port": 0 + }, + { + "from": "tiler", + "from_port": 0, + "to": "blend_2", + "to_port": 1 + }, + { + "from": "fast_blur", + "from_port": 0, + "to": "slope_blur", + "to_port": 0 + }, + { + "from": "slope_blur", + "from_port": 0, + "to": "blend_2", + "to_port": 0 + }, + { + "from": "fast_blur_2", + "from_port": 0, + "to": "slope_blur", + "to_port": 1 + }, + { + "from": "noise_2", + "from_port": 0, + "to": "fast_blur_2", + "to_port": 0 + }, + { + "from": "slope_blur", + "from_port": 0, + "to": "slope_blur_2", + "to_port": 0 + }, + { + "from": "perlin_3", + "from_port": 0, + "to": "warp_2", + "to_port": 1 + }, + { + "from": "fast_blur", + "from_port": 0, + "to": "warp_2", + "to_port": 0 + }, + { + "from": "warp_2", + "from_port": 0, + "to": "slope_blur_2", + "to_port": 1 + }, + { + "from": "slope_blur_2", + "from_port": 0, + "to": "fast_blur_3", + "to_port": 0 + }, + { + "from": "slope_blur_2", + "from_port": 0, + "to": "blend_3", + "to_port": 1 + }, + { + "from": "fast_blur_3", + "from_port": 0, + "to": "blend_3", + "to_port": 0 + }, + { + "from": "blend_3", + "from_port": 0, + "to": "auto_tones", + "to_port": 0 + }, + { + "from": "blend_2", + "from_port": 0, + "to": "blend_4", + "to_port": 1 + }, + { + "from": "auto_tones", + "from_port": 0, + "to": "blend_4", + "to_port": 0 + }, + { + "from": "graph", + "from_port": 0, + "to": "blend_5", + "to_port": 0 + }, + { + "from": "graph_2", + "from_port": 0, + "to": "blend_5", + "to_port": 1 + }, + { + "from": "blend_5", + "from_port": 0, + "to": "blend_6", + "to_port": 1 + }, + { + "from": "graph_3", + "from_port": 0, + "to": "blend_6", + "to_port": 0 + }, + { + "from": "blend_6", + "from_port": 0, + "to": "fast_blur_4", + "to_port": 0 + }, + { + "from": "fast_blur_4", + "from_port": 0, + "to": "blend_7", + "to_port": 1 + }, + { + "from": "blend_6", + "from_port": 0, + "to": "blend_7", + "to_port": 0 + }, + { + "from": "blend_7", + "from_port": 0, + "to": "auto_tones_2", + "to_port": 0 + }, + { + "from": "shape", + "from_port": 0, + "to": "tiler", + "to_port": 0 + }, + { + "from": "tiler", + "from_port": 0, + "to": "blend_8", + "to_port": 0 + }, + { + "from": "auto_tones_2", + "from_port": 0, + "to": "blend_8", + "to_port": 1 + }, + { + "from": "blend_8", + "from_port": 0, + "to": "blend_9", + "to_port": 1 + }, + { + "from": "blend_4", + "from_port": 0, + "to": "blend_9", + "to_port": 0 + }, + { + "from": "perlin_5", + "from_port": 0, + "to": "warp_dilation", + "to_port": 1 + }, + { + "from": "perlin_4", + "from_port": 0, + "to": "warp_dilation", + "to_port": 0 + }, + { + "from": "warp_dilation", + "from_port": 0, + "to": "smooth_curvature", + "to_port": 0 + }, + { + "from": "warp_dilation", + "from_port": 0, + "to": "smooth_curvature_2", + "to_port": 0 + }, + { + "from": "smooth_curvature", + "from_port": 0, + "to": "blend_10", + "to_port": 0 + }, + { + "from": "smooth_curvature_2", + "from_port": 0, + "to": "blend_10", + "to_port": 1 + }, + { + "from": "blend_9", + "from_port": 0, + "to": "blend_11", + "to_port": 1 + }, + { + "from": "tiler", + "from_port": 0, + "to": "blend_12", + "to_port": 0 + }, + { + "from": "blend_10", + "from_port": 0, + "to": "blend_12", + "to_port": 1 + }, + { + "from": "tiler", + "from_port": 0, + "to": "tones", + "to_port": 0 + }, + { + "from": "perlin_7", + "from_port": 0, + "to": "warp_3", + "to_port": 1 + }, + { + "from": "tones", + "from_port": 0, + "to": "warp_4", + "to_port": 0 + }, + { + "from": "warp_3", + "from_port": 0, + "to": "warp_4", + "to_port": 1 + }, + { + "from": "perlin_6", + "from_port": 0, + "to": "warp_3", + "to_port": 0 + }, + { + "from": "blend_12", + "from_port": 0, + "to": "blend_11", + "to_port": 0 + }, + { + "from": "warp_4", + "from_port": 0, + "to": "blend_13", + "to_port": 0 + }, + { + "from": "blend_11", + "from_port": 0, + "to": "gaussian_blur", + "to_port": 0 + }, + { + "from": "perlin_8", + "from_port": 0, + "to": "gaussian_blur", + "to_port": 1 + }, + { + "from": "gaussian_blur", + "from_port": 0, + "to": "tones_2", + "to_port": 0 + }, + { + "from": "tones_2", + "from_port": 0, + "to": "warp_5", + "to_port": 0 + }, + { + "from": "perlin_9", + "from_port": 0, + "to": "warp_5", + "to_port": 1 + }, + { + "from": "warp_5", + "from_port": 0, + "to": "blend_13", + "to_port": 1 + } + ], + "label": "Graph", + "longdesc": "", + "name": "@@268", + "node_position": { + "x": 0, + "y": 0 + }, + "nodes": [ + { + "export_paths": { + + }, + "name": "Material", + "node_position": { + "x": 1742, + "y": -592 + }, + "parameters": { + "albedo_color": { + "a": 1, + "b": 1, + "g": 1, + "r": 1, + "type": "Color" + }, + "ao": 1, + "depth_scale": 0.5, + "emission_energy": 1, + "flags_transparent": false, + "metallic": 1, + "normal": 1, + "roughness": 1, + "size": 11, + "sss": 0 + }, + "type": "material" + }, + { + "name": "perlin", + "node_position": { + "x": -399, + "y": 313.5 + }, + "parameters": { + "iterations": 7, + "persistence": 0.55, + "scale_x": 16, + "scale_y": 16 + }, + "seed_value": -909, + "type": "perlin" + }, + { + "name": "perlin_2", + "node_position": { + "x": -458.5, + "y": 67.5 + }, + "parameters": { + "iterations": 3, + "persistence": 0.5, + "scale_x": 8, + "scale_y": 8 + }, + "seed_value": -909, + "type": "perlin" + }, + { + "name": "warp", + "node_position": { + "x": -26, + "y": 192.5 + }, + "parameters": { + "amount": 0.105, + "eps": 0.06, + "mode": 1 + }, + "type": "warp" + }, + { + "name": "shape", + "node_position": { + "x": -222.071808, + "y": -171.251282 + }, + "parameters": { + "edge": 1, + "radius": 0.5, + "shape": 0, + "sides": 2 + }, + "type": "shape" + }, + { + "name": "tiler", + "node_position": { + "x": 338.9534, + "y": -21.518822 + }, + "parameters": { + "fixed_offset": 0, + "offset": 0, + "overlap": 2, + "rotate": 0, + "scale": 0, + "scale_x": 1, + "scale_y": 1, + "select_inputs": 0, + "tx": 2, + "ty": 2, + "value": 0 + }, + "type": "tiler" + }, + { + "name": "blend", + "node_position": { + "x": 884, + "y": 400.5 + }, + "parameters": { + "amount": 1, + "blend_type": 2 + }, + "type": "blend" + }, + { + "name": "noise", + "node_position": { + "x": 206, + "y": -476.5 + }, + "parameters": { + "density": 0.5, + "size": 4 + }, + "seed_value": -64935, + "type": "noise" + }, + { + "name": "fast_blur", + "node_position": { + "x": 538, + "y": -552.5 + }, + "parameters": { + "param0": 9, + "param1": 105, + "param2": 1 + }, + "type": "fast_blur" + }, + { + "name": "blend_2", + "node_position": { + "x": 1333.57605, + "y": -77.652 + }, + "parameters": { + "amount": 1, + "blend_type": 2 + }, + "type": "blend" + }, + { + "name": "slope_blur", + "node_position": { + "x": 873, + "y": -416.5 + }, + "parameters": { + "param0": 8, + "param1": 50 + }, + "preview": 0, + "type": "slope_blur" + }, + { + "name": "fast_blur_2", + "node_position": { + "x": 483, + "y": -375 + }, + "parameters": { + "param0": 7, + "param1": 150, + "param2": 2 + }, + "type": "fast_blur" + }, + { + "name": "noise_2", + "node_position": { + "x": 197.5, + "y": -331.5 + }, + "parameters": { + "density": 0.93, + "size": 4 + }, + "seed_value": -62354, + "type": "noise" + }, + { + "name": "slope_blur_2", + "node_position": { + "x": 1206.5, + "y": -288.5 + }, + "parameters": { + "param0": 9, + "param1": 5.3 + }, + "type": "slope_blur" + }, + { + "name": "perlin_3", + "node_position": { + "x": 510, + "y": -240.5 + }, + "parameters": { + "iterations": 2, + "persistence": 0.75, + "scale_x": 12, + "scale_y": 12 + }, + "type": "perlin" + }, + { + "name": "warp_2", + "node_position": { + "x": 902, + "y": -188.5 + }, + "parameters": { + "amount": 0.64, + "eps": 0.1, + "mode": 0 + }, + "type": "warp" + }, + { + "name": "fast_blur_3", + "node_position": { + "x": 1558, + "y": -293.5 + }, + "parameters": { + "param0": 9, + "param1": 34, + "param2": 0 + }, + "type": "fast_blur" + }, + { + "name": "blend_3", + "node_position": { + "x": 1832.299927, + "y": -115.5 + }, + "parameters": { + "amount": 1, + "blend_type": 11 + }, + "type": "blend" + }, + { + "name": "auto_tones", + "node_position": { + "x": 2167, + "y": -100.5 + }, + "parameters": { + "param0": 9 + }, + "type": "auto_tones" + }, + { + "name": "blend_4", + "node_position": { + "x": 3591.837402, + "y": -21.356802 + }, + "parameters": { + "amount": 1, + "blend_type": 2 + }, + "preview": 0, + "type": "blend" + }, + { + "connections": [ + { + "from": "perlin", + "from_port": 0, + "to": "transform", + "to_port": 1 + }, + { + "from": "transform_2", + "from_port": 0, + "to": "gen_outputs", + "to_port": 0 + }, + { + "from": "perlin", + "from_port": 0, + "to": "transform", + "to_port": 2 + }, + { + "from": "perlin", + "from_port": 0, + "to": "transform_2", + "to_port": 0 + }, + { + "from": "transform", + "from_port": 0, + "to": "transform_2", + "to_port": 1 + }, + { + "from": "transform", + "from_port": 0, + "to": "transform_2", + "to_port": 2 + }, + { + "from": "perlin", + "from_port": 0, + "to": "transform", + "to_port": 0 + } + ], + "label": "Warp2", + "longdesc": "", + "name": "graph", + "node_position": { + "x": 2192.906738, + "y": 207.5 + }, + "nodes": [ + { + "name": "transform", + "node_position": { + "x": -292.25, + "y": -629 + }, + "parameters": { + "repeat": true, + "rotate": 0, + "scale_x": 1, + "scale_y": 1, + "translate_x": 0.5, + "translate_y": 0.5 + }, + "type": "transform" + }, + { + "name": "perlin", + "node_position": { + "x": -558.25, + "y": -720 + }, + "parameters": { + "iterations": 3, + "persistence": 0.5, + "scale_x": 4, + "scale_y": 4 + }, + "type": "perlin" + }, + { + "name": "gen_inputs", + "node_position": { + "x": -802.25, + "y": -655.5 + }, + "parameters": { + + }, + "ports": [ + + ], + "type": "ios" + }, + { + "name": "gen_outputs", + "node_position": { + "x": 268.75, + "y": -656.5 + }, + "parameters": { + + }, + "ports": [ + { + "name": "port0", + "type": "rgba" + } + ], + "type": "ios" + }, + { + "name": "gen_parameters", + "node_position": { + "x": -315.75, + "y": -905 + }, + "parameters": { + "param0": 4, + "param1": 4, + "param2": 3, + "param3": 0.5, + "param4": 0.5, + "param5": 0.5 + }, + "type": "remote", + "widgets": [ + { + "label": "Scale X", + "linked_widgets": [ + { + "node": "perlin", + "widget": "scale_x" + } + ], + "name": "param0", + "type": "linked_control" + }, + { + "label": "Scale Y", + "linked_widgets": [ + { + "node": "perlin", + "widget": "scale_y" + } + ], + "name": "param1", + "type": "linked_control" + }, + { + "label": "Iterations", + "linked_widgets": [ + { + "node": "perlin", + "widget": "iterations" + } + ], + "name": "param2", + "type": "linked_control" + }, + { + "label": "Persistance", + "linked_widgets": [ + { + "node": "perlin", + "widget": "persistence" + } + ], + "name": "param3", + "type": "linked_control" + }, + { + "label": "Warp X", + "linked_widgets": [ + { + "node": "transform", + "widget": "translate_x" + }, + { + "node": "transform_2", + "widget": "translate_x" + } + ], + "name": "param4", + "type": "linked_control" + }, + { + "label": "Warp Y", + "linked_widgets": [ + { + "node": "transform", + "widget": "translate_y" + }, + { + "node": "transform_2", + "widget": "translate_y" + } + ], + "name": "param5", + "type": "linked_control" + } + ] + }, + { + "name": "transform_2", + "node_position": { + "x": -32.462402, + "y": -714.099976 + }, + "parameters": { + "repeat": true, + "rotate": 0, + "scale_x": 1, + "scale_y": 1, + "translate_x": 0.5, + "translate_y": 0.5 + }, + "type": "transform" + } + ], + "parameters": { + "param0": 4, + "param1": 4, + "param2": 3, + "param3": 0.5, + "param4": 0.5, + "param5": 0.5 + }, + "seed_value": 47029, + "shortdesc": "", + "type": "graph" + }, + { + "connections": [ + { + "from": "perlin", + "from_port": 0, + "to": "transform", + "to_port": 1 + }, + { + "from": "transform_2", + "from_port": 0, + "to": "gen_outputs", + "to_port": 0 + }, + { + "from": "perlin", + "from_port": 0, + "to": "transform", + "to_port": 2 + }, + { + "from": "perlin", + "from_port": 0, + "to": "transform_2", + "to_port": 0 + }, + { + "from": "transform", + "from_port": 0, + "to": "transform_2", + "to_port": 1 + }, + { + "from": "transform", + "from_port": 0, + "to": "transform_2", + "to_port": 2 + }, + { + "from": "perlin", + "from_port": 0, + "to": "transform", + "to_port": 0 + } + ], + "label": "Warp2", + "longdesc": "", + "name": "graph_2", + "node_position": { + "x": 2206.906738, + "y": 385.5 + }, + "nodes": [ + { + "name": "transform", + "node_position": { + "x": -292.25, + "y": -629 + }, + "parameters": { + "repeat": true, + "rotate": 0, + "scale_x": 1, + "scale_y": 1, + "translate_x": 0.5, + "translate_y": 0.5 + }, + "type": "transform" + }, + { + "name": "perlin", + "node_position": { + "x": -558.25, + "y": -720 + }, + "parameters": { + "iterations": 3, + "persistence": 0.5, + "scale_x": 4, + "scale_y": 4 + }, + "type": "perlin" + }, + { + "name": "gen_inputs", + "node_position": { + "x": -802.25, + "y": -655.5 + }, + "parameters": { + + }, + "ports": [ + + ], + "type": "ios" + }, + { + "name": "gen_outputs", + "node_position": { + "x": 268.75, + "y": -656.5 + }, + "parameters": { + + }, + "ports": [ + { + "name": "port0", + "type": "rgba" + } + ], + "type": "ios" + }, + { + "name": "gen_parameters", + "node_position": { + "x": -315.75, + "y": -905 + }, + "parameters": { + "param0": 4, + "param1": 4, + "param2": 3, + "param3": 0.5, + "param4": 0.5, + "param5": 0.5 + }, + "type": "remote", + "widgets": [ + { + "label": "Scale X", + "linked_widgets": [ + { + "node": "perlin", + "widget": "scale_x" + } + ], + "name": "param0", + "type": "linked_control" + }, + { + "label": "Scale Y", + "linked_widgets": [ + { + "node": "perlin", + "widget": "scale_y" + } + ], + "name": "param1", + "type": "linked_control" + }, + { + "label": "Iterations", + "linked_widgets": [ + { + "node": "perlin", + "widget": "iterations" + } + ], + "name": "param2", + "type": "linked_control" + }, + { + "label": "Persistance", + "linked_widgets": [ + { + "node": "perlin", + "widget": "persistence" + } + ], + "name": "param3", + "type": "linked_control" + }, + { + "label": "Warp X", + "linked_widgets": [ + { + "node": "transform", + "widget": "translate_x" + }, + { + "node": "transform_2", + "widget": "translate_x" + } + ], + "name": "param4", + "type": "linked_control" + }, + { + "label": "Warp Y", + "linked_widgets": [ + { + "node": "transform", + "widget": "translate_y" + }, + { + "node": "transform_2", + "widget": "translate_y" + } + ], + "name": "param5", + "type": "linked_control" + } + ] + }, + { + "name": "transform_2", + "node_position": { + "x": -32.462402, + "y": -714.099976 + }, + "parameters": { + "repeat": true, + "rotate": 0, + "scale_x": 1, + "scale_y": 1, + "translate_x": 0.5, + "translate_y": 0.5 + }, + "type": "transform" + } + ], + "parameters": { + "param0": 4, + "param1": 4, + "param2": 3, + "param3": 0.5, + "param4": 0.5, + "param5": 0.5 + }, + "seed_value": 11427, + "shortdesc": "", + "type": "graph" + }, + { + "connections": [ + { + "from": "perlin", + "from_port": 0, + "to": "transform", + "to_port": 1 + }, + { + "from": "transform_2", + "from_port": 0, + "to": "gen_outputs", + "to_port": 0 + }, + { + "from": "perlin", + "from_port": 0, + "to": "transform", + "to_port": 2 + }, + { + "from": "perlin", + "from_port": 0, + "to": "transform_2", + "to_port": 0 + }, + { + "from": "transform", + "from_port": 0, + "to": "transform_2", + "to_port": 1 + }, + { + "from": "transform", + "from_port": 0, + "to": "transform_2", + "to_port": 2 + }, + { + "from": "perlin", + "from_port": 0, + "to": "transform", + "to_port": 0 + } + ], + "label": "Warp2", + "longdesc": "", + "name": "graph_3", + "node_position": { + "x": 2211.906738, + "y": 613.5 + }, + "nodes": [ + { + "name": "transform", + "node_position": { + "x": -292.25, + "y": -629 + }, + "parameters": { + "repeat": true, + "rotate": 0, + "scale_x": 1, + "scale_y": 1, + "translate_x": 0.5, + "translate_y": 0.5 + }, + "type": "transform" + }, + { + "name": "perlin", + "node_position": { + "x": -558.25, + "y": -720 + }, + "parameters": { + "iterations": 3, + "persistence": 0.5, + "scale_x": 4, + "scale_y": 4 + }, + "type": "perlin" + }, + { + "name": "gen_inputs", + "node_position": { + "x": -802.25, + "y": -655.5 + }, + "parameters": { + + }, + "ports": [ + + ], + "type": "ios" + }, + { + "name": "gen_outputs", + "node_position": { + "x": 268.75, + "y": -656.5 + }, + "parameters": { + + }, + "ports": [ + { + "name": "port0", + "type": "rgba" + } + ], + "type": "ios" + }, + { + "name": "gen_parameters", + "node_position": { + "x": -315.75, + "y": -905 + }, + "parameters": { + "param0": 4, + "param1": 4, + "param2": 3, + "param3": 0.5, + "param4": 0.5, + "param5": 0.5 + }, + "type": "remote", + "widgets": [ + { + "label": "Scale X", + "linked_widgets": [ + { + "node": "perlin", + "widget": "scale_x" + } + ], + "name": "param0", + "type": "linked_control" + }, + { + "label": "Scale Y", + "linked_widgets": [ + { + "node": "perlin", + "widget": "scale_y" + } + ], + "name": "param1", + "type": "linked_control" + }, + { + "label": "Iterations", + "linked_widgets": [ + { + "node": "perlin", + "widget": "iterations" + } + ], + "name": "param2", + "type": "linked_control" + }, + { + "label": "Persistance", + "linked_widgets": [ + { + "node": "perlin", + "widget": "persistence" + } + ], + "name": "param3", + "type": "linked_control" + }, + { + "label": "Warp X", + "linked_widgets": [ + { + "node": "transform", + "widget": "translate_x" + }, + { + "node": "transform_2", + "widget": "translate_x" + } + ], + "name": "param4", + "type": "linked_control" + }, + { + "label": "Warp Y", + "linked_widgets": [ + { + "node": "transform", + "widget": "translate_y" + }, + { + "node": "transform_2", + "widget": "translate_y" + } + ], + "name": "param5", + "type": "linked_control" + } + ] + }, + { + "name": "transform_2", + "node_position": { + "x": -32.462402, + "y": -714.099976 + }, + "parameters": { + "repeat": true, + "rotate": 0, + "scale_x": 1, + "scale_y": 1, + "translate_x": 0.5, + "translate_y": 0.5 + }, + "type": "transform" + } + ], + "parameters": { + "param0": 4, + "param1": 4, + "param2": 3, + "param3": 0.5, + "param4": 0.5, + "param5": 0.5 + }, + "shortdesc": "", + "type": "graph" + }, + { + "name": "blend_5", + "node_position": { + "x": 2535.906738, + "y": 372.5 + }, + "parameters": { + "amount": 1, + "blend_type": 4 + }, + "type": "blend" + }, + { + "name": "blend_6", + "node_position": { + "x": 2816.906738, + "y": 396 + }, + "parameters": { + "amount": 1, + "blend_type": 4 + }, + "type": "blend" + }, + { + "name": "auto_tones_2", + "node_position": { + "x": 3607.530029, + "y": 391.522858 + }, + "parameters": { + "param0": 9 + }, + "type": "auto_tones" + }, + { + "name": "fast_blur_4", + "node_position": { + "x": 3099.906738, + "y": 491.5 + }, + "parameters": { + "param0": 9, + "param1": 25, + "param2": 1 + }, + "type": "fast_blur" + }, + { + "name": "blend_7", + "node_position": { + "x": 3404.906738, + "y": 377 + }, + "parameters": { + "amount": 1, + "blend_type": 11 + }, + "type": "blend" + }, + { + "name": "blend_8", + "node_position": { + "x": 4009.35498, + "y": 238.054611 + }, + "parameters": { + "amount": 1, + "blend_type": 2 + }, + "type": "blend" + }, + { + "name": "blend_9", + "node_position": { + "x": 5370.562012, + "y": 246.157654 + }, + "parameters": { + "amount": 1, + "blend_type": 3 + }, + "type": "blend" + }, + { + "name": "perlin_4", + "node_position": { + "x": 4234.578125, + "y": -326.261597 + }, + "parameters": { + "iterations": 3, + "persistence": 0.5, + "scale_x": 8, + "scale_y": 8 + }, + "type": "perlin" + }, + { + "name": "perlin_5", + "node_position": { + "x": 4187.891113, + "y": -194.464493 + }, + "parameters": { + "iterations": 4, + "persistence": 0.7, + "scale_x": 32, + "scale_y": 32 + }, + "type": "perlin" + }, + { + "name": "warp_dilation", + "node_position": { + "x": 4785.345215, + "y": -126.358727 + }, + "parameters": { + "a": 0.005, + "d": 0.05, + "mode": 0, + "s": 10 + }, + "type": "warp_dilation" + }, + { + "name": "smooth_curvature", + "node_position": { + "x": 5113.763184, + "y": -107.196579 + }, + "parameters": { + "param0": 10, + "param2": -0.2 + }, + "type": "smooth_curvature" + }, + { + "name": "smooth_curvature_2", + "node_position": { + "x": 5102.90918, + "y": 21.896973 + }, + "parameters": { + "param0": 10, + "param2": 0.2 + }, + "type": "smooth_curvature" + }, + { + "name": "blend_10", + "node_position": { + "x": 5398.40918, + "y": -88.103027 + }, + "parameters": { + "amount": 1, + "blend_type": 11 + }, + "type": "blend" + }, + { + "name": "blend_11", + "node_position": { + "x": 6033.10498, + "y": 217.140976 + }, + "parameters": { + "amount": 0.65, + "blend_type": 3 + }, + "type": "blend" + }, + { + "name": "blend_12", + "node_position": { + "x": 5774.32373, + "y": 70.22998 + }, + "parameters": { + "amount": 1, + "blend_type": 2 + }, + "type": "blend" + }, + { + "name": "tones", + "node_position": { + "x": 3856.641113, + "y": 1546.567993 + }, + "parameters": { + "in_max": { + "a": 1, + "b": 1, + "g": 1, + "r": 1, + "type": "Color" + }, + "in_mid": { + "a": 0.5, + "b": 0.81875, + "g": 0.81875, + "r": 0.81875, + "type": "Color" + }, + "in_min": { + "a": 0, + "b": 0.38125, + "g": 0.38125, + "r": 0.38125, + "type": "Color" + }, + "out_max": { + "a": 1, + "b": 1, + "g": 1, + "r": 1, + "type": "Color" + }, + "out_min": { + "a": 0, + "b": 0, + "g": 0, + "r": 0, + "type": "Color" + } + }, + "type": "tones" + }, + { + "name": "perlin_6", + "node_position": { + "x": 3761.529297, + "y": 1119.307983 + }, + "parameters": { + "iterations": 5, + "persistence": 0.5, + "scale_x": 16, + "scale_y": 16 + }, + "type": "perlin" + }, + { + "name": "perlin_7", + "node_position": { + "x": 3723.029297, + "y": 1310.307983 + }, + "parameters": { + "iterations": 3, + "persistence": 0.5, + "scale_x": 8, + "scale_y": 8 + }, + "type": "perlin" + }, + { + "name": "warp_3", + "node_position": { + "x": 4367.529297, + "y": 1302.307983 + }, + "parameters": { + "amount": 0.145, + "eps": 0.2, + "mode": 0 + }, + "type": "warp" + }, + { + "name": "warp_4", + "node_position": { + "x": 4765.161133, + "y": 1505.915894 + }, + "parameters": { + "amount": 0.17, + "eps": 0.1, + "mode": 0 + }, + "type": "warp" + }, + { + "name": "blend_13", + "node_position": { + "x": 7439.953125, + "y": 1136.836182 + }, + "parameters": { + "amount": 1, + "blend_type": 3 + }, + "type": "blend" + }, + { + "name": "gaussian_blur", + "node_position": { + "x": 6415.921387, + "y": 399.556152 + }, + "parameters": { + "param0": 10, + "param1": 18.4, + "param2": 0 + }, + "type": "gaussian_blur" + }, + { + "name": "perlin_8", + "node_position": { + "x": 5788.921387, + "y": 571.556152 + }, + "parameters": { + "iterations": 3, + "persistence": 0.5, + "scale_x": 32, + "scale_y": 32 + }, + "type": "perlin" + }, + { + "name": "tones_2", + "node_position": { + "x": 6561.921387, + "y": 615.556152 + }, + "parameters": { + "in_max": { + "a": 1, + "b": 0.46875, + "g": 0.46875, + "r": 0.46875, + "type": "Color" + }, + "in_mid": { + "a": 0.5, + "b": 0.1625, + "g": 0.1625, + "r": 0.1625, + "type": "Color" + }, + "in_min": { + "a": 0, + "b": 0, + "g": 0, + "r": 0, + "type": "Color" + }, + "out_max": { + "a": 1, + "b": 1, + "g": 1, + "r": 1, + "type": "Color" + }, + "out_min": { + "a": 0, + "b": 0, + "g": 0, + "r": 0, + "type": "Color" + } + }, + "type": "tones" + }, + { + "name": "warp_5", + "node_position": { + "x": 6922.921387, + "y": 662.556152 + }, + "parameters": { + "amount": 0.09, + "eps": 0.075, + "mode": 0 + }, + "type": "warp" + }, + { + "name": "perlin_9", + "node_position": { + "x": 6541.921387, + "y": 822.556152 + }, + "parameters": { + "iterations": 4, + "persistence": 0.6, + "scale_x": 12, + "scale_y": 12 + }, + "type": "perlin" + } + ], + "parameters": { + + }, + "shortdesc": "", + "type": "graph" +} \ No newline at end of file diff --git a/Game/Assets/Effects/GrenadeExplosion.tscn b/Game/Assets/Effects/GrenadeExplosion.tscn index 37e4e1b..6c43153 100644 --- a/Game/Assets/Effects/GrenadeExplosion.tscn +++ b/Game/Assets/Effects/GrenadeExplosion.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=33 format=2] +[gd_scene load_steps=38 format=2] [ext_resource path="res://Assets/Effects/CircleHard.svg" type="Texture" id=1] [ext_resource path="res://Assets/Effects/CircleSoft.svg" type="Texture" id=2] @@ -7,6 +7,7 @@ [ext_resource path="res://Assets/Effects/Bullet Holes/4x4 Decal Sheet.glb" type="PackedScene" id=5] [ext_resource path="res://Assets/Effects/Bullet Holes/Concrete.tres" type="Material" id=6] [ext_resource path="res://Assets/Effects/Bullet Holes/4x4 Decal Sheet.gd" type="Script" id=7] +[ext_resource path="res://Assets/Effects/ExplosionFlames.png" type="Texture" id=8] [sub_resource type="Animation" id=1] resource_name = "Effect" @@ -17,7 +18,7 @@ tracks/0/path = NodePath("Hit:scale") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/imported = false -tracks/0/enabled = true +tracks/0/enabled = false tracks/0/keys = { "times": PoolRealArray( 0, 0.05, 0.9 ), "transitions": PoolRealArray( 1, 1, 1 ), @@ -25,7 +26,7 @@ tracks/0/keys = { "values": [ Vector3( 2, 2, 2 ), Vector3( 1, 1, 1 ), Vector3( 0, 0, 0 ) ] } tracks/1/type = "value" -tracks/1/path = NodePath("ParticlesFire:emitting") +tracks/1/path = NodePath("ParticlesBlast:emitting") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/imported = false @@ -60,6 +61,30 @@ tracks/3/keys = { "update": 1, "values": [ true ] } +tracks/4/type = "value" +tracks/4/path = NodePath("OmniLight:light_color") +tracks/4/interp = 1 +tracks/4/loop_wrap = true +tracks/4/imported = false +tracks/4/enabled = true +tracks/4/keys = { +"times": PoolRealArray( 0, 0.05, 0.2, 0.65 ), +"transitions": PoolRealArray( 1, 1, 1, 1 ), +"update": 0, +"values": [ Color( 1, 0.984314, 0.592157, 1 ), Color( 1, 0.784314, 0.0509804, 1 ), Color( 0.356863, 0.207843, 0.0156863, 1 ), Color( 0, 0, 0, 1 ) ] +} +tracks/5/type = "value" +tracks/5/path = NodePath("ParticlesFire:emitting") +tracks/5/interp = 1 +tracks/5/loop_wrap = true +tracks/5/imported = false +tracks/5/enabled = true +tracks/5/keys = { +"times": PoolRealArray( 0 ), +"transitions": PoolRealArray( 1 ), +"update": 1, +"values": [ true ] +} [sub_resource type="SphereMesh" id=2] radius = 0.1 @@ -83,54 +108,85 @@ radial_segments = 10 rings = 1 [sub_resource type="Gradient" id=6] -offsets = PoolRealArray( 0, 0.0573394, 0.422018, 1 ) -colors = PoolColorArray( 3, 2.88, 2.07, 1, 0.986328, 0.741326, 0.127144, 1, 0.876953, 0.527703, 0.260345, 1, 0.0469799, 0.0469799, 0.0469799, 1 ) +offsets = PoolRealArray( 0, 0.0550459, 0.206422, 1 ) +colors = PoolColorArray( 3, 2.88, 2.07, 1, 0.986328, 0.741326, 0.127144, 1, 0.876953, 0.527703, 0.260345, 1, 0, 0, 0, 1 ) [sub_resource type="GradientTexture" id=7] gradient = SubResource( 6 ) -[sub_resource type="Curve" id=8] -_data = [ Vector2( 0, 1 ), 0.0, -0.386777, 0, 0, Vector2( 0.987179, 0 ), -0.127956, 0.0, 0, 0 ] +[sub_resource type="Curve" id=33] +max_value = 4.0 +_data = [ Vector2( 0, 0.164083 ), 0.0, 7.51091, 0, 0, Vector2( 0.980392, 4 ), -0.724165, 0.0, 0, 0 ] [sub_resource type="CurveTexture" id=9] -curve = SubResource( 8 ) +curve = SubResource( 33 ) -[sub_resource type="ParticlesMaterial" id=10] +[sub_resource type="ParticlesMaterial" id=28] lifetime_randomness = 0.9 spread = 180.0 -initial_velocity = 25.0 -initial_velocity_random = 0.6 -damping = 79.08 -scale = 6.0 +gravity = Vector3( 0, 0, 0 ) +radial_accel = 0.07 +angle = 720.0 +angle_random = 1.0 scale_random = 0.9 scale_curve = SubResource( 9 ) color_ramp = SubResource( 7 ) -[sub_resource type="SpatialMaterial" id=11] +[sub_resource type="SpatialMaterial" id=30] flags_transparent = true flags_unshaded = true vertex_color_use_as_albedo = true params_specular_mode = 4 params_blend_mode = 1 params_billboard_mode = 3 -params_use_alpha_scissor = true -params_alpha_scissor_threshold = 0.5 -particles_anim_h_frames = 1 -particles_anim_v_frames = 1 +particles_anim_h_frames = 2 +particles_anim_v_frames = 2 particles_anim_loop = false -albedo_texture = ExtResource( 2 ) +albedo_color = Color( 3, 3, 3, 1 ) +albedo_texture = ExtResource( 8 ) +proximity_fade_enable = true +proximity_fade_distance = 0.5 [sub_resource type="QuadMesh" id=12] -material = SubResource( 11 ) +material = SubResource( 30 ) -[sub_resource type="ParticlesMaterial" id=13] -lifetime_randomness = 0.65 -initial_velocity = 7.0 +[sub_resource type="Gradient" id=31] +offsets = PoolRealArray( 0.0183486, 0.0688073, 0.142202, 0.311927, 1 ) +colors = PoolColorArray( 1, 0.978706, 0.820312, 1, 1, 0.920414, 0.578125, 1, 1, 0.634504, 0.292969, 1, 0.333525, 0.149289, 0.0429934, 1, 0, 0, 0, 1 ) + +[sub_resource type="GradientTexture" id=32] +gradient = SubResource( 31 ) + +[sub_resource type="ParticlesMaterial" id=34] +lifetime_randomness = 0.2 +spread = 180.0 +gravity = Vector3( 0, 0, 0 ) +initial_velocity = 8.0 initial_velocity_random = 0.6 -damping = 6.0 +damping = 32.64 damping_random = 0.6 +angle = 720.0 +angle_random = 1.0 scale_random = 0.9 scale_curve = SubResource( 9 ) +color_ramp = SubResource( 32 ) + +[sub_resource type="SpatialMaterial" id=35] +flags_transparent = true +flags_unshaded = true +vertex_color_use_as_albedo = true +params_specular_mode = 4 +params_blend_mode = 1 +params_billboard_mode = 3 +particles_anim_h_frames = 2 +particles_anim_v_frames = 2 +particles_anim_loop = false +albedo_texture = ExtResource( 8 ) +proximity_fade_enable = true +proximity_fade_distance = 0.5 + +[sub_resource type="QuadMesh" id=36] +material = SubResource( 35 ) [sub_resource type="Gradient" id=14] offsets = PoolRealArray( 0, 0.0346021, 0.083045, 0.49481, 1 ) @@ -139,11 +195,11 @@ colors = PoolColorArray( 1, 0.984375, 0.75, 1, 0.933594, 0.694326, 0.12764, 1, 0 [sub_resource type="GradientTexture" id=15] gradient = SubResource( 14 ) -[sub_resource type="ParticlesMaterial" id=16] +[sub_resource type="ParticlesMaterial" id=27] lifetime_randomness = 0.8 -spread = 35.0 -initial_velocity = 14.0 -initial_velocity_random = 0.7 +spread = 180.0 +initial_velocity = 22.0 +initial_velocity_random = 0.3 damping = 7.82 damping_random = 0.92 scale = 0.5 @@ -187,9 +243,8 @@ _data = [ Vector2( 0, 0.278253 ), 0.0, 1.12677, 0, 0, Vector2( 1, 1 ), 0.0, 0.0, curve = SubResource( 21 ) [sub_resource type="ParticlesMaterial" id=23] -spread = 10.0 +spread = 180.0 gravity = Vector3( 0, 0, 0 ) -initial_velocity = 4.0 initial_velocity_random = 0.2 angular_velocity = 395.12 angular_velocity_random = 1.0 @@ -212,10 +267,11 @@ particles_anim_v_frames = 1 particles_anim_loop = false albedo_texture = ExtResource( 2 ) proximity_fade_enable = true -proximity_fade_distance = 0.15 +proximity_fade_distance = 2.0 [sub_resource type="QuadMesh" id=25] material = SubResource( 24 ) +size = Vector2( 3, 3 ) [node name="BulletHit" type="Spatial"] @@ -224,18 +280,21 @@ autoplay = "Effect" anims/Effect = SubResource( 1 ) [node name="Hit" type="MeshInstance" parent="."] -transform = Transform( 2, 0, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0 ) +transform = Transform( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ) visible = false mesh = SubResource( 2 ) material/0 = SubResource( 3 ) [node name="OmniLight" type="OmniLight" parent="."] transform = Transform( 1, 0, 0, 0, -1, -4.37114e-08, 0, 4.37114e-08, -1, 0, 0, 0 ) -light_color = Color( 1, 0.784314, 0.0509804, 1 ) -omni_range = 7.57563 +light_color = Color( 1, 0.984314, 0.592157, 1 ) +light_energy = 1.5 +shadow_enabled = true +omni_range = 14.0 [node name="4x4 Decal Sheet" parent="." instance=ExtResource( 5 )] transform = Transform( 0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0.002, 0 ) +visible = false script = ExtResource( 7 ) [node name="Decal2" parent="4x4 Decal Sheet" index="0"] @@ -260,43 +319,46 @@ visible = false mesh = SubResource( 5 ) material/0 = null -[node name="ParticlesFire" type="Particles" parent="."] +[node name="ParticlesBlast" type="Particles" parent="."] transform = Transform( -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, 0, 0, 0 ) emitting = false -amount = 64 -lifetime = 0.5 -explosiveness = 1.0 -local_coords = false -process_material = SubResource( 10 ) -draw_pass_1 = SubResource( 12 ) - -[node name="ParticlesDust2" type="Particles" parent="."] -transform = Transform( -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, 0, 0, 0 ) -visible = false -emitting = false -amount = 32 +amount = 3 +lifetime = 0.25 one_shot = true explosiveness = 1.0 local_coords = false -process_material = SubResource( 13 ) +process_material = SubResource( 28 ) draw_pass_1 = SubResource( 12 ) +[node name="ParticlesFire" type="Particles" parent="."] +transform = Transform( -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, 0, 0, 0 ) +emitting = false +amount = 16 +lifetime = 0.75 +one_shot = true +explosiveness = 1.0 +local_coords = false +process_material = SubResource( 34 ) +draw_pass_1 = SubResource( 36 ) + [node name="ParticlesSparks" type="Particles" parent="."] transform = Transform( -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, 0, 0, 0 ) -visible = false -amount = 7 +emitting = false +amount = 48 lifetime = 2.0 +one_shot = true explosiveness = 1.0 randomness = 1.0 local_coords = false -process_material = SubResource( 16 ) +process_material = SubResource( 27 ) draw_pass_1 = SubResource( 18 ) [node name="ParticlesSmoke" type="Particles" parent="."] transform = Transform( -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0, 1, 0, 0, 0 ) -visible = false +emitting = false amount = 1 lifetime = 3.0 +one_shot = true explosiveness = 1.0 local_coords = false process_material = SubResource( 23 ) diff --git a/Game/Assets/Weapons/GrenadeLauncher/Grenade.gd b/Game/Assets/Weapons/GrenadeLauncher/Grenade.gd index c0b28b7..8ac416a 100644 --- a/Game/Assets/Weapons/GrenadeLauncher/Grenade.gd +++ b/Game/Assets/Weapons/GrenadeLauncher/Grenade.gd @@ -1,8 +1,13 @@ extends RigidBody +var explosion_effect = preload("res://Assets/Effects/GrenadeExplosion.tscn") + func _process(delta): # TODO: synchronize position pass func explode(): + var explosion = explosion_effect.instance() + explosion.global_transform = global_transform + get_tree().root.call_deferred("add_child", explosion) queue_free()