Port 2D demos to TSCN/TRES formats

Part of #4196.

(cherry picked from commit 23cf6a85bd)
This commit is contained in:
Rémi Verschelde 2016-04-02 12:35:23 +02:00
parent c6ccd05fed
commit 69e67d51c7
193 changed files with 9957 additions and 6666 deletions

View File

@ -1,5 +1,5 @@
[application] [application]
name="Area 2D Input Events" name="Area 2D Input Events"
main_scene="res://input.scn" main_scene="res://input.tscn"
icon="res://icon.png" icon="res://icon.png"

Binary file not shown.

View File

@ -0,0 +1,109 @@
[gd_scene load_steps=6 format=1]
[ext_resource path="res://input.gd" type="Script" id=1]
[ext_resource path="res://box_area.png" type="Texture" id=2]
[ext_resource path="res://circle_area.png" type="Texture" id=3]
[sub_resource type="RectangleShape2D" id=1]
custom_solver_bias = 0.0
extents = Vector2( 64, 64 )
[sub_resource type="CircleShape2D" id=2]
custom_solver_bias = 0.0
radius = 64.0
[node name="base" type="Node2D"]
[node name="box" type="Area2D" parent="."]
transform/pos = Vector2( 212, 281 )
transform/rot = 35.4081
input/pickable = true
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
gravity_vec = Vector2( 0, 1 )
gravity = 98.0
linear_damp = 0.1
angular_damp = 1.0
script/script = ExtResource( 1 )
[node name="sprite" type="Sprite" parent="box"]
texture = ExtResource( 2 )
[node name="label" type="Label" parent="box"]
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = -43.0
margin/top = 71.0
margin/right = 43.0
margin/bottom = 84.0
align = 1
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1
[node name="shape" type="CollisionShape2D" parent="box"]
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1
[node name="circle" type="Area2D" parent="."]
transform/pos = Vector2( 547.877, 286.808 )
transform/rot = -40.5985
input/pickable = true
shapes/0/shape = SubResource( 2 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
gravity_vec = Vector2( 0, 1 )
gravity = 98.0
linear_damp = 0.1
angular_damp = 1.0
script/script = ExtResource( 1 )
[node name="sprite" type="Sprite" parent="circle"]
texture = ExtResource( 3 )
[node name="label" type="Label" parent="circle"]
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = -43.0
margin/top = 71.0
margin/right = 43.0
margin/bottom = 84.0
align = 1
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1
[node name="shape" type="CollisionShape2D" parent="circle"]
shape = SubResource( 2 )
trigger = false
_update_shape_index = -1
[node name="Label" type="Label" parent="."]
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = 0.0
margin/top = 0.0
margin/right = 40.0
margin/bottom = 13.0
text = "This demo shows how to use a regular Area2D to get input events, and how to convert the input events to local coordinates of the node.\nUnlike controls, Input on Area2D or PhysicsBody2D nodes only works properly (with scrolling) on canvas layer 0."
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1

View File

@ -0,0 +1,47 @@
[gd_scene load_steps=4 format=1]
[ext_resource path="res://ball.gd" type="Script" id=1]
[ext_resource path="res://ball.png" type="Texture" id=2]
[sub_resource type="CircleShape2D" id=1]
custom_solver_bias = 0.0
radius = 7.45713
[node name="bal" type="RigidBody2D"]
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
mode = 0
mass = 1.0
friction = 1.0
bounce = 0.0
gravity_scale = 1.0
custom_integrator = false
continuous_cd = 0
contacts_reported = 0
contact_monitor = false
sleeping = false
can_sleep = true
velocity/linear = Vector2( 0, 0 )
velocity/angular = 0.0
damp_override/linear = -1.0
damp_override/angular = -1.0
script/script = ExtResource( 1 )
[node name="sprite" type="Sprite" parent="."]
transform/pos = Vector2( 0, 1 )
texture = ExtResource( 2 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource( 1 )
trigger = false
_update_shape_index = 0

View File

@ -10,7 +10,7 @@ func _process(delta):
timeout -= delta timeout -= delta
if (timeout < 0): if (timeout < 0):
timeout = EMIT_INTERVAL timeout = EMIT_INTERVAL
var ball = preload("res://ball.scn").instance() var ball = preload("res://ball.tscn").instance()
ball.set_pos(Vector2(randf()*get_viewport_rect().size.x, 0)) ball.set_pos(Vector2(randf()*get_viewport_rect().size.x, 0))
add_child(ball) add_child(ball)

View File

@ -0,0 +1,178 @@
[gd_scene load_steps=13 format=1]
[ext_resource path="res://dynamic_colobjs.gd" type="Script" id=1]
[ext_resource path="res://circle.png" type="Texture" id=2]
[ext_resource path="res://box.png" type="Texture" id=3]
[ext_resource path="res://poly.png" type="Texture" id=4]
[sub_resource type="CircleShape2D" id=1]
custom_solver_bias = 0.0
radius = 28.8504
[sub_resource type="RectangleShape2D" id=2]
custom_solver_bias = 0.0
extents = Vector2( 32.1805, 30.0328 )
[sub_resource type="ConvexPolygonShape2D" id=3]
custom_solver_bias = 0.0
points = Vector2Array( 49.5669, -27.9744, 45.1564, 15.3961, 18.6931, -1.51105 )
[sub_resource type="ConvexPolygonShape2D" id=4]
custom_solver_bias = 0.0
points = Vector2Array( -55.093, -14.2052, -37.1739, 2.89948, -40.1345, 21.2602, -53.3067, 15.8716 )
[sub_resource type="ConvexPolygonShape2D" id=5]
custom_solver_bias = 0.0
points = Vector2Array( -40.1345, 21.2602, -37.1739, 2.89948, -14.386, -14.0076, -6.30005, 0.694214 )
[sub_resource type="ConvexPolygonShape2D" id=6]
custom_solver_bias = 0.0
points = Vector2Array( -14.386, -14.0076, 18.6931, -1.51105, 45.1564, 15.3961, -6.30005, 0.694214 )
[sub_resource type="Animation" id=7]
resource/name = "movethem"
length = 4.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("base/circle:transform/pos")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 2 ), "transitions":FloatArray( 1, 1 ), "values":[ Vector2( 0, 0 ), Vector2( 52.7569, -70.845 ) ] }
tracks/1/type = "value"
tracks/1/path = NodePath("base/box:transform/pos")
tracks/1/interp = 1
tracks/1/keys = { "cont":true, "times":FloatArray( 0, 2 ), "transitions":FloatArray( 1, 1 ), "values":[ Vector2( 193.173, -2.72076 ), Vector2( 195.894, -72.0999 ) ] }
tracks/2/type = "value"
tracks/2/path = NodePath("base/box:transform/rot")
tracks/2/interp = 1
tracks/2/keys = { "cont":true, "times":FloatArray( 0, 2 ), "transitions":FloatArray( 1, 1 ), "values":[ 0.0, 92.8111 ] }
tracks/3/type = "value"
tracks/3/path = NodePath("base/polygon:transform/pos")
tracks/3/interp = 1
tracks/3/keys = { "cont":true, "times":FloatArray( 0, 2 ), "transitions":FloatArray( 1, 1 ), "values":[ Vector2( 382.265, -2.72076 ), Vector2( 495.176, -10.883 ) ] }
[sub_resource type="Animation" id=8]
resource/name = "toggletrigger"
length = 6.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("base/box:trigger")
tracks/0/interp = 1
tracks/0/keys = { "cont":false, "times":FloatArray( 0, 4 ), "transitions":FloatArray( 1, 1 ), "values":[ false, true ] }
tracks/1/type = "value"
tracks/1/path = NodePath("base/box:visibility/opacity")
tracks/1/interp = 1
tracks/1/keys = { "cont":false, "times":FloatArray( 0, 4 ), "transitions":FloatArray( 1, 1 ), "values":[ 1.0, 0.2 ] }
[node name="base" type="Node2D"]
script/script = ExtResource( 1 )
[node name="base" type="KinematicBody2D" parent="."]
transform/pos = Vector2( 137, 470 )
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 7.91353, -10.6267 )
shapes/0/trigger = false
shapes/1/shape = SubResource( 2 )
shapes/1/transform = Matrix32( 0.970626, -0.240595, 0.240595, 0.970626, 193.581, -13.1276 )
shapes/1/trigger = false
shapes/2/shape = SubResource( 3 )
shapes/2/transform = Matrix32( 1, 0, 0, 1, 399.202, -3.9451 )
shapes/2/trigger = false
shapes/3/shape = SubResource( 4 )
shapes/3/transform = Matrix32( 1, 0, 0, 1, 399.202, -3.9451 )
shapes/3/trigger = false
shapes/4/shape = SubResource( 5 )
shapes/4/transform = Matrix32( 1, 0, 0, 1, 399.202, -3.9451 )
shapes/4/trigger = false
shapes/5/shape = SubResource( 6 )
shapes/5/transform = Matrix32( 1, 0, 0, 1, 399.202, -3.9451 )
shapes/5/trigger = false
collision/layers = 1
collision/mask = 1
collision/margin = 0.08
[node name="circle" type="CollisionShape2D" parent="base"]
transform/pos = Vector2( 7.91353, -10.6267 )
shape = SubResource( 1 )
trigger = false
_update_shape_index = 0
[node name="sprite" type="Sprite" parent="base/circle"]
texture = ExtResource( 2 )
[node name="box" type="CollisionShape2D" parent="base"]
transform/pos = Vector2( 193.581, -13.1276 )
transform/rot = 13.9217
shape = SubResource( 2 )
trigger = false
_update_shape_index = 1
[node name="Sprite" type="Sprite" parent="base/box"]
texture = ExtResource( 3 )
[node name="polygon" type="CollisionPolygon2D" parent="base"]
transform/pos = Vector2( 399.202, -3.9451 )
build_mode = 0
polygon = Vector2Array( -55.093, -14.2052, -37.1739, 2.89948, -14.386, -14.0076, 18.6931, -1.51105, 49.5669, -27.9744, 45.1564, 15.3961, -6.30005, 0.694214, -40.1345, 21.2602, -53.3067, 15.8716 )
shape_range = Vector2( 2, 5 )
trigger = false
[node name="Sprite" type="Sprite" parent="base/polygon"]
texture = ExtResource( 4 )
[node name="shapemove" type="AnimationPlayer" parent="."]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/movethem = SubResource( 7 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "movethem"
[node name="triggertoggle" type="AnimationPlayer" parent="."]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/movethem = SubResource( 7 )
anims/toggletrigger = SubResource( 8 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "toggletrigger"
[node name="Label" type="Label" parent="."]
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = 21.0
margin/top = 21.0
margin/right = 719.0
margin/bottom = 73.0
text = "This demo simply shows that it\'s possible now to move a CollisionShape and CollisionPolygon after it was created\nand also turn it into a trigger at run-time. CollisionShape will remain alive during the running game and you can\ninteract with them, even though they are just meant to be helpers.\nIt is always recommended in a real use-case scenario, to move a body instead of a shape, as that path is better optimized."
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1

View File

@ -1,5 +1,5 @@
[application] [application]
name="Run-Time CollisionShape" name="Run-Time CollisionShape"
main_scene="res://dynamic_colobjs.scn" main_scene="res://dynamic_colobjs.tscn"
icon="res://icon.png" icon="res://icon.png"

View File

@ -1,7 +1,7 @@
[application] [application]
name="Fog of War" name="Fog of War"
main_scene="res://fog.scn" main_scene="res://fog.tscn"
icon="res://icon.png" icon="res://icon.png"
[input] [input]

Binary file not shown.

View File

@ -0,0 +1,51 @@
[gd_scene load_steps=4 format=1]
[ext_resource path="res://tileset.tres" type="TileSet" id=1]
[ext_resource path="res://troll.tscn" type="PackedScene" id=2]
[ext_resource path="res://fog.gd" type="Script" id=3]
[node name="Node2D" type="Node2D"]
[node name="TileMap" type="TileMap" parent="."]
transform/pos = Vector2( 206, 112 )
mode = 0
tile_set = ExtResource( 1 )
cell/size = Vector2( 48, 48 )
cell/quadrant_size = 16
cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
cell/half_offset = 2
cell/tile_origin = 0
cell/y_sort = false
collision/use_kinematic = false
collision/friction = 1.0
collision/bounce = 0.0
collision/layers = 1
collision/mask = 1
occluder/light_mask = 1
tile_data = IntArray( -589834, 2, -589833, 2, -589832, 2, -589831, 2, -589830, 2, -589829, 2, -589828, 2, -589827, 2, -589826, 2, -589825, 2, -655360, 2, -655359, 2, -655358, 2, -655357, 2, -655356, 2, -655355, 2, -655354, 2, -655353, 2, -655352, 2, -655351, 2, -524298, 2, -524297, 2, -524296, 2, -524295, 2, -524294, 2, -524293, 2, -524292, 2, -524291, 2, -524290, 2, -524289, 2, -589824, 2, -589823, 2, -589822, 2, -589821, 2, -589820, 2, -589819, 2, -589818, 2, -589817, 2, -589816, 2, -589815, 2, -458762, 2, -458761, 2, -458760, 2, -458759, 2, -458758, 2, -458757, 2, -458756, 2, -458755, 2, -458754, 2, -458753, 2, -524288, 2, -524287, 2, -524286, 2, -524285, 2, -524284, 2, -524283, 2, -524282, 2, -524281, 2, -524280, 2, -524279, 2, -393226, 2, -393225, 2, -393224, 2, -393223, 2, -393222, 2, -393221, 2, -393220, 2, -393219, 2, -393218, 2, -393217, 2, -458752, 2, -458751, 2, -458750, 2, -458749, 2, -458748, 2, -458747, 2, -458746, 2, -458745, 2, -458744, 2, -458743, 2, -327690, 2, -327689, 2, -327688, 2, -327687, 2, -327686, 2, -327685, 2, -327684, 2, -327683, 2, -327682, 2, -327681, 2, -393216, 2, -393215, 2, -393214, 2, -393213, 2, -393212, 2, -393211, 2, -393210, 2, -393209, 2, -393208, 2, -393207, 2, -262154, 2, -262153, 2, -262152, 2, -262151, 2, -262150, 2, -262149, 2, -262148, 2, -262147, 2, -262146, 2, -262145, 2, -327680, 2, -327679, 2, -327678, 2, -327677, 2, -327676, 2, -327675, 2, -327674, 2, -327673, 2, -327672, 2, -327671, 2, -196618, 2, -196617, 2, -196616, 2, -196615, 2, -196614, 2, -196613, 2, -196612, 2, -196611, 2, -196610, 2, -196609, 2, -262144, 2, -262143, 2, -262142, 2, -262141, 2, -262140, 2, -262139, 2, -262138, 2, -262137, 2, -262136, 2, -262135, 2, -131082, 2, -131081, 2, -131080, 2, -131079, 2, -131078, 2, -131077, 2, -131076, 2, -131075, 2, -131074, 2, -131073, 2, -196608, 2, -196607, 2, -196606, 2, -196605, 2, -196604, 2, -196603, 2, -196602, 2, -196601, 2, -196600, 2, -196599, 2, -65546, 2, -65545, 2, -65544, 2, -65543, 2, -65542, 2, -65541, 2, -65540, 2, -65539, 2, -65538, 2, -65537, 2, -131072, 2, -131071, 2, -131070, 2, -131069, 2, -131068, 2, -131067, 2, -131066, 2, -131065, 2, -131064, 2, -131063, 2, -10, 2, -9, 2, -8, 2, -7, 2, -6, 2, -5, 2, -4, 2, -3, 2, -2, 2, -1, 2, -65536, 2, -65535, 2, -65534, 2, -65533, 2, -65532, 2, -65531, 2, -65530, 2, -65529, 2, -65528, 2, -65527, 2, 65526, 2, 65527, 2, 65528, 2, 65529, 2, 65530, 2, 65531, 2, 65532, 2, 65533, 2, 65534, 2, 65535, 2, 0, 2, 1, 2, 2, 2, 3, 2, 4, 2, 5, 2, 6, 2, 7, 2, 8, 2, 9, 2, 131062, 2, 131063, 2, 131064, 2, 131065, 2, 131066, 2, 131067, 2, 131068, 2, 131069, 2, 131070, 2, 131071, 2, 65536, 2, 65537, 2, 65538, 2, 65539, 2, 65540, 2, 65541, 2, 65542, 2, 65543, 2, 65544, 2, 65545, 2, 196598, 2, 196599, 2, 196600, 2, 196601, 2, 196602, 2, 196603, 2, 196604, 2, 196605, 2, 196606, 2, 196607, 2, 131072, 2, 131073, 2, 131074, 2, 131075, 2, 131076, 2, 131077, 2, 131078, 2, 131079, 2, 131080, 2, 131081, 2, 262134, 2, 262135, 2, 262136, 2, 262137, 2, 262138, 2, 262139, 2, 262140, 2, 262141, 2, 262142, 2, 262143, 2, 196608, 2, 196609, 2, 196610, 2, 196611, 2, 196612, 2, 196613, 2, 196614, 2, 196615, 2, 196616, 2, 196617, 2, 327670, 2, 327671, 2, 327672, 2, 327673, 2, 327674, 2, 327675, 2, 327676, 2, 327677, 2, 327678, 2, 327679, 2, 262144, 2, 262145, 2, 262146, 2, 262147, 2, 262148, 2, 262149, 2, 262150, 2, 262151, 2, 262152, 2, 262153, 2, 393206, 2, 393207, 2, 393208, 2, 393209, 2, 393210, 2, 393211, 2, 393212, 2, 393213, 2, 393214, 2, 393215, 2, 327680, 2, 327681, 2, 327682, 2, 327683, 2, 327684, 2, 327685, 2, 327686, 2, 327687, 2, 327688, 2, 327689, 2, 458742, 2, 458743, 2, 458744, 2, 458745, 2, 458746, 2, 458747, 2, 458748, 2, 458749, 2, 458750, 2, 458751, 2, 393216, 2, 393217, 2, 393218, 2, 393219, 2, 393220, 2, 393221, 2, 393222, 2, 393223, 2, 393224, 2, 393225, 2, 524278, 2, 524279, 2, 524280, 2, 524281, 2, 524282, 2, 524283, 2, 524284, 2, 524285, 2, 524286, 2, 524287, 2, 458752, 2, 458753, 2, 458754, 2, 458755, 2, 458756, 2, 458757, 2, 458758, 2, 458759, 2, 458760, 2, 458761, 2, 589814, 2, 589815, 2, 589816, 2, 589817, 2, 589818, 2, 589819, 2, 589820, 2, 589821, 2, 589822, 2, 589823, 2, 524288, 2, 524289, 2, 524290, 2, 524291, 2, 524292, 2, 524293, 2, 524294, 2, 524295, 2, 524296, 2, 524297, 2, 655350, 2, 655351, 2, 655352, 2, 655353, 2, 655354, 2, 655355, 2, 655356, 2, 655357, 2, 655358, 2, 655359, 2, 589824, 2, 589825, 2, 589826, 2, 589827, 2, 589828, 2, 589829, 2, 589830, 2, 589831, 2, 589832, 2, 589833, 2 )
[node name="troll" parent="." instance=ExtResource( 2 )]
collision/margin = 0.001
[node name="Fog" type="TileMap" parent="."]
mode = 0
tile_set = ExtResource( 1 )
cell/size = Vector2( 48, 48 )
cell/quadrant_size = 16
cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
cell/half_offset = 2
cell/tile_origin = 0
cell/y_sort = false
collision/use_kinematic = false
collision/friction = 1.0
collision/bounce = 0.0
collision/layers = 1
collision/mask = 1
occluder/light_mask = 1
tile_data = IntArray( )
script/script = ExtResource( 3 )

View File

@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<resource_file type="TileSet" subresource_count="3" version="1.0" version_name="Godot Engine v1.0.stable.custom_build">
<ext_resource path="res://floor.png" type="Texture"></ext_resource>
<ext_resource path="res://fog.png" type="Texture"></ext_resource>
<main_resource>
<string name="0/name"> "fog opaque" </string>
<resource name="0/texture" resource_type="Texture" path="res://fog.png"> </resource>
<vector2 name="0/tex_offset"> -48, -48 </vector2>
<vector2 name="0/shape_offset"> 0, 0 </vector2>
<rect2 name="0/region"> 0, 0, 144, 144 </rect2>
<array name="0/shapes" len="0" shared="false">
</array>
<string name="1/name"> "fog transparent" </string>
<resource name="1/texture" resource_type="Texture" path="res://fog.png"> </resource>
<vector2 name="1/tex_offset"> -48, -48 </vector2>
<vector2 name="1/shape_offset"> 0, 0 </vector2>
<rect2 name="1/region"> 144, 0, 144, 144 </rect2>
<array name="1/shapes" len="0" shared="false">
</array>
<string name="2/name"> "floor" </string>
<resource name="2/texture" resource_type="Texture" path="res://floor.png"> </resource>
<vector2 name="2/tex_offset"> 0, 0 </vector2>
<vector2 name="2/shape_offset"> 0, 0 </vector2>
<rect2 name="2/region"> 0, 0, 0, 0 </rect2>
<array name="2/shapes" len="0" shared="false">
</array>
</main_resource>
</resource_file>

Binary file not shown.

View File

@ -0,0 +1,32 @@
[gd_resource type="TileSet" load_steps=3 format=1]
[ext_resource path="res://fog.png" type="Texture" id=1]
[ext_resource path="res://floor.png" type="Texture" id=2]
[resource]
0/name = "fog opaque"
0/texture = ExtResource( 1 )
0/tex_offset = Vector2( -48, -48 )
0/region = Rect2( 0, 0, 144, 144 )
0/occluder_offset = Vector2( 0, 0 )
0/navigation_offset = Vector2( 0, 0 )
0/shape_offset = Vector2( 0, 0 )
0/shapes = [ ]
1/name = "fog transparent"
1/texture = ExtResource( 1 )
1/tex_offset = Vector2( -48, -48 )
1/region = Rect2( 144, 0, 144, 144 )
1/occluder_offset = Vector2( 0, 0 )
1/navigation_offset = Vector2( 0, 0 )
1/shape_offset = Vector2( 0, 0 )
1/shapes = [ ]
2/name = "floor"
2/texture = ExtResource( 2 )
2/tex_offset = Vector2( 0, 0 )
2/region = Rect2( 0, 0, 0, 0 )
2/occluder_offset = Vector2( 24, 24 )
2/navigation_offset = Vector2( 24, 24 )
2/shape_offset = Vector2( 0, 0 )
2/shapes = [ ]

View File

@ -0,0 +1,30 @@
[gd_scene load_steps=3 format=1]
[ext_resource path="res://fog.png" type="Texture" id=1]
[ext_resource path="res://floor.png" type="Texture" id=2]
[node name="Node2D" type="Node2D"]
[node name="fog opaque" type="Sprite" parent="."]
texture = ExtResource( 1 )
centered = false
offset = Vector2( -48, -48 )
region = true
region_rect = Rect2( 0, 0, 144, 144 )
[node name="fog transparent" type="Sprite" parent="."]
transform/pos = Vector2( 144, 0 )
texture = ExtResource( 1 )
centered = false
offset = Vector2( -48, -48 )
region = true
region_rect = Rect2( 144, 0, 144, 144 )
[node name="floor" type="Sprite" parent="."]
transform/pos = Vector2( 264, 24 )
texture = ExtResource( 2 )

Binary file not shown.

View File

@ -0,0 +1,52 @@
[gd_scene load_steps=4 format=1]
[ext_resource path="res://troll.gd" type="Script" id=1]
[ext_resource path="res://troll.png" type="Texture" id=2]
[sub_resource type="CircleShape2D" id=1]
custom_solver_bias = 0.0
radius = 16.0
[node name="troll" type="KinematicBody2D"]
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 3.24216, 19.453 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
collision/margin = 0.001
script/script = ExtResource( 1 )
[node name="Sprite" type="Sprite" parent="."]
texture = ExtResource( 2 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
transform/pos = Vector2( 3.24216, 19.453 )
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1
[node name="Camera2D" type="Camera2D" parent="."]
anchor_mode = 1
rotating = false
current = true
zoom = Vector2( 1, 1 )
limit/left = -10000000
limit/top = -10000000
limit/right = 10000000
limit/bottom = 10000000
drag_margin/h_enabled = true
drag_margin/v_enabled = true
smoothing/enable = false
smoothing/speed = 5.0
drag_margin/left = 0.2
drag_margin/top = 0.2
drag_margin/right = 0.2
drag_margin/bottom = 0.2

Binary file not shown.

View File

@ -0,0 +1,88 @@
[gd_scene load_steps=5 format=1]
[ext_resource path="res://beach_cave.gd" type="Script" id=1]
[ext_resource path="res://ocean_beach.png" type="Texture" id=2]
[ext_resource path="res://ocean_cave.png" type="Texture" id=3]
[sub_resource type="Environment" id=1]
ambient_light/enabled = false
ambient_light/color = Color( 0, 0, 0, 1 )
ambient_light/energy = 1.0
fxaa/enabled = false
background/mode = 5
background/color = Color( 0, 0, 0, 1 )
background/energy = 1.0
background/scale = 1.0
background/glow = 0.0
background/canvas_max_layer = null
glow/enabled = true
glow/blur_passes = 3
glow/blur_scale = 1.2
glow/blur_strength = 1.2
glow/blur_blend_mode = 0
glow/bloom = 0.0
glow/bloom_treshold = 0.5
dof_blur/enabled = false
dof_blur/blur_passes = 1
dof_blur/begin = 100.0
dof_blur/range = 10.0
hdr/enabled = true
hdr/tonemapper = 0.0
hdr/exposure = 0.5
hdr/white = 1.0
hdr/glow_treshold = 0.7
hdr/glow_scale = 0.5
hdr/min_luminance = 0.3
hdr/max_luminance = 8.0
hdr/exposure_adj_speed = 2.0
fog/enabled = false
fog/begin = 100.0
fog/begin_color = Color( 0, 0, 0, 1 )
fog/end_color = Color( 0, 0, 0, 1 )
fog/attenuation = 1.0
fog/bg = true
bcs/enabled = false
bcs/brightness = 1.0
bcs/contrast = 1.0
bcs/saturation = 1.0
srgb/enabled = true
[node name="hdr" type="Node2D"]
script/script = ExtResource( 1 )
[node name="beach" type="Sprite" parent="."]
texture = ExtResource( 2 )
centered = false
modulate = Color( 2, 2, 2, 1 )
[node name="cave" type="Sprite" parent="."]
transform/scale = Vector2( 1.2, 1 )
texture = ExtResource( 3 )
centered = false
modulate = Color( 0.233166, 0.221219, 0.23582, 1 )
[node name="environment" type="WorldEnvironment" parent="."]
_import_transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )
environment = SubResource( 1 )
[node name="Label" type="Label" parent="."]
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = 0.0
margin/top = 0.0
margin/right = 40.0
margin/bottom = 13.0
custom_colors/font_color = Color( 0.213955, 0.205626, 0.20313, 1 )
text = "Drag Left and Right"
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1

View File

@ -1,7 +1,7 @@
[application] [application]
name="HDR for 2D" name="HDR for 2D"
main_scene="res://beach_cave.scn" main_scene="res://beach_cave.tscn"
icon="res://icon.png" icon="res://icon.png"
[display] [display]

View File

@ -1,7 +1,7 @@
[application] [application]
name="Hexagonal Game" name="Hexagonal Game"
main_scene="res://map.scn" main_scene="res://map.tscn"
icon="res://icon.png" icon="res://icon.png"
[input] [input]

Binary file not shown.

31
demos/2d/hexamap/map.tscn Normal file
View File

@ -0,0 +1,31 @@
[gd_scene load_steps=3 format=1]
[ext_resource path="res://tileset.tres" type="TileSet" id=1]
[ext_resource path="res://troll.tscn" type="PackedScene" id=2]
[node name="Node2D" type="Node2D"]
[node name="TileMap" type="TileMap" parent="."]
mode = 0
tile_set = ExtResource( 1 )
cell/size = Vector2( 82, 94 )
cell/quadrant_size = 16
cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
cell/half_offset = 1
cell/tile_origin = 0
cell/y_sort = false
collision/use_kinematic = false
collision/friction = 1.0
collision/bounce = 0.0
collision/layers = 1
collision/mask = 1
occluder/light_mask = 1
tile_data = IntArray( -458747, 1073741831, -393213, 1073741831, -393212, 1073741831, -393211, 6, -393210, 1073741831, -393209, 1073741830, -393208, 1073741830, -393207, 6, -393206, 8, -327679, 1073741831, -327678, 1073741831, -327677, 1073741831, -327676, 1073741830, -327675, 1073741831, -327674, 6, -327673, 6, -327672, 6, -327671, 6, -327670, 6, -327669, 0, -327668, 0, -262143, 1073741831, -262142, 1073741831, -262141, 6, -262140, 6, -262139, 0, -262138, 6, -262137, 1, -262136, 0, -262135, 1, -262134, 1, -262133, 0, -262132, 0, -262131, 0, -196608, 9, -196607, 1073741832, -196606, 1073741830, -196605, 2, -196604, 2, -196603, 1073741845, -196602, 21, -196601, 19, -196600, 1073741826, -196599, 0, -196598, 16, -196597, 0, -196596, 0, -196595, 0, -196594, 0, -196593, 0, -131071, 0, -131070, 1, -131069, 1073741827, -131068, 1073741846, -131067, 20, -131066, 19, -131065, 2, -131064, 0, -131063, 14, -131062, 0, -131061, 0, -131060, 0, -131059, 0, -131058, 0, -131057, 0, -131056, 0, -65534, 1, -65533, 2, -65532, 1073741827, -65531, 1, -65530, 1, -65529, 0, -65528, 10, -65527, 12, -65526, 0, -65525, 0, -65524, 0, -65523, 0, -65522, 0, -65521, 0, -65520, 0, 1, 0, 2, 0, 3, 2, 4, 1073741826, 5, 1, 6, 15, 7, 0, 8, 0, 9, 0, 10, 0, 11, 0, 12, 0, 13, 0, 14, 0, 15, 0, 16, 0, 65537, 0, 65538, 1, 65539, 1610612749, 65540, 1, 65541, 0, 65542, 0, 65543, 0, 65544, 0, 65545, 1610612753, 65546, 0, 65547, 0, 65548, 0, 65549, 0, 65550, 1073741848, 65551, 1073741849, 65552, 0, 131073, 0, 131074, 0, 131075, 0, 131076, 0, 131077, 1610612751, 131078, 1610612752, 131079, 1610612752, 131080, 1610612751, 131081, 1610612751, 131082, 0, 131083, 0, 131084, 0, 131085, 0, 131086, 0, 196612, 0, 196613, 1610612751, 196614, 1610612752, 196615, 1610612751, 196616, 1610612751, 196617, 1073741839, 196618, 1073741839, 196619, 0, 196620, 0, 196621, 0, 262150, 0, 262152, 0, 262154, 0, 262156, 0 )
[node name="troll" parent="." instance=ExtResource( 2 )]
transform/pos = Vector2( 602.819, -39.2876 )
collision/margin = 0.001

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,240 @@
[gd_resource type="TileSet" load_steps=27 format=1]
[ext_resource path="res://WWT-01.png" type="Texture" id=1]
[ext_resource path="res://WWT-02.png" type="Texture" id=2]
[ext_resource path="res://WWT-11.png" type="Texture" id=3]
[ext_resource path="res://WWT-12.png" type="Texture" id=4]
[ext_resource path="res://WWT-13.png" type="Texture" id=5]
[ext_resource path="res://WWT-14.png" type="Texture" id=6]
[ext_resource path="res://WWT-15.png" type="Texture" id=7]
[ext_resource path="res://WWT-16.png" type="Texture" id=8]
[ext_resource path="res://WWT-17.png" type="Texture" id=9]
[ext_resource path="res://WWT-18.png" type="Texture" id=10]
[ext_resource path="res://WWT-19.png" type="Texture" id=11]
[ext_resource path="res://WWT-20.png" type="Texture" id=12]
[ext_resource path="res://WWT-03.png" type="Texture" id=13]
[ext_resource path="res://WWT-21.png" type="Texture" id=14]
[ext_resource path="res://WWT-22.png" type="Texture" id=15]
[ext_resource path="res://WWT-23.png" type="Texture" id=16]
[ext_resource path="res://WWT-24.png" type="Texture" id=17]
[ext_resource path="res://WWT-25.png" type="Texture" id=18]
[ext_resource path="res://WWT-26.png" type="Texture" id=19]
[ext_resource path="res://WWT-04.png" type="Texture" id=20]
[ext_resource path="res://WWT-05.png" type="Texture" id=21]
[ext_resource path="res://WWT-06.png" type="Texture" id=22]
[ext_resource path="res://WWT-07.png" type="Texture" id=23]
[ext_resource path="res://WWT-08.png" type="Texture" id=24]
[ext_resource path="res://WWT-09.png" type="Texture" id=25]
[ext_resource path="res://WWT-10.png" type="Texture" id=26]
[resource]
0/name = "Tile 1"
0/texture = ExtResource( 1 )
0/tex_offset = Vector2( -24, -17 )
0/region = Rect2( 0, 0, 0, 0 )
0/occluder_offset = Vector2( -0, -0 )
0/navigation_offset = Vector2( -0, -0 )
0/shape_offset = Vector2( 0, 0 )
0/shapes = [ ]
1/name = "Tile 2"
1/texture = ExtResource( 2 )
1/tex_offset = Vector2( -24, -17 )
1/region = Rect2( 0, 0, 0, 0 )
1/occluder_offset = Vector2( -0, -0 )
1/navigation_offset = Vector2( -0, -0 )
1/shape_offset = Vector2( 0, 0 )
1/shapes = [ ]
2/name = "Tile 3"
2/texture = ExtResource( 13 )
2/tex_offset = Vector2( -24, -17 )
2/region = Rect2( 0, 0, 0, 0 )
2/occluder_offset = Vector2( -0, -0 )
2/navigation_offset = Vector2( -0, -0 )
2/shape_offset = Vector2( 0, 0 )
2/shapes = [ ]
3/name = "Tile 4"
3/texture = ExtResource( 20 )
3/tex_offset = Vector2( -24, -17 )
3/region = Rect2( 0, 0, 0, 0 )
3/occluder_offset = Vector2( -0, -0 )
3/navigation_offset = Vector2( -0, -0 )
3/shape_offset = Vector2( 0, 0 )
3/shapes = [ ]
4/name = "Tile 5"
4/texture = ExtResource( 21 )
4/tex_offset = Vector2( -24, -17 )
4/region = Rect2( 0, 0, 0, 0 )
4/occluder_offset = Vector2( -0, -0 )
4/navigation_offset = Vector2( -0, -0 )
4/shape_offset = Vector2( 0, 0 )
4/shapes = [ ]
5/name = "Tile 6"
5/texture = ExtResource( 22 )
5/tex_offset = Vector2( -24, -17 )
5/region = Rect2( 0, 0, 0, 0 )
5/occluder_offset = Vector2( -0, -0 )
5/navigation_offset = Vector2( -0, -0 )
5/shape_offset = Vector2( 0, 0 )
5/shapes = [ ]
6/name = "Tile 7"
6/texture = ExtResource( 23 )
6/tex_offset = Vector2( -24, -17 )
6/region = Rect2( 0, 0, 0, 0 )
6/occluder_offset = Vector2( -0, -0 )
6/navigation_offset = Vector2( -0, -0 )
6/shape_offset = Vector2( 0, 0 )
6/shapes = [ ]
7/name = "Tile 8"
7/texture = ExtResource( 24 )
7/tex_offset = Vector2( -24, -17 )
7/region = Rect2( 0, 0, 0, 0 )
7/occluder_offset = Vector2( -0, -0 )
7/navigation_offset = Vector2( -0, -0 )
7/shape_offset = Vector2( 0, 0 )
7/shapes = [ ]
8/name = "Tile 9"
8/texture = ExtResource( 25 )
8/tex_offset = Vector2( -24, -17 )
8/region = Rect2( 0, 0, 0, 0 )
8/occluder_offset = Vector2( -0, -0 )
8/navigation_offset = Vector2( -0, -0 )
8/shape_offset = Vector2( 0, 0 )
8/shapes = [ ]
9/name = "Tile 10"
9/texture = ExtResource( 26 )
9/tex_offset = Vector2( -24, -17 )
9/region = Rect2( 0, 0, 0, 0 )
9/occluder_offset = Vector2( -0, -0 )
9/navigation_offset = Vector2( -0, -0 )
9/shape_offset = Vector2( 0, 0 )
9/shapes = [ ]
10/name = "Tile 11"
10/texture = ExtResource( 3 )
10/tex_offset = Vector2( -24, -17 )
10/region = Rect2( 0, 0, 0, 0 )
10/occluder_offset = Vector2( -0, -0 )
10/navigation_offset = Vector2( -0, -0 )
10/shape_offset = Vector2( 0, 0 )
10/shapes = [ ]
11/name = "Tile 12"
11/texture = ExtResource( 4 )
11/tex_offset = Vector2( -24, -17 )
11/region = Rect2( 0, 0, 0, 0 )
11/occluder_offset = Vector2( -0, -0 )
11/navigation_offset = Vector2( -0, -0 )
11/shape_offset = Vector2( 0, 0 )
11/shapes = [ ]
12/name = "Tile 13"
12/texture = ExtResource( 5 )
12/tex_offset = Vector2( -24, -17 )
12/region = Rect2( 0, 0, 0, 0 )
12/occluder_offset = Vector2( -0, -0 )
12/navigation_offset = Vector2( -0, -0 )
12/shape_offset = Vector2( 0, 0 )
12/shapes = [ ]
13/name = "Tile 14"
13/texture = ExtResource( 6 )
13/tex_offset = Vector2( -24, -17 )
13/region = Rect2( 0, 0, 0, 0 )
13/occluder_offset = Vector2( -0, -0 )
13/navigation_offset = Vector2( -0, -0 )
13/shape_offset = Vector2( 0, 0 )
13/shapes = [ ]
14/name = "Tile 15"
14/texture = ExtResource( 7 )
14/tex_offset = Vector2( -24, -17 )
14/region = Rect2( 0, 0, 0, 0 )
14/occluder_offset = Vector2( -0, -0 )
14/navigation_offset = Vector2( -0, -0 )
14/shape_offset = Vector2( 0, 0 )
14/shapes = [ ]
15/name = "Tile 16"
15/texture = ExtResource( 8 )
15/tex_offset = Vector2( -24, -17 )
15/region = Rect2( 0, 0, 0, 0 )
15/occluder_offset = Vector2( -0, -0 )
15/navigation_offset = Vector2( -0, -0 )
15/shape_offset = Vector2( 0, 0 )
15/shapes = [ ]
16/name = "Tile 17"
16/texture = ExtResource( 9 )
16/tex_offset = Vector2( -24, -17 )
16/region = Rect2( 0, 0, 0, 0 )
16/occluder_offset = Vector2( -0, -0 )
16/navigation_offset = Vector2( -0, -0 )
16/shape_offset = Vector2( 0, 0 )
16/shapes = [ ]
17/name = "Tile 18"
17/texture = ExtResource( 10 )
17/tex_offset = Vector2( -24, -17 )
17/region = Rect2( 0, 0, 0, 0 )
17/occluder_offset = Vector2( -0, -0 )
17/navigation_offset = Vector2( -0, -0 )
17/shape_offset = Vector2( 0, 0 )
17/shapes = [ ]
18/name = "Tile 19"
18/texture = ExtResource( 11 )
18/tex_offset = Vector2( -24, -17 )
18/region = Rect2( 0, 0, 0, 0 )
18/occluder_offset = Vector2( -0, -0 )
18/navigation_offset = Vector2( -0, -0 )
18/shape_offset = Vector2( 0, 0 )
18/shapes = [ ]
19/name = "Tile 20"
19/texture = ExtResource( 12 )
19/tex_offset = Vector2( -24, -17 )
19/region = Rect2( 0, 0, 0, 0 )
19/occluder_offset = Vector2( -0, -0 )
19/navigation_offset = Vector2( -0, -0 )
19/shape_offset = Vector2( 0, 0 )
19/shapes = [ ]
20/name = "Tile 21"
20/texture = ExtResource( 14 )
20/tex_offset = Vector2( -24, -17 )
20/region = Rect2( 0, 0, 0, 0 )
20/occluder_offset = Vector2( -0, -0 )
20/navigation_offset = Vector2( -0, -0 )
20/shape_offset = Vector2( 0, 0 )
20/shapes = [ ]
21/name = "Tile 22"
21/texture = ExtResource( 15 )
21/tex_offset = Vector2( -24, -17 )
21/region = Rect2( 0, 0, 0, 0 )
21/occluder_offset = Vector2( -0, -0 )
21/navigation_offset = Vector2( -0, -0 )
21/shape_offset = Vector2( 0, 0 )
21/shapes = [ ]
22/name = "Tile 23"
22/texture = ExtResource( 16 )
22/tex_offset = Vector2( -24, -17 )
22/region = Rect2( 0, 0, 0, 0 )
22/occluder_offset = Vector2( -0, -0 )
22/navigation_offset = Vector2( -0, -0 )
22/shape_offset = Vector2( 0, 0 )
22/shapes = [ ]
23/name = "Tile 24"
23/texture = ExtResource( 17 )
23/tex_offset = Vector2( -24, -17 )
23/region = Rect2( 0, 0, 0, 0 )
23/occluder_offset = Vector2( -0, -0 )
23/navigation_offset = Vector2( -0, -0 )
23/shape_offset = Vector2( 0, 0 )
23/shapes = [ ]
24/name = "Tile 25"
24/texture = ExtResource( 18 )
24/tex_offset = Vector2( -24, -17 )
24/region = Rect2( 0, 0, 0, 0 )
24/occluder_offset = Vector2( -0, -0 )
24/navigation_offset = Vector2( -0, -0 )
24/shape_offset = Vector2( 0, 0 )
24/shapes = [ ]
25/name = "Tile 26"
25/texture = ExtResource( 19 )
25/tex_offset = Vector2( -24, -17 )
25/region = Rect2( 0, 0, 0, 0 )
25/occluder_offset = Vector2( -0, -0 )
25/navigation_offset = Vector2( -0, -0 )
25/shape_offset = Vector2( 0, 0 )
25/shapes = [ ]

View File

@ -0,0 +1,214 @@
[gd_scene load_steps=27 format=1]
[ext_resource path="res://WWT-01.png" type="Texture" id=1]
[ext_resource path="res://WWT-02.png" type="Texture" id=2]
[ext_resource path="res://WWT-03.png" type="Texture" id=3]
[ext_resource path="res://WWT-04.png" type="Texture" id=4]
[ext_resource path="res://WWT-05.png" type="Texture" id=5]
[ext_resource path="res://WWT-06.png" type="Texture" id=6]
[ext_resource path="res://WWT-07.png" type="Texture" id=7]
[ext_resource path="res://WWT-08.png" type="Texture" id=8]
[ext_resource path="res://WWT-09.png" type="Texture" id=9]
[ext_resource path="res://WWT-10.png" type="Texture" id=10]
[ext_resource path="res://WWT-11.png" type="Texture" id=11]
[ext_resource path="res://WWT-12.png" type="Texture" id=12]
[ext_resource path="res://WWT-13.png" type="Texture" id=13]
[ext_resource path="res://WWT-14.png" type="Texture" id=14]
[ext_resource path="res://WWT-15.png" type="Texture" id=15]
[ext_resource path="res://WWT-16.png" type="Texture" id=16]
[ext_resource path="res://WWT-17.png" type="Texture" id=17]
[ext_resource path="res://WWT-18.png" type="Texture" id=18]
[ext_resource path="res://WWT-19.png" type="Texture" id=19]
[ext_resource path="res://WWT-20.png" type="Texture" id=20]
[ext_resource path="res://WWT-21.png" type="Texture" id=21]
[ext_resource path="res://WWT-22.png" type="Texture" id=22]
[ext_resource path="res://WWT-23.png" type="Texture" id=23]
[ext_resource path="res://WWT-24.png" type="Texture" id=24]
[ext_resource path="res://WWT-25.png" type="Texture" id=25]
[ext_resource path="res://WWT-26.png" type="Texture" id=26]
[node name="Node2D" type="Node2D"]
[node name="Tile 1" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 1 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 2" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 2 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 3" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 3 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 4" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 4 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 5" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 5 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 6" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 6 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 7" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 7 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 8" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 8 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 9" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 9 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 10" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 10 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 11" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 11 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 12" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 12 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 13" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 13 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 14" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 14 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 15" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 15 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 16" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 16 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 17" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 17 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 18" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 18 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 19" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 19 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 20" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 20 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 21" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 21 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 22" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 22 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 23" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 23 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 24" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 24 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 25" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 25 )
centered = false
offset = Vector2( -24, -17 )
[node name="Tile 26" type="Sprite" parent="."]
transform/pos = Vector2( 96.6174, 42.2665 )
texture = ExtResource( 26 )
centered = false
offset = Vector2( -24, -17 )

Binary file not shown.

View File

@ -0,0 +1,52 @@
[gd_scene load_steps=4 format=1]
[ext_resource path="res://troll.gd" type="Script" id=1]
[ext_resource path="res://troll.png" type="Texture" id=2]
[sub_resource type="CircleShape2D" id=1]
custom_solver_bias = 0.0
radius = 16.0
[node name="troll" type="KinematicBody2D"]
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 3.24216, 19.453 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
collision/margin = 0.001
script/script = ExtResource( 1 )
[node name="Sprite" type="Sprite" parent="."]
texture = ExtResource( 2 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
transform/pos = Vector2( 3.24216, 19.453 )
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1
[node name="Camera2D" type="Camera2D" parent="."]
anchor_mode = 1
rotating = false
current = true
zoom = Vector2( 1, 1 )
limit/left = -10000000
limit/top = -10000000
limit/right = 10000000
limit/bottom = 10000000
drag_margin/h_enabled = true
drag_margin/v_enabled = true
smoothing/enable = false
smoothing/speed = 5.0
drag_margin/left = 0.2
drag_margin/top = 0.2
drag_margin/right = 0.2
drag_margin/bottom = 0.2

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,49 @@
[gd_scene load_steps=3 format=1]
[ext_resource path="res://tileset.tres" type="TileSet" id=1]
[ext_resource path="res://troll.tscn" type="PackedScene" id=2]
[node name="dungeon" type="Node2D"]
[node name="floor" type="TileMap" parent="."]
mode = 1
tile_set = ExtResource( 1 )
cell/size = Vector2( 128, 64 )
cell/quadrant_size = 16
cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
cell/half_offset = 2
cell/tile_origin = 1
cell/y_sort = false
collision/use_kinematic = false
collision/friction = 1.0
collision/bounce = 0.0
collision/layers = 1
collision/mask = 1
occluder/light_mask = 1
tile_data = IntArray( -851956, 0, -851955, 0, -851954, 0, -786420, 1, -786419, 0, -786418, 0, -720884, 0, -720883, 0, -720882, 0, -655348, 1, -655347, 0, -655346, 0, -589812, 1, -589811, 0, -589810, 0, -524276, 0, -524275, 1, -524274, 0, -458740, 0, -458739, 0, -458738, 0, -393210, 0, -393209, 0, -393208, 0, -393207, 0, -393206, 0, -393205, 0, -393204, 0, -393203, 0, -393202, 0, -327674, 0, -327673, 0, -327672, 1, -327671, 1, -327670, 1, -327669, 1, -327668, 1, -327667, 0, -327666, 0, -262138, 0, -262137, 0, -262136, 0, -262135, 0, -262134, 0, -262133, 0, -262132, 0, -262131, 0, -262130, 0, -196602, 0, -196601, 0, -196600, 0, -196599, 0, -196598, 0, -196597, 0, -196596, 0, -196595, 0, -196594, 0, -131066, 0, -131065, 0, -131064, 0, -131063, 0, -65530, 0, -65529, 0, -65528, 0, -65527, 0, 6, 0, 7, 1, 8, 0, 9, 0, 65542, 0, 65543, 0, 65544, 0, 65545, 0, 131078, 0, 131079, 0, 131080, 0, 131081, 0, 196614, 0, 196615, 0, 196616, 0 )
[node name="walls" type="TileMap" parent="."]
mode = 1
tile_set = ExtResource( 1 )
cell/size = Vector2( 128, 64 )
cell/quadrant_size = 16
cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
cell/half_offset = 2
cell/tile_origin = 1
cell/y_sort = true
collision/use_kinematic = false
collision/friction = 1.0
collision/bounce = 0.0
collision/layers = 1
collision/mask = 1
occluder/light_mask = 1
tile_data = IntArray( -917493, 2, -917492, 2, -917491, 2, -917490, 2, -917489, 2, -851957, 2, -851956, 3, -851954, 3, -851953, 2, -786421, 2, -786420, 3, -786418, 3, -786417, 2, -720885, 2, -720881, 2, -655349, 2, -655348, 2, -655346, 3, -655345, 2, -589813, 2, -589809, 2, -524277, 2, -524273, 2, -458747, 2, -458746, 2, -458745, 2, -458744, 536870916, -458743, 536870916, -458742, 2, -458741, 2, -458740, 2, -458738, 2, -458737, 2, -393211, 2, -393209, 3, -393205, 3, -393201, 2, -327675, 4, -327665, 2, -262139, 4, -262134, 3, -262133, 3, -262129, 2, -196603, 2, -196601, 3, -196593, 2, -131067, 2, -131066, 3, -131062, 2, -131061, 2, -131060, 2, -131059, 2, -131058, 2, -131057, 2, -65531, 2, -65530, 2, -65527, 2, -65526, 2, 5, 2, 10, 2, 65541, 2, 65543, 3, 65546, 2, 131077, 2, 131082, 2, 196613, 2, 196618, 2, 262149, 2, 262150, 2, 262151, 2, 262152, 2, 262153, 2, 262154, 2 )
[node name="troll" parent="walls" instance=ExtResource( 2 )]
transform/pos = Vector2( 299.38, 326.037 )
collision/margin = 0.001

View File

@ -1,7 +1,7 @@
[application] [application]
name="Isometric Game" name="Isometric Game"
main_scene="res://dungeon.scn" main_scene="res://dungeon.tscn"
icon="res://icon.png" icon="res://icon.png"
[image_loader] [image_loader]

Binary file not shown.

View File

@ -0,0 +1,67 @@
[gd_resource type="TileSet" load_steps=6 format=1]
[ext_resource path="res://isotiles.png" type="Texture" id=1]
[sub_resource type="ConvexPolygonShape2D" id=1]
custom_solver_bias = 0.0
points = Vector2Array( -68, 2, -4, -30, 60, 2, -4, 34 )
[sub_resource type="ConvexPolygonShape2D" id=2]
custom_solver_bias = 0.0
points = Vector2Array( -20, -6, -4, -22, 12, -22, 4, 10, -4, 10 )
[sub_resource type="ConvexPolygonShape2D" id=3]
custom_solver_bias = 0.0
points = Vector2Array( 28, -6, 4, 10, 12, -22 )
[sub_resource type="ConvexPolygonShape2D" id=4]
custom_solver_bias = 0.0
points = Vector2Array( 66.095, -0.62516, -5.90501, 31.3748, -21.905, 23.3748, 50.095, -8.62516 )
[resource]
0/name = "base"
0/texture = ExtResource( 1 )
0/tex_offset = Vector2( -4, 6 )
0/region = Rect2( 28, 92, 132, 84 )
0/occluder_offset = Vector2( 66, 42 )
0/navigation_offset = Vector2( 66, 42 )
0/shape_offset = Vector2( 0, 0 )
0/shapes = [ ]
1/name = "base2"
1/texture = ExtResource( 1 )
1/tex_offset = Vector2( -4, 6 )
1/region = Rect2( 220, 92, 132, 84 )
1/occluder_offset = Vector2( 66, 42 )
1/navigation_offset = Vector2( 66, 42 )
1/shape_offset = Vector2( 0, 0 )
1/shapes = [ ]
2/name = "wall"
2/texture = ExtResource( 1 )
2/tex_offset = Vector2( -4, -32 )
2/region = Rect2( 28, 220, 132, 136 )
2/occluder_offset = Vector2( 66, 68 )
2/navigation_offset = Vector2( 66, 68 )
2/shape_offset = Vector2( 66, 68 )
2/shapes = [ SubResource( 1 ) ]
3/name = "column"
3/texture = ExtResource( 1 )
3/tex_offset = Vector2( -2, -32 )
3/region = Rect2( 220, 220, 132, 136 )
3/occluder_offset = Vector2( 66, 68 )
3/navigation_offset = Vector2( 66, 68 )
3/shape_offset = Vector2( 66, 68 )
3/shapes = [ SubResource( 2 ), SubResource( 3 ) ]
4/name = "door1"
4/texture = ExtResource( 1 )
4/tex_offset = Vector2( 16, -22 )
4/region = Rect2( 24, 408, 132, 136 )
4/occluder_offset = Vector2( 66, 68 )
4/navigation_offset = Vector2( 66, 68 )
4/shape_offset = Vector2( 66, 68 )
4/shapes = [ SubResource( 4 ) ]

View File

@ -0,0 +1,130 @@
[gd_scene load_steps=6 format=1]
[ext_resource path="res://isotiles.png" type="Texture" id=1]
[sub_resource type="ConvexPolygonShape2D" id=1]
custom_solver_bias = 0.0
points = Vector2Array( -68, 2, -4, -30, 60, 2, -4, 34 )
[sub_resource type="ConvexPolygonShape2D" id=2]
custom_solver_bias = 0.0
points = Vector2Array( -20, -6, -4, -22, 12, -22, 4, 10, -4, 10 )
[sub_resource type="ConvexPolygonShape2D" id=3]
custom_solver_bias = 0.0
points = Vector2Array( 28, -6, 4, 10, 12, -22 )
[sub_resource type="ConvexPolygonShape2D" id=4]
custom_solver_bias = 0.0
points = Vector2Array( 66.095, -0.62516, -5.90501, 31.3748, -21.905, 23.3748, 50.095, -8.62516 )
[node name="Node2D" type="Node2D"]
[node name="base" type="Sprite" parent="."]
transform/pos = Vector2( 87.5658, 0.113792 )
texture = ExtResource( 1 )
offset = Vector2( -4, 6 )
region = true
region_rect = Rect2( 28, 92, 132, 84 )
[node name="base2" type="Sprite" parent="."]
transform/pos = Vector2( 196, 44 )
texture = ExtResource( 1 )
offset = Vector2( -4, 6 )
region = true
region_rect = Rect2( 220, 92, 132, 84 )
[node name="wall" type="Sprite" parent="."]
transform/pos = Vector2( 356, 70 )
texture = ExtResource( 1 )
offset = Vector2( -4, -32 )
region = true
region_rect = Rect2( 28, 220, 132, 136 )
[node name="StaticBody2D" type="StaticBody2D" parent="wall"]
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="collision" type="CollisionPolygon2D" parent="wall/StaticBody2D"]
build_mode = 0
polygon = Vector2Array( -68, 2, -4, 34, 60, 2, -4, -30 )
shape_range = Vector2( -1, -1 )
trigger = false
[node name="column" type="Sprite" parent="."]
transform/pos = Vector2( 292, 198 )
texture = ExtResource( 1 )
offset = Vector2( -2, -32 )
region = true
region_rect = Rect2( 220, 220, 132, 136 )
[node name="StaticBody" type="StaticBody2D" parent="column"]
input/pickable = false
shapes/0/shape = SubResource( 2 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
shapes/1/shape = SubResource( 3 )
shapes/1/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/1/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="column/StaticBody"]
build_mode = 0
polygon = Vector2Array( -20, -6, -4, 10, 4, 10, 28, -6, 12, -22, -4, -22 )
shape_range = Vector2( -1, -1 )
trigger = false
[node name="door1" type="Sprite" parent="."]
transform/pos = Vector2( 85.905, 0.62516 )
texture = ExtResource( 1 )
offset = Vector2( 16, -22 )
region = true
region_rect = Rect2( 24, 408, 132, 136 )
[node name="StaticBody2D" type="StaticBody2D" parent="door1"]
input/pickable = false
shapes/0/shape = SubResource( 4 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="door1/StaticBody2D"]
build_mode = 0
polygon = Vector2Array( -5.90501, 31.3748, 66.095, -0.62516, 50.095, -8.62516, -21.905, 23.3748 )
shape_range = Vector2( -1, -1 )
trigger = false

Binary file not shown.

View File

@ -0,0 +1,53 @@
[gd_scene load_steps=4 format=1]
[ext_resource path="res://troll.gd" type="Script" id=1]
[ext_resource path="res://troll.png" type="Texture" id=2]
[sub_resource type="CircleShape2D" id=1]
custom_solver_bias = 0.0
radius = 16.0
[node name="troll" type="KinematicBody2D"]
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, -0.342697, -0.980721 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
collision/margin = 0.001
script/script = ExtResource( 1 )
[node name="Sprite" type="Sprite" parent="."]
transform/pos = Vector2( -3.94334, -36.924 )
texture = ExtResource( 2 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
transform/pos = Vector2( -0.342697, -0.980721 )
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1
[node name="Camera2D" type="Camera2D" parent="."]
anchor_mode = 1
rotating = false
current = true
zoom = Vector2( 1, 1 )
limit/left = -10000000
limit/top = -10000000
limit/right = 10000000
limit/bottom = 10000000
drag_margin/h_enabled = true
drag_margin/v_enabled = true
smoothing/enable = false
smoothing/speed = 5.0
drag_margin/left = 0.2
drag_margin/top = 0.2
drag_margin/right = 0.2
drag_margin/bottom = 0.2

View File

@ -0,0 +1,12 @@
[gd_resource type="CanvasItemMaterial" load_steps=2 format=1]
[sub_resource type="CanvasItemShader" id=1]
_code = { "fragment":"//there is no albedo (all shading is normal)\nuniform color col;\nCOLOR=col;\n//sample normal texture\nvec4 ntex = tex(TEXTURE,UV);\n//take the alpha from the normal texture\nCOLOR.a=ntex.a;\n//adjust normalmap from [0..1] to [-1..1]\nntex.rgb = ntex.rgb * vec3(-2,-2,1) - vec3(-1,-1,0);\n//half size of the tile \nvec2 tile_vec=vec2(47,22);\n//rotation to convert the normal to pseudo 3d coordinates\n//this could be optimized\nfloat r = asin(tile_vec.y / tile_vec.x);\nmat3 rot_mat = mat3( vec3(1,0,0), vec3(0,cos(r),-sin(r)), vec3(0,sin(r),cos(r)));\n\n//pass the normal\nNORMAL = rot_mat * ntex.rgb;\n\n\n\n\n", "fragment_ofs":0, "light":"//apply the normal as simple diffuse (same as default code)\nvec3 light_normal = normalize(vec3(LIGHT_VEC,-LIGHT_HEIGHT));\nLIGHT=LIGHT_COLOR*COLOR*max(dot(-light_normal,NORMAL),0.0);\n//substract light position to be always aligned to the bottom of the sprite\n//this makes lighting on it look like a billboard\nLIGHT_VEC.y-=VAR1.y;\n", "light_ofs":0, "vertex":"// pass the local sprite coordinates through a varying\n// the red cross in the sprite is the 0,0\nVAR1.xy=SRC_VERTEX;", "vertex_ofs":0 }
[resource]
shader/shader = SubResource( 1 )
shader/shading_mode = 0
shader_param/col = Color( 1, 0.836638, 0.693806, 1 )

Binary file not shown.

View File

@ -0,0 +1,52 @@
[gd_scene load_steps=5 format=1]
[ext_resource path="res://wall_shader.tres" type="CanvasItemMaterial" id=1]
[ext_resource path="res://faceColor.png" type="Texture" id=2]
[sub_resource type="CircleShape2D" id=1]
custom_solver_bias = 0.0
radius = 20.0
[sub_resource type="OccluderPolygon2D" id=2]
closed = false
cull_mode = 0
polygon = Vector2Array( -16.1183, 62.9508, 4.32091, 74.9223, 23.3002, 65.2867 )
[node name="column" type="StaticBody2D"]
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 1.36365, 7.83751 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="Sprite" type="Sprite" parent="."]
material/material = ExtResource( 1 )
transform/pos = Vector2( 0.487671, 0.487679 )
texture = ExtResource( 2 )
offset = Vector2( -4.37984, -50.8523 )
region = true
region_rect = Rect2( 569, 179, 48, 154 )
[node name="occluder" type="LightOccluder2D" parent="."]
transform/pos = Vector2( -3.90138, -50.97 )
occluder = SubResource( 2 )
light_mask = 1
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
transform/pos = Vector2( 1.36365, 7.83751 )
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1

View File

@ -19,7 +19,7 @@ func _input(event):
if (event.type == InputEvent.MOUSE_BUTTON and event.button_index == 1 and event.pressed and shoot_countdown <= 0): if (event.type == InputEvent.MOUSE_BUTTON and event.button_index == 1 and event.pressed and shoot_countdown <= 0):
var pos = get_canvas_transform().affine_inverse()*event.pos var pos = get_canvas_transform().affine_inverse()*event.pos
var dir = (pos - get_global_pos()).normalized() var dir = (pos - get_global_pos()).normalized()
var bullet = preload("res://shoot.scn").instance() var bullet = preload("res://shoot.tscn").instance()
bullet.advance_dir = dir bullet.advance_dir = dir
bullet.set_pos(get_global_pos() + dir*60) bullet.set_pos(get_global_pos() + dir*60)
get_parent().add_child(bullet) get_parent().add_child(bullet)

Binary file not shown.

View File

@ -0,0 +1,327 @@
[gd_scene load_steps=173 format=1]
[ext_resource path="res://cubio.gd" type="Script" id=1]
[ext_resource path="res://character_shader.tres" type="CanvasItemMaterial" id=2]
[ext_resource path="res://cubio/idle0001.png" type="Texture" id=3]
[ext_resource path="res://cubio/idle0002.png" type="Texture" id=4]
[ext_resource path="res://cubio/idle0003.png" type="Texture" id=5]
[ext_resource path="res://cubio/idle0004.png" type="Texture" id=6]
[ext_resource path="res://cubio/idle0005.png" type="Texture" id=7]
[ext_resource path="res://cubio/idle0006.png" type="Texture" id=8]
[ext_resource path="res://cubio/idle0007.png" type="Texture" id=9]
[ext_resource path="res://cubio/idle0008.png" type="Texture" id=10]
[ext_resource path="res://cubio/idle0009.png" type="Texture" id=11]
[ext_resource path="res://cubio/idle0010.png" type="Texture" id=12]
[ext_resource path="res://cubio/idle0011.png" type="Texture" id=13]
[ext_resource path="res://cubio/idle0012.png" type="Texture" id=14]
[ext_resource path="res://cubio/idle0013.png" type="Texture" id=15]
[ext_resource path="res://cubio/idle0014.png" type="Texture" id=16]
[ext_resource path="res://cubio/idle0015.png" type="Texture" id=17]
[ext_resource path="res://cubio/idle0016.png" type="Texture" id=18]
[ext_resource path="res://cubio/idle0017.png" type="Texture" id=19]
[ext_resource path="res://cubio/idle0018.png" type="Texture" id=20]
[ext_resource path="res://cubio/idle0019.png" type="Texture" id=21]
[ext_resource path="res://cubio/idle0020.png" type="Texture" id=22]
[ext_resource path="res://cubio/idle0021.png" type="Texture" id=23]
[ext_resource path="res://cubio/idle0022.png" type="Texture" id=24]
[ext_resource path="res://cubio/idle0023.png" type="Texture" id=25]
[ext_resource path="res://cubio/idle0024.png" type="Texture" id=26]
[ext_resource path="res://cubio/idle0025.png" type="Texture" id=27]
[ext_resource path="res://cubio/idle0026.png" type="Texture" id=28]
[ext_resource path="res://cubio/idle0027.png" type="Texture" id=29]
[ext_resource path="res://cubio/idle0028.png" type="Texture" id=30]
[ext_resource path="res://cubio/idle0029.png" type="Texture" id=31]
[ext_resource path="res://cubio/idle0030.png" type="Texture" id=32]
[ext_resource path="res://cubio/idle0031.png" type="Texture" id=33]
[ext_resource path="res://cubio/idle0032.png" type="Texture" id=34]
[ext_resource path="res://cubio/idle0033.png" type="Texture" id=35]
[ext_resource path="res://cubio/idle0034.png" type="Texture" id=36]
[ext_resource path="res://cubio/idle0035.png" type="Texture" id=37]
[ext_resource path="res://cubio/idle0036.png" type="Texture" id=38]
[ext_resource path="res://cubio/idle0037.png" type="Texture" id=39]
[ext_resource path="res://cubio/idle0038.png" type="Texture" id=40]
[ext_resource path="res://cubio/idle0039.png" type="Texture" id=41]
[ext_resource path="res://cubio/idle0040.png" type="Texture" id=42]
[ext_resource path="res://cubio/idle0041.png" type="Texture" id=43]
[ext_resource path="res://cubio/idle0042.png" type="Texture" id=44]
[ext_resource path="res://cubio/idle0043.png" type="Texture" id=45]
[ext_resource path="res://cubio/idle0044.png" type="Texture" id=46]
[ext_resource path="res://cubio/idle0045.png" type="Texture" id=47]
[ext_resource path="res://cubio/idle0046.png" type="Texture" id=48]
[ext_resource path="res://cubio/idle0047.png" type="Texture" id=49]
[ext_resource path="res://cubio/idle0048.png" type="Texture" id=50]
[ext_resource path="res://cubio/idle0049.png" type="Texture" id=51]
[ext_resource path="res://cubio/idle0050.png" type="Texture" id=52]
[ext_resource path="res://cubio/idle0051.png" type="Texture" id=53]
[ext_resource path="res://cubio/idle0052.png" type="Texture" id=54]
[ext_resource path="res://cubio/idle0053.png" type="Texture" id=55]
[ext_resource path="res://cubio/idle0054.png" type="Texture" id=56]
[ext_resource path="res://cubio/idle0055.png" type="Texture" id=57]
[ext_resource path="res://cubio/idle0056.png" type="Texture" id=58]
[ext_resource path="res://cubio/idle0057.png" type="Texture" id=59]
[ext_resource path="res://cubio/idle0058.png" type="Texture" id=60]
[ext_resource path="res://cubio/idle0059.png" type="Texture" id=61]
[ext_resource path="res://cubio/idle0060.png" type="Texture" id=62]
[ext_resource path="res://cubio/norm-b-0001.png" type="Texture" id=63]
[ext_resource path="res://cubio/norm-b-0002.png" type="Texture" id=64]
[ext_resource path="res://cubio/norm-b-0003.png" type="Texture" id=65]
[ext_resource path="res://cubio/norm-b-0004.png" type="Texture" id=66]
[ext_resource path="res://cubio/norm-b-0005.png" type="Texture" id=67]
[ext_resource path="res://cubio/norm-b-0006.png" type="Texture" id=68]
[ext_resource path="res://cubio/norm-b-0007.png" type="Texture" id=69]
[ext_resource path="res://cubio/norm-b-0008.png" type="Texture" id=70]
[ext_resource path="res://cubio/norm-b-0009.png" type="Texture" id=71]
[ext_resource path="res://cubio/norm-b-0010.png" type="Texture" id=72]
[ext_resource path="res://cubio/norm-b-0011.png" type="Texture" id=73]
[ext_resource path="res://cubio/norm-b-0012.png" type="Texture" id=74]
[ext_resource path="res://cubio/norm-b-0013.png" type="Texture" id=75]
[ext_resource path="res://cubio/norm-b-0014.png" type="Texture" id=76]
[ext_resource path="res://cubio/norm-b-0015.png" type="Texture" id=77]
[ext_resource path="res://cubio/norm-b-0016.png" type="Texture" id=78]
[ext_resource path="res://cubio/norm-b-0017.png" type="Texture" id=79]
[ext_resource path="res://cubio/norm-b-0018.png" type="Texture" id=80]
[ext_resource path="res://cubio/norm-b-0019.png" type="Texture" id=81]
[ext_resource path="res://cubio/norm-b-0020.png" type="Texture" id=82]
[ext_resource path="res://cubio/norm-bl-0001.png" type="Texture" id=83]
[ext_resource path="res://cubio/norm-bl-0002.png" type="Texture" id=84]
[ext_resource path="res://cubio/norm-bl-0003.png" type="Texture" id=85]
[ext_resource path="res://cubio/norm-bl-0004.png" type="Texture" id=86]
[ext_resource path="res://cubio/norm-bl-0005.png" type="Texture" id=87]
[ext_resource path="res://cubio/norm-bl-0006.png" type="Texture" id=88]
[ext_resource path="res://cubio/norm-bl-0007.png" type="Texture" id=89]
[ext_resource path="res://cubio/norm-bl-0008.png" type="Texture" id=90]
[ext_resource path="res://cubio/norm-bl-0009.png" type="Texture" id=91]
[ext_resource path="res://cubio/norm-bl-0010.png" type="Texture" id=92]
[ext_resource path="res://cubio/norm-bl-0011.png" type="Texture" id=93]
[ext_resource path="res://cubio/norm-bl-0012.png" type="Texture" id=94]
[ext_resource path="res://cubio/norm-bl-0013.png" type="Texture" id=95]
[ext_resource path="res://cubio/norm-bl-0014.png" type="Texture" id=96]
[ext_resource path="res://cubio/norm-bl-0015.png" type="Texture" id=97]
[ext_resource path="res://cubio/norm-bl-0016.png" type="Texture" id=98]
[ext_resource path="res://cubio/norm-bl-0017.png" type="Texture" id=99]
[ext_resource path="res://cubio/norm-bl-0018.png" type="Texture" id=100]
[ext_resource path="res://cubio/norm-bl-0019.png" type="Texture" id=101]
[ext_resource path="res://cubio/norm-bl-0020.png" type="Texture" id=102]
[ext_resource path="res://cubio/norm-l-0001.png" type="Texture" id=103]
[ext_resource path="res://cubio/norm-l-0002.png" type="Texture" id=104]
[ext_resource path="res://cubio/norm-l-0003.png" type="Texture" id=105]
[ext_resource path="res://cubio/norm-l-0004.png" type="Texture" id=106]
[ext_resource path="res://cubio/norm-l-0005.png" type="Texture" id=107]
[ext_resource path="res://cubio/norm-l-0006.png" type="Texture" id=108]
[ext_resource path="res://cubio/norm-l-0007.png" type="Texture" id=109]
[ext_resource path="res://cubio/norm-l-0008.png" type="Texture" id=110]
[ext_resource path="res://cubio/norm-l-0009.png" type="Texture" id=111]
[ext_resource path="res://cubio/norm-l-0010.png" type="Texture" id=112]
[ext_resource path="res://cubio/norm-l-0011.png" type="Texture" id=113]
[ext_resource path="res://cubio/norm-l-0012.png" type="Texture" id=114]
[ext_resource path="res://cubio/norm-l-0013.png" type="Texture" id=115]
[ext_resource path="res://cubio/norm-l-0014.png" type="Texture" id=116]
[ext_resource path="res://cubio/norm-l-0015.png" type="Texture" id=117]
[ext_resource path="res://cubio/norm-l-0016.png" type="Texture" id=118]
[ext_resource path="res://cubio/norm-l-0017.png" type="Texture" id=119]
[ext_resource path="res://cubio/norm-l-0018.png" type="Texture" id=120]
[ext_resource path="res://cubio/norm-l-0019.png" type="Texture" id=121]
[ext_resource path="res://cubio/norm-l-0020.png" type="Texture" id=122]
[ext_resource path="res://cubio/norm-u-0001.png" type="Texture" id=123]
[ext_resource path="res://cubio/norm-u-0002.png" type="Texture" id=124]
[ext_resource path="res://cubio/norm-u-0003.png" type="Texture" id=125]
[ext_resource path="res://cubio/norm-u-0004.png" type="Texture" id=126]
[ext_resource path="res://cubio/norm-u-0005.png" type="Texture" id=127]
[ext_resource path="res://cubio/norm-u-0006.png" type="Texture" id=128]
[ext_resource path="res://cubio/norm-u-0007.png" type="Texture" id=129]
[ext_resource path="res://cubio/norm-u-0008.png" type="Texture" id=130]
[ext_resource path="res://cubio/norm-u-0009.png" type="Texture" id=131]
[ext_resource path="res://cubio/norm-u-0010.png" type="Texture" id=132]
[ext_resource path="res://cubio/norm-u-0011.png" type="Texture" id=133]
[ext_resource path="res://cubio/norm-u-0012.png" type="Texture" id=134]
[ext_resource path="res://cubio/norm-u-0013.png" type="Texture" id=135]
[ext_resource path="res://cubio/norm-u-0014.png" type="Texture" id=136]
[ext_resource path="res://cubio/norm-u-0015.png" type="Texture" id=137]
[ext_resource path="res://cubio/norm-u-0016.png" type="Texture" id=138]
[ext_resource path="res://cubio/norm-u-0017.png" type="Texture" id=139]
[ext_resource path="res://cubio/norm-u-0018.png" type="Texture" id=140]
[ext_resource path="res://cubio/norm-u-0019.png" type="Texture" id=141]
[ext_resource path="res://cubio/norm-u-0020.png" type="Texture" id=142]
[ext_resource path="res://cubio/norm-ul-0001.png" type="Texture" id=143]
[ext_resource path="res://cubio/norm-ul-0002.png" type="Texture" id=144]
[ext_resource path="res://cubio/norm-ul-0003.png" type="Texture" id=145]
[ext_resource path="res://cubio/norm-ul-0004.png" type="Texture" id=146]
[ext_resource path="res://cubio/norm-ul-0005.png" type="Texture" id=147]
[ext_resource path="res://cubio/norm-ul-0006.png" type="Texture" id=148]
[ext_resource path="res://cubio/norm-ul-0007.png" type="Texture" id=149]
[ext_resource path="res://cubio/norm-ul-0008.png" type="Texture" id=150]
[ext_resource path="res://cubio/norm-ul-0009.png" type="Texture" id=151]
[ext_resource path="res://cubio/norm-ul-0010.png" type="Texture" id=152]
[ext_resource path="res://cubio/norm-ul-0011.png" type="Texture" id=153]
[ext_resource path="res://cubio/norm-ul-0012.png" type="Texture" id=154]
[ext_resource path="res://cubio/norm-ul-0013.png" type="Texture" id=155]
[ext_resource path="res://cubio/norm-ul-0014.png" type="Texture" id=156]
[ext_resource path="res://cubio/norm-ul-0015.png" type="Texture" id=157]
[ext_resource path="res://cubio/norm-ul-0016.png" type="Texture" id=158]
[ext_resource path="res://cubio/norm-ul-0017.png" type="Texture" id=159]
[ext_resource path="res://cubio/norm-ul-0018.png" type="Texture" id=160]
[ext_resource path="res://cubio/norm-ul-0019.png" type="Texture" id=161]
[ext_resource path="res://cubio/norm-ul-0020.png" type="Texture" id=162]
[ext_resource path="res://light2.png" type="Texture" id=163]
[ext_resource path="res://shadow_blob.png" type="Texture" id=164]
[sub_resource type="CircleShape2D" id=1]
custom_solver_bias = 0.0
radius = 20.0
[sub_resource type="SpriteFrames" id=2]
frames = [ ExtResource( 3 ), ExtResource( 4 ), ExtResource( 5 ), ExtResource( 6 ), ExtResource( 7 ), ExtResource( 8 ), ExtResource( 9 ), ExtResource( 10 ), ExtResource( 11 ), ExtResource( 12 ), ExtResource( 13 ), ExtResource( 14 ), ExtResource( 15 ), ExtResource( 16 ), ExtResource( 17 ), ExtResource( 18 ), ExtResource( 19 ), ExtResource( 20 ), ExtResource( 21 ), ExtResource( 22 ), ExtResource( 23 ), ExtResource( 24 ), ExtResource( 25 ), ExtResource( 26 ), ExtResource( 27 ), ExtResource( 28 ), ExtResource( 29 ), ExtResource( 30 ), ExtResource( 31 ), ExtResource( 32 ), ExtResource( 33 ), ExtResource( 34 ), ExtResource( 35 ), ExtResource( 36 ), ExtResource( 37 ), ExtResource( 38 ), ExtResource( 39 ), ExtResource( 40 ), ExtResource( 41 ), ExtResource( 42 ), ExtResource( 43 ), ExtResource( 44 ), ExtResource( 45 ), ExtResource( 46 ), ExtResource( 47 ), ExtResource( 48 ), ExtResource( 49 ), ExtResource( 50 ), ExtResource( 51 ), ExtResource( 52 ), ExtResource( 53 ), ExtResource( 54 ), ExtResource( 55 ), ExtResource( 56 ), ExtResource( 57 ), ExtResource( 58 ), ExtResource( 59 ), ExtResource( 60 ), ExtResource( 61 ), ExtResource( 62 ), ExtResource( 63 ), ExtResource( 64 ), ExtResource( 65 ), ExtResource( 66 ), ExtResource( 67 ), ExtResource( 68 ), ExtResource( 69 ), ExtResource( 70 ), ExtResource( 71 ), ExtResource( 72 ), ExtResource( 73 ), ExtResource( 74 ), ExtResource( 75 ), ExtResource( 76 ), ExtResource( 77 ), ExtResource( 78 ), ExtResource( 79 ), ExtResource( 80 ), ExtResource( 81 ), ExtResource( 82 ), ExtResource( 83 ), ExtResource( 84 ), ExtResource( 85 ), ExtResource( 86 ), ExtResource( 87 ), ExtResource( 88 ), ExtResource( 89 ), ExtResource( 90 ), ExtResource( 91 ), ExtResource( 92 ), ExtResource( 93 ), ExtResource( 94 ), ExtResource( 95 ), ExtResource( 96 ), ExtResource( 97 ), ExtResource( 98 ), ExtResource( 99 ), ExtResource( 100 ), ExtResource( 101 ), ExtResource( 102 ), ExtResource( 103 ), ExtResource( 104 ), ExtResource( 105 ), ExtResource( 106 ), ExtResource( 107 ), ExtResource( 108 ), ExtResource( 109 ), ExtResource( 110 ), ExtResource( 111 ), ExtResource( 112 ), ExtResource( 113 ), ExtResource( 114 ), ExtResource( 115 ), ExtResource( 116 ), ExtResource( 117 ), ExtResource( 118 ), ExtResource( 119 ), ExtResource( 120 ), ExtResource( 121 ), ExtResource( 122 ), ExtResource( 123 ), ExtResource( 124 ), ExtResource( 125 ), ExtResource( 126 ), ExtResource( 127 ), ExtResource( 128 ), ExtResource( 129 ), ExtResource( 130 ), ExtResource( 131 ), ExtResource( 132 ), ExtResource( 133 ), ExtResource( 134 ), ExtResource( 135 ), ExtResource( 136 ), ExtResource( 137 ), ExtResource( 138 ), ExtResource( 139 ), ExtResource( 140 ), ExtResource( 141 ), ExtResource( 142 ), ExtResource( 143 ), ExtResource( 144 ), ExtResource( 145 ), ExtResource( 146 ), ExtResource( 147 ), ExtResource( 148 ), ExtResource( 149 ), ExtResource( 150 ), ExtResource( 151 ), ExtResource( 152 ), ExtResource( 153 ), ExtResource( 154 ), ExtResource( 155 ), ExtResource( 156 ), ExtResource( 157 ), ExtResource( 158 ), ExtResource( 159 ), ExtResource( 160 ), ExtResource( 161 ), ExtResource( 162 ) ]
[sub_resource type="Animation" id=3]
resource/name = "bottom"
length = 0.95
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("frames:frame")
tracks/0/interp = 1
tracks/0/keys = { "cont":false, "times":FloatArray( 0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95 ), "transitions":FloatArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), "values":[ 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79 ] }
[sub_resource type="Animation" id=4]
length = 0.95
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("frames:frame")
tracks/0/interp = 1
tracks/0/keys = { "cont":false, "times":FloatArray( 0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95 ), "transitions":FloatArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), "values":[ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99 ] }
[sub_resource type="Animation" id=5]
length = 3.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("frames:frame")
tracks/0/interp = 1
tracks/0/keys = { "cont":false, "times":FloatArray( 0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 1, 1.05, 1.1, 1.15, 1.2, 1.25, 1.3, 1.35, 1.4, 1.45, 1.5, 1.55, 1.6, 1.65, 1.7, 1.75, 1.8, 1.85, 1.9, 1.95, 2, 2.05, 2.1, 2.15, 2.2, 2.25, 2.3, 2.35, 2.4, 2.45, 2.5, 2.55, 2.6, 2.65, 2.7, 2.75, 2.8, 2.85, 2.9, 2.95, 3 ), "transitions":FloatArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), "values":[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 55, 56, 57, 58, 59 ] }
[sub_resource type="Animation" id=6]
length = 0.95
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("frames:frame")
tracks/0/interp = 1
tracks/0/keys = { "cont":false, "times":FloatArray( 0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95 ), "transitions":FloatArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), "values":[ 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119 ] }
[sub_resource type="Animation" id=7]
length = 0.95
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("frames:frame")
tracks/0/interp = 1
tracks/0/keys = { "cont":false, "times":FloatArray( 0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95 ), "transitions":FloatArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), "values":[ 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139 ] }
[sub_resource type="Animation" id=8]
length = 0.95
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("frames:frame")
tracks/0/interp = 1
tracks/0/keys = { "cont":false, "times":FloatArray( 0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95 ), "transitions":FloatArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), "values":[ 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159 ] }
[node name="cubio" type="KinematicBody2D"]
visibility/light_mask = 2
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, -0.397217, -9.30363 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
collision/margin = 0.08
script/script = ExtResource( 1 )
[node name="frames" type="AnimatedSprite" parent="."]
material/material = ExtResource( 2 )
frames = SubResource( 2 )
frame = 140
offset = Vector2( 0.397217, -52.4323 )
[node name="shape" type="CollisionShape2D" parent="."]
transform/pos = Vector2( -0.397217, -9.30363 )
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1
[node name="camera" type="Camera2D" parent="."]
anchor_mode = 1
rotating = false
current = true
zoom = Vector2( 1, 1 )
limit/left = -10000000
limit/top = -10000000
limit/right = 10000000
limit/bottom = 10000000
drag_margin/h_enabled = true
drag_margin/v_enabled = true
smoothing/enable = false
smoothing/speed = 5.0
drag_margin/left = 0.2
drag_margin/top = 0.2
drag_margin/right = 0.2
drag_margin/bottom = 0.2
[node name="anim" type="AnimationPlayer" parent="."]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/bottom = SubResource( 3 )
anims/bottom_left = SubResource( 4 )
anims/idle = SubResource( 5 )
anims/left = SubResource( 6 )
anims/top = SubResource( 7 )
anims/top_left = SubResource( 8 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "idle"
[node name="Light2D" type="Light2D" parent="."]
transform/pos = Vector2( -0.140442, 2.64355 )
enabled = true
texture = ExtResource( 163 )
offset = Vector2( 0, 0 )
scale = 8.0
color = Color( 1, 1, 1, 1 )
energy = 1.0
mode = 0
range/height = 100.0
range/z_min = -1024
range/z_max = 1024
range/layer_min = 0
range/layer_max = 0
range/item_mask = 3
shadow/enabled = true
shadow/color = Color( 0, 0, 0, 0 )
shadow/buffer_size = 2048
shadow/esm_multiplier = 80.0
shadow/item_mask = 1
[node name="Sprite" type="Sprite" parent="."]
visibility/opacity = 0.3
texture = ExtResource( 164 )
offset = Vector2( 0, -5.72164 )

View File

@ -1,7 +1,7 @@
[application] [application]
name="Isometric 2D + Lighting" name="Isometric 2D + Lighting"
main_scene="res://map.scn" main_scene="res://map.tscn"
icon="res://icon.png" icon="res://icon.png"
[input] [input]

View File

@ -0,0 +1,14 @@
[gd_resource type="CanvasItemMaterial" load_steps=3 format=1]
[ext_resource path="res://faceNormal.png" type="Texture" id=1]
[sub_resource type="CanvasItemShader" id=1]
_code = { "fragment":"// just pass the normal\n\nuniform texture normal;\nvec2 ywnormal=tex( normal,UV).wy * vec2(2.0,2.0) - vec2(1.0,1.0);\nNORMAL=vec3(ywnormal,sqrt(1 - (ywnormal.x * ywnormal.x) - (ywnormal.y * ywnormal.y) ));\n\n", "fragment_ofs":0, "light":"//the tile half size in pixels\nvec2 tile_vec=vec2(140,70);\nfloat z_scale = 1.0;\n//compute a 3D postion fot thelight\nvec3 light_3d = vec3(-LIGHT_VEC.x,LIGHT_HEIGHT,LIGHT_VEC.y);\n\n//rotate the normal map to the same coordinates as the pseudo 3d ponit\n//this could be optimized\nfloat r = asin(tile_vec.y/tile_vec.x);\nmat3 rot_mat = mat3( vec3(1,0,0), vec3(0,cos(r),-sin(r)), vec3(0,sin(r),cos(r)));\nvec3 n = rot_mat * NORMAL;\nn.y=-n.y;\n\n//compute diffuse light\nfloat dp = max(dot(normalize(n),-normalize(light_3d)),0);\nLIGHT=vec4(vec3(dp),1.0)*COLOR*LIGHT_COLOR;\n", "light_ofs":0, "vertex":"//pass the x1 in local sprite coordinates.\n//the sprite center (small red cross) is 0,0\nVAR1.xy=SRC_VERTEX;", "vertex_ofs":0 }
[resource]
shader/shader = SubResource( 1 )
shader/shading_mode = 0
shader_param/normal = ExtResource( 1 )

Binary file not shown.

View File

@ -0,0 +1,261 @@
[gd_scene load_steps=10 format=1]
[ext_resource path="res://map.gd" type="Script" id=1]
[ext_resource path="res://tileset.tres" type="TileSet" id=2]
[ext_resource path="res://cubio.tscn" type="PackedScene" id=3]
[ext_resource path="res://torch.tscn" type="PackedScene" id=4]
[ext_resource path="res://column.tscn" type="PackedScene" id=5]
[ext_resource path="res://cubio/idle0001.png" type="Texture" id=6]
[ext_resource path="res://light2.png" type="Texture" id=7]
[sub_resource type="CircleShape2D" id=1]
custom_solver_bias = 0.0
radius = 100.0
[sub_resource type="CanvasItemMaterial" id=2]
shader/shading_mode = 1
[node name="node" type="Node2D"]
transform/pos = Vector2( -0.735077, -20.5826 )
script/script = ExtResource( 1 )
[node name="floor_map" type="TileMap" parent="."]
mode = 1
tile_set = ExtResource( 2 )
cell/size = Vector2( 192, 88 )
cell/quadrant_size = 16
cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
cell/half_offset = 2
cell/tile_origin = 1
cell/y_sort = true
collision/use_kinematic = false
collision/friction = 1.0
collision/bounce = 0.0
collision/layers = 1
collision/mask = 1
occluder/light_mask = 1
tile_data = IntArray( -1900531, 0, -1900530, 1, -1900529, 0, -1900528, 0, -1900527, 0, -1834995, 0, -1834994, 0, -1834993, 0, -1834992, 1, -1834991, 0, -1769459, 0, -1769458, 0, -1769457, 0, -1769456, 1, -1769455, 0, -1703923, 0, -1703922, 0, -1703921, 0, -1703920, 0, -1703919, 1, -1638387, 0, -1638386, 0, -1638385, 0, -1638384, 0, -1638383, 0, -1572855, 0, -1572854, 0, -1572853, 0, -1572852, 0, -1572851, 0, -1572850, 0, -1572849, 1, -1572848, 0, -1572847, 0, -1507319, 0, -1507318, 0, -1507317, 0, -1507316, 0, -1507315, 1, -1507314, 1, -1507313, 1, -1507312, 0, -1507311, 0, -1441783, 0, -1441782, 0, -1441781, 0, -1441780, 0, -1441779, 0, -1441778, 0, -1441777, 0, -1441776, 0, -1441775, 0, -1376247, 0, -1376246, 0, -1376245, 0, -1376244, 0, -1310711, 1, -1310710, 0, -1310709, 0, -1310708, 0, -1245175, 0, -1245174, 0, -1245173, 0, -1245172, 0, -1179639, 0, -1179638, 0, -1179637, 1, -1179636, 0, -1114103, 0, -1114102, 0, -1114101, 0, -1114100, 0, -1048567, 0, -1048566, 0, -1048565, 0, -1048564, 0, -983031, 0, -983030, 0, -983029, 0, -983028, 0, -917495, 0, -917494, 1, -917493, 1, -917492, 0, -851959, 0, -851958, 0, -851957, 0, -851956, 0, -786423, 0, -786422, 0, -786421, 0, -786420, 0, -720894, 0, -720893, 0, -720892, 0, -720891, 0, -720890, 0, -720889, 0, -720888, 0, -720887, 0, -720886, 0, -720885, 0, -720884, 0, -720883, 0, -720882, 0, -720881, 0, -655358, 0, -655357, 0, -655356, 0, -655355, 0, -655354, 0, -655353, 0, -655352, 0, -655351, 0, -655350, 0, -655349, 0, -655348, 0, -655347, 0, -655346, 0, -655345, 0, -589822, 0, -589821, 0, -589820, 0, -589819, 0, -589818, 0, -589817, 0, -589816, 0, -589815, 0, -589814, 0, -589813, 0, -589812, 0, -589811, 0, -589810, 0, -589809, 0, -524286, 0, -524285, 0, -524284, 1, -524283, 0, -524282, 0, -524281, 0, -524280, 0, -524279, 1, -524278, 1, -524277, 1, -524276, 1, -524275, 0, -524274, 0, -524273, 0, -458750, 0, -458749, 0, -458748, 1, -458747, 0, -458746, 0, -458745, 0, -458744, 0, -458743, 0, -458742, 0, -458741, 0, -458740, 0, -458739, 0, -458738, 1, -458737, 0, -393214, 0, -393213, 0, -393212, 0, -393211, 0, -393210, 0, -393209, 0, -393208, 0, -393207, 0, -393206, 0, -393205, 0, -393204, 0, -393203, 0, -393202, 0, -393201, 0, -262149, 0, -262148, 0, -262147, 0, -262146, 0, -262145, 0, -327680, 0, -327679, 0, -327678, 0, -327677, 0, -327676, 0, -327675, 0, -196613, 0, -196612, 0, -196611, 0, -196610, 0, -196609, 0, -262144, 0, -262143, 0, -262142, 0, -262141, 0, -262140, 0, -262139, 0, -131077, 0, -131076, 0, -131075, 0, -131074, 0, -131073, 0, -196608, 0, -196607, 0, -196606, 0, -196605, 0, -196604, 0, -196603, 0, -65541, 0, -65540, 0, -65539, 0, -65538, 0, -65537, 0, -131072, 0, -131071, 0, -131070, 0, -131069, 1, -131068, 0, -131067, 0, -5, 0, -4, 0, -3, 0, -2, 0, -1, 0, -65536, 0, -65535, 0, -65534, 0, -65533, 0, -65532, 1, -65531, 0, 65531, 0, 65532, 1, 65533, 0, 65534, 0, 65535, 1, 0, 0, 1, 0, 2, 0, 3, 0, 4, 1, 5, 0, 131067, 0, 131068, 1, 131069, 0, 131070, 0, 131071, 0, 65536, 0, 65537, 0, 65538, 0, 65539, 0, 65540, 0, 65541, 0, 196603, 0, 196604, 0, 196605, 0, 196606, 1, 196607, 0, 131072, 0, 131073, 0, 131074, 0, 131075, 0, 131076, 1, 131077, 0, 262139, 0, 262140, 0, 262141, 0, 262142, 0, 262143, 0, 196608, 0, 196609, 0, 196610, 0, 196611, 0, 196612, 0, 196613, 0, 327676, 0, 327677, 0, 327678, 0, 327679, 0, 262144, 0, 262145, 0, 262146, 0, 262147, 0, 262148, 0, 262149, 0 )
[node name="wall_map" type="TileMap" parent="."]
mode = 1
tile_set = ExtResource( 2 )
cell/size = Vector2( 94, 43 )
cell/quadrant_size = 16
cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
cell/half_offset = 2
cell/tile_origin = 1
cell/y_sort = true
collision/use_kinematic = false
collision/friction = 1.0
collision/bounce = 0.0
collision/layers = 1
collision/mask = 1
occluder/light_mask = 1
tile_data = IntArray( -3801060, 5, -3801059, 10, -3801058, 10, -3801057, 10, -3801056, 10, -3801055, 10, -3801054, 10, -3801053, 10, -3801052, 536870916, -3735524, 9, -3735516, 7, -3669988, 9, -3669980, 7, -3604452, 9, -3604444, 7, -3538916, 9, -3538908, 7, -3473380, 9, -3473372, 7, -3407844, 9, -3407836, 7, -3342308, 9, -3342300, 7, -3276772, 9, -3276764, 7, -3211236, 9, -3211228, 7, -3145709, 5, -3145708, 10, -3145707, 10, -3145706, 10, -3145705, 10, -3145704, 10, -3145703, 10, -3145702, 10, -3145701, 10, -3145692, 7, -3080173, 9, -3080156, 7, -3014637, 9, -3014634, 2, -3014620, 7, -2949101, 2, -2949084, 7, -2883565, 9, -2883558, 8, -2883557, 8, -2883556, 8, -2883555, 8, -2883554, 8, -2883553, 8, -2883552, 8, -2883551, 8, -2883550, 8, -2883549, 8, -2883548, 6, -2818029, 9, -2818023, 7, -2752493, 9, -2752487, 7, -2686957, 9, -2686955, 2, -2686951, 7, -2621421, 9, -2621415, 7, -2555885, 9, -2555879, 2, -2490349, 2, -2490343, 7, -2424813, 9, -2424807, 7, -2359277, 9, -2359274, 2, -2359271, 7, -2293741, 9, -2293735, 7, -2228205, 4, -2228199, 7, -2162669, 9, -2162668, 10, -2162667, 536870916, -2162663, 7, -2097133, 8, -2097132, 8, -2097131, 6, -2097127, 7, -2031597, 9, -2031591, 7, -1966061, 9, -1966055, 7, -1900525, 9, -1900519, 7, -1834989, 9, -1834986, 8, -1834985, 8, -1834984, 8, -1834983, 7, -1769453, 9, -1769450, 7, -1769447, 7, -1703917, 9, -1703916, 8, -1703915, 8, -1703914, 8, -1703911, 7, -1638381, 9, -1638375, 7, -1572845, 9, -1572839, 7, -1507309, 9, -1507303, 7, -1441787, 5, -1441786, 10, -1441785, 10, -1441784, 10, -1441783, 10, -1441782, 10, -1441781, 10, -1441780, 10, -1441779, 10, -1441778, 10, -1441777, 10, -1441776, 10, -1441775, 10, -1441774, 10, -1441766, 10, -1441765, 10, -1441764, 10, -1441763, 10, -1441762, 10, -1441761, 536870916, -1376251, 9, -1376225, 7, -1310715, 9, -1310689, 7, -1245179, 9, -1245153, 7, -1179643, 9, -1179617, 7, -1114107, 9, -1114081, 7, -1048571, 9, -1048545, 7, -983035, 9, -983009, 7, -917499, 9, -917473, 7, -851963, 9, -851937, 7, -786427, 9, -786401, 7, -720891, 9, -720884, 8, -720883, 8, -720882, 8, -720881, 8, -720880, 8, -720879, 8, -720878, 8, -720877, 8, -720876, 8, -720875, 8, -720874, 8, -720873, 8, -720872, 8, -720871, 8, -720870, 8, -720869, 8, -720868, 8, -720867, 8, -720866, 8, -720865, 6, -589834, 5, -589833, 10, -589832, 10, -589831, 10, -589830, 10, -589829, 10, -589828, 10, -589827, 10, -589826, 10, -589825, 10, -655360, 10, -655359, 10, -655358, 10, -655357, 10, -655356, 10, -655349, 7, -524298, 9, -589813, 7, -458762, 9, -524277, 7, -393226, 9, -458741, 7, -327690, 9, -393205, 7, -262154, 9, -262150, 5, -262149, 10, -262148, 10, -262147, 10, -262146, 10, -262145, 10, -327680, 10, -327679, 10, -327678, 10, -327677, 10, -327676, 3, -327669, 7, -196618, 9, -196614, 9, -262140, 7, -262133, 7, -131082, 9, -131078, 9, -196604, 7, -196597, 7, -65546, 9, -65542, 9, -131068, 7, -131061, 7, -10, 9, -6, 4, -5, 8, -4, 8, -3, 8, -2, 8, -65535, 8, -65534, 8, -65533, 8, -65532, 6, -65525, 7, 65526, 9, 11, 7, 131062, 9, 65547, 7, 196598, 9, 131083, 7, 262134, 9, 196619, 7, 327670, 9, 262155, 7, 393206, 9, 327691, 7, 458742, 9, 393227, 7, 524278, 4, 524279, 8, 458763, 7, 589816, 9, 524299, 7, 655352, 4, 655353, 8, 655354, 8, 655355, 8, 655356, 8, 655357, 8, 655358, 8, 655359, 8, 589824, 8, 589825, 8, 589826, 8, 589827, 8, 589828, 8, 589829, 8, 589830, 8, 589831, 8, 589832, 8, 589833, 8, 589834, 8, 589835, 6 )
__meta__ = { "_editor_collapsed":true }
[node name="cubio" parent="wall_map" instance=ExtResource( 3 )]
transform/pos = Vector2( -184.284, 6.7328 )
collision/margin = 0.08
[node name="toch" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( -42.0531, -74.8855 )
[node name="toch1" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 96.0294, -19.8329 )
[node name="toch2" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 954.802, -147.456 )
[node name="toch3" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 1247.08, 42.9454 )
[node name="toch4" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 1257.11, -167.498 )
[node name="toch5" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 1632.9, -73.9674 )
[node name="toch6" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 1566.09, 113.093 )
[node name="toch7" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 1935.2, 64.6577 )
[node name="toch8" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 2000.34, 258.399 )
[node name="toch9" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 3738.07, -328.247 )
[node name="toch10" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 4034.17, -585.483 )
[node name="toch11" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 4261.79, -472.595 )
[node name="toch12" parent="wall_map" instance=ExtResource( 4 )]
transform/pos = Vector2( 4006.41, -479.998 )
[node name="column" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( -122.203, 119.689 )
[node name="column1" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 95.2993, 99.8337 )
[node name="column2" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 138.619, 246.039 )
[node name="column3" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 324.534, 82.6862 )
[node name="column4" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 1046.53, -175.429 )
[node name="column5" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 1347.07, -179.039 )
[node name="column6" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 1184.62, -261.166 )
[node name="column7" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 1520.35, -139.329 )
[node name="column8" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 1409.34, 25.8286 )
[node name="column9" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 1804.63, -13.8814 )
[node name="column10" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 1782.97, 170.229 )
[node name="column11" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 2223.9, 158.537 )
[node name="column12" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 3744.95, -480.43 )
[node name="column13" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 3838.62, -526.042 )
[node name="column14" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 3937.17, -573.283 )
[node name="column15" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 4123.69, -474.728 )
[node name="column16" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 4027.58, -427.487 )
[node name="column17" parent="wall_map" instance=ExtResource( 5 )]
transform/pos = Vector2( 3935.54, -377.802 )
[node name="prince_area" type="Area2D" parent="wall_map"]
transform/pos = Vector2( 4133.07, -561.046 )
input/pickable = true
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, -37.4897 )
shapes/0/trigger = false
gravity_vec = Vector2( 0, 1 )
gravity = 98.0
linear_damp = 0.1
angular_damp = 1.0
[node name="prince" type="Sprite" parent="wall_map/prince_area"]
material/material = SubResource( 2 )
texture = ExtResource( 6 )
offset = Vector2( -1.10803, -49.8615 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="wall_map/prince_area"]
transform/pos = Vector2( 0, -37.4897 )
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1
[node name="Light2D" type="Light2D" parent="."]
transform/pos = Vector2( -191.788, 32.4743 )
enabled = true
texture = ExtResource( 7 )
offset = Vector2( 0, 0 )
scale = 8.0
color = Color( 1, 1, 1, 1 )
energy = 1.0
mode = 0
range/height = 60.0
range/z_min = -1024
range/z_max = 1024
range/layer_min = 0
range/layer_max = 0
range/item_mask = 1
shadow/enabled = true
shadow/color = Color( 0, 0, 0, 0 )
shadow/buffer_size = 2048
shadow/esm_multiplier = 80.0
shadow/item_mask = 1
[node name="CanvasModulate" type="CanvasModulate" parent="."]
color = Color( 0.361304, 0.36638, 0.384393, 1 )
[node name="message" type="Label" parent="."]
visibility/visible = false
material/material = SubResource( 2 )
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = 4067.0
margin/top = -597.0
margin/right = 4200.0
margin/bottom = -571.0
text = "Thank You Cubio!\nYou saved The Prince!"
align = 1
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1
[connection signal="body_enter" from="wall_map/prince_area" to="." method="_on_prince_area_body_enter"]

Binary file not shown.

View File

@ -0,0 +1,172 @@
[gd_scene load_steps=10 format=1]
[ext_resource path="res://shoot.gd" type="Script" id=1]
[ext_resource path="res://energy.png" type="Texture" id=2]
[ext_resource path="res://shoot_halo.png" type="Texture" id=3]
[sub_resource type="CircleShape2D" id=1]
custom_solver_bias = 0.0
radius = 10.0
[sub_resource type="CanvasItemMaterial" id=2]
shader/shading_mode = 0
[sub_resource type="Animation" id=3]
length = 1.0
loop = false
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("explosion:config/emitting")
tracks/0/interp = 1
tracks/0/keys = { "cont":false, "times":FloatArray( 0, 0.3 ), "transitions":FloatArray( 1, 1 ), "values":[ true, false ] }
tracks/1/type = "value"
tracks/1/path = NodePath("Sprite:visibility/opacity")
tracks/1/interp = 1
tracks/1/keys = { "cont":true, "times":FloatArray( 0, 0.2 ), "transitions":FloatArray( 1, 1 ), "values":[ 1.0, 0.0 ] }
tracks/2/type = "value"
tracks/2/path = NodePath("energy1:config/emitting")
tracks/2/interp = 1
tracks/2/keys = { "cont":false, "times":FloatArray( 0 ), "transitions":FloatArray( 1 ), "values":[ false ] }
tracks/3/type = "value"
tracks/3/path = NodePath("light:color")
tracks/3/interp = 1
tracks/3/keys = { "cont":true, "times":FloatArray( 0, 0.5 ), "transitions":FloatArray( 1, 1 ), "values":[ Color( 1, 3, 2, 1 ), Color( 0, 0, 0, 0 ) ] }
tracks/4/type = "method"
tracks/4/path = NodePath(".")
tracks/4/interp = 1
tracks/4/keys = { "times":FloatArray( 0.9 ), "transitions":FloatArray( 1 ), "values":[ { "args":[ ], "method":"queue_free" } ] }
[sub_resource type="Animation" id=4]
length = 1.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("Sprite:transform/rot")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 1 ), "transitions":FloatArray( 1, 1 ), "values":[ 0.0, 360.0 ] }
[sub_resource type="ColorRamp" id=5]
offsets = FloatArray( 0, 1 )
colors = ColorArray( 1, 1, 1, 1, 1, 0.617074, 0.704795, 0.0653235 )
[sub_resource type="ColorRamp" id=6]
offsets = FloatArray( 0, 1 )
colors = ColorArray( 1, 1, 1, 1, 1, 0.617074, 0.704795, 0.0653235 )
[node name="shoot" type="KinematicBody2D"]
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
collision/margin = 0.08
script/script = ExtResource( 1 )
[node name="Sprite" type="Sprite" parent="."]
material/material = SubResource( 2 )
transform/pos = Vector2( -1.46303, -58.521 )
texture = ExtResource( 2 )
[node name="anim" type="AnimationPlayer" parent="."]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/explode = SubResource( 3 )
anims/spin = SubResource( 4 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = ""
[node name="light" type="Light2D" parent="."]
enabled = true
texture = ExtResource( 3 )
offset = Vector2( 0, 0 )
scale = 1.0
color = Color( 1, 3, 2, 1 )
energy = 1.0
mode = 0
range/height = 80.0
range/z_min = -1024
range/z_max = 1024
range/layer_min = 0
range/layer_max = 0
range/item_mask = 1
shadow/enabled = true
shadow/color = Color( 0, 0, 0, 0 )
shadow/buffer_size = 2048
shadow/esm_multiplier = 80.0
shadow/item_mask = 1
[node name="shape" type="CollisionShape2D" parent="."]
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1
[node name="energy1" type="Particles2D" parent="."]
visibility/blend_mode = 1
transform/pos = Vector2( -1.06581, -61.3015 )
config/amount = 32
config/lifetime = 0.6
config/local_space = false
config/texture = ExtResource( 2 )
params/direction = 0.0
params/spread = 180.0
params/linear_velocity = 60.0
params/spin_velocity = 0.0
params/orbit_velocity = 0.0
params/gravity_direction = 0.0
params/gravity_strength = 9.8
params/radial_accel = 0.0
params/tangential_accel = 0.0
params/damping = 0.0
params/initial_angle = 0.0
params/initial_size = 0.8
params/final_size = 0.1
params/hue_variation = 0.0
params/anim_speed_scale = 1.0
params/anim_initial_pos = 0.0
color/color_ramp = SubResource( 5 )
[node name="explosion" type="Particles2D" parent="."]
visibility/blend_mode = 1
transform/pos = Vector2( -1.06581, -61.3015 )
config/amount = 32
config/lifetime = 0.6
config/emitting = false
config/local_space = false
config/explosiveness = 0.1
config/texture = ExtResource( 2 )
params/direction = 0.0
params/spread = 180.0
params/linear_velocity = 200.0
params/spin_velocity = 0.0
params/orbit_velocity = 0.0
params/gravity_direction = 0.0
params/gravity_strength = 200.0
params/radial_accel = 0.0
params/tangential_accel = 0.0
params/damping = 0.0
params/initial_angle = 0.0
params/initial_size = 0.8
params/final_size = 0.1
params/hue_variation = 0.0
params/anim_speed_scale = 1.0
params/anim_initial_pos = 0.0
color/color_ramp = SubResource( 6 )

Binary file not shown.

View File

@ -0,0 +1,216 @@
[gd_resource type="TileSet" load_steps=22 format=1]
[ext_resource path="res://floor_shader.tres" type="CanvasItemMaterial" id=1]
[ext_resource path="res://faceColor.png" type="Texture" id=2]
[ext_resource path="res://wall_shader.tres" type="CanvasItemMaterial" id=3]
[sub_resource type="OccluderPolygon2D" id=1]
closed = false
cull_mode = 0
polygon = Vector2Array( 0, -22, 48, 0 )
[sub_resource type="ConvexPolygonShape2D" id=2]
custom_solver_bias = 0.0
points = Vector2Array( 48, 0, 0, -22, 0, -44, 48, -22 )
[sub_resource type="OccluderPolygon2D" id=3]
closed = false
cull_mode = 0
polygon = Vector2Array( -48, 0, 0, 22, 48, 0 )
[sub_resource type="ConvexPolygonShape2D" id=4]
custom_solver_bias = 0.0
points = Vector2Array( -48, 0, 0, -22, 48, 0, 0, 22 )
[sub_resource type="OccluderPolygon2D" id=5]
closed = false
cull_mode = 0
polygon = Vector2Array( 0, -22, 48, 0, 0, 22 )
[sub_resource type="ConvexPolygonShape2D" id=6]
custom_solver_bias = 0.0
points = Vector2Array( 48, 0, 0, 22, 0, -22 )
[sub_resource type="OccluderPolygon2D" id=7]
closed = false
cull_mode = 0
polygon = Vector2Array( 0, -22, -48, 0, 0, 22 )
[sub_resource type="ConvexPolygonShape2D" id=8]
custom_solver_bias = 0.0
points = Vector2Array( -48, 0, 0, -22, 0, 22 )
[sub_resource type="OccluderPolygon2D" id=9]
closed = false
cull_mode = 0
polygon = Vector2Array( -48, 0, 0, -22, 48, 0 )
[sub_resource type="ConvexPolygonShape2D" id=10]
custom_solver_bias = 0.0
points = Vector2Array( 0, -22, 48, 0, -48, 0 )
[sub_resource type="OccluderPolygon2D" id=11]
closed = false
cull_mode = 0
polygon = Vector2Array( -48, 0, 0, 22, 48, 0 )
[sub_resource type="ConvexPolygonShape2D" id=12]
custom_solver_bias = 0.0
points = Vector2Array( 48, 0, 0, 22, -48, 0 )
[sub_resource type="OccluderPolygon2D" id=13]
closed = false
cull_mode = 0
polygon = Vector2Array( 0, 22, 48, 0 )
[sub_resource type="ConvexPolygonShape2D" id=14]
custom_solver_bias = 0.0
points = Vector2Array( 0, 22, 0, 0, 48, -22, 48, 0 )
[sub_resource type="OccluderPolygon2D" id=15]
closed = false
cull_mode = 0
polygon = Vector2Array( -48, 0, 0, 22 )
[sub_resource type="ConvexPolygonShape2D" id=16]
custom_solver_bias = 0.0
points = Vector2Array( -48, -22, 0, 0, 0, 22, -48, 0 )
[sub_resource type="OccluderPolygon2D" id=17]
closed = false
cull_mode = 0
polygon = Vector2Array( -48, 0, 0, -22 )
[sub_resource type="ConvexPolygonShape2D" id=18]
custom_solver_bias = 0.0
points = Vector2Array( 0, -44, 0, -22, -48, 0, -48, -22 )
[resource]
0/name = "floor1"
0/texture = ExtResource( 2 )
0/tex_offset = Vector2( 0, 28 )
0/material = ExtResource( 1 )
0/region = Rect2( 311, 760, 197, 151 )
0/occluder_offset = Vector2( 98.5, 75.5 )
0/navigation_offset = Vector2( 98.5, 75.5 )
0/shape_offset = Vector2( 0, 0 )
0/shapes = [ ]
1/name = "floor2"
1/texture = ExtResource( 2 )
1/tex_offset = Vector2( 0, 28 )
1/material = ExtResource( 1 )
1/region = Rect2( 591, 772, 197, 151 )
1/occluder_offset = Vector2( 98.5, 75.5 )
1/navigation_offset = Vector2( 98.5, 75.5 )
1/shape_offset = Vector2( 0, 0 )
1/shapes = [ ]
2/name = "block"
2/texture = ExtResource( 2 )
2/tex_offset = Vector2( 0, -60 )
2/material = ExtResource( 3 )
2/region = Rect2( 844, 527, 138, 180 )
2/occluder_offset = Vector2( 69, 90 )
2/occluder = SubResource( 3 )
2/navigation_offset = Vector2( 69, 90 )
2/shape_offset = Vector2( 69, 90 )
2/shapes = [ SubResource( 4 ) ]
3/name = "q_right"
3/texture = ExtResource( 2 )
3/tex_offset = Vector2( 0, -60 )
3/material = ExtResource( 3 )
3/region = Rect2( 665, 528, 139, 178 )
3/occluder_offset = Vector2( 69.5, 89 )
3/occluder = SubResource( 5 )
3/navigation_offset = Vector2( 69.5, 89 )
3/shape_offset = Vector2( 69.5, 89 )
3/shapes = [ SubResource( 6 ) ]
4/name = "q_left"
4/texture = ExtResource( 2 )
4/tex_offset = Vector2( 0, -60 )
4/material = ExtResource( 3 )
4/region = Rect2( 292, 528, 139, 178 )
4/occluder_offset = Vector2( 69.5, 89 )
4/occluder = SubResource( 7 )
4/navigation_offset = Vector2( 69.5, 89 )
4/shape_offset = Vector2( 69.5, 89 )
4/shapes = [ SubResource( 8 ) ]
5/name = "q_top"
5/texture = ExtResource( 2 )
5/tex_offset = Vector2( 0, -60 )
5/material = ExtResource( 3 )
5/region = Rect2( 479, 528, 139, 178 )
5/occluder_offset = Vector2( 69.5, 89 )
5/occluder = SubResource( 9 )
5/navigation_offset = Vector2( 69.5, 89 )
5/shape_offset = Vector2( 69.5, 89 )
5/shapes = [ SubResource( 10 ) ]
6/name = "q_bottom"
6/texture = ExtResource( 2 )
6/tex_offset = Vector2( 0, -60 )
6/material = ExtResource( 3 )
6/region = Rect2( 103, 528, 139, 178 )
6/occluder_offset = Vector2( 69.5, 89 )
6/occluder = SubResource( 11 )
6/navigation_offset = Vector2( 69.5, 89 )
6/shape_offset = Vector2( 69.5, 89 )
6/shapes = [ SubResource( 12 ) ]
7/name = "s_right_bottom"
7/texture = ExtResource( 2 )
7/tex_offset = Vector2( 0, -62 )
7/material = ExtResource( 3 )
7/region = Rect2( 480, 350, 139, 178 )
7/occluder_offset = Vector2( 69.5, 89 )
7/occluder = SubResource( 13 )
7/navigation_offset = Vector2( 69.5, 89 )
7/shape_offset = Vector2( 69.5, 89 )
7/shapes = [ SubResource( 14 ) ]
8/name = "s_left_bottom"
8/texture = ExtResource( 2 )
8/tex_offset = Vector2( 0, -62 )
8/material = ExtResource( 3 )
8/region = Rect2( 665, 350, 139, 178 )
8/occluder_offset = Vector2( 69.5, 89 )
8/occluder = SubResource( 15 )
8/navigation_offset = Vector2( 69.5, 89 )
8/shape_offset = Vector2( 69.5, 89 )
8/shapes = [ SubResource( 16 ) ]
9/name = "s_left_top"
9/texture = ExtResource( 2 )
9/tex_offset = Vector2( 0, -62 )
9/material = ExtResource( 3 )
9/region = Rect2( 292, 350, 139, 178 )
9/occluder_offset = Vector2( 69.5, 89 )
9/occluder = SubResource( 17 )
9/navigation_offset = Vector2( 69.5, 89 )
9/shape_offset = Vector2( 69.5, 89 )
9/shapes = [ SubResource( 18 ) ]
10/name = "s_right_top"
10/texture = ExtResource( 2 )
10/tex_offset = Vector2( -12, -62 )
10/material = ExtResource( 3 )
10/region = Rect2( 842, 350, 139, 178 )
10/occluder_offset = Vector2( 69.5, 89 )
10/occluder = SubResource( 1 )
10/navigation_offset = Vector2( 69.5, 89 )
10/shape_offset = Vector2( 69.5, 89 )
10/shapes = [ SubResource( 2 ) ]

View File

@ -0,0 +1,446 @@
[gd_scene load_steps=22 format=1]
[ext_resource path="res://floor_shader.tres" type="CanvasItemMaterial" id=1]
[ext_resource path="res://faceColor.png" type="Texture" id=2]
[ext_resource path="res://wall_shader.tres" type="CanvasItemMaterial" id=3]
[sub_resource type="ConvexPolygonShape2D" id=1]
custom_solver_bias = 0.0
points = Vector2Array( -48, 0, 0, -22, 48, 0, 0, 22 )
[sub_resource type="OccluderPolygon2D" id=2]
closed = false
cull_mode = 0
polygon = Vector2Array( -48, 0, 0, 22, 48, 0 )
[sub_resource type="ConvexPolygonShape2D" id=3]
custom_solver_bias = 0.0
points = Vector2Array( 48, 0, 0, 22, 0, -22 )
[sub_resource type="OccluderPolygon2D" id=4]
closed = false
cull_mode = 0
polygon = Vector2Array( 0, -22, 48, 0, 0, 22 )
[sub_resource type="ConvexPolygonShape2D" id=5]
custom_solver_bias = 0.0
points = Vector2Array( -48, 0, 0, -22, 0, 22 )
[sub_resource type="OccluderPolygon2D" id=6]
closed = false
cull_mode = 0
polygon = Vector2Array( 0, -22, -48, 0, 0, 22 )
[sub_resource type="ConvexPolygonShape2D" id=7]
custom_solver_bias = 0.0
points = Vector2Array( 0, -22, 48, 0, -48, 0 )
[sub_resource type="OccluderPolygon2D" id=8]
closed = false
cull_mode = 0
polygon = Vector2Array( -48, 0, 0, -22, 48, 0 )
[sub_resource type="ConvexPolygonShape2D" id=9]
custom_solver_bias = 0.0
points = Vector2Array( 48, 0, 0, 22, -48, 0 )
[sub_resource type="OccluderPolygon2D" id=10]
closed = false
cull_mode = 0
polygon = Vector2Array( -48, 0, 0, 22, 48, 0 )
[sub_resource type="ConvexPolygonShape2D" id=11]
custom_solver_bias = 0.0
points = Vector2Array( 0, 22, 0, 0, 48, -22, 48, 0 )
[sub_resource type="OccluderPolygon2D" id=12]
closed = false
cull_mode = 0
polygon = Vector2Array( 0, 22, 48, 0 )
[sub_resource type="ConvexPolygonShape2D" id=13]
custom_solver_bias = 0.0
points = Vector2Array( -48, -22, 0, 0, 0, 22, -48, 0 )
[sub_resource type="OccluderPolygon2D" id=14]
closed = false
cull_mode = 0
polygon = Vector2Array( -48, 0, 0, 22 )
[sub_resource type="ConvexPolygonShape2D" id=15]
custom_solver_bias = 0.0
points = Vector2Array( 0, -44, 0, -22, -48, 0, -48, -22 )
[sub_resource type="OccluderPolygon2D" id=16]
closed = false
cull_mode = 0
polygon = Vector2Array( -48, 0, 0, -22 )
[sub_resource type="ConvexPolygonShape2D" id=17]
custom_solver_bias = 0.0
points = Vector2Array( 48, 0, 0, -22, 0, -44, 48, -22 )
[sub_resource type="OccluderPolygon2D" id=18]
closed = false
cull_mode = 0
polygon = Vector2Array( 0, -22, 48, 0 )
[node name="base" type="Node2D"]
[node name="floor1" type="Sprite" parent="."]
material/material = ExtResource( 1 )
transform/pos = Vector2( 140.869, 111.332 )
texture = ExtResource( 2 )
offset = Vector2( 0, 28 )
region = true
region_rect = Rect2( 311, 760, 197, 151 )
[node name="floor2" type="Sprite" parent="."]
material/material = ExtResource( 1 )
transform/pos = Vector2( 372.62, 109.06 )
texture = ExtResource( 2 )
offset = Vector2( 0, 28 )
region = true
region_rect = Rect2( 591, 772, 197, 151 )
[node name="block" type="Sprite" parent="."]
material/material = ExtResource( 3 )
transform/pos = Vector2( 528, -132 )
texture = ExtResource( 2 )
offset = Vector2( 0, -60 )
region = true
region_rect = Rect2( 844, 527, 138, 180 )
[node name="collision" type="StaticBody2D" parent="block"]
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="block/collision"]
build_mode = 0
polygon = Vector2Array( 0, -22, 48, 0, 0, 22, -48, 0 )
shape_range = Vector2( -1, -1 )
trigger = false
[node name="LightOccluder2D" type="LightOccluder2D" parent="block"]
occluder = SubResource( 2 )
light_mask = 1
[node name="q_right" type="Sprite" parent="."]
material/material = ExtResource( 3 )
transform/pos = Vector2( 336, -154 )
texture = ExtResource( 2 )
offset = Vector2( 0, -60 )
region = true
region_rect = Rect2( 665, 528, 139, 178 )
[node name="collision1" type="StaticBody2D" parent="q_right"]
input/pickable = false
shapes/0/shape = SubResource( 3 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="q_right/collision1"]
build_mode = 0
polygon = Vector2Array( 0, -22, 48, 0, 0, 22 )
shape_range = Vector2( -1, -1 )
trigger = false
[node name="LightOccluder2D" type="LightOccluder2D" parent="q_right"]
occluder = SubResource( 4 )
light_mask = 1
[node name="q_left" type="Sprite" parent="."]
material/material = ExtResource( 3 )
transform/pos = Vector2( 96, -110 )
texture = ExtResource( 2 )
offset = Vector2( 0, -60 )
region = true
region_rect = Rect2( 292, 528, 139, 178 )
[node name="collision1" type="StaticBody2D" parent="q_left"]
input/pickable = false
shapes/0/shape = SubResource( 5 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="q_left/collision1"]
build_mode = 0
polygon = Vector2Array( 0, 22, -48, 0, 0, -22 )
shape_range = Vector2( -1, -1 )
trigger = false
[node name="LightOccluder2D" type="LightOccluder2D" parent="q_left"]
occluder = SubResource( 6 )
light_mask = 1
[node name="q_top" type="Sprite" parent="."]
material/material = ExtResource( 3 )
transform/pos = Vector2( 288, 0 )
texture = ExtResource( 2 )
offset = Vector2( 0, -60 )
region = true
region_rect = Rect2( 479, 528, 139, 178 )
[node name="collision2" type="StaticBody2D" parent="q_top"]
input/pickable = false
shapes/0/shape = SubResource( 7 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="q_top/collision2"]
build_mode = 0
polygon = Vector2Array( -48, 0, 0, -22, 48, 0 )
shape_range = Vector2( -1, -1 )
trigger = false
[node name="LightOccluder2D" type="LightOccluder2D" parent="q_top"]
occluder = SubResource( 8 )
light_mask = 1
[node name="q_bottom" type="Sprite" parent="."]
material/material = ExtResource( 3 )
transform/pos = Vector2( 192, -242 )
texture = ExtResource( 2 )
offset = Vector2( 0, -60 )
region = true
region_rect = Rect2( 103, 528, 139, 178 )
[node name="collision3" type="StaticBody2D" parent="q_bottom"]
input/pickable = false
shapes/0/shape = SubResource( 9 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="q_bottom/collision3"]
build_mode = 0
polygon = Vector2Array( -48, 0, 48, 0, 0, 22 )
shape_range = Vector2( -1, -1 )
trigger = false
[node name="LightOccluder2D1" type="LightOccluder2D" parent="q_bottom"]
occluder = SubResource( 10 )
light_mask = 1
[node name="s_right_bottom" type="Sprite" parent="."]
material/material = ExtResource( 3 )
transform/pos = Vector2( 288, -330 )
texture = ExtResource( 2 )
offset = Vector2( 0, -62 )
region = true
region_rect = Rect2( 480, 350, 139, 178 )
[node name="collision1" type="StaticBody2D" parent="s_right_bottom"]
input/pickable = false
shapes/0/shape = SubResource( 11 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="s_right_bottom/collision1"]
build_mode = 0
polygon = Vector2Array( 0, 22, 48, 0, 48, -22, 0, 0 )
shape_range = Vector2( -1, -1 )
trigger = false
[node name="LightOccluder2D" type="LightOccluder2D" parent="s_right_bottom"]
occluder = SubResource( 12 )
light_mask = 1
[node name="s_left_bottom" type="Sprite" parent="."]
material/material = ExtResource( 3 )
transform/pos = Vector2( 432, -330 )
texture = ExtResource( 2 )
offset = Vector2( 0, -62 )
region = true
region_rect = Rect2( 665, 350, 139, 178 )
[node name="collision1" type="StaticBody2D" parent="s_left_bottom"]
input/pickable = false
shapes/0/shape = SubResource( 13 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="s_left_bottom/collision1"]
build_mode = 0
polygon = Vector2Array( 0, 22, -48, 0, -48, -22, 0, 0 )
shape_range = Vector2( -1, -1 )
trigger = false
[node name="LightOccluder2D" type="LightOccluder2D" parent="s_left_bottom"]
occluder = SubResource( 14 )
light_mask = 1
[node name="s_left_top" type="Sprite" parent="."]
material/material = ExtResource( 3 )
transform/pos = Vector2( 528, -330 )
texture = ExtResource( 2 )
offset = Vector2( 0, -62 )
region = true
region_rect = Rect2( 292, 350, 139, 178 )
[node name="collision1" type="StaticBody2D" parent="s_left_top"]
input/pickable = false
shapes/0/shape = SubResource( 15 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="s_left_top/collision1"]
build_mode = 0
polygon = Vector2Array( 0, -22, -48, 0, -48, -22, 0, -44 )
shape_range = Vector2( -1, -1 )
trigger = false
[node name="LightOccluder2D" type="LightOccluder2D" parent="s_left_top"]
occluder = SubResource( 16 )
light_mask = 1
[node name="s_right_top" type="Sprite" parent="."]
material/material = ExtResource( 3 )
transform/pos = Vector2( 576, -330 )
texture = ExtResource( 2 )
offset = Vector2( -12, -62 )
region = true
region_rect = Rect2( 842, 350, 139, 178 )
[node name="collision1" type="StaticBody2D" parent="s_right_top"]
input/pickable = false
shapes/0/shape = SubResource( 17 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="s_right_top/collision1"]
build_mode = 0
polygon = Vector2Array( 0, -22, 0, -44, 48, -22, 48, 0 )
shape_range = Vector2( -1, -1 )
trigger = false
[node name="LightOccluder2D" type="LightOccluder2D" parent="s_right_top"]
occluder = SubResource( 18 )
light_mask = 1
[node name="instructions" type="Label" parent="."]
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = 0.0
margin/top = 0.0
margin/right = 40.0
margin/bottom = 13.0
text = "This scene is used to edit the tileset.\nSave to the tileset with Scene -> Convert to -> TileSet\nThen, overwrite \"tileset.tres\""
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1

Binary file not shown.

View File

@ -0,0 +1,138 @@
[gd_scene load_steps=9 format=1]
[ext_resource path="res://shadow_blob.png" type="Texture" id=1]
[ext_resource path="res://torch_shader.tres" type="CanvasItemMaterial" id=2]
[ext_resource path="res://faceColor.png" type="Texture" id=3]
[ext_resource path="res://torch_light.png" type="Texture" id=4]
[ext_resource path="res://fire.png" type="Texture" id=5]
[sub_resource type="Animation" id=1]
resource/name = "firecol"
length = 5.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("light:color")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 0.4, 0.6, 1, 1.6, 1.9, 2.3, 2.8, 3, 3.5, 3.9, 4.2, 4.5, 4.8 ), "transitions":FloatArray( 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ), "values":[ Color( 1, 0.664806, 0.432623, 1 ), Color( 0.648063, 0.341868, 0.308913, 1 ), Color( 0.796534, 0.145722, 0.198635, 1 ), Color( 0.648063, 0.341868, 0.308913, 1 ), Color( 1, 0.664806, 0.432623, 1 ), Color( 0.796534, 0.145722, 0.198635, 1 ), Color( 0.648063, 0.341868, 0.308913, 1 ), Color( 0.796534, 0.145722, 0.198635, 1 ), Color( 1, 0.664806, 0.432623, 1 ), Color( 0.796534, 0.145722, 0.198635, 1 ), Color( 1, 0.664806, 0.432623, 1 ), Color( 0.796534, 0.145722, 0.198635, 1 ), Color( 0.648063, 0.341868, 0.308913, 1 ), Color( 1, 0.664806, 0.432623, 1 ) ] }
[sub_resource type="ColorRamp" id=2]
offsets = FloatArray( 0, 0.2, 0.6, 1 )
colors = ColorArray( 1, 0.658047, 0, 0.175658, 0.741369, 0.262782, 0, 1, 0.210534, 0, 0, 0.608392, 0, 0, 0, 0 )
[sub_resource type="CircleShape2D" id=3]
custom_solver_bias = 0.0
radius = 10.0
[node name="Node2D" type="Node2D"]
[node name="Sprite" type="Sprite" parent="."]
transform/pos = Vector2( 0.880249, 3.08089 )
texture = ExtResource( 1 )
[node name="sprite" type="Sprite" parent="."]
material/material = ExtResource( 2 )
transform/pos = Vector2( 1.95071, 0.487679 )
texture = ExtResource( 3 )
offset = Vector2( 0.0395508, -22.1477 )
region = true
region_rect = Rect2( 817, 271, 42, 54 )
[node name="light" type="Light2D" parent="sprite"]
transform/pos = Vector2( -0.975342, 0.975357 )
enabled = true
texture = ExtResource( 4 )
offset = Vector2( 0, 0 )
scale = 8.0
color = Color( 1, 0.664806, 0.432623, 1 )
energy = 1.0
mode = 0
range/height = 50.0
range/z_min = -1024
range/z_max = 1024
range/layer_min = 0
range/layer_max = 0
range/item_mask = 1
shadow/enabled = true
shadow/color = Color( 0, 0, 0, 0 )
shadow/buffer_size = 2048
shadow/esm_multiplier = 80.0
shadow/item_mask = 1
[node name="anim" type="AnimationPlayer" parent="sprite"]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/firecol = SubResource( 1 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "firecol"
[node name="fire" type="Particles2D" parent="."]
visibility/blend_mode = 1
transform/pos = Vector2( 1.08072, -42.4183 )
transform/scale = Vector2( 0.59473, 0.5694 )
config/amount = 12
config/lifetime = 1.0
config/texture = ExtResource( 5 )
params/direction = 180.0
params/spread = 20.0
params/linear_velocity = 100.0
params/spin_velocity = 1.0
params/orbit_velocity = 0.0
params/gravity_direction = 180.0
params/gravity_strength = 9.8
params/radial_accel = 0.0
params/tangential_accel = 0.0
params/damping = 0.0
params/initial_angle = 180.0
params/initial_size = 0.7
params/final_size = 1.0
params/hue_variation = 0.0
params/anim_speed_scale = 1.0
params/anim_initial_pos = 0.0
randomness/spin_velocity = 1.0
randomness/initial_angle = 1.0
color/color_ramp = SubResource( 2 )
[node name="VisibilityEnabler2D" type="VisibilityEnabler2D" parent="."]
transform/pos = Vector2( 1.08071, -50.2535 )
transform/scale = Vector2( 4.29619, 6.51167 )
rect = Rect2( -10, -10, 20, 20 )
enabler/pause_animations = true
enabler/freeze_bodies = true
enabler/pause_particles = true
enabler/process_parent = false
enabler/fixed_process_parent = false
[node name="col" type="StaticBody2D" parent="."]
input/pickable = false
shapes/0/shape = SubResource( 3 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0.880249, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="shape" type="CollisionShape2D" parent="col"]
transform/pos = Vector2( 0.880249, 0 )
shape = SubResource( 3 )
trigger = false
_update_shape_index = -1

View File

@ -0,0 +1,14 @@
[gd_resource type="CanvasItemMaterial" load_steps=3 format=1]
[ext_resource path="res://faceNormal.png" type="Texture" id=1]
[sub_resource type="CanvasItemShader" id=1]
_code = { "fragment":"uniform texture normaltex;\nvec4 ntex = tex(normaltex,UV);\nntex.rgb = ntex.rgb * vec3(-2,-2,1) - vec3(-1,-1,0);\nvec2 tile_vec=vec2(47,22);\nfloat r = asin(tile_vec.y / tile_vec.x);\nmat3 rot_mat = mat3( vec3(1,0,0), vec3(0,cos(r),-sin(r)), vec3(0,sin(r),cos(r)));\nNORMAL = rot_mat * ntex.rgb;\n\n\n\n\n", "fragment_ofs":0, "light":"LIGHT_VEC.y=40; //from light towards up, where is the torch\?\nvec3 light_normal = normalize(vec3(LIGHT_VEC,-LIGHT_HEIGHT));\nLIGHT=LIGHT_COLOR*COLOR*max(dot(-light_normal,NORMAL),0.0);\n\n", "light_ofs":0, "vertex":"", "vertex_ofs":0 }
[resource]
shader/shader = SubResource( 1 )
shader/shading_mode = 0
shader_param/normaltex = ExtResource( 1 )

View File

@ -0,0 +1,16 @@
[gd_resource type="CanvasItemMaterial" load_steps=4 format=1]
[ext_resource path="res://faceMask.png" type="Texture" id=1]
[ext_resource path="res://faceNormal.png" type="Texture" id=2]
[sub_resource type="CanvasItemShader" id=1]
_code = { "fragment":"uniform texture normal;\n\nvec2 ywnormal=tex( normal,UV).wy * vec2(2.0,2.0) - vec2(1.0,1.0);\nNORMAL=vec3(ywnormal,sqrt(1 - (ywnormal.x * ywnormal.x) - (ywnormal.y * ywnormal.y) ));\n", "fragment_ofs":0, "light":"// this is the half size of the tile in pixels\n\nvec2 tile_vec=vec2(47,22);\n\n// this mask is used to see which part of the tile is the background (^)\n// or the foregronud (v)\n\nuniform texture bg_mask;\n\nbool behind = tex(bg_mask,UV).a>0.5;\nfloat y_ofs;\n\nif (behind) {\n\t// ^ part\n\t\n\ty_ofs = tile_vec.y*2 - abs(VAR1.x * tile_vec.y / tile_vec.x);\n} else {\n\t// v part\n\t\n\ty_ofs = abs(VAR1.x * tile_vec.y / tile_vec.x);\n}\n\nvec2 point_2d = vec2(VAR1.x,(tile_vec.y - VAR1.y));\n\n// compute a pseudo 3D point for both the light and the texel\n// this makes the normalmap calculation work properly\n\nvec3 point_3d = vec3( point_2d.x, point_2d.y - y_ofs, y_ofs );\nvec3 light_3d = vec3(point_2d.x-LIGHT_VEC.x,LIGHT_HEIGHT,(-(VAR1.y - (LIGHT_VEC.y))+tile_vec.y));\n\n//this could be optimized\n//a rotation matrix is created to convert the normalmap vector\n//to the same coordinate space as our pseudo 3d point and light\n\nfloat r = asin(tile_vec.y / tile_vec.x);\nmat3 rot_mat = mat3( vec3(1,0,0), vec3(0,cos(r),-sin(r)), vec3(0,sin(r),cos(r)));\nvec3 n = rot_mat * NORMAL;\nn.y=-n.y;\n\n//finally compute the dot product. Simple diffuse is computed here,\n//but specular could be added and it will look prettier\n\nfloat dp = max(dot(normalize(n),-normalize(light_3d-point_3d)),0);\nLIGHT=vec4(vec3(dp),1.0)*COLOR*LIGHT_COLOR*3.0;\n\n//finally, after light was cmoputed, make the light \"flat\"\n//this makes the shadows work properly\n//the +2 is added to avoid z-fighting between caster and pseudo 3d coords.\n\nLIGHT_VEC.y+=point_3d.y+2;\n\n", "light_ofs":0, "vertex":"//assign the local vertex coordinates to a varying\n//the center coordinates (0,0) matches the sprite center \n// (shows as a cross when the sprite is selected)\n\nVAR1.xy=SRC_VERTEX;\n", "vertex_ofs":0 }
[resource]
shader/shader = SubResource( 1 )
shader/shading_mode = 0
shader_param/normal = ExtResource( 2 )
shader_param/bg_mask = ExtResource( 1 )

Binary file not shown.

View File

@ -0,0 +1,422 @@
[gd_scene load_steps=19 format=1]
[ext_resource path="res://colworld.gd" type="Script" id=1]
[ext_resource path="res://obstacle.png" type="Texture" id=2]
[ext_resource path="res://player.tscn" type="PackedScene" id=3]
[ext_resource path="res://princess.png" type="Texture" id=4]
[ext_resource path="res://circle.png" type="Texture" id=5]
[ext_resource path="res://long_obstacle.png" type="Texture" id=6]
[sub_resource type="RectangleShape2D" id=1]
custom_solver_bias = 0.0
extents = Vector2( 8, 8 )
[sub_resource type="TileSet" id=2]
0/name = ""
0/texture = ExtResource( 2 )
0/tex_offset = Vector2( 0, 0 )
0/region = Rect2( 0, 0, 0, 0 )
0/occluder_offset = Vector2( 0, 0 )
0/navigation_offset = Vector2( 0, 0 )
0/shape_offset = Vector2( 8, 8 )
0/shapes = [ SubResource( 1 ) ]
[sub_resource type="RectangleShape2D" id=3]
custom_solver_bias = 0.0
extents = Vector2( 8, 8 )
[sub_resource type="Animation" id=4]
length = 10.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath(".:transform/pos")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 1, 5, 6 ), "transitions":FloatArray( 1, 1, 1, 1 ), "values":[ Vector2( 184, 152 ), Vector2( 184, 152 ), Vector2( 328.086, 152 ), Vector2( 328.086, 152 ) ] }
[sub_resource type="Animation" id=5]
resource/name = "leftright"
length = 10.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath(".:transform/pos")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 1, 5, 6 ), "transitions":FloatArray( 1, 1, 1, 1 ), "values":[ Vector2( 184, 152 ), Vector2( 184, 152 ), Vector2( 328.086, 152 ), Vector2( 328.086, 152 ) ] }
[sub_resource type="Animation" id=6]
length = 10.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath(".:transform/pos")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 1, 5, 6 ), "transitions":FloatArray( 1, 1, 1, 1 ), "values":[ Vector2( 88.3493, 296 ), Vector2( 88.3493, 296 ), Vector2( 88.3493, 152 ), Vector2( 88.3493, 152 ) ] }
[sub_resource type="RectangleShape2D" id=7]
custom_solver_bias = 0.0
extents = Vector2( 8, 8 )
[sub_resource type="RectangleShape2D" id=8]
custom_solver_bias = 0.0
extents = Vector2( 10, 4 )
[sub_resource type="CircleShape2D" id=9]
custom_solver_bias = 0.0
radius = 32.0
[sub_resource type="RectangleShape2D" id=10]
custom_solver_bias = 0.0
extents = Vector2( 8, 8 )
[sub_resource type="Animation" id=11]
length = 20.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath(".:transform/rot")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 5, 10, 15 ), "transitions":FloatArray( -2, -2, -2, -2 ), "values":[ 0.0, 90.0, 0.0, -90.0 ] }
[sub_resource type="RectangleShape2D" id=12]
custom_solver_bias = 0.0
extents = Vector2( 32, 8 )
[node name="colworld" type="Node2D"]
script/script = ExtResource( 1 )
[node name="TileMap" type="TileMap" parent="."]
mode = 0
tile_set = SubResource( 2 )
cell/size = Vector2( 16, 16 )
cell/quadrant_size = 16
cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
cell/half_offset = 2
cell/tile_origin = 0
cell/y_sort = false
collision/use_kinematic = false
collision/friction = 1.0
collision/bounce = 0.0
collision/layers = 1
collision/mask = 1
occluder/light_mask = 1
tile_data = IntArray( 0, 0, 1, 0, 2, 0, 3, 0, 4, 0, 5, 0, 6, 0, 7, 0, 8, 0, 9, 0, 10, 0, 11, 0, 12, 0, 13, 0, 14, 0, 15, 0, 16, 0, 17, 0, 18, 0, 19, 0, 20, 0, 21, 0, 22, 0, 23, 0, 24, 0, 25, 0, 26, 0, 27, 0, 28, 0, 29, 0, 30, 0, 31, 0, 32, 0, 65536, 0, 65537, 0, 65538, 0, 65539, 0, 65540, 0, 65541, 0, 65542, 0, 65543, 0, 65544, 0, 65545, 0, 65546, 0, 65547, 0, 65548, 0, 65549, 0, 65550, 0, 65551, 0, 65552, 0, 65553, 0, 65554, 0, 65555, 0, 65556, 0, 65557, 0, 65558, 0, 65559, 0, 65560, 0, 65561, 0, 65562, 0, 65563, 0, 65564, 0, 65565, 0, 65566, 0, 65567, 0, 65568, 0, 131072, 0, 131073, 0, 131103, 0, 131104, 0, 196608, 0, 196609, 0, 196639, 0, 196640, 0, 262144, 0, 262145, 0, 262175, 0, 262176, 0, 327680, 0, 327681, 0, 327685, 0, 327686, 0, 327687, 0, 327688, 0, 327689, 0, 327690, 0, 327691, 0, 327692, 0, 327693, 0, 327697, 0, 327711, 0, 327712, 0, 393216, 0, 393217, 0, 393237, 0, 393238, 0, 393247, 0, 393248, 0, 458752, 0, 458753, 0, 458783, 0, 458784, 0, 524288, 0, 524289, 0, 524313, 0, 524314, 0, 524319, 0, 524320, 0, 589824, 0, 589825, 0, 589830, 0, 589831, 0, 589832, 0, 589833, 0, 589834, 0, 589845, 0, 589846, 0, 589847, 0, 589855, 0, 589856, 0, 655360, 0, 655361, 0, 655391, 0, 655392, 0, 720896, 0, 720897, 0, 720927, 0, 720928, 0, 786432, 0, 786433, 0, 786463, 0, 786464, 0, 851968, 0, 851969, 0, 851999, 0, 852000, 0, 917504, 0, 917505, 0, 917535, 0, 917536, 0, 983040, 0, 983041, 0, 983071, 0, 983072, 0, 1048576, 0, 1048577, 0, 1048607, 0, 1048608, 0, 1114112, 0, 1114113, 0, 1114143, 0, 1114144, 0, 1179648, 0, 1179649, 0, 1179654, 0, 1179655, 0, 1179656, 0, 1179679, 0, 1179680, 0, 1245184, 0, 1245185, 0, 1245204, 0, 1245205, 0, 1245206, 0, 1245207, 0, 1245215, 0, 1245216, 0, 1310720, 0, 1310721, 0, 1310751, 0, 1310752, 0, 1376256, 0, 1376257, 0, 1376285, 0, 1376286, 0, 1376287, 0, 1376288, 0, 1441792, 0, 1441793, 0, 1441823, 0, 1441824, 0, 1507328, 0, 1507329, 0, 1507355, 0, 1507356, 0, 1507359, 0, 1507360, 0, 1572864, 0, 1572865, 0, 1572895, 0, 1572896, 0, 1638400, 0, 1638401, 0, 1638413, 0, 1638425, 0, 1638426, 0, 1638431, 0, 1638432, 0, 1703936, 0, 1703937, 0, 1703948, 0, 1703965, 0, 1703966, 0, 1703967, 0, 1703968, 0, 1769472, 0, 1769473, 0, 1769482, 0, 1769483, 0, 1769500, 0, 1769501, 0, 1769503, 0, 1769504, 0, 1835008, 0, 1835009, 0, 1835012, 0, 1835018, 0, 1835019, 0, 1835034, 0, 1835035, 0, 1835039, 0, 1835040, 0, 1900544, 0, 1900545, 0, 1900546, 0, 1900547, 0, 1900548, 0, 1900549, 0, 1900550, 0, 1900551, 0, 1900552, 0, 1900553, 0, 1900554, 0, 1900555, 0, 1900556, 0, 1900557, 0, 1900558, 0, 1900559, 0, 1900560, 0, 1900561, 0, 1900562, 0, 1900563, 0, 1900564, 0, 1900565, 0, 1900566, 0, 1900567, 0, 1900568, 0, 1900569, 0, 1900570, 0, 1900571, 0, 1900572, 0, 1900573, 0, 1900574, 0, 1900575, 0, 1900576, 0, 1966080, 0, 1966081, 0, 1966082, 0, 1966083, 0, 1966084, 0, 1966085, 0, 1966086, 0, 1966087, 0, 1966088, 0, 1966089, 0, 1966090, 0, 1966091, 0, 1966092, 0, 1966093, 0, 1966094, 0, 1966095, 0, 1966096, 0, 1966097, 0, 1966098, 0, 1966099, 0, 1966100, 0, 1966101, 0, 1966102, 0, 1966103, 0, 1966104, 0, 1966105, 0, 1966106, 0, 1966107, 0, 1966108, 0, 1966109, 0, 1966110, 0, 1966111, 0, 1966112, 0, 2031616, 0, 2031617, 0, 2031618, 0, 2031619, 0, 2031620, 0, 2031621, 0, 2031622, 0, 2031623, 0, 2031624, 0, 2031625, 0, 2031626, 0, 2031627, 0, 2031628, 0, 2031629, 0, 2031630, 0, 2031631, 0, 2031632, 0, 2031633, 0, 2031634, 0, 2031635, 0, 2031636, 0, 2031637, 0, 2031638, 0, 2031639, 0, 2031640, 0, 2031641, 0, 2031642, 0, 2031643, 0, 2031644, 0, 2031645, 0, 2031646, 0, 2031647, 0, 2031648, 0 )
[node name="player" parent="." instance=ExtResource( 3 )]
transform/pos = Vector2( 72, 430 )
collision/margin = 0.05
[node name="moving_platform1" type="KinematicBody2D" parent="."]
transform/pos = Vector2( 274.142, 152 )
input/pickable = false
shapes/0/shape = SubResource( 3 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
collision/margin = 0.01
[node name="collision" type="CollisionShape2D" parent="moving_platform1"]
shape = SubResource( 3 )
trigger = false
_update_shape_index = -1
[node name="sprite" type="Sprite" parent="moving_platform1"]
texture = ExtResource( 2 )
[node name="anim" type="AnimationPlayer" parent="moving_platform1"]
playback/process_mode = 0
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/leftright = SubResource( 4 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "leftright"
[node name="moving_platform2" type="KinematicBody2D" parent="."]
transform/pos = Vector2( 88.3493, 284.689 )
input/pickable = false
shapes/0/shape = SubResource( 3 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
collision/margin = 0.01
[node name="collision" type="CollisionShape2D" parent="moving_platform2"]
shape = SubResource( 3 )
trigger = false
_update_shape_index = -1
[node name="sprite" type="Sprite" parent="moving_platform2"]
texture = ExtResource( 2 )
[node name="anim" type="AnimationPlayer" parent="moving_platform2"]
playback/process_mode = 0
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/leftright = SubResource( 5 )
anims/updown = SubResource( 6 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "updown"
[node name="princess" type="Area2D" parent="."]
transform/pos = Vector2( 97, 72 )
input/pickable = true
shapes/0/shape = SubResource( 7 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
gravity_vec = Vector2( 0, 1 )
gravity = 98.0
linear_damp = 0.1
angular_damp = 1.0
[node name="collision" type="CollisionShape2D" parent="princess"]
shape = SubResource( 7 )
trigger = false
_update_shape_index = -1
[node name="Sprite" type="Sprite" parent="princess"]
texture = ExtResource( 4 )
[node name="youwin" type="Label" parent="."]
visibility/visible = false
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = 196.0
margin/top = 41.0
margin/right = 344.0
margin/bottom = 67.0
text = "Thank You Cubio\nYou Saved The Princess!"
align = 1
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1
[node name="oneway1" type="KinematicBody2D" parent="."]
transform/pos = Vector2( 439, 301 )
input/pickable = false
shapes/0/shape = SubResource( 8 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
one_way_collision/direction = Vector2( 0, 1 )
one_way_collision/max_depth = 6.0
collision/margin = 0.01
[node name="sprite" type="Sprite" parent="oneway1"]
transform/scale = Vector2( 1, 0.3 )
texture = ExtResource( 2 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="oneway1"]
shape = SubResource( 8 )
trigger = false
_update_shape_index = -1
[node name="oneway2" type="KinematicBody2D" parent="."]
transform/pos = Vector2( 456, 301 )
input/pickable = false
shapes/0/shape = SubResource( 8 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
one_way_collision/direction = Vector2( 0, 1 )
one_way_collision/max_depth = 6.0
collision/margin = 0.01
[node name="sprite" type="Sprite" parent="oneway2"]
transform/scale = Vector2( 1, 0.3 )
texture = ExtResource( 2 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="oneway2"]
shape = SubResource( 8 )
trigger = false
_update_shape_index = -1
[node name="oneway3" type="KinematicBody2D" parent="."]
transform/pos = Vector2( 472, 301 )
input/pickable = false
shapes/0/shape = SubResource( 8 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
one_way_collision/direction = Vector2( 0, 1 )
one_way_collision/max_depth = 6.0
collision/margin = 0.01
[node name="sprite" type="Sprite" parent="oneway3"]
transform/scale = Vector2( 1, 0.3 )
texture = ExtResource( 2 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="oneway3"]
shape = SubResource( 8 )
trigger = false
_update_shape_index = -1
[node name="oneway4" type="KinematicBody2D" parent="."]
transform/pos = Vector2( 487, 301 )
input/pickable = false
shapes/0/shape = SubResource( 8 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
one_way_collision/direction = Vector2( 0, 1 )
one_way_collision/max_depth = 6.0
collision/margin = 0.01
[node name="sprite" type="Sprite" parent="oneway4"]
transform/scale = Vector2( 1, 0.3 )
texture = ExtResource( 2 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="oneway4"]
shape = SubResource( 8 )
trigger = false
_update_shape_index = -1
[node name="circle" type="KinematicBody2D" parent="."]
transform/pos = Vector2( 241.169, 304.126 )
input/pickable = false
shapes/0/shape = SubResource( 9 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
shapes/1/shape = SubResource( 10 )
shapes/1/transform = Matrix32( 1, 0, 0, 1, -0.440125, -37.0904 )
shapes/1/trigger = false
collision/layers = 1
collision/mask = 1
collision/margin = 0.08
[node name="sprite" type="Sprite" parent="circle"]
texture = ExtResource( 5 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="circle"]
shape = SubResource( 9 )
trigger = false
_update_shape_index = -1
[node name="anim" type="AnimationPlayer" parent="circle"]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/turn = SubResource( 11 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "turn"
[node name="box" type="CollisionShape2D" parent="circle"]
transform/pos = Vector2( -0.440125, -37.0904 )
shape = SubResource( 10 )
trigger = false
_update_shape_index = -1
[node name="boxsprite" type="Sprite" parent="circle"]
transform/pos = Vector2( 0, -37.4108 )
texture = ExtResource( 2 )
[node name="platform" type="StaticBody2D" parent="."]
transform/pos = Vector2( 251.44, 396.557 )
transform/rot = 24.5257
input/pickable = false
shapes/0/shape = SubResource( 12 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="sprite" type="Sprite" parent="platform"]
texture = ExtResource( 6 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="platform"]
shape = SubResource( 12 )
trigger = false
_update_shape_index = -1
[node name="platform1" type="StaticBody2D" parent="."]
transform/pos = Vector2( 369.116, 394.016 )
transform/rot = -26.6959
input/pickable = false
shapes/0/shape = SubResource( 12 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
constant_linear_velocity = Vector2( 0, 0 )
constant_angular_velocity = 0.0
friction = 1.0
bounce = 0.0
[node name="sprite" type="Sprite" parent="platform1"]
texture = ExtResource( 6 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="platform1"]
shape = SubResource( 12 )
trigger = false
_update_shape_index = -1
[connection signal="body_enter" from="princess" to="." method="_on_princess_body_enter"]

View File

@ -1,7 +1,7 @@
[application] [application]
name="Kinematic Character" name="Kinematic Character"
main_scene="res://colworld.scn" main_scene="res://colworld.tscn"
icon="res://icon.png" icon="res://icon.png"
[display] [display]

Binary file not shown.

View File

@ -0,0 +1,33 @@
[gd_scene load_steps=4 format=1]
[ext_resource path="res://player.gd" type="Script" id=1]
[ext_resource path="res://player.png" type="Texture" id=2]
[sub_resource type="RectangleShape2D" id=1]
custom_solver_bias = 0.0
extents = Vector2( 7, 7 )
[node name="player" type="KinematicBody2D"]
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, -0.315559, 0.157784 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
collision/margin = 0.01
script/script = ExtResource( 1 )
[node name="sprite" type="Sprite" parent="."]
texture = ExtResource( 2 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
transform/pos = Vector2( -0.315559, 0.157784 )
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1

Binary file not shown.

View File

@ -0,0 +1,47 @@
[gd_scene load_steps=5 format=1]
[ext_resource path="res://obstacle.png" type="Texture" id=1]
[ext_resource path="res://player.tscn" type="PackedScene" id=2]
[sub_resource type="RectangleShape2D" id=1]
custom_solver_bias = 0.0
extents = Vector2( 8, 8 )
[sub_resource type="TileSet" id=2]
0/name = ""
0/texture = ExtResource( 1 )
0/tex_offset = Vector2( 0, 0 )
0/region = Rect2( 0, 0, 0, 0 )
0/occluder_offset = Vector2( 0, 0 )
0/navigation_offset = Vector2( 0, 0 )
0/shape_offset = Vector2( 8, 8 )
0/shapes = [ SubResource( 1 ) ]
[node name="colworld" type="Node2D"]
[node name="TileMap" type="TileMap" parent="."]
mode = 0
tile_set = SubResource( 2 )
cell/size = Vector2( 16, 16 )
cell/quadrant_size = 16
cell/custom_transform = Matrix32( 1, 0, 0, 1, 0, 0 )
cell/half_offset = 2
cell/tile_origin = 0
cell/y_sort = false
collision/use_kinematic = false
collision/friction = 1.0
collision/bounce = 0.0
collision/layers = 1
collision/mask = 1
occluder/light_mask = 1
tile_data = IntArray( 0, 0, 1, 0, 2, 0, 3, 0, 4, 0, 5, 0, 6, 0, 7, 0, 8, 0, 9, 0, 10, 0, 11, 0, 12, 0, 13, 0, 14, 0, 15, 0, 16, 0, 17, 0, 18, 0, 19, 0, 20, 0, 21, 0, 22, 0, 23, 0, 24, 0, 25, 0, 26, 0, 27, 0, 28, 0, 29, 0, 30, 0, 31, 0, 32, 0, 65536, 0, 65537, 0, 65538, 0, 65539, 0, 65540, 0, 65541, 0, 65542, 0, 65543, 0, 65544, 0, 65545, 0, 65546, 0, 65547, 0, 65548, 0, 65549, 0, 65550, 0, 65551, 0, 65552, 0, 65553, 0, 65554, 0, 65555, 0, 65556, 0, 65557, 0, 65558, 0, 65559, 0, 65560, 0, 65561, 0, 65562, 0, 65563, 0, 65564, 0, 65565, 0, 65566, 0, 65567, 0, 65568, 0, 131072, 0, 131073, 0, 131103, 0, 131104, 0, 196608, 0, 196609, 0, 196639, 0, 196640, 0, 262144, 0, 262145, 0, 262175, 0, 262176, 0, 327680, 0, 327681, 0, 327685, 0, 327686, 0, 327687, 0, 327688, 0, 327689, 0, 327690, 0, 327691, 0, 327692, 0, 327693, 0, 327711, 0, 327712, 0, 393216, 0, 393217, 0, 393247, 0, 393248, 0, 458752, 0, 458753, 0, 458783, 0, 458784, 0, 524288, 0, 524289, 0, 524319, 0, 524320, 0, 589824, 0, 589825, 0, 589855, 0, 589856, 0, 655360, 0, 655361, 0, 655373, 0, 655374, 0, 655375, 0, 655376, 0, 655377, 0, 655378, 0, 655379, 0, 655380, 0, 655381, 0, 655391, 0, 655392, 0, 720896, 0, 720897, 0, 720909, 0, 720910, 0, 720911, 0, 720912, 0, 720913, 0, 720914, 0, 720915, 0, 720916, 0, 720917, 0, 720927, 0, 720928, 0, 786432, 0, 786433, 0, 786445, 0, 786446, 0, 786447, 0, 786448, 0, 786449, 0, 786450, 0, 786451, 0, 786452, 0, 786453, 0, 786463, 0, 786464, 0, 851968, 0, 851969, 0, 851981, 0, 851982, 0, 851988, 0, 851989, 0, 851999, 0, 852000, 0, 917504, 0, 917505, 0, 917517, 0, 917518, 0, 917524, 0, 917525, 0, 917535, 0, 917536, 0, 983040, 0, 983041, 0, 983053, 0, 983054, 0, 983060, 0, 983061, 0, 983071, 0, 983072, 0, 1048576, 0, 1048577, 0, 1048596, 0, 1048597, 0, 1048607, 0, 1048608, 0, 1114112, 0, 1114113, 0, 1114132, 0, 1114133, 0, 1114143, 0, 1114144, 0, 1179648, 0, 1179649, 0, 1179668, 0, 1179669, 0, 1179679, 0, 1179680, 0, 1245184, 0, 1245185, 0, 1245204, 0, 1245205, 0, 1245215, 0, 1245216, 0, 1310720, 0, 1310721, 0, 1310730, 0, 1310731, 0, 1310748, 0, 1310751, 0, 1310752, 0, 1376256, 0, 1376257, 0, 1376266, 0, 1376267, 0, 1376284, 0, 1376287, 0, 1376288, 0, 1441792, 0, 1441793, 0, 1441802, 0, 1441803, 0, 1441804, 0, 1441805, 0, 1441820, 0, 1441823, 0, 1441824, 0, 1507328, 0, 1507329, 0, 1507338, 0, 1507339, 0, 1507340, 0, 1507341, 0, 1507359, 0, 1507360, 0, 1572864, 0, 1572865, 0, 1572874, 0, 1572875, 0, 1572876, 0, 1572877, 0, 1572878, 0, 1572879, 0, 1572880, 0, 1572881, 0, 1572882, 0, 1572895, 0, 1572896, 0, 1638400, 0, 1638401, 0, 1638410, 0, 1638411, 0, 1638412, 0, 1638413, 0, 1638414, 0, 1638415, 0, 1638416, 0, 1638417, 0, 1638418, 0, 1638431, 0, 1638432, 0, 1703936, 0, 1703937, 0, 1703946, 0, 1703947, 0, 1703967, 0, 1703968, 0, 1769472, 0, 1769473, 0, 1769482, 0, 1769483, 0, 1769503, 0, 1769504, 0, 1835008, 0, 1835009, 0, 1835018, 0, 1835019, 0, 1835039, 0, 1835040, 0, 1900544, 0, 1900545, 0, 1900546, 0, 1900547, 0, 1900548, 0, 1900549, 0, 1900550, 0, 1900551, 0, 1900552, 0, 1900553, 0, 1900554, 0, 1900555, 0, 1900556, 0, 1900557, 0, 1900558, 0, 1900559, 0, 1900560, 0, 1900561, 0, 1900562, 0, 1900563, 0, 1900564, 0, 1900565, 0, 1900566, 0, 1900567, 0, 1900568, 0, 1900569, 0, 1900570, 0, 1900571, 0, 1900572, 0, 1900573, 0, 1900574, 0, 1900575, 0, 1900576, 0, 1966080, 0, 1966081, 0, 1966082, 0, 1966083, 0, 1966084, 0, 1966085, 0, 1966086, 0, 1966087, 0, 1966088, 0, 1966089, 0, 1966090, 0, 1966091, 0, 1966092, 0, 1966093, 0, 1966094, 0, 1966095, 0, 1966096, 0, 1966097, 0, 1966098, 0, 1966099, 0, 1966100, 0, 1966101, 0, 1966102, 0, 1966103, 0, 1966104, 0, 1966105, 0, 1966106, 0, 1966107, 0, 1966108, 0, 1966109, 0, 1966110, 0, 1966111, 0, 1966112, 0, 2031616, 0, 2031617, 0, 2031618, 0, 2031619, 0, 2031620, 0, 2031621, 0, 2031622, 0, 2031623, 0, 2031624, 0, 2031625, 0, 2031626, 0, 2031627, 0, 2031628, 0, 2031629, 0, 2031630, 0, 2031631, 0, 2031632, 0, 2031633, 0, 2031634, 0, 2031635, 0, 2031636, 0, 2031637, 0, 2031638, 0, 2031639, 0, 2031640, 0, 2031641, 0, 2031642, 0, 2031643, 0, 2031644, 0, 2031645, 0, 2031646, 0, 2031647, 0, 2031648, 0 )
[node name="player" parent="." instance=ExtResource( 2 )]
transform/pos = Vector2( 115.243, 222.134 )
collision/margin = 0.01

View File

@ -1,7 +1,7 @@
[application] [application]
name="Kinematic Collision" name="Kinematic Collision"
main_scene="res://colworld.scn" main_scene="res://colworld.tscn"
icon="res://icon.png" icon="res://icon.png"
[input] [input]

Binary file not shown.

View File

@ -0,0 +1,32 @@
[gd_scene load_steps=4 format=1]
[ext_resource path="res://player.gd" type="Script" id=1]
[ext_resource path="res://player.png" type="Texture" id=2]
[sub_resource type="RectangleShape2D" id=1]
custom_solver_bias = 0.0
extents = Vector2( 8, 8 )
[node name="player" type="KinematicBody2D"]
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
collision/margin = 0.01
script/script = ExtResource( 1 )
[node name="sprite" type="Sprite" parent="."]
texture = ExtResource( 2 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1

View File

@ -1,7 +1,7 @@
[application] [application]
name="Using Lights As Mask" name="Using Lights As Mask"
main_scene="res://lightmask.scn" main_scene="res://lightmask.tscn"
icon="res://icon.png" icon="res://icon.png"
[rasterizer] [rasterizer]

Binary file not shown.

View File

@ -0,0 +1,134 @@
[gd_scene load_steps=5 format=1]
[ext_resource path="res://burano.png" type="Texture" id=1]
[ext_resource path="res://splat.png" type="Texture" id=2]
[sub_resource type="CanvasItemMaterial" id=1]
shader/shading_mode = 2
[sub_resource type="Animation" id=2]
length = 4.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("light1:transform/pos")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 1, 2, 3 ), "transitions":FloatArray( -2, -2, -2, -2 ), "values":[ Vector2( 601.028, 242.639 ), Vector2( 318.649, 327.353 ), Vector2( 381.263, 130.915 ), Vector2( 462.294, 389.968 ) ] }
tracks/1/type = "value"
tracks/1/path = NodePath("light2:transform/pos")
tracks/1/interp = 1
tracks/1/keys = { "cont":true, "times":FloatArray( 0, 1, 2, 3 ), "transitions":FloatArray( -2, -2, -2, -2 ), "values":[ Vector2( 196.528, 185.139 ), Vector2( 135.142, 454.013 ), Vector2( 638.105, 334.923 ), Vector2( 331.375, 101.653 ) ] }
tracks/2/type = "value"
tracks/2/path = NodePath("light3:transform/pos")
tracks/2/interp = 1
tracks/2/keys = { "cont":true, "times":FloatArray( 0, 1, 2, 3 ), "transitions":FloatArray( -2, -2, -2, -2 ), "values":[ Vector2( 442.528, 411.139 ), Vector2( 635.283, 236.8 ), Vector2( 216.215, 396.815 ), Vector2( 682.96, 294.708 ) ] }
[node name="lightmask_demo" type="Control"]
anchor/right = 1
anchor/bottom = 1
focus/ignore_mouse = false
focus/stop_mouse = true
size_flags/horizontal = 2
size_flags/vertical = 2
margin/left = 0.0
margin/top = 0.0
margin/right = 0.0
margin/bottom = 0.0
[node name="burano" type="TextureFrame" parent="."]
material/material = SubResource( 1 )
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
size_flags/vertical = 2
margin/left = 0.0
margin/top = 0.0
margin/right = 800.0
margin/bottom = 600.0
texture = ExtResource( 1 )
[node name="light1" type="Light2D" parent="."]
transform/pos = Vector2( 601.028, 242.639 )
transform/scale = Vector2( 1.62522, 1.62999 )
enabled = true
texture = ExtResource( 2 )
offset = Vector2( 0, 0 )
scale = 1.0
color = Color( 1, 1, 1, 1 )
energy = 1.0
mode = 2
range/height = 0.0
range/z_min = -1024
range/z_max = 1024
range/layer_min = 0
range/layer_max = 0
range/item_mask = 1
shadow/enabled = false
shadow/color = Color( 0, 0, 0, 0 )
shadow/buffer_size = 2048
shadow/esm_multiplier = 80.0
shadow/item_mask = 1
[node name="light2" type="Light2D" parent="."]
transform/pos = Vector2( 196.528, 185.139 )
transform/scale = Vector2( 1.76194, 1.71984 )
enabled = true
texture = ExtResource( 2 )
offset = Vector2( 0, 0 )
scale = 1.0
color = Color( 1, 1, 1, 1 )
energy = 1.0
mode = 2
range/height = 0.0
range/z_min = -1024
range/z_max = 1024
range/layer_min = 0
range/layer_max = 0
range/item_mask = 1
shadow/enabled = false
shadow/color = Color( 0, 0, 0, 0 )
shadow/buffer_size = 2048
shadow/esm_multiplier = 80.0
shadow/item_mask = 1
[node name="light3" type="Light2D" parent="."]
transform/pos = Vector2( 442.528, 411.139 )
transform/scale = Vector2( 1.76194, 1.71984 )
enabled = true
texture = ExtResource( 2 )
offset = Vector2( 0, 0 )
scale = 1.0
color = Color( 1, 1, 1, 1 )
energy = 1.0
mode = 2
range/height = 0.0
range/z_min = -1024
range/z_max = 1024
range/layer_min = 0
range/layer_max = 0
range/item_mask = 1
shadow/enabled = false
shadow/color = Color( 0, 0, 0, 0 )
shadow/buffer_size = 2048
shadow/esm_multiplier = 80.0
shadow/item_mask = 1
[node name="anim" type="AnimationPlayer" parent="."]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/maskmotion = SubResource( 2 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "maskmotion"

View File

@ -1,7 +1,7 @@
[application] [application]
name="2D Lighting" name="2D Lighting"
main_scene="res://light_shadows.scn" main_scene="res://light_shadows.tscn"
icon="res://icon.png" icon="res://icon.png"
[display] [display]

View File

@ -0,0 +1,326 @@
[gd_scene load_steps=9 format=1]
[ext_resource path="res://bg.png" type="Texture" id=1]
[ext_resource path="res://caster.png" type="Texture" id=2]
[ext_resource path="res://light.png" type="Texture" id=3]
[ext_resource path="res://spot.png" type="Texture" id=4]
[sub_resource type="OccluderPolygon2D" id=1]
closed = true
cull_mode = 0
polygon = Vector2Array( -15.913, -15.9738, 15.9079, -16.0785, 15.6986, 15.847, -16.1223, 15.9517 )
[sub_resource type="Animation" id=2]
length = 16.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath(".:transform/pos")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 4, 8, 12 ), "transitions":FloatArray( -2, -2, -2, -2 ), "values":[ Vector2( 159.289, 452.441 ), Vector2( 132.279, 80.4366 ), Vector2( 700.722, 241.27 ), Vector2( 429.392, 571.532 ) ] }
[sub_resource type="Animation" id=3]
length = 16.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath(".:transform/pos")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 4.1, 8.1, 11.8 ), "transitions":FloatArray( -2, -2, -2, -2 ), "values":[ Vector2( 753.756, 314.336 ), Vector2( 69.7562, 234.336 ), Vector2( 256.756, 575.336 ), Vector2( 516.756, 530.336 ) ] }
[sub_resource type="Animation" id=4]
length = 16.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath(".:transform/pos")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 4.1, 7.9, 12.1 ), "transitions":FloatArray( -2, -2, -2, -2 ), "values":[ Vector2( 692.078, 29.8849 ), Vector2( 309.606, 31.5551 ), Vector2( 40.7064, 238.658 ), Vector2( 685.397, 282.082 ) ] }
[node name="base" type="Node2D"]
[node name="ambient" type="CanvasModulate" parent="."]
color = Color( 0.479177, 0.464761, 0.498946, 1 )
[node name="bg" type="Sprite" parent="."]
transform/pos = Vector2( 401.251, 301.906 )
transform/scale = Vector2( 6.39454, 4.82665 )
texture = ExtResource( 1 )
[node name="casters" type="Node2D" parent="."]
[node name="shadow_caster" type="Sprite" parent="casters"]
transform/pos = Vector2( 95.2909, 85.3186 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster1" type="Sprite" parent="casters"]
transform/pos = Vector2( 200.291, 313.319 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster1"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster2" type="Sprite" parent="casters"]
transform/pos = Vector2( 76.2909, 405.319 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster2"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster3" type="Sprite" parent="casters"]
transform/pos = Vector2( 348.291, 206.319 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster3"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster4" type="Sprite" parent="casters"]
transform/pos = Vector2( 239.291, 48.3186 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster4"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster5" type="Sprite" parent="casters"]
transform/pos = Vector2( 140.291, 561.319 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster5"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster6" type="Sprite" parent="casters"]
transform/pos = Vector2( 392.291, 499.319 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster6"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster7" type="Sprite" parent="casters"]
transform/pos = Vector2( 735.291, 552.319 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster7"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster8" type="Sprite" parent="casters"]
transform/pos = Vector2( 661.291, 371.319 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster8"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster9" type="Sprite" parent="casters"]
transform/pos = Vector2( 567.291, 574.319 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster9"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster10" type="Sprite" parent="casters"]
transform/pos = Vector2( 420.291, 350.319 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster10"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster11" type="Sprite" parent="casters"]
transform/pos = Vector2( 463.291, 106.319 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster11"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster12" type="Sprite" parent="casters"]
transform/pos = Vector2( 621.291, 78.3186 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster12"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster13" type="Sprite" parent="casters"]
transform/pos = Vector2( 761.291, 240.319 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster13"]
occluder = SubResource( 1 )
light_mask = 1
[node name="shadow_caster14" type="Sprite" parent="casters"]
transform/pos = Vector2( 771.291, 29.3186 )
texture = ExtResource( 2 )
[node name="occluder" type="LightOccluder2D" parent="casters/shadow_caster14"]
occluder = SubResource( 1 )
light_mask = 1
[node name="red_light" type="Light2D" parent="."]
transform/pos = Vector2( 159.289, 452.441 )
enabled = true
texture = ExtResource( 3 )
offset = Vector2( 0, 0 )
scale = 1.0
color = Color( 1, 0.446392, 0.0576646, 1 )
energy = 1.0
mode = 0
range/height = 0.0
range/z_min = -1024
range/z_max = 1024
range/layer_min = 0
range/layer_max = 0
range/item_mask = 1
shadow/enabled = true
shadow/color = Color( 0, 0, 0, 0 )
shadow/buffer_size = 2048
shadow/esm_multiplier = 80.0
shadow/item_mask = 1
[node name="blob" type="Sprite" parent="red_light"]
visibility/blend_mode = 1
texture = ExtResource( 4 )
[node name="anim" type="AnimationPlayer" parent="red_light"]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/motion = SubResource( 2 )
anims/motion2 = SubResource( 3 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "motion"
[node name="green_light" type="Light2D" parent="."]
transform/pos = Vector2( 753.756, 314.336 )
enabled = true
texture = ExtResource( 3 )
offset = Vector2( 0, 0 )
scale = 1.0
color = Color( 0.49247, 0.878537, 0.409146, 1 )
energy = 1.0
mode = 0
range/height = 0.0
range/z_min = -1024
range/z_max = 1024
range/layer_min = 0
range/layer_max = 0
range/item_mask = 1
shadow/enabled = true
shadow/color = Color( 0, 0, 0, 0 )
shadow/buffer_size = 2048
shadow/esm_multiplier = 80.0
shadow/item_mask = 1
[node name="blob" type="Sprite" parent="green_light"]
visibility/blend_mode = 1
texture = ExtResource( 4 )
[node name="anim" type="AnimationPlayer" parent="green_light"]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/m2 = SubResource( 3 )
anims/motion = SubResource( 2 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "m2"
[node name="blue_light" type="Light2D" parent="."]
transform/pos = Vector2( 692.078, 29.8849 )
enabled = true
texture = ExtResource( 3 )
offset = Vector2( 0, 0 )
scale = 1.0
color = Color( 0.396752, 0.446392, 0.929792, 1 )
energy = 1.0
mode = 0
range/height = 0.0
range/z_min = -1024
range/z_max = 1024
range/layer_min = 0
range/layer_max = 0
range/item_mask = 1
shadow/enabled = true
shadow/color = Color( 0, 0, 0, 0 )
shadow/buffer_size = 2048
shadow/esm_multiplier = 80.0
shadow/item_mask = 1
[node name="blob" type="Sprite" parent="blue_light"]
visibility/blend_mode = 1
texture = ExtResource( 4 )
[node name="anim" type="AnimationPlayer" parent="blue_light"]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/motion = SubResource( 2 )
anims/motion2 = SubResource( 3 )
anims/motion3 = SubResource( 4 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "motion3"

View File

@ -1,5 +1,5 @@
[application] [application]
name="Look At Pointer" name="Look At Pointer"
main_scene="res://lookat.scn" main_scene="res://lookat.tscn"
icon="res://icon.png" icon="res://icon.png"

Binary file not shown.

View File

@ -0,0 +1,32 @@
[gd_scene load_steps=3 format=1]
[ext_resource path="res://arrow.png" type="Texture" id=1]
[ext_resource path="res://lookat.gd" type="Script" id=2]
[node name="lookatscene" type="Node2D"]
[node name="direct" type="Sprite" parent="."]
transform/pos = Vector2( 132, 105 )
texture = ExtResource( 1 )
modulate = Color( 1, 0.799619, 0.734765, 1 )
script/script = ExtResource( 2 )
mode = 0
[node name="constant" type="Sprite" parent="."]
transform/pos = Vector2( 611, 216 )
texture = ExtResource( 1 )
modulate = Color( 0.751241, 0.662843, 1, 1 )
script/script = ExtResource( 2 )
mode = 1
[node name="smooth" type="Sprite" parent="."]
transform/pos = Vector2( 314, 457 )
texture = ExtResource( 1 )
modulate = Color( 0.749446, 1, 0.782884, 1 )
script/script = ExtResource( 2 )
mode = 2

View File

@ -1,7 +1,7 @@
[application] [application]
name="Motion Test" name="Motion Test"
main_scene="res://motion.scn" main_scene="res://motion.tscn"
icon="res://icon.png" icon="res://icon.png"
[display] [display]

Binary file not shown.

135
demos/2d/motion/motion.tscn Normal file
View File

@ -0,0 +1,135 @@
[gd_scene load_steps=4 format=1]
[ext_resource path="res://car.png" type="Texture" id=1]
[ext_resource path="res://motion.gd" type="Script" id=2]
[sub_resource type="Animation" id=1]
resource/name = "motion"
length = 5.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath(".:transform/pos")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 5 ), "transitions":FloatArray( 1, 1 ), "values":[ Vector2( -113, 154 ), Vector2( 907, 154 ) ] }
[node name="Node2D" type="Node2D"]
[node name="idle" type="Node2D" parent="."]
[node name="car" type="Sprite" parent="idle"]
transform/pos = Vector2( -113, 154 )
texture = ExtResource( 1 )
[node name="anim" type="AnimationPlayer" parent="idle/car"]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/motion = SubResource( 1 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "motion"
[node name="Label" type="Label" parent="idle"]
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = 27.0
margin/top = 80.0
margin/right = 104.0
margin/bottom = 93.0
text = "Idle Process Animation"
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1
[node name="fixed" type="Node2D" parent="."]
transform/pos = Vector2( 0, 106 )
[node name="car" type="Sprite" parent="fixed"]
transform/pos = Vector2( -113, 154 )
texture = ExtResource( 1 )
[node name="anim" type="AnimationPlayer" parent="fixed/car"]
playback/process_mode = 0
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/motion = SubResource( 1 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "motion"
[node name="Label1" type="Label" parent="fixed"]
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = 27.0
margin/top = 80.0
margin/right = 104.0
margin/bottom = 93.0
text = "Fixed Process Animation"
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1
[node name="code_idle" type="Node2D" parent="."]
transform/pos = Vector2( 0, 215 )
[node name="car" type="Sprite" parent="code_idle"]
transform/pos = Vector2( -113, 154 )
texture = ExtResource( 1 )
script/script = ExtResource( 2 )
use_idle = true
[node name="Label1" type="Label" parent="code_idle"]
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = 27.0
margin/top = 80.0
margin/right = 104.0
margin/bottom = 93.0
text = "Idle Process Code"
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1
[node name="code_fixed" type="Node2D" parent="."]
transform/pos = Vector2( 0, 324 )
[node name="car" type="Sprite" parent="code_fixed"]
transform/pos = Vector2( -113, 154 )
texture = ExtResource( 1 )
script/script = ExtResource( 2 )
use_idle = false
[node name="Label1" type="Label" parent="code_fixed"]
focus/ignore_mouse = true
focus/stop_mouse = true
size_flags/horizontal = 2
margin/left = 27.0
margin/top = 80.0
margin/right = 104.0
margin/bottom = 93.0
text = "Fixed Process Code"
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1

View File

@ -1,7 +1,7 @@
[application] [application]
name="Navigation Polygon (2D)" name="Navigation Polygon (2D)"
main_scene="res://navigation.scn" main_scene="res://navigation.tscn"
icon="res://icon.png" icon="res://icon.png"
[display] [display]

Binary file not shown.

View File

@ -0,0 +1,34 @@
[gd_scene load_steps=5 format=1]
[ext_resource path="res://navigation.gd" type="Script" id=1]
[ext_resource path="res://path.png" type="Texture" id=2]
[ext_resource path="res://agent.png" type="Texture" id=3]
[sub_resource type="NavigationPolygon" id=1]
vertices = Vector2Array( 587.833, 271.924, 530.464, 284.878, 508.256, 281.177, 497.153, 255.269, 669.26, 297.833, 648.903, 321.891, 650.754, 251.567, 619.293, 510.654, 676.663, 493.998, 706.272, 501.401, 669.26, 529.16, 602.638, 523.608, 587.833, 179.393, 573.028, 140.53, 645.202, 159.036, 710.106, 179.216, 630.397, 212.704, 597.086, 192.348, 648.903, 394.065, 621.144, 486.596, 618.011, 402.479, 624.926, 359.595, 605.437, 456.366, 598.937, 492.148, 471.244, 251.567, 421.277, 270.074, 428.68, 246.015, 502.704, 97.9661, 517.509, 55.4019, 537.866, 99.8167, 536.016, 175.692, 495.302, 164.588, 487.899, 85.0117, 310.24, 75.7586, 308.39, 92.4142, 345.402, 210.854, 360.207, 223.808, 297.286, 258.97, 288.033, 231.211, 319.493, 190.497, 193.651, 423.675, 245.469, 477.343, 221.41, 488.446, 147.386, 408.87, 182.548, 382.961, 145.584, 224.311, 175.145, 332.995, 202.904, 99.8167, 310.24, 62.8043, 695.169, 303.385, 682.214, 284.878, 524.608, 359.37, 526.762, 342.248, 538.077, 499.891, 571.177, 501.401, 395.879, 501.87, 536.407, 524.944, 371.311, 518.056, 573.028, 94.2648, 582.281, 47.9994, 667.409, 75.7586, 350.954, 447.733, 363.908, 351.501, 384.265, 351.501, 376.862, 418.123, 373.441, 436.494, 424.978, 334.845, 421.277, 360.754, 352.804, 320.04, 321.344, 338.546, 299.136, 283.028, 241.767, 327.443, 234.365, 244.165, 325.228, 486.302, 300.441, 497.494, 317.643, 447.733, 332.441, 457.494, 366.441, 467.494, 480.497, 434.779, 518.035, 461.477, 476.441, 468.494, 265.825, 407.019, 184.398, 349.65, 310.24, 112.771, 267.676, 153.485, 221.41, 171.991, 700.721, 268.223, 397.219, 188.646, 415.725, 177.543, 465.692, 179.393, 476.796, 207.152, 443.485, 192.348, 437.933, 170.14, 452.738, 166.439, 460.14, 123.875, 476.796, 149.783, 189.95, 231.211 )
polygons = [ IntArray( 0, 1, 2, 3 ), IntArray( 4, 5, 6 ), IntArray( 7, 8, 9, 10, 11 ), IntArray( 12, 13, 14, 15, 16, 17 ), IntArray( 18, 19, 20, 21 ), IntArray( 22, 20, 19, 23 ), IntArray( 24, 3, 2, 25, 26 ), IntArray( 27, 28, 29, 30, 31 ), IntArray( 28, 27, 32 ), IntArray( 33, 28, 32, 34 ), IntArray( 35, 36, 37, 38, 39 ), IntArray( 40, 41, 42, 43 ), IntArray( 44, 40, 43 ), IntArray( 44, 43, 45, 46 ), IntArray( 47, 48, 33, 34 ), IntArray( 49, 9, 8, 4, 50 ), IntArray( 50, 4, 6 ), IntArray( 21, 20, 51, 52 ), IntArray( 53, 22, 23, 54 ), IntArray( 23, 7, 11, 54 ), IntArray( 55, 53, 54, 56, 57 ), IntArray( 14, 58, 59, 60, 15 ), IntArray( 61, 62, 63, 64, 65 ), IntArray( 66, 67, 63, 68 ), IntArray( 68, 63, 62, 69, 70 ), IntArray( 70, 69, 71, 72 ), IntArray( 70, 72, 38, 37 ), IntArray( 73, 55, 57, 74 ), IntArray( 73, 74, 75, 76 ), IntArray( 65, 77, 76, 61 ), IntArray( 78, 2, 1, 52, 51 ), IntArray( 78, 51, 79, 80 ), IntArray( 78, 80, 65, 64 ), IntArray( 81, 61, 76, 75 ), IntArray( 81, 75, 44, 82 ), IntArray( 47, 34, 83, 84, 85 ), IntArray( 15, 86, 50, 6, 16 ), IntArray( 12, 17, 3, 24 ), IntArray( 26, 25, 87, 88 ), IntArray( 89, 31, 30, 90, 91 ), IntArray( 89, 91, 92, 93 ), IntArray( 39, 94, 95, 93, 92 ), IntArray( 39, 92, 88 ), IntArray( 39, 88, 87, 35 ), IntArray( 39, 38, 85, 84 ), IntArray( 45, 47, 85, 96 ), IntArray( 45, 96, 46 ), IntArray( 44, 46, 82 ) ]
outlines = [ Vector2Array( 221.41, 488.446, 147.386, 408.87, 145.584, 224.311, 202.904, 99.8167, 310.24, 62.8043, 310.24, 75.7586, 517.509, 55.4019, 537.866, 99.8167, 536.016, 175.692, 476.796, 207.152, 443.485, 192.348, 437.933, 170.14, 415.725, 177.543, 428.68, 246.015, 471.244, 251.567, 587.833, 179.393, 573.028, 140.53, 645.202, 159.036, 573.028, 94.2648, 582.281, 47.9994, 667.409, 75.7586, 710.106, 179.216, 700.721, 268.223, 682.214, 284.878, 695.169, 303.385, 706.272, 501.401, 669.26, 529.16, 602.638, 523.608, 571.177, 501.401, 536.407, 524.944, 371.311, 518.056, 300.441, 497.494, 317.643, 447.733, 182.548, 382.961, 193.651, 423.675, 245.469, 477.343 ), Vector2Array( 350.954, 447.733, 363.908, 351.501, 321.344, 338.546, 241.767, 327.443, 234.365, 244.165, 288.033, 231.211, 221.41, 171.991, 189.95, 231.211, 175.145, 332.995, 184.398, 349.65, 265.825, 407.019 ), Vector2Array( 267.676, 153.485, 310.24, 112.771, 308.39, 92.4142, 487.899, 85.0117, 502.704, 97.9661, 495.302, 164.588, 465.692, 179.393, 452.738, 166.439, 476.796, 149.783, 460.14, 123.875, 319.493, 190.497 ), Vector2Array( 397.219, 188.646, 345.402, 210.854, 360.207, 223.808, 297.286, 258.97, 299.136, 283.028, 352.804, 320.04, 424.978, 334.845, 421.277, 360.754, 384.265, 351.501, 376.862, 418.123, 480.497, 434.779, 508.256, 281.177, 421.277, 270.074 ), Vector2Array( 497.153, 255.269, 597.086, 192.348, 630.397, 212.704, 650.754, 251.567, 648.903, 321.891, 669.26, 297.833, 676.663, 493.998, 619.293, 510.654, 598.937, 492.148, 621.144, 486.596, 648.903, 394.065, 624.926, 359.595, 526.762, 342.248, 530.464, 284.878, 587.833, 271.924 ), Vector2Array( 325.228, 486.302, 332.441, 457.494, 366.441, 467.494, 373.441, 436.494, 476.441, 468.494, 518.035, 461.477, 524.608, 359.37, 618.011, 402.479, 605.437, 456.366, 538.077, 499.891, 395.879, 501.87 ) ]
[node name="navigation" type="Navigation2D"]
script/script = ExtResource( 1 )
[node name="path" type="Sprite" parent="."]
transform/pos = Vector2( 429.585, 287.32 )
texture = ExtResource( 2 )
[node name="navpoly" type="NavigationPolygonInstance" parent="."]
navpoly = SubResource( 1 )
enabled = true
[node name="agent" type="Sprite" parent="."]
transform/pos = Vector2( 228.464, 132.594 )
transform/scale = Vector2( 0.5, 0.5 )
texture = ExtResource( 3 )
offset = Vector2( 0, -26 )

View File

@ -1,7 +1,7 @@
[application] [application]
name="2D Normal Mapping" name="2D Normal Mapping"
main_scene="res://normalmap.scn" main_scene="res://normalmap.tscn"
icon="res://icon.png" icon="res://icon.png"
[display] [display]

View File

@ -0,0 +1,14 @@
[gd_resource type="CanvasItemMaterial" load_steps=3 format=1]
[ext_resource path="res://normal.jpg" type="Texture" id=1]
[sub_resource type="CanvasItemShader" id=1]
_code = { "fragment":"uniform texture normal;\n//normal maps expect Y-up, but 2D is Y-down, so must mirror this.\nNORMAL = tex(normal,UV).rgb * vec3(2.0,-2.0,1.0) - vec3(1.0,-1.0,0.0);", "fragment_ofs":0, "light":"", "light_ofs":0, "vertex":"", "vertex_ofs":0 }
[resource]
shader/shader = SubResource( 1 )
shader/shading_mode = 0
shader_param/normal = ExtResource( 1 )

Binary file not shown.

View File

@ -0,0 +1,63 @@
[gd_scene load_steps=5 format=1]
[ext_resource path="res://normal_material.tres" type="CanvasItemMaterial" id=1]
[ext_resource path="res://diffuse.jpg" type="Texture" id=2]
[ext_resource path="res://light.png" type="Texture" id=3]
[sub_resource type="Animation" id=1]
resource/name = "motion"
length = 10.0
loop = true
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("light:transform/pos")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0, 2.5, 5, 7.5 ), "transitions":FloatArray( -2, -2, -2, -2 ), "values":[ Vector2( 177.912, 174.508 ), Vector2( 612.159, 161.147 ), Vector2( 667.275, 526.917 ), Vector2( 177.912, 526.917 ) ] }
[node name="base" type="Node2D"]
[node name="sprite" type="Sprite" parent="."]
material/material = ExtResource( 1 )
transform/pos = Vector2( 400, 300 )
texture = ExtResource( 2 )
[node name="ambient" type="CanvasModulate" parent="."]
color = Color( 0.0657094, 0.202485, 0.328838, 1 )
[node name="light" type="Light2D" parent="."]
transform/pos = Vector2( 177.912, 174.508 )
enabled = true
texture = ExtResource( 3 )
offset = Vector2( 0, 0 )
scale = 0.8
color = Color( 1, 1, 1, 1 )
energy = 1.0
mode = 0
range/height = 200.0
range/z_min = -1024
range/z_max = 1024
range/layer_min = 0
range/layer_max = 0
range/item_mask = 1
shadow/enabled = false
shadow/color = Color( 0, 0, 0, 0 )
shadow/buffer_size = 2048
shadow/esm_multiplier = 80.0
shadow/item_mask = 1
[node name="anim" type="AnimationPlayer" parent="."]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/motion = SubResource( 1 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = "motion"

View File

@ -1,5 +1,5 @@
[application] [application]
name="Particle Systems" name="Particle Systems"
main_scene="res://particles.xml" main_scene="res://particles.tscn"
icon="res://icon.png" icon="res://icon.png"

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,115 @@
[gd_scene load_steps=6 format=1]
[ext_resource path="res://bullet.gd" type="Script" id=1]
[ext_resource path="res://bullet.png" type="Texture" id=2]
[sub_resource type="CircleShape2D" id=1]
custom_solver_bias = 0.0
radius = 10.0
[sub_resource type="ColorRamp" id=2]
offsets = FloatArray( 0, 1 )
colors = ColorArray( 1, 1, 1, 1, 1, 0, 0, 0 )
[sub_resource type="Animation" id=3]
length = 1.5
loop = false
step = 0.0
tracks/0/type = "value"
tracks/0/path = NodePath("particles:config/emitting")
tracks/0/interp = 1
tracks/0/keys = { "cont":false, "times":FloatArray( 0 ), "transitions":FloatArray( 1 ), "values":[ false ] }
tracks/1/type = "value"
tracks/1/path = NodePath("sprite:visibility/self_opacity")
tracks/1/interp = 1
tracks/1/keys = { "cont":true, "times":FloatArray( 0, 1.00394 ), "transitions":FloatArray( 1, 1 ), "values":[ 1.0, 0.0 ] }
tracks/2/type = "method"
tracks/2/path = NodePath(".")
tracks/2/interp = 1
tracks/2/keys = { "times":FloatArray( 1.31 ), "transitions":FloatArray( 1 ), "values":[ { "args":[ ], "method":"queue_free" } ] }
[node name="bullet" type="RigidBody2D"]
input/pickable = false
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
collision/layers = 1
collision/mask = 1
mode = 0
mass = 1.0
friction = 1.0
bounce = 0.0
gravity_scale = 1.0
custom_integrator = false
continuous_cd = 2
contacts_reported = 0
contact_monitor = false
sleeping = false
can_sleep = true
velocity/linear = Vector2( 0, 0 )
velocity/angular = 0.0
damp_override/linear = -1.0
damp_override/angular = -1.0
script/script = ExtResource( 1 )
[node name="particles" type="Particles2D" parent="."]
visibility/opacity = 0.559322
visibility/blend_mode = 1
config/amount = 24
config/lifetime = 0.1
config/local_space = false
config/texture = ExtResource( 2 )
params/direction = 0.0
params/spread = 10.0
params/linear_velocity = 0.0
params/spin_velocity = 0.0
params/orbit_velocity = 0.0
params/gravity_direction = 0.0
params/gravity_strength = 0.0
params/radial_accel = 0.0
params/tangential_accel = 0.0
params/damping = 0.0
params/initial_angle = 0.0
params/initial_size = 1.0
params/final_size = 0.0
params/hue_variation = 0.0
params/anim_speed_scale = 1.0
params/anim_initial_pos = 0.0
color/color_ramp = SubResource( 2 )
[node name="sprite" type="Sprite" parent="."]
texture = ExtResource( 2 )
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1
[node name="Timer" type="Timer" parent="."]
process_mode = 1
wait_time = 1.0
one_shot = true
autostart = false
[node name="anim" type="AnimationPlayer" parent="."]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/shutdown = SubResource( 3 )
playback/active = true
playback/speed = 1.0
blend_times = [ ]
autoplay = ""
[connection signal="timeout" from="Timer" to="." method="disable"]

View File

@ -1,333 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<resource_file type="PackedScene" subresource_count="6" version="2.0" version_name="Godot Engine v2.0.alpha.custom_build">
<ext_resource path="res://bullet.png" type="Texture" index="1"></ext_resource>
<ext_resource path="res://bullet.gd" type="Script" index="0"></ext_resource>
<resource type="CircleShape2D" path="local://1">
<real name="custom_solver_bias"> 0 </real>
<real name="radius"> 10 </real>
</resource>
<resource type="ColorRamp" path="local://3">
<real_array name="offsets" len="2"> 0, 1 </real_array>
<color_array name="colors" len="2"> 1, 1, 1, 1, 1, 0, 0, 0 </color_array>
</resource>
<resource type="Animation" path="local://2">
<string name="resource/name"> "shutdown" </string>
<real name="length"> 1.5 </real>
<bool name="loop"> False </bool>
<real name="step"> 0 </real>
<string name="tracks/0/type"> "value" </string>
<node_path name="tracks/0/path"> "particles:config/emitting" </node_path>
<int name="tracks/0/interp"> 1 </int>
<dictionary name="tracks/0/keys" shared="false">
<string> "cont" </string>
<bool> False </bool>
<string> "times" </string>
<real_array len="1"> 0 </real_array>
<string> "transitions" </string>
<real_array len="1"> 1 </real_array>
<string> "values" </string>
<array len="1" shared="false">
<bool> False </bool>
</array>
</dictionary>
<string name="tracks/1/type"> "value" </string>
<node_path name="tracks/1/path"> "sprite:visibility/self_opacity" </node_path>
<int name="tracks/1/interp"> 1 </int>
<dictionary name="tracks/1/keys" shared="false">
<string> "cont" </string>
<bool> True </bool>
<string> "times" </string>
<real_array len="2"> 0, 1.00394 </real_array>
<string> "transitions" </string>
<real_array len="2"> 1, 1 </real_array>
<string> "values" </string>
<array len="2" shared="false">
<real> 1 </real>
<real> 0 </real>
</array>
</dictionary>
<string name="tracks/2/type"> "method" </string>
<node_path name="tracks/2/path"> "." </node_path>
<int name="tracks/2/interp"> 1 </int>
<dictionary name="tracks/2/keys" shared="false">
<string> "times" </string>
<real_array len="1"> 1.31 </real_array>
<string> "transitions" </string>
<real_array len="1"> 1 </real_array>
<string> "values" </string>
<array len="1" shared="false">
<dictionary shared="false">
<string> "args" </string>
<array len="0" shared="false">
</array>
<string> "method" </string>
<string> "queue_free" </string>
</dictionary>
</array>
</dictionary>
</resource>
<main_resource>
<dictionary name="_bundled" shared="false">
<string> "conn_count" </string>
<int> 1 </int>
<string> "conns" </string>
<int_array len="6"> 4, 0, 73, 72, 2, 0 </int_array>
<string> "editable_instances" </string>
<array len="0" shared="false">
</array>
<string> "names" </string>
<string_array len="74">
<string> "bullet" </string>
<string> "input/pickable" </string>
<string> "shapes/0/shape" </string>
<string> "shapes/0/transform" </string>
<string> "shapes/0/trigger" </string>
<string> "collision/layers" </string>
<string> "collision/mask" </string>
<string> "mode" </string>
<string> "mass" </string>
<string> "friction" </string>
<string> "bounce" </string>
<string> "gravity_scale" </string>
<string> "custom_integrator" </string>
<string> "continuous_cd" </string>
<string> "contacts_reported" </string>
<string> "contact_monitor" </string>
<string> "sleeping" </string>
<string> "can_sleep" </string>
<string> "velocity/linear" </string>
<string> "velocity/angular" </string>
<string> "damp_override/linear" </string>
<string> "damp_override/angular" </string>
<string> "script/script" </string>
<string> "__meta__" </string>
<string> "RigidBody2D" </string>
<string> "particles" </string>
<string> "visibility/opacity" </string>
<string> "visibility/blend_mode" </string>
<string> "config/amount" </string>
<string> "config/lifetime" </string>
<string> "config/local_space" </string>
<string> "config/texture" </string>
<string> "params/direction" </string>
<string> "params/spread" </string>
<string> "params/linear_velocity" </string>
<string> "params/spin_velocity" </string>
<string> "params/orbit_velocity" </string>
<string> "params/gravity_direction" </string>
<string> "params/gravity_strength" </string>
<string> "params/radial_accel" </string>
<string> "params/tangential_accel" </string>
<string> "params/damping" </string>
<string> "params/initial_angle" </string>
<string> "params/initial_size" </string>
<string> "params/final_size" </string>
<string> "params/hue_variation" </string>
<string> "params/anim_speed_scale" </string>
<string> "params/anim_initial_pos" </string>
<string> "color/color_ramp" </string>
<string> "Particles2D" </string>
<string> "sprite" </string>
<string> "texture" </string>
<string> "Sprite" </string>
<string> "CollisionShape2D" </string>
<string> "shape" </string>
<string> "trigger" </string>
<string> "_update_shape_index" </string>
<string> "Timer" </string>
<string> "process_mode" </string>
<string> "wait_time" </string>
<string> "one_shot" </string>
<string> "autostart" </string>
<string> "anim" </string>
<string> "playback/process_mode" </string>
<string> "playback/default_blend_time" </string>
<string> "root/root" </string>
<string> "anims/shutdown" </string>
<string> "playback/active" </string>
<string> "playback/speed" </string>
<string> "blend_times" </string>
<string> "autoplay" </string>
<string> "AnimationPlayer" </string>
<string> "disable" </string>
<string> "timeout" </string>
</string_array>
<string> "node_count" </string>
<int> 6 </int>
<string> "node_paths" </string>
<array len="0" shared="false">
</array>
<string> "nodes" </string>
<int_array len="166"> -1, -1, 24, 0, -1, 23, 1, 0, 2, 1, 3, 2, 4, 0, 5, 3, 6, 3, 7, 4, 8, 5, 9, 5, 10, 6, 11, 5, 12, 0, 13, 7, 14, 4, 15, 0, 16, 0, 17, 8, 18, 9, 19, 6, 20, 10, 21, 10, 22, 11, 23, 12, 0, 0, 0, 49, 25, -1, 23, 26, 13, 27, 3, 28, 14, 29, 15, 30, 0, 31, 16, 32, 6, 33, 17, 34, 6, 35, 6, 36, 6, 37, 6, 38, 6, 39, 6, 40, 6, 41, 6, 42, 6, 43, 5, 44, 6, 45, 6, 46, 5, 47, 6, 48, 18, 0, 0, 0, 52, 50, -1, 1, 51, 16, 0, 0, 0, 53, 53, -1, 3, 54, 1, 55, 0, 56, 19, 0, 0, 0, 57, 57, -1, 4, 58, 3, 59, 5, 60, 8, 61, 0, 0, 0, 0, 71, 62, -1, 8, 63, 3, 64, 6, 65, 20, 66, 21, 67, 8, 68, 5, 69, 22, 70, 23, 0 </int_array>
<string> "variants" </string>
<array len="24" shared="false">
<bool> False </bool>
<resource resource_type="Shape2D" path="local://1"> </resource>
<matrix32> 1, 0, 0, 1, 0, 0 </matrix32>
<int> 1 </int>
<int> 0 </int>
<real> 1 </real>
<real> 0 </real>
<int> 2 </int>
<bool> True </bool>
<vector2> 0, 0 </vector2>
<real> -1 </real>
<resource external="0"> </resource>
<dictionary shared="false">
<string> "__editor_plugin_screen__" </string>
<string> "2D" </string>
<string> "__editor_plugin_states__" </string>
<dictionary shared="false">
<string> "2D" </string>
<dictionary shared="false">
<string> "ofs" </string>
<vector2> -74.7573, -35.9676 </vector2>
<string> "snap_grid" </string>
<bool> False </bool>
<string> "snap_offset" </string>
<vector2> 0, 0 </vector2>
<string> "snap_pixel" </string>
<bool> False </bool>
<string> "snap_relative" </string>
<bool> False </bool>
<string> "snap_rotation" </string>
<bool> False </bool>
<string> "snap_rotation_offset" </string>
<real> 0 </real>
<string> "snap_rotation_step" </string>
<real> 0.261799 </real>
<string> "snap_show_grid" </string>
<bool> False </bool>
<string> "snap_step" </string>
<vector2> 10, 10 </vector2>
<string> "zoom" </string>
<real> 3.424785 </real>
</dictionary>
<string> "3D" </string>
<dictionary shared="false">
<string> "ambient_light_color" </string>
<color> 0.15, 0.15, 0.15, 1 </color>
<string> "default_light" </string>
<bool> True </bool>
<string> "default_srgb" </string>
<bool> False </bool>
<string> "deflight_rot_x" </string>
<real> 0.942478 </real>
<string> "deflight_rot_y" </string>
<real> 0.628319 </real>
<string> "fov" </string>
<real> 45 </real>
<string> "show_grid" </string>
<bool> True </bool>
<string> "show_origin" </string>
<bool> True </bool>
<string> "viewport_mode" </string>
<int> 1 </int>
<string> "viewports" </string>
<array len="4" shared="false">
<dictionary shared="false">
<string> "distance" </string>
<real> 4 </real>
<string> "listener" </string>
<bool> True </bool>
<string> "pos" </string>
<vector3> 0, 0, 0 </vector3>
<string> "use_environment" </string>
<bool> False </bool>
<string> "use_orthogonal" </string>
<bool> False </bool>
<string> "x_rot" </string>
<real> 0 </real>
<string> "y_rot" </string>
<real> 0 </real>
</dictionary>
<dictionary shared="false">
<string> "distance" </string>
<real> 4 </real>
<string> "listener" </string>
<bool> False </bool>
<string> "pos" </string>
<vector3> 0, 0, 0 </vector3>
<string> "use_environment" </string>
<bool> False </bool>
<string> "use_orthogonal" </string>
<bool> False </bool>
<string> "x_rot" </string>
<real> 0 </real>
<string> "y_rot" </string>
<real> 0 </real>
</dictionary>
<dictionary shared="false">
<string> "distance" </string>
<real> 4 </real>
<string> "listener" </string>
<bool> False </bool>
<string> "pos" </string>
<vector3> 0, 0, 0 </vector3>
<string> "use_environment" </string>
<bool> False </bool>
<string> "use_orthogonal" </string>
<bool> False </bool>
<string> "x_rot" </string>
<real> 0 </real>
<string> "y_rot" </string>
<real> 0 </real>
</dictionary>
<dictionary shared="false">
<string> "distance" </string>
<real> 4 </real>
<string> "listener" </string>
<bool> False </bool>
<string> "pos" </string>
<vector3> 0, 0, 0 </vector3>
<string> "use_environment" </string>
<bool> False </bool>
<string> "use_orthogonal" </string>
<bool> False </bool>
<string> "x_rot" </string>
<real> 0 </real>
<string> "y_rot" </string>
<real> 0 </real>
</dictionary>
</array>
<string> "zfar" </string>
<real> 500 </real>
<string> "znear" </string>
<real> 0.1 </real>
</dictionary>
<string> "Anim" </string>
<dictionary shared="false">
<string> "visible" </string>
<bool> False </bool>
</dictionary>
</dictionary>
<string> "__editor_run_settings__" </string>
<dictionary shared="false">
<string> "custom_args" </string>
<string> "-l $scene" </string>
<string> "run_mode" </string>
<int> 0 </int>
</dictionary>
</dictionary>
<real> 0.559322 </real>
<int> 24 </int>
<real> 0.1 </real>
<resource external="1"> </resource>
<real> 10 </real>
<resource resource_type="ColorRamp" path="local://3"> </resource>
<int> -1 </int>
<node_path> ".." </node_path>
<resource resource_type="Animation" path="local://2"> </resource>
<array len="0" shared="false">
</array>
<string> "" </string>
</array>
<string> "version" </string>
<int> 2 </int>
</dictionary>
</main_resource>
</resource_file>

View File

@ -0,0 +1,146 @@
[gd_scene load_steps=10 format=1]
[ext_resource path="res://coin.gd" type="Script" id=1]
[ext_resource path="res://coin.png" type="Texture" id=2]
[ext_resource path="res://sound_coin.wav" type="Sample" id=3]
[ext_resource path="res://bullet.png" type="Texture" id=4]
[sub_resource type="CircleShape2D" id=1]
custom_solver_bias = 0.0
radius = 10.0
[sub_resource type="Animation" id=2]
resource/name = "spin"
length = 1.5
loop = true
step = 0.25
tracks/0/type = "value"
tracks/0/path = NodePath("sprite:frame")
tracks/0/interp = 1
tracks/0/keys = { "cont":false, "times":FloatArray( 0, 0.25, 0.5, 0.75, 1, 1.25, 1.5 ), "transitions":FloatArray( 1, 1, 1, 1, 1, 1, 1 ), "values":[ 0, 1, 2, 3, 2, 1, 0 ] }
[sub_resource type="Animation" id=3]
length = 8.0
loop = false
step = 0.0
tracks/0/type = "value"
tracks/0/path = NodePath("sprite:frame")
tracks/0/interp = 1
tracks/0/keys = { "cont":true, "times":FloatArray( 0 ), "transitions":FloatArray( 1 ), "values":[ 0 ] }
tracks/1/type = "value"
tracks/1/path = NodePath("sound:play/play")
tracks/1/interp = 1
tracks/1/keys = { "cont":false, "times":FloatArray( 0 ), "transitions":FloatArray( 1 ), "values":[ "coin" ] }
tracks/2/type = "value"
tracks/2/path = NodePath("particles:visibility/self_opacity")
tracks/2/interp = 1
tracks/2/keys = { "cont":true, "times":FloatArray( 0, 1.66 ), "transitions":FloatArray( 1, 1 ), "values":[ 1.0, 0.0 ] }
tracks/3/type = "value"
tracks/3/path = NodePath("sprite:visibility/self_opacity")
tracks/3/interp = 1
tracks/3/keys = { "cont":true, "times":FloatArray( 0, 0.4 ), "transitions":FloatArray( 1, 1 ), "values":[ 1.0, 0.0 ] }
tracks/4/type = "value"
tracks/4/path = NodePath("particles:config/emitting")
tracks/4/interp = 1
tracks/4/keys = { "cont":false, "times":FloatArray( 0 ), "transitions":FloatArray( 1 ), "values":[ true ] }
tracks/5/type = "method"
tracks/5/path = NodePath(".")
tracks/5/interp = 1
tracks/5/keys = { "times":FloatArray( 2.7 ), "transitions":FloatArray( 1 ), "values":[ { "args":[ ], "method":"queue_free" } ] }
[sub_resource type="SampleLibrary" id=4]
samples/coin = { "db":0.0, "pitch":1.0, "sample":ExtResource( 3 ) }
[sub_resource type="ColorRamp" id=5]
offsets = FloatArray( 0, 1 )
colors = ColorArray( 1, 1, 1, 1, 0, 0, 0, 1 )
[node name="coin" type="Area2D"]
input/pickable = true
shapes/0/shape = SubResource( 1 )
shapes/0/transform = Matrix32( 1, 0, 0, 1, 0, 0 )
shapes/0/trigger = false
gravity_vec = Vector2( 0, 1 )
gravity = 98.0
linear_damp = 0.1
angular_damp = 1.0
script/script = ExtResource( 1 )
[node name="sprite" type="Sprite" parent="."]
texture = ExtResource( 2 )
hframes = 4
[node name="anim" type="AnimationPlayer" parent="."]
playback/process_mode = 1
playback/default_blend_time = 0.0
root/root = NodePath("..")
anims/spin = SubResource( 2 )
anims/taken = SubResource( 3 )
playback/active = true
playback/speed = 3.0
blend_times = [ ]
autoplay = "spin"
[node name="collision" type="CollisionShape2D" parent="."]
shape = SubResource( 1 )
trigger = false
_update_shape_index = -1
[node name="sound" type="SamplePlayer2D" parent="."]
params/volume_db = 0.0
params/pitch_scale = 1.0
params/attenuation/min_distance = 1.0
params/attenuation/max_distance = 2048.0
params/attenuation/distance_exp = 1.0
config/polyphony = 1
config/samples = SubResource( 4 )
config/pitch_random = 0.0
[node name="particles" type="Particles2D" parent="."]
visibility/blend_mode = 1
config/amount = 8
config/lifetime = 0.4
config/emitting = false
config/half_extents = Vector2( 5, 5 )
config/texture = ExtResource( 4 )
params/direction = 0.0
params/spread = 10.0
params/linear_velocity = 0.0
params/spin_velocity = 0.0
params/orbit_velocity = 0.0
params/gravity_direction = 0.0
params/gravity_strength = 0.0
params/radial_accel = 0.0
params/tangential_accel = 0.0
params/damping = 0.0
params/initial_angle = 0.0
params/initial_size = 0.2
params/final_size = 0.2
params/hue_variation = 0.0
params/anim_speed_scale = 1.0
params/anim_initial_pos = 0.0
color/color_ramp = SubResource( 5 )
[node name="enabler" type="VisibilityEnabler2D" parent="."]
rect = Rect2( -10, -10, 20, 20 )
enabler/pause_animations = true
enabler/freeze_bodies = true
enabler/pause_particles = true
enabler/process_parent = false
enabler/fixed_process_parent = false
[connection signal="body_enter" from="." to="." method="_on_body_enter"]

View File

@ -1,430 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<resource_file type="PackedScene" subresource_count="10" version="2.0" version_name="Godot Engine v2.0.alpha.custom_build">
<ext_resource path="res://bullet.png" type="Texture" index="3"></ext_resource>
<ext_resource path="res://coin.png" type="Texture" index="1"></ext_resource>
<ext_resource path="res://sound_coin.wav" type="Sample" index="2"></ext_resource>
<ext_resource path="res://coin.gd" type="Script" index="0"></ext_resource>
<resource type="CircleShape2D" path="local://1">
<real name="custom_solver_bias"> 0 </real>
<real name="radius"> 10 </real>
</resource>
<resource type="Animation" path="local://2">
<string name="resource/name"> "taken" </string>
<real name="length"> 8 </real>
<bool name="loop"> False </bool>
<real name="step"> 0 </real>
<string name="tracks/0/type"> "value" </string>
<node_path name="tracks/0/path"> "sprite:frame" </node_path>
<int name="tracks/0/interp"> 1 </int>
<dictionary name="tracks/0/keys" shared="false">
<string> "cont" </string>
<bool> True </bool>
<string> "times" </string>
<real_array len="1"> 0 </real_array>
<string> "transitions" </string>
<real_array len="1"> 1 </real_array>
<string> "values" </string>
<array len="1" shared="false">
<int> 0 </int>
</array>
</dictionary>
<string name="tracks/1/type"> "value" </string>
<node_path name="tracks/1/path"> "sound:play/play" </node_path>
<int name="tracks/1/interp"> 1 </int>
<dictionary name="tracks/1/keys" shared="false">
<string> "cont" </string>
<bool> False </bool>
<string> "times" </string>
<real_array len="1"> 0 </real_array>
<string> "transitions" </string>
<real_array len="1"> 1 </real_array>
<string> "values" </string>
<array len="1" shared="false">
<string> "coin" </string>
</array>
</dictionary>
<string name="tracks/2/type"> "value" </string>
<node_path name="tracks/2/path"> "particles:visibility/self_opacity" </node_path>
<int name="tracks/2/interp"> 1 </int>
<dictionary name="tracks/2/keys" shared="false">
<string> "cont" </string>
<bool> True </bool>
<string> "times" </string>
<real_array len="2"> 0, 1.66 </real_array>
<string> "transitions" </string>
<real_array len="2"> 1, 1 </real_array>
<string> "values" </string>
<array len="2" shared="false">
<real> 1 </real>
<real> 0 </real>
</array>
</dictionary>
<string name="tracks/3/type"> "value" </string>
<node_path name="tracks/3/path"> "sprite:visibility/self_opacity" </node_path>
<int name="tracks/3/interp"> 1 </int>
<dictionary name="tracks/3/keys" shared="false">
<string> "cont" </string>
<bool> True </bool>
<string> "times" </string>
<real_array len="2"> 0, 0.4 </real_array>
<string> "transitions" </string>
<real_array len="2"> 1, 1 </real_array>
<string> "values" </string>
<array len="2" shared="false">
<real> 1 </real>
<real> 0 </real>
</array>
</dictionary>
<string name="tracks/4/type"> "value" </string>
<node_path name="tracks/4/path"> "particles:config/emitting" </node_path>
<int name="tracks/4/interp"> 1 </int>
<dictionary name="tracks/4/keys" shared="false">
<string> "cont" </string>
<bool> False </bool>
<string> "times" </string>
<real_array len="1"> 0 </real_array>
<string> "transitions" </string>
<real_array len="1"> 1 </real_array>
<string> "values" </string>
<array len="1" shared="false">
<bool> True </bool>
</array>
</dictionary>
<string name="tracks/5/type"> "method" </string>
<node_path name="tracks/5/path"> "." </node_path>
<int name="tracks/5/interp"> 1 </int>
<dictionary name="tracks/5/keys" shared="false">
<string> "times" </string>
<real_array len="1"> 2.7 </real_array>
<string> "transitions" </string>
<real_array len="1"> 1 </real_array>
<string> "values" </string>
<array len="1" shared="false">
<dictionary shared="false">
<string> "args" </string>
<array len="0" shared="false">
</array>
<string> "method" </string>
<string> "queue_free" </string>
</dictionary>
</array>
</dictionary>
</resource>
<resource type="Animation" path="local://3">
<string name="resource/name"> "spin" </string>
<real name="length"> 1.5 </real>
<bool name="loop"> True </bool>
<real name="step"> 0.25 </real>
<string name="tracks/0/type"> "value" </string>
<node_path name="tracks/0/path"> "sprite:frame" </node_path>
<int name="tracks/0/interp"> 1 </int>
<dictionary name="tracks/0/keys" shared="false">
<string> "cont" </string>
<bool> False </bool>
<string> "times" </string>
<real_array len="7"> 0, 0.25, 0.5, 0.75, 1, 1.25, 1.5 </real_array>
<string> "transitions" </string>
<real_array len="7"> 1, 1, 1, 1, 1, 1, 1 </real_array>
<string> "values" </string>
<array len="7" shared="false">
<int> 0 </int>
<int> 1 </int>
<int> 2 </int>
<int> 3 </int>
<int> 2 </int>
<int> 1 </int>
<int> 0 </int>
</array>
</dictionary>
</resource>
<resource type="SampleLibrary" path="local://4">
<dictionary name="samples/coin" shared="false">
<string> "db" </string>
<real> 0 </real>
<string> "pitch" </string>
<real> 1 </real>
<string> "sample" </string>
<resource external="2"> </resource>
</dictionary>
</resource>
<resource type="ColorRamp" path="local://5">
<real_array name="offsets" len="2"> 0, 1 </real_array>
<color_array name="colors" len="2"> 1, 1, 1, 1, 0, 0, 0, 1 </color_array>
</resource>
<main_resource>
<dictionary name="_bundled" shared="false">
<string> "conn_count" </string>
<int> 1 </int>
<string> "conns" </string>
<int_array len="6"> 0, 0, 76, 75, 2, 0 </int_array>
<string> "editable_instances" </string>
<array len="0" shared="false">
</array>
<string> "names" </string>
<string_array len="77">
<string> "coin" </string>
<string> "input/pickable" </string>
<string> "shapes/0/shape" </string>
<string> "shapes/0/transform" </string>
<string> "shapes/0/trigger" </string>
<string> "gravity_vec" </string>
<string> "gravity" </string>
<string> "linear_damp" </string>
<string> "angular_damp" </string>
<string> "script/script" </string>
<string> "__meta__" </string>
<string> "Area2D" </string>
<string> "sprite" </string>
<string> "texture" </string>
<string> "hframes" </string>
<string> "Sprite" </string>
<string> "anim" </string>
<string> "playback/process_mode" </string>
<string> "playback/default_blend_time" </string>
<string> "root/root" </string>
<string> "anims/taken" </string>
<string> "anims/spin" </string>
<string> "playback/active" </string>
<string> "playback/speed" </string>
<string> "blend_times" </string>
<string> "autoplay" </string>
<string> "AnimationPlayer" </string>
<string> "collision" </string>
<string> "shape" </string>
<string> "trigger" </string>
<string> "_update_shape_index" </string>
<string> "CollisionShape2D" </string>
<string> "sound" </string>
<string> "params/volume_db" </string>
<string> "params/pitch_scale" </string>
<string> "params/attenuation/min_distance" </string>
<string> "params/attenuation/max_distance" </string>
<string> "params/attenuation/distance_exp" </string>
<string> "config/polyphony" </string>
<string> "config/samples" </string>
<string> "config/pitch_random" </string>
<string> "SamplePlayer2D" </string>
<string> "particles" </string>
<string> "visibility/blend_mode" </string>
<string> "config/amount" </string>
<string> "config/lifetime" </string>
<string> "config/emitting" </string>
<string> "config/half_extents" </string>
<string> "config/texture" </string>
<string> "params/direction" </string>
<string> "params/spread" </string>
<string> "params/linear_velocity" </string>
<string> "params/spin_velocity" </string>
<string> "params/orbit_velocity" </string>
<string> "params/gravity_direction" </string>
<string> "params/gravity_strength" </string>
<string> "params/radial_accel" </string>
<string> "params/tangential_accel" </string>
<string> "params/damping" </string>
<string> "params/initial_angle" </string>
<string> "params/initial_size" </string>
<string> "params/final_size" </string>
<string> "params/hue_variation" </string>
<string> "params/anim_speed_scale" </string>
<string> "params/anim_initial_pos" </string>
<string> "color/color_ramp" </string>
<string> "Particles2D" </string>
<string> "enabler" </string>
<string> "rect" </string>
<string> "enabler/pause_animations" </string>
<string> "enabler/freeze_bodies" </string>
<string> "enabler/pause_particles" </string>
<string> "enabler/process_parent" </string>
<string> "enabler/fixed_process_parent" </string>
<string> "VisibilityEnabler2D" </string>
<string> "_on_body_enter" </string>
<string> "body_enter" </string>
</string_array>
<string> "node_count" </string>
<int> 7 </int>
<string> "node_paths" </string>
<array len="0" shared="false">
</array>
<string> "nodes" </string>
<int_array len="171"> -1, -1, 11, 0, -1, 10, 1, 0, 2, 1, 3, 2, 4, 3, 5, 4, 6, 5, 7, 6, 8, 7, 9, 8, 10, 9, 0, 0, 0, 15, 12, -1, 2, 13, 10, 14, 11, 0, 0, 0, 26, 16, -1, 9, 17, 12, 18, 13, 19, 14, 20, 15, 21, 16, 22, 0, 23, 17, 24, 18, 25, 19, 0, 0, 0, 31, 27, -1, 3, 28, 1, 29, 3, 30, 20, 0, 0, 0, 41, 32, -1, 8, 33, 13, 34, 7, 35, 7, 36, 21, 37, 7, 38, 12, 39, 22, 40, 13, 0, 0, 0, 66, 42, -1, 23, 43, 12, 44, 23, 45, 24, 46, 3, 47, 25, 48, 26, 49, 13, 50, 27, 51, 13, 52, 13, 53, 13, 54, 13, 55, 13, 56, 13, 57, 13, 58, 13, 59, 13, 60, 28, 61, 28, 62, 13, 63, 7, 64, 13, 65, 29, 0, 0, 0, 74, 67, -1, 6, 68, 30, 69, 0, 70, 0, 71, 0, 72, 3, 73, 3, 0 </int_array>
<string> "variants" </string>
<array len="31" shared="false">
<bool> True </bool>
<resource resource_type="Shape2D" path="local://1"> </resource>
<matrix32> 1, 0, 0, 1, 0, 0 </matrix32>
<bool> False </bool>
<vector2> 0, 1 </vector2>
<real> 98 </real>
<real> 0.1 </real>
<real> 1 </real>
<resource external="0"> </resource>
<dictionary shared="false">
<string> "__editor_plugin_screen__" </string>
<string> "2D" </string>
<string> "__editor_plugin_states__" </string>
<dictionary shared="false">
<string> "2D" </string>
<dictionary shared="false">
<string> "ofs" </string>
<vector2> -34.3697, -21.6562 </vector2>
<string> "snap_grid" </string>
<bool> False </bool>
<string> "snap_offset" </string>
<vector2> 0, 0 </vector2>
<string> "snap_pixel" </string>
<bool> False </bool>
<string> "snap_relative" </string>
<bool> False </bool>
<string> "snap_rotation" </string>
<bool> False </bool>
<string> "snap_rotation_offset" </string>
<real> 0 </real>
<string> "snap_rotation_step" </string>
<real> 0.261799 </real>
<string> "snap_show_grid" </string>
<bool> False </bool>
<string> "snap_step" </string>
<vector2> 10, 10 </vector2>
<string> "zoom" </string>
<real> 3.794776 </real>
</dictionary>
<string> "3D" </string>
<dictionary shared="false">
<string> "ambient_light_color" </string>
<color> 0.15, 0.15, 0.15, 1 </color>
<string> "default_light" </string>
<bool> True </bool>
<string> "default_srgb" </string>
<bool> False </bool>
<string> "deflight_rot_x" </string>
<real> 0.942478 </real>
<string> "deflight_rot_y" </string>
<real> 0.628319 </real>
<string> "fov" </string>
<real> 45 </real>
<string> "show_grid" </string>
<bool> True </bool>
<string> "show_origin" </string>
<bool> True </bool>
<string> "viewport_mode" </string>
<int> 1 </int>
<string> "viewports" </string>
<array len="4" shared="false">
<dictionary shared="false">
<string> "distance" </string>
<real> 4 </real>
<string> "listener" </string>
<bool> True </bool>
<string> "pos" </string>
<vector3> 0, 0, 0 </vector3>
<string> "use_environment" </string>
<bool> False </bool>
<string> "use_orthogonal" </string>
<bool> False </bool>
<string> "x_rot" </string>
<real> 0 </real>
<string> "y_rot" </string>
<real> 0 </real>
</dictionary>
<dictionary shared="false">
<string> "distance" </string>
<real> 4 </real>
<string> "listener" </string>
<bool> False </bool>
<string> "pos" </string>
<vector3> 0, 0, 0 </vector3>
<string> "use_environment" </string>
<bool> False </bool>
<string> "use_orthogonal" </string>
<bool> False </bool>
<string> "x_rot" </string>
<real> 0 </real>
<string> "y_rot" </string>
<real> 0 </real>
</dictionary>
<dictionary shared="false">
<string> "distance" </string>
<real> 4 </real>
<string> "listener" </string>
<bool> False </bool>
<string> "pos" </string>
<vector3> 0, 0, 0 </vector3>
<string> "use_environment" </string>
<bool> False </bool>
<string> "use_orthogonal" </string>
<bool> False </bool>
<string> "x_rot" </string>
<real> 0 </real>
<string> "y_rot" </string>
<real> 0 </real>
</dictionary>
<dictionary shared="false">
<string> "distance" </string>
<real> 4 </real>
<string> "listener" </string>
<bool> False </bool>
<string> "pos" </string>
<vector3> 0, 0, 0 </vector3>
<string> "use_environment" </string>
<bool> False </bool>
<string> "use_orthogonal" </string>
<bool> False </bool>
<string> "x_rot" </string>
<real> 0 </real>
<string> "y_rot" </string>
<real> 0 </real>
</dictionary>
</array>
<string> "zfar" </string>
<real> 500 </real>
<string> "znear" </string>
<real> 0.1 </real>
</dictionary>
<string> "Anim" </string>
<dictionary shared="false">
<string> "visible" </string>
<bool> False </bool>
</dictionary>
</dictionary>
<string> "__editor_run_settings__" </string>
<dictionary shared="false">
<string> "custom_args" </string>
<string> "-l $scene" </string>
<string> "run_mode" </string>
<int> 0 </int>
</dictionary>
</dictionary>
<resource external="1"> </resource>
<int> 4 </int>
<int> 1 </int>
<real> 0 </real>
<node_path> ".." </node_path>
<resource resource_type="Animation" path="local://2"> </resource>
<resource resource_type="Animation" path="local://3"> </resource>
<real> 3 </real>
<array len="0" shared="false">
</array>
<string> "spin" </string>
<int> -1 </int>
<real> 2048 </real>
<resource resource_type="SampleLibrary" path="local://4"> </resource>
<int> 8 </int>
<real> 0.4 </real>
<vector2> 5, 5 </vector2>
<resource external="3"> </resource>
<real> 10 </real>
<real> 0.2 </real>
<resource resource_type="ColorRamp" path="local://5"> </resource>
<rect2> -10, -10, 20, 20 </rect2>
</array>
<string> "version" </string>
<int> 2 </int>
</dictionary>
</main_resource>
</resource_file>

Some files were not shown because too many files have changed in this diff Show More