mirror of
https://github.com/godotengine/godot-demo-projects.git
synced 2025-12-16 05:20:06 +01:00
Convert demos to Godot 4 using regular expressions in a script
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/bullet.png-ff1424653e10246c11e3724e402c519e.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/bullet.png-ff1424653e10246c11e3724e402c519e.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://bullet.png"
|
||||
dest_files=[ "res://.import/bullet.png-ff1424653e10246c11e3724e402c519e.stex" ]
|
||||
dest_files=["res://.godot/imported/bullet.png-ff1424653e10246c11e3724e402c519e.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -26,32 +26,32 @@ class Bullet:
|
||||
func _ready():
|
||||
randomize()
|
||||
|
||||
shape = Physics2DServer.circle_shape_create()
|
||||
shape = PhysicsServer2D.circle_shape_create()
|
||||
# Set the collision shape's radius for each bullet in pixels.
|
||||
Physics2DServer.shape_set_data(shape, 8)
|
||||
PhysicsServer2D.shape_set_data(shape, 8)
|
||||
|
||||
for _i in BULLET_COUNT:
|
||||
var bullet = Bullet.new()
|
||||
# Give each bullet its own speed.
|
||||
bullet.speed = rand_range(SPEED_MIN, SPEED_MAX)
|
||||
bullet.body = Physics2DServer.body_create()
|
||||
bullet.speed = randf_range(SPEED_MIN, SPEED_MAX)
|
||||
bullet.body = PhysicsServer2D.body_create()
|
||||
|
||||
Physics2DServer.body_set_space(bullet.body, get_world_2d().get_space())
|
||||
Physics2DServer.body_add_shape(bullet.body, shape)
|
||||
PhysicsServer2D.body_set_space(bullet.body, get_world_2d().get_space())
|
||||
PhysicsServer2D.body_add_shape(bullet.body, shape)
|
||||
# Don't make bullets check collision with other bullets to improve performance.
|
||||
# Their collision mask is still configured to the default value, which allows
|
||||
# bullets to detect collisions with the player.
|
||||
Physics2DServer.body_set_collision_layer(bullet.body, 0)
|
||||
PhysicsServer2D.body_set_collision_layer(bullet.body, 0)
|
||||
|
||||
# Place bullets randomly on the viewport and move bullets outside the
|
||||
# play area so that they fade in nicely.
|
||||
bullet.position = Vector2(
|
||||
rand_range(0, get_viewport_rect().size.x) + get_viewport_rect().size.x,
|
||||
rand_range(0, get_viewport_rect().size.y)
|
||||
randf_range(0, get_viewport_rect().size.x) + get_viewport_rect().size.x,
|
||||
randf_range(0, get_viewport_rect().size.y)
|
||||
)
|
||||
var transform2d = Transform2D()
|
||||
transform2d.origin = bullet.position
|
||||
Physics2DServer.body_set_state(bullet.body, Physics2DServer.BODY_STATE_TRANSFORM, transform2d)
|
||||
PhysicsServer2D.body_set_state(bullet.body, PhysicsServer2D.BODY_STATE_TRANSFORM, transform2d)
|
||||
|
||||
bullets.push_back(bullet)
|
||||
|
||||
@@ -73,7 +73,7 @@ func _physics_process(delta):
|
||||
|
||||
transform2d.origin = bullet.position
|
||||
|
||||
Physics2DServer.body_set_state(bullet.body, Physics2DServer.BODY_STATE_TRANSFORM, transform2d)
|
||||
PhysicsServer2D.body_set_state(bullet.body, PhysicsServer2D.BODY_STATE_TRANSFORM, transform2d)
|
||||
|
||||
|
||||
# Instead of drawing each bullet individually in a script attached to each bullet,
|
||||
@@ -87,7 +87,7 @@ func _draw():
|
||||
# Perform cleanup operations (required to exit without error messages in the console).
|
||||
func _exit_tree():
|
||||
for bullet in bullets:
|
||||
Physics2DServer.free_rid(bullet.body)
|
||||
PhysicsServer2D.free_rid(bullet.body)
|
||||
|
||||
Physics2DServer.free_rid(shape)
|
||||
PhysicsServer2D.free_rid(shape)
|
||||
bullets.clear()
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/face_happy.png-38d387d31ec13459f749c93ce3d75d80.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/face_happy.png-38d387d31ec13459f749c93ce3d75d80.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://face_happy.png"
|
||||
dest_files=[ "res://.import/face_happy.png-38d387d31ec13459f749c93ce3d75d80.stex" ]
|
||||
dest_files=["res://.godot/imported/face_happy.png-38d387d31ec13459f749c93ce3d75d80.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/face_sad.png-0ac7165eab24f595aba17a746a66c550.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/face_sad.png-0ac7165eab24f595aba17a746a66c550.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://face_sad.png"
|
||||
dest_files=[ "res://.import/face_sad.png-0ac7165eab24f595aba17a746a66c550.stex" ]
|
||||
dest_files=["res://.godot/imported/face_sad.png-0ac7165eab24f595aba17a746a66c550.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://icon.png"
|
||||
dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
|
||||
dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ extends Node2D
|
||||
# The number of bullets currently touched by the player.
|
||||
var touching = 0
|
||||
|
||||
onready var sprite = $AnimatedSprite
|
||||
@onready var sprite = $AnimatedSprite2D
|
||||
|
||||
|
||||
func _ready():
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
config_version=4
|
||||
|
||||
_global_script_classes=[ ]
|
||||
_global_script_classes=[]
|
||||
_global_script_class_icons={
|
||||
}
|
||||
|
||||
@@ -37,4 +37,4 @@ quality/intended_usage/framebuffer_allocation=0
|
||||
quality/intended_usage/framebuffer_allocation.mobile=0
|
||||
vram_compression/import_etc=true
|
||||
vram_compression/import_etc2=false
|
||||
environment/default_clear_color=Color( 0.133333, 0.133333, 0.2, 1 )
|
||||
environment/default_clear_color=Color(0.133333, 0.133333, 0.2, 1)
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
[gd_scene load_steps=7 format=2]
|
||||
|
||||
[ext_resource path="res://bullets.gd" type="Script" id=2]
|
||||
[ext_resource path="res://face_happy.png" type="Texture" id=3]
|
||||
[ext_resource path="res://face_sad.png" type="Texture" id=4]
|
||||
[ext_resource path="res://face_happy.png" type="Texture2D" id=3]
|
||||
[ext_resource path="res://face_sad.png" type="Texture2D" id=4]
|
||||
[ext_resource path="res://player.gd" type="Script" id=5]
|
||||
|
||||
[sub_resource type="SpriteFrames" id=1]
|
||||
animations = [ {
|
||||
"frames": [ ExtResource( 3 ), ExtResource( 4 ) ],
|
||||
animations = [{
|
||||
"frames": [ExtResource( 3 ), ExtResource( 4 )],
|
||||
"loop": true,
|
||||
"name": "default",
|
||||
"speed": 5.0
|
||||
} ]
|
||||
}]
|
||||
|
||||
[sub_resource type="CircleShape2D" id=2]
|
||||
radius = 27.0
|
||||
@@ -24,7 +24,7 @@ script = ExtResource( 2 )
|
||||
[node name="Player" type="Area2D" parent="."]
|
||||
script = ExtResource( 5 )
|
||||
|
||||
[node name="AnimatedSprite" type="AnimatedSprite" parent="Player"]
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="Player"]
|
||||
frames = SubResource( 1 )
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Player"]
|
||||
|
||||
@@ -10,10 +10,10 @@ func show_message(text):
|
||||
|
||||
func show_game_over():
|
||||
show_message("Game Over")
|
||||
yield($MessageTimer, "timeout")
|
||||
await $MessageTimer.timeout
|
||||
$MessageLabel.text = "Dodge the\nCreeps"
|
||||
$MessageLabel.show()
|
||||
yield(get_tree().create_timer(1), "timeout")
|
||||
await get_tree().create_timer(1).timeout
|
||||
$StartButton.show()
|
||||
|
||||
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
[gd_scene load_steps=7 format=2]
|
||||
|
||||
[ext_resource path="res://HUD.gd" type="Script" id=1]
|
||||
[ext_resource path="res://fonts/Xolonium-Regular.ttf" type="DynamicFontData" id=2]
|
||||
[ext_resource path="res://fonts/Xolonium-Regular.ttf" type="FontData" id=2]
|
||||
|
||||
[sub_resource type="DynamicFont" id=1]
|
||||
[sub_resource type="Font" id=1]
|
||||
size = 64
|
||||
font_data = ExtResource( 2 )
|
||||
|
||||
[sub_resource type="DynamicFont" id=2]
|
||||
[sub_resource type="Font" id=2]
|
||||
size = 64
|
||||
font_data = ExtResource( 2 )
|
||||
|
||||
[sub_resource type="InputEventAction" id=3]
|
||||
action = "start_game"
|
||||
|
||||
[sub_resource type="ShortCut" id=4]
|
||||
[sub_resource type="Shortcut" id=4]
|
||||
shortcut = SubResource( 3 )
|
||||
|
||||
[node name="HUD" type="CanvasLayer"]
|
||||
@@ -22,7 +22,7 @@ script = ExtResource( 1 )
|
||||
|
||||
[node name="ScoreLabel" type="Label" parent="."]
|
||||
anchor_right = 1.0
|
||||
margin_bottom = 78.0
|
||||
offset_bottom = 78.0
|
||||
custom_fonts/font = SubResource( 1 )
|
||||
text = "0"
|
||||
align = 1
|
||||
@@ -31,8 +31,8 @@ align = 1
|
||||
anchor_top = 0.5
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 0.5
|
||||
margin_top = -79.5
|
||||
margin_bottom = 79.5
|
||||
offset_top = -79.5
|
||||
offset_bottom = 79.5
|
||||
custom_fonts/font = SubResource( 1 )
|
||||
text = "Dodge the
|
||||
Creeps"
|
||||
@@ -43,10 +43,10 @@ anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
margin_left = -90.0
|
||||
margin_top = -200.0
|
||||
margin_right = 90.0
|
||||
margin_bottom = -100.0
|
||||
offset_left = -90.0
|
||||
offset_top = -200.0
|
||||
offset_right = 90.0
|
||||
offset_bottom = -100.0
|
||||
custom_fonts/font = SubResource( 2 )
|
||||
shortcut = SubResource( 4 )
|
||||
text = "Start"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
extends Node
|
||||
|
||||
export(PackedScene) var mob_scene
|
||||
@export var mob_scene: PackedScene
|
||||
var score
|
||||
|
||||
func _ready():
|
||||
@@ -27,10 +27,10 @@ func new_game():
|
||||
|
||||
func _on_MobTimer_timeout():
|
||||
# Create a new instance of the Mob scene.
|
||||
var mob = mob_scene.instance()
|
||||
var mob = mob_scene.instantiate()
|
||||
|
||||
# Choose a random location on Path2D.
|
||||
var mob_spawn_location = get_node("MobPath/MobSpawnLocation")
|
||||
var mob_spawn_location = get_node(^"MobPath/MobSpawnLocation")
|
||||
mob_spawn_location.offset = randi()
|
||||
|
||||
# Set the mob's direction perpendicular to the path direction.
|
||||
@@ -40,11 +40,11 @@ func _on_MobTimer_timeout():
|
||||
mob.position = mob_spawn_location.position
|
||||
|
||||
# Add some randomness to the direction.
|
||||
direction += rand_range(-PI / 4, PI / 4)
|
||||
direction += randf_range(-PI / 4, PI / 4)
|
||||
mob.rotation = direction
|
||||
|
||||
# Choose the velocity for the mob.
|
||||
var velocity = Vector2(rand_range(150.0, 250.0), 0.0)
|
||||
var velocity = Vector2(randf_range(150.0, 250.0), 0.0)
|
||||
mob.linear_velocity = velocity.rotated(direction)
|
||||
|
||||
# Spawn the mob by adding it to the Main scene.
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
|
||||
[sub_resource type="Curve2D" id=1]
|
||||
_data = {
|
||||
"points": PoolVector2Array( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 480, 0, 0, 0, 0, 0, 480, 720, 0, 0, 0, 0, 0, 720, 0, 0, 0, 0, 0, 0 )
|
||||
"points": PackedVector2Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 480, 0, 0, 0, 0, 0, 480, 720, 0, 0, 0, 0, 0, 720, 0, 0, 0, 0, 0, 0)
|
||||
}
|
||||
|
||||
[node name="Main" type="Node"]
|
||||
@@ -19,7 +19,7 @@ mob_scene = ExtResource( 2 )
|
||||
[node name="ColorRect" type="ColorRect" parent="."]
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
color = Color( 0.219608, 0.372549, 0.380392, 1 )
|
||||
color = Color(0.219608, 0.372549, 0.380392, 1)
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
}
|
||||
@@ -36,7 +36,7 @@ wait_time = 2.0
|
||||
one_shot = true
|
||||
|
||||
[node name="StartPosition" type="Position2D" parent="."]
|
||||
position = Vector2( 240, 450 )
|
||||
position = Vector2(240, 450)
|
||||
|
||||
[node name="MobPath" type="Path2D" parent="."]
|
||||
curve = SubResource( 1 )
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
extends RigidBody2D
|
||||
|
||||
func _ready():
|
||||
$AnimatedSprite.playing = true
|
||||
var mob_types = $AnimatedSprite.frames.get_animation_names()
|
||||
$AnimatedSprite.animation = mob_types[randi() % mob_types.size()]
|
||||
$AnimatedSprite2D.playing = true
|
||||
var mob_types = $AnimatedSprite2D.frames.get_animation_names()
|
||||
$AnimatedSprite2D.animation = mob_types[randi() % mob_types.size()]
|
||||
|
||||
|
||||
func _on_VisibilityNotifier2D_screen_exited():
|
||||
|
||||
@@ -1,30 +1,30 @@
|
||||
[gd_scene load_steps=10 format=2]
|
||||
|
||||
[ext_resource path="res://Mob.gd" type="Script" id=1]
|
||||
[ext_resource path="res://art/enemyFlyingAlt_1.png" type="Texture" id=2]
|
||||
[ext_resource path="res://art/enemyFlyingAlt_2.png" type="Texture" id=3]
|
||||
[ext_resource path="res://art/enemyWalking_1.png" type="Texture" id=4]
|
||||
[ext_resource path="res://art/enemyWalking_2.png" type="Texture" id=5]
|
||||
[ext_resource path="res://art/enemySwimming_1.png" type="Texture" id=6]
|
||||
[ext_resource path="res://art/enemySwimming_2.png" type="Texture" id=7]
|
||||
[ext_resource path="res://art/enemyFlyingAlt_1.png" type="Texture2D" id=2]
|
||||
[ext_resource path="res://art/enemyFlyingAlt_2.png" type="Texture2D" id=3]
|
||||
[ext_resource path="res://art/enemyWalking_1.png" type="Texture2D" id=4]
|
||||
[ext_resource path="res://art/enemyWalking_2.png" type="Texture2D" id=5]
|
||||
[ext_resource path="res://art/enemySwimming_1.png" type="Texture2D" id=6]
|
||||
[ext_resource path="res://art/enemySwimming_2.png" type="Texture2D" id=7]
|
||||
|
||||
[sub_resource type="SpriteFrames" id=1]
|
||||
animations = [ {
|
||||
"frames": [ ExtResource( 2 ), ExtResource( 3 ) ],
|
||||
animations = [{
|
||||
"frames": [ExtResource( 2 ), ExtResource( 3 )],
|
||||
"loop": true,
|
||||
"name": "fly",
|
||||
"speed": 3.0
|
||||
}, {
|
||||
"frames": [ ExtResource( 6 ), ExtResource( 7 ) ],
|
||||
"frames": [ExtResource( 6 ), ExtResource( 7 )],
|
||||
"loop": true,
|
||||
"name": "swim",
|
||||
"speed": 4.0
|
||||
}, {
|
||||
"frames": [ ExtResource( 4 ), ExtResource( 5 ) ],
|
||||
"frames": [ExtResource( 4 ), ExtResource( 5 )],
|
||||
"loop": true,
|
||||
"name": "walk",
|
||||
"speed": 4.0
|
||||
} ]
|
||||
}]
|
||||
|
||||
[sub_resource type="CapsuleShape2D" id=2]
|
||||
radius = 35.2706
|
||||
@@ -38,8 +38,8 @@ __meta__ = {
|
||||
"_edit_group_": true
|
||||
}
|
||||
|
||||
[node name="AnimatedSprite" type="AnimatedSprite" parent="."]
|
||||
scale = Vector2( 0.75, 0.75 )
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
scale = Vector2(0.75, 0.75)
|
||||
frames = SubResource( 1 )
|
||||
animation = "walk"
|
||||
|
||||
@@ -47,6 +47,6 @@ animation = "walk"
|
||||
rotation = 1.5708
|
||||
shape = SubResource( 2 )
|
||||
|
||||
[node name="VisibilityNotifier2D" type="VisibilityNotifier2D" parent="."]
|
||||
[node name="VisibleOnScreenNotifier2D" type="VisibleOnScreenNotifier2D" parent="."]
|
||||
|
||||
[connection signal="screen_exited" from="VisibilityNotifier2D" to="." method="_on_VisibilityNotifier2D_screen_exited"]
|
||||
[connection signal="screen_exited" from="VisibleOnScreenNotifier2D" to="." method="_on_VisibilityNotifier2D_screen_exited"]
|
||||
|
||||
@@ -2,7 +2,7 @@ extends Area2D
|
||||
|
||||
signal hit
|
||||
|
||||
export var speed = 400 # How fast the player will move (pixels/sec).
|
||||
@export var speed = 400 # How fast the player will move (pixels/sec).
|
||||
var screen_size # Size of the game window.
|
||||
|
||||
func _ready():
|
||||
@@ -23,21 +23,21 @@ func _process(delta):
|
||||
|
||||
if velocity.length() > 0:
|
||||
velocity = velocity.normalized() * speed
|
||||
$AnimatedSprite.play()
|
||||
$AnimatedSprite2D.play()
|
||||
else:
|
||||
$AnimatedSprite.stop()
|
||||
$AnimatedSprite2D.stop()
|
||||
|
||||
position += velocity * delta
|
||||
position.x = clamp(position.x, 0, screen_size.x)
|
||||
position.y = clamp(position.y, 0, screen_size.y)
|
||||
|
||||
if velocity.x != 0:
|
||||
$AnimatedSprite.animation = "right"
|
||||
$AnimatedSprite.flip_v = false
|
||||
$AnimatedSprite.flip_h = velocity.x < 0
|
||||
$AnimatedSprite2D.animation = "right"
|
||||
$AnimatedSprite2D.flip_v = false
|
||||
$AnimatedSprite2D.flip_h = velocity.x < 0
|
||||
elif velocity.y != 0:
|
||||
$AnimatedSprite.animation = "up"
|
||||
$AnimatedSprite.flip_v = velocity.y > 0
|
||||
$AnimatedSprite2D.animation = "up"
|
||||
$AnimatedSprite2D.flip_v = velocity.y > 0
|
||||
|
||||
|
||||
func start(pos):
|
||||
|
||||
@@ -1,43 +1,43 @@
|
||||
[gd_scene load_steps=13 format=2]
|
||||
|
||||
[ext_resource path="res://Player.gd" type="Script" id=1]
|
||||
[ext_resource path="res://art/playerGrey_walk1.png" type="Texture" id=2]
|
||||
[ext_resource path="res://art/playerGrey_walk2.png" type="Texture" id=3]
|
||||
[ext_resource path="res://art/playerGrey_up1.png" type="Texture" id=4]
|
||||
[ext_resource path="res://art/playerGrey_up2.png" type="Texture" id=5]
|
||||
[ext_resource path="res://art/playerGrey_walk1.png" type="Texture2D" id=2]
|
||||
[ext_resource path="res://art/playerGrey_walk2.png" type="Texture2D" id=3]
|
||||
[ext_resource path="res://art/playerGrey_up1.png" type="Texture2D" id=4]
|
||||
[ext_resource path="res://art/playerGrey_up2.png" type="Texture2D" id=5]
|
||||
|
||||
[sub_resource type="SpriteFrames" id=1]
|
||||
animations = [ {
|
||||
"frames": [ ExtResource( 2 ), ExtResource( 3 ) ],
|
||||
animations = [{
|
||||
"frames": [ExtResource( 2 ), ExtResource( 3 )],
|
||||
"loop": true,
|
||||
"name": "right",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [ ExtResource( 4 ), ExtResource( 5 ) ],
|
||||
"frames": [ExtResource( 4 ), ExtResource( 5 )],
|
||||
"loop": true,
|
||||
"name": "up",
|
||||
"speed": 5.0
|
||||
} ]
|
||||
}]
|
||||
|
||||
[sub_resource type="CapsuleShape2D" id=2]
|
||||
radius = 26.1701
|
||||
height = 14.822
|
||||
|
||||
[sub_resource type="Gradient" id=3]
|
||||
colors = PoolColorArray( 1, 1, 1, 0.501961, 1, 1, 1, 0 )
|
||||
colors = PackedColorArray(1, 1, 1, 0.501961, 1, 1, 1, 0)
|
||||
|
||||
[sub_resource type="GradientTexture" id=4]
|
||||
gradient = SubResource( 3 )
|
||||
|
||||
[sub_resource type="Curve" id=5]
|
||||
_data = [ Vector2( 0.00501098, 0.5 ), 0.0, 0.0, 0, 0, Vector2( 0.994989, 0.324 ), 0.0, 0.0, 0, 0 ]
|
||||
_data = [Vector2(0.00501098, 0.5), 0.0, 0.0, 0, 0, Vector2(0.994989, 0.324), 0.0, 0.0, 0, 0]
|
||||
|
||||
[sub_resource type="CurveTexture" id=6]
|
||||
curve = SubResource( 5 )
|
||||
|
||||
[sub_resource type="ParticlesMaterial" id=7]
|
||||
flag_disable_z = true
|
||||
gravity = Vector3( 0, 0, 0 )
|
||||
gravity = Vector3(0, 0, 0)
|
||||
initial_velocity = 1.0
|
||||
orbit_velocity = 0.0
|
||||
orbit_velocity_random = 0.0
|
||||
@@ -52,15 +52,15 @@ __meta__ = {
|
||||
"_edit_group_": true
|
||||
}
|
||||
|
||||
[node name="AnimatedSprite" type="AnimatedSprite" parent="."]
|
||||
scale = Vector2( 0.5, 0.5 )
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
scale = Vector2(0.5, 0.5)
|
||||
frames = SubResource( 1 )
|
||||
animation = "right"
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource( 2 )
|
||||
|
||||
[node name="Trail" type="Particles2D" parent="."]
|
||||
[node name="Trail" type="GPUParticles2D" parent="."]
|
||||
z_index = -1
|
||||
amount = 10
|
||||
speed_scale = 2.0
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
|
||||
importer="ogg_vorbis"
|
||||
type="AudioStreamOGGVorbis"
|
||||
path="res://.import/House In a Forest Loop.ogg-1a6a72ae843ad792b7039931227e8d50.oggstr"
|
||||
path="res://.godot/imported/House In a Forest Loop.ogg-1a6a72ae843ad792b7039931227e8d50.oggstr"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/House In a Forest Loop.ogg"
|
||||
dest_files=[ "res://.import/House In a Forest Loop.ogg-1a6a72ae843ad792b7039931227e8d50.oggstr" ]
|
||||
dest_files=["res://.godot/imported/House In a Forest Loop.ogg-1a6a72ae843ad792b7039931227e8d50.oggstr"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/enemyFlyingAlt_1.png-559f599b16c69b112c1b53f6332e9489.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/enemyFlyingAlt_1.png-559f599b16c69b112c1b53f6332e9489.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://art/enemyFlyingAlt_1.png"
|
||||
dest_files=[ "res://.import/enemyFlyingAlt_1.png-559f599b16c69b112c1b53f6332e9489.stex" ]
|
||||
dest_files=["res://.godot/imported/enemyFlyingAlt_1.png-559f599b16c69b112c1b53f6332e9489.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/enemyFlyingAlt_2.png-31dc7310eda6e1b721224f3cd932c076.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/enemyFlyingAlt_2.png-31dc7310eda6e1b721224f3cd932c076.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://art/enemyFlyingAlt_2.png"
|
||||
dest_files=[ "res://.import/enemyFlyingAlt_2.png-31dc7310eda6e1b721224f3cd932c076.stex" ]
|
||||
dest_files=["res://.godot/imported/enemyFlyingAlt_2.png-31dc7310eda6e1b721224f3cd932c076.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/enemySwimming_1.png-dd0e11759dc3d624c8a704f6e98a3d80.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/enemySwimming_1.png-dd0e11759dc3d624c8a704f6e98a3d80.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://art/enemySwimming_1.png"
|
||||
dest_files=[ "res://.import/enemySwimming_1.png-dd0e11759dc3d624c8a704f6e98a3d80.stex" ]
|
||||
dest_files=["res://.godot/imported/enemySwimming_1.png-dd0e11759dc3d624c8a704f6e98a3d80.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/enemySwimming_2.png-4c0cbc0732264c4ea3290340bd4a0a62.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/enemySwimming_2.png-4c0cbc0732264c4ea3290340bd4a0a62.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://art/enemySwimming_2.png"
|
||||
dest_files=[ "res://.import/enemySwimming_2.png-4c0cbc0732264c4ea3290340bd4a0a62.stex" ]
|
||||
dest_files=["res://.godot/imported/enemySwimming_2.png-4c0cbc0732264c4ea3290340bd4a0a62.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/enemyWalking_1.png-5af6eedbe61b701677d490ffdc1e6471.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/enemyWalking_1.png-5af6eedbe61b701677d490ffdc1e6471.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://art/enemyWalking_1.png"
|
||||
dest_files=[ "res://.import/enemyWalking_1.png-5af6eedbe61b701677d490ffdc1e6471.stex" ]
|
||||
dest_files=["res://.godot/imported/enemyWalking_1.png-5af6eedbe61b701677d490ffdc1e6471.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/enemyWalking_2.png-67c480ed60c35e95f5acb0436246b935.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/enemyWalking_2.png-67c480ed60c35e95f5acb0436246b935.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://art/enemyWalking_2.png"
|
||||
dest_files=[ "res://.import/enemyWalking_2.png-67c480ed60c35e95f5acb0436246b935.stex" ]
|
||||
dest_files=["res://.godot/imported/enemyWalking_2.png-67c480ed60c35e95f5acb0436246b935.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
|
||||
importer="wav"
|
||||
type="AudioStreamSample"
|
||||
path="res://.import/gameover.wav-98c95c744b35280048c2bd093cf8a356.sample"
|
||||
path="res://.godot/imported/gameover.wav-98c95c744b35280048c2bd093cf8a356.sample"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/gameover.wav"
|
||||
dest_files=[ "res://.import/gameover.wav-98c95c744b35280048c2bd093cf8a356.sample" ]
|
||||
dest_files=["res://.godot/imported/gameover.wav-98c95c744b35280048c2bd093cf8a356.sample"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/playerGrey_up1.png-6bd114d0a6beac91f48e3a7314d44564.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/playerGrey_up1.png-6bd114d0a6beac91f48e3a7314d44564.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://art/playerGrey_up1.png"
|
||||
dest_files=[ "res://.import/playerGrey_up1.png-6bd114d0a6beac91f48e3a7314d44564.stex" ]
|
||||
dest_files=["res://.godot/imported/playerGrey_up1.png-6bd114d0a6beac91f48e3a7314d44564.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/playerGrey_up2.png-d6aba85f5f2675ebc7045efa7552ee79.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/playerGrey_up2.png-d6aba85f5f2675ebc7045efa7552ee79.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://art/playerGrey_up2.png"
|
||||
dest_files=[ "res://.import/playerGrey_up2.png-d6aba85f5f2675ebc7045efa7552ee79.stex" ]
|
||||
dest_files=["res://.godot/imported/playerGrey_up2.png-d6aba85f5f2675ebc7045efa7552ee79.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/playerGrey_walk1.png-c4773fe7a7bf85d7ab732eb4458c2742.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/playerGrey_walk1.png-c4773fe7a7bf85d7ab732eb4458c2742.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://art/playerGrey_walk1.png"
|
||||
dest_files=[ "res://.import/playerGrey_walk1.png-c4773fe7a7bf85d7ab732eb4458c2742.stex" ]
|
||||
dest_files=["res://.godot/imported/playerGrey_walk1.png-c4773fe7a7bf85d7ab732eb4458c2742.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/playerGrey_walk2.png-34d2d916366100182d08037c51884043.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/playerGrey_walk2.png-34d2d916366100182d08037c51884043.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://art/playerGrey_walk2.png"
|
||||
dest_files=[ "res://.import/playerGrey_walk2.png-34d2d916366100182d08037c51884043.stex" ]
|
||||
dest_files=["res://.godot/imported/playerGrey_walk2.png-34d2d916366100182d08037c51884043.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://icon.png"
|
||||
dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
|
||||
dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -31,38 +31,38 @@ window/stretch/aspect="keep"
|
||||
|
||||
move_left={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777231,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":65,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":14,"pressure":0.0,"pressed":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":-1.0,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
move_right={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777233,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":68,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":15,"pressure":0.0,"pressed":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":1.0,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
move_up={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777232,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":87,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":12,"pressure":0.0,"pressed":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":-1.0,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
move_down={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777234,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":83,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":13,"pressure":0.0,"pressed":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":1.0,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
start_game={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777221,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
]
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777221,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
[gd_scene load_steps=6 format=2]
|
||||
|
||||
[ext_resource path="res://player/Player.tscn" type="PackedScene" id=1]
|
||||
[ext_resource path="res://fonts/source_code_pro_explanations.tres" type="DynamicFont" id=2]
|
||||
[ext_resource path="res://fonts/source_code_pro_explanations.tres" type="Font" id=2]
|
||||
[ext_resource path="res://debug/StatesStackDiplayer.tscn" type="PackedScene" id=3]
|
||||
[ext_resource path="res://debug/ControlsPanel.tscn" type="PackedScene" id=4]
|
||||
[ext_resource path="res://fonts/source_code_pro_explanations_bold.tres" type="DynamicFont" id=5]
|
||||
[ext_resource path="res://fonts/source_code_pro_explanations_bold.tres" type="Font" id=5]
|
||||
|
||||
[node name="Demo" type="Node"]
|
||||
|
||||
[node name="Player" parent="." instance=ExtResource( 1 )]
|
||||
position = Vector2( 640, 400 )
|
||||
position = Vector2(640, 400)
|
||||
|
||||
[node name="Explanations" type="RichTextLabel" parent="."]
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
margin_left = 10.0
|
||||
margin_top = -370.0
|
||||
margin_right = -10.0
|
||||
margin_bottom = -730.0
|
||||
offset_left = 10.0
|
||||
offset_top = -370.0
|
||||
offset_right = -10.0
|
||||
offset_bottom = -730.0
|
||||
rect_clip_content = false
|
||||
mouse_filter = 2
|
||||
size_flags_vertical = 4
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
[gd_scene load_steps=2 format=2]
|
||||
|
||||
[ext_resource path="res://fonts/source_code_pro_explanations.tres" type="DynamicFont" id=1]
|
||||
[ext_resource path="res://fonts/source_code_pro_explanations.tres" type="Font" id=1]
|
||||
|
||||
[node name="ControlsPanel" type="Panel"]
|
||||
anchor_left = 1.0
|
||||
anchor_right = 1.0
|
||||
margin_left = -220.0
|
||||
margin_bottom = 170.0
|
||||
offset_left = -220.0
|
||||
offset_bottom = 170.0
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
}
|
||||
@@ -14,10 +14,10 @@ __meta__ = {
|
||||
[node name="Keys" type="Label" parent="."]
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
margin_left = 10.0
|
||||
margin_top = 10.0
|
||||
margin_right = -10.0
|
||||
margin_bottom = -10.0
|
||||
offset_left = 10.0
|
||||
offset_top = 10.0
|
||||
offset_right = -10.0
|
||||
offset_bottom = -10.0
|
||||
custom_fonts/font = ExtResource( 1 )
|
||||
text = "Shoot:
|
||||
Attack:
|
||||
@@ -28,10 +28,10 @@ Sprint:"
|
||||
[node name="Keys2" type="Label" parent="."]
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
margin_left = 10.0
|
||||
margin_top = 10.0
|
||||
margin_right = -10.0
|
||||
margin_bottom = -10.0
|
||||
offset_left = 10.0
|
||||
offset_top = 10.0
|
||||
offset_right = -10.0
|
||||
offset_bottom = -10.0
|
||||
custom_fonts/font = ExtResource( 1 )
|
||||
text = "R
|
||||
F
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
[gd_scene load_steps=3 format=2]
|
||||
|
||||
[ext_resource path="res://fonts/source_code_pro_explanations_bold.tres" type="DynamicFont" id=1]
|
||||
[ext_resource path="res://fonts/source_code_pro_explanations.tres" type="DynamicFont" id=2]
|
||||
[ext_resource path="res://fonts/source_code_pro_explanations_bold.tres" type="Font" id=1]
|
||||
[ext_resource path="res://fonts/source_code_pro_explanations.tres" type="Font" id=2]
|
||||
|
||||
[node name="Explanations" type="RichTextLabel"]
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
margin_left = 10.0
|
||||
margin_top = -370.0
|
||||
margin_right = -10.0
|
||||
margin_bottom = -730.0
|
||||
offset_left = 10.0
|
||||
offset_top = -370.0
|
||||
offset_right = -10.0
|
||||
offset_bottom = -730.0
|
||||
rect_clip_content = false
|
||||
mouse_filter = 2
|
||||
size_flags_vertical = 4
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
[gd_scene load_steps=4 format=2]
|
||||
|
||||
[ext_resource path="res://debug/states_stack_displayer.gd" type="Script" id=1]
|
||||
[ext_resource path="res://fonts/SourceCodePro-Bold.ttf" type="DynamicFontData" id=2]
|
||||
[ext_resource path="res://fonts/SourceCodePro-Bold.ttf" type="FontData" id=2]
|
||||
|
||||
[sub_resource type="DynamicFont" id=1]
|
||||
[sub_resource type="Font" id=1]
|
||||
size = 20
|
||||
use_filter = true
|
||||
font_data = ExtResource( 2 )
|
||||
|
||||
[node name="StatesStackDiplayer" type="Panel"]
|
||||
margin_right = 210.0
|
||||
margin_bottom = 170.0
|
||||
offset_right = 210.0
|
||||
offset_bottom = 170.0
|
||||
script = ExtResource( 1 )
|
||||
__meta__ = {
|
||||
"_edit_group_": true
|
||||
@@ -19,9 +19,9 @@ __meta__ = {
|
||||
[node name="Title" type="Label" parent="."]
|
||||
anchor_left = 0.5
|
||||
anchor_right = 0.5
|
||||
margin_left = -105.0
|
||||
margin_right = 105.0
|
||||
margin_bottom = 40.0
|
||||
offset_left = -105.0
|
||||
offset_right = 105.0
|
||||
offset_bottom = 40.0
|
||||
custom_fonts/font = SubResource( 1 )
|
||||
text = "Pushown"
|
||||
align = 1
|
||||
@@ -29,20 +29,20 @@ valign = 1
|
||||
uppercase = true
|
||||
|
||||
[node name="States" type="Label" parent="."]
|
||||
margin_left = 20.0
|
||||
margin_top = 50.0
|
||||
margin_right = 190.0
|
||||
margin_bottom = 170.0
|
||||
offset_left = 20.0
|
||||
offset_top = 50.0
|
||||
offset_right = 190.0
|
||||
offset_bottom = 170.0
|
||||
custom_fonts/font = SubResource( 1 )
|
||||
text = "Jump
|
||||
Test"
|
||||
align = 1
|
||||
|
||||
[node name="Numbers" type="Label" parent="."]
|
||||
margin_left = 20.0
|
||||
margin_top = 50.0
|
||||
margin_right = 190.0
|
||||
margin_bottom = 170.0
|
||||
offset_left = 20.0
|
||||
offset_top = 50.0
|
||||
offset_right = 190.0
|
||||
offset_bottom = 170.0
|
||||
custom_fonts/font = SubResource( 1 )
|
||||
text = "1.
|
||||
2."
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
extends Panel
|
||||
|
||||
onready var fsm_node = get_node("../../Player/StateMachine")
|
||||
@onready var fsm_node = get_node(^"../../Player/StateMachine")
|
||||
|
||||
func _process(_delta):
|
||||
var states_names = ""
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[gd_resource type="DynamicFont" load_steps=2 format=2]
|
||||
[gd_resource type="Font" load_steps=2 format=2]
|
||||
|
||||
[ext_resource path="res://fonts/SourceCodePro-Bold.ttf" type="DynamicFontData" id=1]
|
||||
[ext_resource path="res://fonts/SourceCodePro-Bold.ttf" type="FontData" id=1]
|
||||
|
||||
[resource]
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
[gd_resource type="DynamicFont" load_steps=2 format=2]
|
||||
[gd_resource type="Font" load_steps=2 format=2]
|
||||
|
||||
[ext_resource path="res://fonts/SourceCodePro-Black.ttf" type="DynamicFontData" id=1]
|
||||
[ext_resource path="res://fonts/SourceCodePro-Black.ttf" type="FontData" id=1]
|
||||
|
||||
[resource]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://icon.png"
|
||||
dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
|
||||
dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -8,12 +8,12 @@
|
||||
[ext_resource path="res://player/states/combat/stagger.gd" type="Script" id=6]
|
||||
[ext_resource path="res://player/states/combat/attack.gd" type="Script" id=7]
|
||||
[ext_resource path="res://player/states/die.gd" type="Script" id=8]
|
||||
[ext_resource path="res://player/shadow.png" type="Texture" id=9]
|
||||
[ext_resource path="res://player/body.png" type="Texture" id=10]
|
||||
[ext_resource path="res://player/shadow.png" type="Texture2D" id=9]
|
||||
[ext_resource path="res://player/body.png" type="Texture2D" id=10]
|
||||
[ext_resource path="res://player/bullet/bullet_spawner.gd" type="Script" id=11]
|
||||
[ext_resource path="res://player/weapon/weapon_pivot.gd" type="Script" id=12]
|
||||
[ext_resource path="res://player/weapon/Sword.tscn" type="PackedScene" id=13]
|
||||
[ext_resource path="res://fonts/SourceCodePro-Bold.ttf" type="DynamicFontData" id=14]
|
||||
[ext_resource path="res://fonts/SourceCodePro-Bold.ttf" type="FontData" id=14]
|
||||
[ext_resource path="res://player/states/debug/state_name_displayer.gd" type="Script" id=15]
|
||||
|
||||
[sub_resource type="Animation" id=1]
|
||||
@@ -27,23 +27,23 @@ tracks/0/loop_wrap = true
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/keys = {
|
||||
"times": PoolRealArray( 0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.4 ),
|
||||
"transitions": PoolRealArray( 1, 1, 1, 1, 1, 1, 1 ),
|
||||
"times": PackedFloat32Array(0, 0.05, 0.1, 0.15, 0.2, 0.25, 0.4),
|
||||
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1),
|
||||
"update": 0,
|
||||
"values": [ Color( 1, 1, 1, 1 ), Color( 1, 0, 0, 1 ), Color( 1, 1, 1, 1 ), Color( 1, 0, 0, 1 ), Color( 1, 1, 1, 1 ), Color( 1, 0, 0, 1 ), Color( 1, 1, 1, 1 ) ]
|
||||
"values": [Color(1, 1, 1, 1), Color(1, 0, 0, 1), Color(1, 1, 1, 1), Color(1, 0, 0, 1), Color(1, 1, 1, 1), Color(1, 0, 0, 1), Color(1, 1, 1, 1)]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id=3]
|
||||
|
||||
[sub_resource type="DynamicFont" id=4]
|
||||
[sub_resource type="Font" id=4]
|
||||
size = 20
|
||||
use_filter = true
|
||||
font_data = ExtResource( 14 )
|
||||
|
||||
[node name="Player" type="KinematicBody2D"]
|
||||
[node name="Player" type="CharacterBody2D"]
|
||||
script = ExtResource( 1 )
|
||||
__meta__ = {
|
||||
"_edit_horizontal_guides_": [ ]
|
||||
"_edit_horizontal_guides_": []
|
||||
}
|
||||
|
||||
[node name="StateMachine" type="Node" parent="."]
|
||||
@@ -72,19 +72,19 @@ anims/idle = SubResource( 1 )
|
||||
anims/stagger = SubResource( 2 )
|
||||
anims/walk = SubResource( 3 )
|
||||
|
||||
[node name="Shadow" type="Sprite" parent="."]
|
||||
self_modulate = Color( 1, 1, 1, 0.361098 )
|
||||
position = Vector2( 0, -4 )
|
||||
[node name="Shadow" type="Sprite2D" parent="."]
|
||||
self_modulate = Color(1, 1, 1, 0.361098)
|
||||
position = Vector2(0, -4)
|
||||
texture = ExtResource( 9 )
|
||||
|
||||
[node name="BodyPivot" type="Position2D" parent="."]
|
||||
|
||||
[node name="Body" type="Sprite" parent="BodyPivot"]
|
||||
position = Vector2( 0, -58 )
|
||||
[node name="Body" type="Sprite2D" parent="BodyPivot"]
|
||||
position = Vector2(0, -58)
|
||||
texture = ExtResource( 10 )
|
||||
|
||||
[node name="BulletSpawn" type="Node2D" parent="BodyPivot"]
|
||||
position = Vector2( 0, -58 )
|
||||
position = Vector2(0, -58)
|
||||
script = ExtResource( 11 )
|
||||
|
||||
[node name="CooldownTimer" type="Timer" parent="BodyPivot/BulletSpawn"]
|
||||
@@ -92,22 +92,22 @@ wait_time = 0.2
|
||||
one_shot = true
|
||||
|
||||
[node name="WeaponPivot" type="Position2D" parent="BodyPivot"]
|
||||
position = Vector2( 0, -58 )
|
||||
position = Vector2(0, -58)
|
||||
script = ExtResource( 12 )
|
||||
|
||||
[node name="Offset" type="Position2D" parent="BodyPivot/WeaponPivot"]
|
||||
position = Vector2( 110, 0 )
|
||||
position = Vector2(110, 0)
|
||||
|
||||
[node name="Sword" parent="BodyPivot/WeaponPivot/Offset" instance=ExtResource( 13 )]
|
||||
|
||||
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="."]
|
||||
polygon = PoolVector2Array( -20, 0, -20, -20, 20, -20, 20, 0 )
|
||||
polygon = PackedVector2Array(-20, 0, -20, -20, 20, -20, 20, 0)
|
||||
|
||||
[node name="StateNameDisplayer" type="Label" parent="."]
|
||||
margin_left = -109.0
|
||||
margin_top = -172.0
|
||||
margin_right = 110.0
|
||||
margin_bottom = -138.0
|
||||
offset_left = -109.0
|
||||
offset_top = -172.0
|
||||
offset_right = 110.0
|
||||
offset_bottom = -138.0
|
||||
custom_fonts/font = SubResource( 4 )
|
||||
text = "Idle"
|
||||
align = 1
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/body.png-313f6363670a5852a7b7126ab476d8b1.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/body.png-313f6363670a5852a7b7126ab476d8b1.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://player/body.png"
|
||||
dest_files=[ "res://.import/body.png-313f6363670a5852a7b7126ab476d8b1.stex" ]
|
||||
dest_files=["res://.godot/imported/body.png-313f6363670a5852a7b7126ab476d8b1.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
[sub_resource type="CircleShape2D" id=1]
|
||||
radius = 12.0
|
||||
|
||||
[node name="Bullet" type="KinematicBody2D"]
|
||||
[node name="Bullet" type="CharacterBody2D"]
|
||||
collision_layer = 2
|
||||
collision_mask = 2
|
||||
script = ExtResource( 1 )
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
extends KinematicBody2D
|
||||
extends CharacterBody2D
|
||||
|
||||
var direction = Vector2()
|
||||
export(float) var speed = 1000.0
|
||||
@export var speed: float = 1000.0
|
||||
|
||||
onready var root = get_tree().root
|
||||
@onready var root = get_tree().root
|
||||
|
||||
func _ready():
|
||||
set_as_toplevel(true)
|
||||
set_as_top_level(true)
|
||||
|
||||
|
||||
func _physics_process(delta):
|
||||
@@ -20,4 +20,4 @@ func _physics_process(delta):
|
||||
|
||||
|
||||
func _draw():
|
||||
draw_circle(Vector2(), $CollisionShape2D.shape.radius, Color.white)
|
||||
draw_circle(Vector2(), $CollisionShape2D.shape.radius, Color.WHITE)
|
||||
|
||||
@@ -12,7 +12,7 @@ func fire():
|
||||
return
|
||||
|
||||
$CooldownTimer.start()
|
||||
var new_bullet = bullet.instance()
|
||||
var new_bullet = bullet.instantiate()
|
||||
add_child(new_bullet)
|
||||
new_bullet.position = global_position
|
||||
new_bullet.direction = owner.look_direction
|
||||
|
||||
@@ -1,11 +1,14 @@
|
||||
extends KinematicBody2D
|
||||
# The Player is a KinematicBody2D, in other words a physics-driven object.
|
||||
extends CharacterBody2D
|
||||
# The Player is a CharacterBody2D, in other words a physics-driven object.
|
||||
# It can move, collide with the world, etc...
|
||||
# The player has a state machine, but the body and the state machine are separate.
|
||||
|
||||
signal direction_changed(new_direction)
|
||||
|
||||
var look_direction = Vector2.RIGHT setget set_look_direction
|
||||
var look_direction = Vector2.RIGHT:
|
||||
set(value):
|
||||
# TODO: Manually copy the code from this method.
|
||||
set_look_direction(value)
|
||||
|
||||
func take_damage(attacker, amount, effect = null):
|
||||
if is_a_parent_of(attacker):
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
extends "res://state_machine/state_machine.gd"
|
||||
|
||||
onready var idle = $Idle
|
||||
onready var move = $Move
|
||||
onready var jump = $Jump
|
||||
onready var stagger = $Stagger
|
||||
onready var attack = $Attack
|
||||
@onready var idle = $Idle
|
||||
@onready var move = $Move
|
||||
@onready var jump = $Jump
|
||||
@onready var stagger = $Stagger
|
||||
@onready var attack = $Attack
|
||||
|
||||
func _ready():
|
||||
states_map = {
|
||||
@@ -24,7 +24,7 @@ func _change_state(state_name):
|
||||
states_stack.push_front(states_map[state_name])
|
||||
if state_name == "jump" and current_state == move:
|
||||
jump.initialize(move.speed, move.velocity)
|
||||
._change_state(state_name)
|
||||
super._change_state(state_name)
|
||||
|
||||
|
||||
func _unhandled_input(event):
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/shadow.png-493c4635eca1ce8bdece629560617dc7.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/shadow.png-493c4635eca1ce8bdece629560617dc7.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://player/shadow.png"
|
||||
dest_files=[ "res://.import/shadow.png-493c4635eca1ce8bdece629560617dc7.stex" ]
|
||||
dest_files=["res://.godot/imported/shadow.png-493c4635eca1ce8bdece629560617dc7.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
extends "res://state_machine/state.gd"
|
||||
|
||||
func enter():
|
||||
owner.get_node("AnimationPlayer").play("idle")
|
||||
owner.get_node(^"AnimationPlayer").play("idle")
|
||||
|
||||
|
||||
func _on_Sword_attack_finished():
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
extends "res://state_machine/state.gd"
|
||||
# The stagger state end with the stagger animation from the AnimationPlayer.
|
||||
# The animation only affects the Body Sprite's modulate property so it
|
||||
# The animation only affects the Body Sprite2D's modulate property so it
|
||||
# could stack with other animations if we had two AnimationPlayer nodes.
|
||||
|
||||
func enter():
|
||||
owner.get_node("AnimationPlayer").play("stagger")
|
||||
owner.get_node(^"AnimationPlayer").play("stagger")
|
||||
|
||||
|
||||
func _on_animation_finished(anim_name):
|
||||
|
||||
@@ -3,11 +3,11 @@ extends Label
|
||||
var start_position = Vector2()
|
||||
|
||||
func _ready():
|
||||
start_position = rect_position
|
||||
start_position = position
|
||||
|
||||
|
||||
func _physics_process(_delta):
|
||||
rect_position = $"../BodyPivot".position + start_position
|
||||
position = $"../BodyPivot".position + start_position
|
||||
|
||||
|
||||
func _on_StateMachine_state_changed(current_state):
|
||||
|
||||
@@ -3,7 +3,7 @@ extends "res://state_machine/state.gd"
|
||||
# Initialize the state. E.g. change the animation.
|
||||
func enter():
|
||||
owner.set_dead(true)
|
||||
owner.get_node("AnimationPlayer").play("die")
|
||||
owner.get_node(^"AnimationPlayer").play("die")
|
||||
|
||||
|
||||
func _on_animation_finished(_anim_name):
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
extends "../motion.gd"
|
||||
|
||||
export(float) var base_max_horizontal_speed = 400.0
|
||||
@export var base_max_horizontal_speed: float = 400.0
|
||||
|
||||
export(float) var air_acceleration = 1000.0
|
||||
export(float) var air_deceleration = 2000.0
|
||||
export(float) var air_steering_power = 50.0
|
||||
@export var air_acceleration: float = 1000.0
|
||||
@export var air_deceleration: float = 2000.0
|
||||
@export var air_steering_power: float = 50.0
|
||||
|
||||
export(float) var gravity = 1600.0
|
||||
@export var gravity: float = 1600.0
|
||||
|
||||
var enter_velocity = Vector2()
|
||||
|
||||
@@ -36,7 +36,7 @@ func enter():
|
||||
horizontal_velocity = Vector2()
|
||||
vertical_speed = 600.0
|
||||
|
||||
owner.get_node("AnimationPlayer").play("idle")
|
||||
owner.get_node(^"AnimationPlayer").play("idle")
|
||||
|
||||
|
||||
func update(delta):
|
||||
@@ -60,6 +60,7 @@ func move_horizontally(delta, direction):
|
||||
var steering_velocity = (target_velocity - horizontal_velocity).normalized() * air_steering_power
|
||||
horizontal_velocity += steering_velocity
|
||||
|
||||
# TODO: This information should be set to the CharacterBody properties instead of arguments.
|
||||
owner.move_and_slide(horizontal_velocity)
|
||||
|
||||
|
||||
@@ -68,4 +69,4 @@ func animate_jump_height(delta):
|
||||
height += vertical_speed * delta
|
||||
height = max(0.0, height)
|
||||
|
||||
owner.get_node("BodyPivot").position.y = -height
|
||||
owner.get_node(^"BodyPivot").position.y = -height
|
||||
|
||||
@@ -8,8 +8,8 @@ func handle_input(event):
|
||||
|
||||
func get_input_direction():
|
||||
var input_direction = Vector2(
|
||||
Input.get_action_strength("move_right") - Input.get_action_strength("move_left"),
|
||||
Input.get_action_strength("move_down") - Input.get_action_strength("move_up")
|
||||
Input.get_axis(&"move_left", &"move_right"),
|
||||
Input.get_axis(&"move_up", &"move_down")
|
||||
)
|
||||
return input_direction
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
extends "on_ground.gd"
|
||||
|
||||
func enter():
|
||||
owner.get_node("AnimationPlayer").play("idle")
|
||||
owner.get_node(^"AnimationPlayer").play("idle")
|
||||
|
||||
|
||||
func handle_input(event):
|
||||
return .handle_input(event)
|
||||
return super.handle_input(event)
|
||||
|
||||
|
||||
func update(_delta):
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
extends "on_ground.gd"
|
||||
|
||||
export(float) var max_walk_speed = 450
|
||||
export(float) var max_run_speed = 700
|
||||
@export var max_walk_speed: float = 450
|
||||
@export var max_run_speed: float = 700
|
||||
|
||||
func enter():
|
||||
speed = 0.0
|
||||
@@ -9,11 +9,11 @@ func enter():
|
||||
|
||||
var input_direction = get_input_direction()
|
||||
update_look_direction(input_direction)
|
||||
owner.get_node("AnimationPlayer").play("walk")
|
||||
owner.get_node(^"AnimationPlayer").play("walk")
|
||||
|
||||
|
||||
func handle_input(event):
|
||||
return .handle_input(event)
|
||||
return super.handle_input(event)
|
||||
|
||||
|
||||
func update(_delta):
|
||||
@@ -36,6 +36,7 @@ func update(_delta):
|
||||
|
||||
func move(speed, direction):
|
||||
velocity = direction.normalized() * speed
|
||||
# TODO: This information should be set to the CharacterBody properties instead of arguments.
|
||||
owner.move_and_slide(velocity, Vector2(), 5, 2)
|
||||
if owner.get_slide_count() == 0:
|
||||
return
|
||||
|
||||
@@ -7,4 +7,4 @@ var velocity = Vector2()
|
||||
func handle_input(event):
|
||||
if event.is_action_pressed("jump"):
|
||||
emit_signal("finished", "jump")
|
||||
return .handle_input(event)
|
||||
return super.handle_input(event)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
[gd_scene load_steps=8 format=2]
|
||||
|
||||
[ext_resource path="res://player/weapon/sword.gd" type="Script" id=1]
|
||||
[ext_resource path="res://player/weapon/sword.png" type="Texture" id=2]
|
||||
[ext_resource path="res://player/weapon/sword.png" type="Texture2D" id=2]
|
||||
|
||||
[sub_resource type="Animation" id=1]
|
||||
resource_name = "SETUP"
|
||||
@@ -12,10 +12,10 @@ tracks/0/loop_wrap = true
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/keys = {
|
||||
"times": PoolRealArray( 0 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [ 0.0 ]
|
||||
"values": [0.0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/path = NodePath(".:scale")
|
||||
@@ -24,10 +24,10 @@ tracks/1/loop_wrap = true
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/keys = {
|
||||
"times": PoolRealArray( 0 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 0,
|
||||
"values": [ Vector2( 1, 1 ) ]
|
||||
"values": [Vector2(1, 1)]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/path = NodePath(".:visible")
|
||||
@@ -36,10 +36,10 @@ tracks/2/loop_wrap = true
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/keys = {
|
||||
"times": PoolRealArray( 0 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ true ]
|
||||
"values": [true]
|
||||
}
|
||||
tracks/3/type = "value"
|
||||
tracks/3/path = NodePath(".:monitoring")
|
||||
@@ -48,10 +48,10 @@ tracks/3/loop_wrap = true
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/keys = {
|
||||
"times": PoolRealArray( 0 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ true ]
|
||||
"values": [true]
|
||||
}
|
||||
tracks/4/type = "value"
|
||||
tracks/4/path = NodePath(".:monitorable")
|
||||
@@ -60,10 +60,10 @@ tracks/4/loop_wrap = true
|
||||
tracks/4/imported = false
|
||||
tracks/4/enabled = true
|
||||
tracks/4/keys = {
|
||||
"times": PoolRealArray( 0 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ false ]
|
||||
"values": [false]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id=2]
|
||||
@@ -77,10 +77,10 @@ tracks/0/loop_wrap = true
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/keys = {
|
||||
"times": PoolRealArray( 0, 0.15, 0.2 ),
|
||||
"transitions": PoolRealArray( 0.439427, 1, 1 ),
|
||||
"times": PackedFloat32Array(0, 0.15, 0.2),
|
||||
"transitions": PackedFloat32Array(0.439427, 1, 1),
|
||||
"update": 0,
|
||||
"values": [ -100.0, 100.0, 90.0 ]
|
||||
"values": [-100.0, 100.0, 90.0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/path = NodePath(".:scale")
|
||||
@@ -89,10 +89,10 @@ tracks/1/loop_wrap = true
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/keys = {
|
||||
"times": PoolRealArray( 0, 0.05, 0.15, 0.2 ),
|
||||
"transitions": PoolRealArray( 1, 2.50795, 1, 1 ),
|
||||
"times": PackedFloat32Array(0, 0.05, 0.15, 0.2),
|
||||
"transitions": PackedFloat32Array(1, 2.50795, 1, 1),
|
||||
"update": 0,
|
||||
"values": [ Vector2( 1, 1 ), Vector2( 1, 1.3 ), Vector2( 1, 1 ), Vector2( 1, 1 ) ]
|
||||
"values": [Vector2(1, 1), Vector2(1, 1.3), Vector2(1, 1), Vector2(1, 1)]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/path = NodePath(".:visible")
|
||||
@@ -101,10 +101,10 @@ tracks/2/loop_wrap = true
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/keys = {
|
||||
"times": PoolRealArray( 0 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ true ]
|
||||
"values": [true]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id=3]
|
||||
@@ -117,10 +117,10 @@ tracks/0/loop_wrap = true
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/keys = {
|
||||
"times": PoolRealArray( 0, 0.15, 0.2 ),
|
||||
"transitions": PoolRealArray( 0.439427, 1, 1 ),
|
||||
"times": PackedFloat32Array(0, 0.15, 0.2),
|
||||
"transitions": PackedFloat32Array(0.439427, 1, 1),
|
||||
"update": 0,
|
||||
"values": [ -80.0, 85.0, 75.0 ]
|
||||
"values": [-80.0, 85.0, 75.0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/path = NodePath(".:scale")
|
||||
@@ -129,10 +129,10 @@ tracks/1/loop_wrap = true
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/keys = {
|
||||
"times": PoolRealArray( 0, 0.05, 0.15, 0.2 ),
|
||||
"transitions": PoolRealArray( 1, 2.50795, 1, 1 ),
|
||||
"times": PackedFloat32Array(0, 0.05, 0.15, 0.2),
|
||||
"transitions": PackedFloat32Array(1, 2.50795, 1, 1),
|
||||
"update": 0,
|
||||
"values": [ Vector2( 1, 1 ), Vector2( 1, 1.3 ), Vector2( 1, 1 ), Vector2( 1, 1 ) ]
|
||||
"values": [Vector2(1, 1), Vector2(1, 1.3), Vector2(1, 1), Vector2(1, 1)]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/path = NodePath(".:visible")
|
||||
@@ -141,10 +141,10 @@ tracks/2/loop_wrap = true
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/keys = {
|
||||
"times": PoolRealArray( 0 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ true ]
|
||||
"values": [true]
|
||||
}
|
||||
tracks/3/type = "method"
|
||||
tracks/3/path = NodePath(".")
|
||||
@@ -153,15 +153,15 @@ tracks/3/loop_wrap = true
|
||||
tracks/3/imported = false
|
||||
tracks/3/enabled = true
|
||||
tracks/3/keys = {
|
||||
"times": PoolRealArray( 0.1, 0.25 ),
|
||||
"transitions": PoolRealArray( 1, 1 ),
|
||||
"values": [ {
|
||||
"args": [ ],
|
||||
"times": PackedFloat32Array(0.1, 0.25),
|
||||
"transitions": PackedFloat32Array(1, 1),
|
||||
"values": [{
|
||||
"args": [],
|
||||
"method": "set_attack_input_listening"
|
||||
}, {
|
||||
"args": [ ],
|
||||
"args": [],
|
||||
"method": "set_ready_for_next_attack"
|
||||
} ]
|
||||
}]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id=4]
|
||||
@@ -175,10 +175,10 @@ tracks/0/loop_wrap = true
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/keys = {
|
||||
"times": PoolRealArray( 0.05, 0.25, 0.35 ),
|
||||
"transitions": PoolRealArray( 0.439427, 1, 1 ),
|
||||
"times": PackedFloat32Array(0.05, 0.25, 0.35),
|
||||
"transitions": PackedFloat32Array(0.439427, 1, 1),
|
||||
"update": 0,
|
||||
"values": [ 95.0, -95.0, -90.0 ]
|
||||
"values": [95.0, -95.0, -90.0]
|
||||
}
|
||||
tracks/1/type = "value"
|
||||
tracks/1/path = NodePath(".:scale")
|
||||
@@ -187,10 +187,10 @@ tracks/1/loop_wrap = true
|
||||
tracks/1/imported = false
|
||||
tracks/1/enabled = true
|
||||
tracks/1/keys = {
|
||||
"times": PoolRealArray( 0, 0.1, 0.2, 0.25 ),
|
||||
"transitions": PoolRealArray( 1, 2.50795, 1, 1 ),
|
||||
"times": PackedFloat32Array(0, 0.1, 0.2, 0.25),
|
||||
"transitions": PackedFloat32Array(1, 2.50795, 1, 1),
|
||||
"update": 0,
|
||||
"values": [ Vector2( 1, 1 ), Vector2( 1, 1.3 ), Vector2( 1, 1 ), Vector2( 1, 1 ) ]
|
||||
"values": [Vector2(1, 1), Vector2(1, 1.3), Vector2(1, 1), Vector2(1, 1)]
|
||||
}
|
||||
tracks/2/type = "value"
|
||||
tracks/2/path = NodePath(".:visible")
|
||||
@@ -199,10 +199,10 @@ tracks/2/loop_wrap = true
|
||||
tracks/2/imported = false
|
||||
tracks/2/enabled = true
|
||||
tracks/2/keys = {
|
||||
"times": PoolRealArray( 0 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ true ]
|
||||
"values": [true]
|
||||
}
|
||||
|
||||
[sub_resource type="Animation" id=5]
|
||||
@@ -214,10 +214,10 @@ tracks/0/loop_wrap = true
|
||||
tracks/0/imported = false
|
||||
tracks/0/enabled = true
|
||||
tracks/0/keys = {
|
||||
"times": PoolRealArray( 0 ),
|
||||
"transitions": PoolRealArray( 1 ),
|
||||
"times": PackedFloat32Array(0),
|
||||
"transitions": PackedFloat32Array(1),
|
||||
"update": 1,
|
||||
"values": [ false ]
|
||||
"values": [false]
|
||||
}
|
||||
|
||||
[node name="Sword" type="Area2D"]
|
||||
@@ -234,10 +234,10 @@ anims/attack_fast = SubResource( 3 )
|
||||
anims/attack_medium = SubResource( 4 )
|
||||
anims/idle = SubResource( 5 )
|
||||
|
||||
[node name="Sword" type="Sprite" parent="."]
|
||||
position = Vector2( 4, 0 )
|
||||
[node name="Sword" type="Sprite2D" parent="."]
|
||||
position = Vector2(4, 0)
|
||||
texture = ExtResource( 2 )
|
||||
offset = Vector2( 67, 0 )
|
||||
offset = Vector2(67, 0)
|
||||
|
||||
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="."]
|
||||
polygon = PoolVector2Array( 28.0001, -15.9999, 136, -15.9995, 160, 0, 136, 16.0005, 27.9999, 16.0001 )
|
||||
polygon = PackedVector2Array(28.0001, -15.9999, 136, -15.9995, 160, 0, 136, 16.0005, 27.9999, 16.0001)
|
||||
|
||||
@@ -32,9 +32,9 @@ var hit_objects = []
|
||||
|
||||
func _ready():
|
||||
# warning-ignore:return_value_discarded
|
||||
$AnimationPlayer.connect("animation_finished", self, "_on_animation_finished")
|
||||
$AnimationPlayer.connect(&"animation_finished", self._on_animation_finished)
|
||||
# warning-ignore:return_value_discarded
|
||||
self.connect("body_entered", self, "_on_body_entered")
|
||||
self.connect(&"body_entered", self._on_body_entered)
|
||||
_change_state(States.IDLE)
|
||||
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/sword.png-fc7f0084cdf333c826eda2b33f2ec3cc.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/sword.png-fc7f0084cdf333c826eda2b33f2ec3cc.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://player/weapon/sword.png"
|
||||
dest_files=[ "res://.import/sword.png-fc7f0084cdf333c826eda2b33f2ec3cc.stex" ]
|
||||
dest_files=["res://.godot/imported/sword.png-fc7f0084cdf333c826eda2b33f2ec3cc.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ var z_index_start = 0
|
||||
|
||||
func _ready():
|
||||
#warning-ignore:return_value_discarded
|
||||
owner.connect("direction_changed", self, "_on_Parent_direction_changed")
|
||||
owner.connect(&"direction_changed", self._on_Parent_direction_changed)
|
||||
z_index_start = z_index
|
||||
|
||||
|
||||
|
||||
@@ -27,71 +27,71 @@ window/stretch/aspect="expand"
|
||||
|
||||
[gdnative]
|
||||
|
||||
singletons=[ ]
|
||||
singletons=[]
|
||||
|
||||
[input]
|
||||
|
||||
move_left={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777231,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":65,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":-1.0,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":14,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
move_up={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777232,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":87,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":-1.0,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":12,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
move_right={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777233,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":68,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":1.0,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":15,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
move_down={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777234,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":83,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":1.0,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":13,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
fire={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":82,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":82,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":7,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
run={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777237,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777237,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":1,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
jump={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":32,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":0,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
simulate_damage={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":88,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":88,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":3,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
attack={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":70,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":70,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":6,"pressure":0.0,"pressed":false,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
|
||||
[rendering]
|
||||
|
||||
@@ -10,18 +10,21 @@ signal state_changed(current_state)
|
||||
# You should set a starting node from the inspector or on the node that inherits
|
||||
# from this state machine interface. If you don't, the game will default to
|
||||
# the first state in the state machine's children.
|
||||
export(NodePath) var start_state
|
||||
@export var start_state: NodePath
|
||||
var states_map = {}
|
||||
|
||||
var states_stack = []
|
||||
var current_state = null
|
||||
var _active = false setget set_active
|
||||
var _active = false:
|
||||
set(value):
|
||||
# TODO: Manually copy the code from this method.
|
||||
set_active(value)
|
||||
|
||||
func _ready():
|
||||
if not start_state:
|
||||
start_state = get_child(0).get_path()
|
||||
for child in get_children():
|
||||
var err = child.connect("finished", self, "_change_state")
|
||||
var err = child.connect(&"finished", self._change_state)
|
||||
if err:
|
||||
printerr(err)
|
||||
initialize(start_state)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://icon.png"
|
||||
dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
|
||||
dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -41,16 +41,16 @@ var undo_element_list_num = -1
|
||||
# The current brush settings: The mode, size, color, and shape we have currently selected.
|
||||
var brush_mode = BrushModes.PENCIL
|
||||
var brush_size = 32
|
||||
var brush_color = Color.black
|
||||
var brush_color = Color.BLACK
|
||||
var brush_shape = BrushShapes.CIRCLE;
|
||||
|
||||
# The color of the background. We need this for the eraser (see the how we handle the eraser
|
||||
# in the _draw function for more details).
|
||||
var bg_color = Color.white
|
||||
var bg_color = Color.WHITE
|
||||
|
||||
func _ready():
|
||||
# Get the top left position node. We need this to find out whether or not the mouse is inside the canvas.
|
||||
TL_node = get_node("TLPos")
|
||||
TL_node = get_node(^"TLPos")
|
||||
set_process(true)
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ func _process(_delta):
|
||||
if mouse_pos.y > TL_node.global_position.y:
|
||||
is_mouse_in_drawing_area = true
|
||||
|
||||
if Input.is_mouse_button_pressed(BUTTON_LEFT):
|
||||
if Input.is_mouse_button_pressed(MOUSE_BUTTON_LEFT):
|
||||
# If we do not have a position for when the mouse was first clicked, then this must
|
||||
# be the first time is_mouse_button_pressed has been called since the mouse button was
|
||||
# released, so we need to store the position.
|
||||
@@ -239,7 +239,7 @@ func _draw():
|
||||
|
||||
func save_picture(path):
|
||||
# Wait until the frame has finished before getting the texture.
|
||||
yield(VisualServer, "frame_post_draw")
|
||||
await RenderingServer.frame_post_draw
|
||||
|
||||
# Get the viewport image.
|
||||
var img = get_viewport().get_texture().get_data()
|
||||
|
||||
@@ -2,221 +2,221 @@
|
||||
|
||||
[ext_resource path="res://paint_control.gd" type="Script" id=1]
|
||||
[ext_resource path="res://tools_panel.gd" type="Script" id=2]
|
||||
[ext_resource path="res://paint_tools.png" type="Texture" id=3]
|
||||
[ext_resource path="res://paint_tools.png" type="Texture2D" id=3]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id=1]
|
||||
bg_color = Color( 1, 1, 1, 1 )
|
||||
bg_color = Color(1, 1, 1, 1)
|
||||
|
||||
[node name="PaintRoot" type="Control"]
|
||||
margin_right = 40.0
|
||||
margin_bottom = 40.0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
}
|
||||
|
||||
[node name="DrawingAreaBG" type="Panel" parent="."]
|
||||
margin_left = 350.0
|
||||
margin_right = 1280.0
|
||||
margin_bottom = 720.0
|
||||
offset_left = 350.0
|
||||
offset_right = 1280.0
|
||||
offset_bottom = 720.0
|
||||
custom_styles/panel = SubResource( 1 )
|
||||
|
||||
[node name="PaintControl" type="Control" parent="."]
|
||||
margin_right = 40.0
|
||||
margin_bottom = 40.0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
script = ExtResource( 1 )
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": false
|
||||
}
|
||||
|
||||
[node name="TLPos" type="Position2D" parent="PaintControl"]
|
||||
position = Vector2( 350, 0 )
|
||||
position = Vector2(350, 0)
|
||||
|
||||
[node name="ToolsPanel" type="Panel" parent="."]
|
||||
margin_right = 350.0
|
||||
margin_bottom = 720.0
|
||||
offset_right = 350.0
|
||||
offset_bottom = 720.0
|
||||
script = ExtResource( 2 )
|
||||
|
||||
[node name="LabelTools" type="Label" parent="ToolsPanel"]
|
||||
margin_left = 20.0
|
||||
margin_top = 10.0
|
||||
margin_right = 330.0
|
||||
margin_bottom = 24.0
|
||||
offset_left = 20.0
|
||||
offset_top = 10.0
|
||||
offset_right = 330.0
|
||||
offset_bottom = 24.0
|
||||
text = "Selected tool: Pencil"
|
||||
align = 1
|
||||
|
||||
[node name="ButtonToolPencil" type="Button" parent="ToolsPanel"]
|
||||
margin_left = 40.0
|
||||
margin_top = 40.0
|
||||
margin_right = 100.0
|
||||
margin_bottom = 100.0
|
||||
offset_left = 40.0
|
||||
offset_top = 40.0
|
||||
offset_right = 100.0
|
||||
offset_bottom = 100.0
|
||||
|
||||
[node name="Sprite" type="Sprite" parent="ToolsPanel/ButtonToolPencil"]
|
||||
position = Vector2( 30, 30 )
|
||||
scale = Vector2( 2.5, 2.5 )
|
||||
[node name="Sprite2D" type="Sprite2D" parent="ToolsPanel/ButtonToolPencil"]
|
||||
position = Vector2(30, 30)
|
||||
scale = Vector2(2.5, 2.5)
|
||||
texture = ExtResource( 3 )
|
||||
region_enabled = true
|
||||
region_rect = Rect2( 0, 0, 16, 16 )
|
||||
region_rect = Rect2(0, 0, 16, 16)
|
||||
|
||||
[node name="ButtonToolEraser" type="Button" parent="ToolsPanel"]
|
||||
margin_left = 110.0
|
||||
margin_top = 40.0
|
||||
margin_right = 170.0
|
||||
margin_bottom = 100.0
|
||||
offset_left = 110.0
|
||||
offset_top = 40.0
|
||||
offset_right = 170.0
|
||||
offset_bottom = 100.0
|
||||
|
||||
[node name="Sprite" type="Sprite" parent="ToolsPanel/ButtonToolEraser"]
|
||||
position = Vector2( 30, 30 )
|
||||
scale = Vector2( 2.5, 2.5 )
|
||||
[node name="Sprite2D" type="Sprite2D" parent="ToolsPanel/ButtonToolEraser"]
|
||||
position = Vector2(30, 30)
|
||||
scale = Vector2(2.5, 2.5)
|
||||
texture = ExtResource( 3 )
|
||||
region_enabled = true
|
||||
region_rect = Rect2( 16, 0, 16, 16 )
|
||||
region_rect = Rect2(16, 0, 16, 16)
|
||||
|
||||
[node name="ButtonToolRectangle" type="Button" parent="ToolsPanel"]
|
||||
margin_left = 180.0
|
||||
margin_top = 40.0
|
||||
margin_right = 240.0
|
||||
margin_bottom = 100.0
|
||||
offset_left = 180.0
|
||||
offset_top = 40.0
|
||||
offset_right = 240.0
|
||||
offset_bottom = 100.0
|
||||
|
||||
[node name="Sprite" type="Sprite" parent="ToolsPanel/ButtonToolRectangle"]
|
||||
position = Vector2( 30, 30 )
|
||||
scale = Vector2( 2.5, 2.5 )
|
||||
[node name="Sprite2D" type="Sprite2D" parent="ToolsPanel/ButtonToolRectangle"]
|
||||
position = Vector2(30, 30)
|
||||
scale = Vector2(2.5, 2.5)
|
||||
texture = ExtResource( 3 )
|
||||
region_enabled = true
|
||||
region_rect = Rect2( 0, 16, 16, 16 )
|
||||
region_rect = Rect2(0, 16, 16, 16)
|
||||
|
||||
[node name="ButtonToolCircle" type="Button" parent="ToolsPanel"]
|
||||
margin_left = 250.0
|
||||
margin_top = 40.0
|
||||
margin_right = 310.0
|
||||
margin_bottom = 100.0
|
||||
offset_left = 250.0
|
||||
offset_top = 40.0
|
||||
offset_right = 310.0
|
||||
offset_bottom = 100.0
|
||||
|
||||
[node name="Sprite" type="Sprite" parent="ToolsPanel/ButtonToolCircle"]
|
||||
position = Vector2( 30, 30 )
|
||||
scale = Vector2( 2.5, 2.5 )
|
||||
[node name="Sprite2D" type="Sprite2D" parent="ToolsPanel/ButtonToolCircle"]
|
||||
position = Vector2(30, 30)
|
||||
scale = Vector2(2.5, 2.5)
|
||||
texture = ExtResource( 3 )
|
||||
region_enabled = true
|
||||
region_rect = Rect2( 16, 16, 16, 16 )
|
||||
region_rect = Rect2(16, 16, 16, 16)
|
||||
|
||||
[node name="LabelBrushColor" type="Label" parent="ToolsPanel"]
|
||||
margin_left = 20.0
|
||||
margin_top = 120.0
|
||||
margin_right = 330.0
|
||||
margin_bottom = 134.0
|
||||
offset_left = 20.0
|
||||
offset_top = 120.0
|
||||
offset_right = 330.0
|
||||
offset_bottom = 134.0
|
||||
text = "Current color"
|
||||
align = 1
|
||||
|
||||
[node name="ColorPickerBrush" type="ColorPickerButton" parent="ToolsPanel"]
|
||||
margin_left = 20.0
|
||||
margin_top = 140.0
|
||||
margin_right = 330.0
|
||||
margin_bottom = 190.0
|
||||
offset_left = 20.0
|
||||
offset_top = 140.0
|
||||
offset_right = 330.0
|
||||
offset_bottom = 190.0
|
||||
|
||||
[node name="BrushSettings" type="Control" parent="ToolsPanel"]
|
||||
margin_top = 200.0
|
||||
margin_right = 350.0
|
||||
margin_bottom = 375.0
|
||||
offset_top = 200.0
|
||||
offset_right = 350.0
|
||||
offset_bottom = 375.0
|
||||
|
||||
[node name="LabelBrushSize" type="Label" parent="ToolsPanel/BrushSettings"]
|
||||
margin_left = 20.0
|
||||
margin_top = 10.0
|
||||
margin_right = 330.0
|
||||
margin_bottom = 24.0
|
||||
offset_left = 20.0
|
||||
offset_top = 10.0
|
||||
offset_right = 330.0
|
||||
offset_bottom = 24.0
|
||||
text = "Brush size: 32px"
|
||||
align = 1
|
||||
|
||||
[node name="HScrollBarBrushSize" type="HScrollBar" parent="ToolsPanel/BrushSettings"]
|
||||
margin_left = 20.0
|
||||
margin_top = 30.0
|
||||
margin_right = 330.0
|
||||
margin_bottom = 60.0
|
||||
offset_left = 20.0
|
||||
offset_top = 30.0
|
||||
offset_right = 330.0
|
||||
offset_bottom = 60.0
|
||||
min_value = 2.0
|
||||
step = 1.0
|
||||
value = 32.0
|
||||
|
||||
[node name="LabelBrushShape" type="Label" parent="ToolsPanel/BrushSettings"]
|
||||
margin_left = 20.0
|
||||
margin_top = 80.0
|
||||
margin_right = 330.0
|
||||
margin_bottom = 94.0
|
||||
offset_left = 20.0
|
||||
offset_top = 80.0
|
||||
offset_right = 330.0
|
||||
offset_bottom = 94.0
|
||||
text = "Brush shape: Circle"
|
||||
align = 1
|
||||
|
||||
[node name="ButtonShapeBox" type="Button" parent="ToolsPanel/BrushSettings"]
|
||||
margin_left = 100.0
|
||||
margin_top = 100.0
|
||||
margin_right = 160.0
|
||||
margin_bottom = 160.0
|
||||
offset_left = 100.0
|
||||
offset_top = 100.0
|
||||
offset_right = 160.0
|
||||
offset_bottom = 160.0
|
||||
|
||||
[node name="Sprite" type="Sprite" parent="ToolsPanel/BrushSettings/ButtonShapeBox"]
|
||||
position = Vector2( 30, 30 )
|
||||
scale = Vector2( 2.5, 2.5 )
|
||||
[node name="Sprite2D" type="Sprite2D" parent="ToolsPanel/BrushSettings/ButtonShapeBox"]
|
||||
position = Vector2(30, 30)
|
||||
scale = Vector2(2.5, 2.5)
|
||||
texture = ExtResource( 3 )
|
||||
region_enabled = true
|
||||
region_rect = Rect2( 0, 16, 16, 16 )
|
||||
region_rect = Rect2(0, 16, 16, 16)
|
||||
|
||||
[node name="ButtonShapeCircle" type="Button" parent="ToolsPanel/BrushSettings"]
|
||||
margin_left = 190.0
|
||||
margin_top = 100.0
|
||||
margin_right = 250.0
|
||||
margin_bottom = 160.0
|
||||
offset_left = 190.0
|
||||
offset_top = 100.0
|
||||
offset_right = 250.0
|
||||
offset_bottom = 160.0
|
||||
|
||||
[node name="Sprite" type="Sprite" parent="ToolsPanel/BrushSettings/ButtonShapeCircle"]
|
||||
position = Vector2( 30, 30 )
|
||||
scale = Vector2( 2.5, 2.5 )
|
||||
[node name="Sprite2D" type="Sprite2D" parent="ToolsPanel/BrushSettings/ButtonShapeCircle"]
|
||||
position = Vector2(30, 30)
|
||||
scale = Vector2(2.5, 2.5)
|
||||
texture = ExtResource( 3 )
|
||||
region_enabled = true
|
||||
region_rect = Rect2( 16, 16, 16, 16 )
|
||||
region_rect = Rect2(16, 16, 16, 16)
|
||||
|
||||
[node name="LabelBackgroundColor" type="Label" parent="ToolsPanel"]
|
||||
margin_left = 20.0
|
||||
margin_top = 400.0
|
||||
margin_right = 330.0
|
||||
margin_bottom = 414.0
|
||||
offset_left = 20.0
|
||||
offset_top = 400.0
|
||||
offset_right = 330.0
|
||||
offset_bottom = 414.0
|
||||
text = "Background color"
|
||||
align = 1
|
||||
|
||||
[node name="ColorPickerBackground" type="ColorPickerButton" parent="ToolsPanel"]
|
||||
margin_left = 20.0
|
||||
margin_top = 420.0
|
||||
margin_right = 330.0
|
||||
margin_bottom = 470.0
|
||||
color = Color( 1, 1, 1, 1 )
|
||||
offset_left = 20.0
|
||||
offset_top = 420.0
|
||||
offset_right = 330.0
|
||||
offset_bottom = 470.0
|
||||
color = Color(1, 1, 1, 1)
|
||||
edit_alpha = false
|
||||
|
||||
[node name="LabelStats" type="Label" parent="ToolsPanel"]
|
||||
modulate = Color( 0.414062, 0.414062, 0.414062, 1 )
|
||||
margin_left = 20.0
|
||||
margin_top = 590.0
|
||||
margin_right = 330.0
|
||||
margin_bottom = 604.0
|
||||
modulate = Color(0.414062, 0.414062, 0.414062, 1)
|
||||
offset_left = 20.0
|
||||
offset_top = 590.0
|
||||
offset_right = 330.0
|
||||
offset_bottom = 604.0
|
||||
text = "Brush objects: 00000"
|
||||
align = 1
|
||||
|
||||
[node name="ButtonUndo" type="Button" parent="ToolsPanel"]
|
||||
margin_left = 10.0
|
||||
margin_top = 520.0
|
||||
margin_right = 340.0
|
||||
margin_bottom = 560.0
|
||||
offset_left = 10.0
|
||||
offset_top = 520.0
|
||||
offset_right = 340.0
|
||||
offset_bottom = 560.0
|
||||
text = "Undo last stroke"
|
||||
|
||||
[node name="ButtonSave" type="Button" parent="ToolsPanel"]
|
||||
margin_left = 10.0
|
||||
margin_top = 620.0
|
||||
margin_right = 340.0
|
||||
margin_bottom = 660.0
|
||||
offset_left = 10.0
|
||||
offset_top = 620.0
|
||||
offset_right = 340.0
|
||||
offset_bottom = 660.0
|
||||
text = "Save picture"
|
||||
|
||||
[node name="ButtonClear" type="Button" parent="ToolsPanel"]
|
||||
margin_left = 10.0
|
||||
margin_top = 670.0
|
||||
margin_right = 340.0
|
||||
margin_bottom = 710.0
|
||||
offset_left = 10.0
|
||||
offset_top = 670.0
|
||||
offset_right = 340.0
|
||||
offset_bottom = 710.0
|
||||
text = "Clear picture"
|
||||
|
||||
[node name="SaveFileDialog" type="FileDialog" parent="."]
|
||||
margin_right = 600.0
|
||||
margin_bottom = 400.0
|
||||
offset_right = 600.0
|
||||
offset_bottom = 400.0
|
||||
resizable = true
|
||||
access = 2
|
||||
filters = PoolStringArray( "*.png" )
|
||||
filters = PackedStringArray("*.png")
|
||||
current_dir = "/home/aaronfranke/workspace/godot-demo-projects/2d/gd_paint"
|
||||
current_path = "/home/aaronfranke/workspace/godot-demo-projects/2d/gd_paint/"
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/paint_tools.png-224b64b7ddb26189a369199f6d686b79.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/paint_tools.png-224b64b7ddb26189a369199f6d686b79.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://paint_tools.png"
|
||||
dest_files=[ "res://.import/paint_tools.png-224b64b7ddb26189a369199f6d686b79.stex" ]
|
||||
dest_files=["res://.godot/imported/paint_tools.png-224b64b7ddb26189a369199f6d686b79.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ window/stretch/aspect="keep"
|
||||
|
||||
[gdnative]
|
||||
|
||||
singletons=[ ]
|
||||
singletons=[]
|
||||
|
||||
[rendering]
|
||||
|
||||
|
||||
@@ -1,37 +1,37 @@
|
||||
extends Panel
|
||||
|
||||
onready var brush_settings = $BrushSettings
|
||||
onready var label_brush_size = brush_settings.get_node(@"LabelBrushSize")
|
||||
onready var label_brush_shape = brush_settings.get_node(@"LabelBrushShape")
|
||||
onready var label_stats = $LabelStats
|
||||
onready var label_tools = $LabelTools
|
||||
@onready var brush_settings = $BrushSettings
|
||||
@onready var label_brush_size = brush_settings.get_node(^"LabelBrushSize")
|
||||
@onready var label_brush_shape = brush_settings.get_node(^"LabelBrushShape")
|
||||
@onready var label_stats = $LabelStats
|
||||
@onready var label_tools = $LabelTools
|
||||
|
||||
onready var _parent = get_parent()
|
||||
onready var save_dialog = _parent.get_node(@"SaveFileDialog")
|
||||
onready var paint_control = _parent.get_node(@"PaintControl")
|
||||
@onready var _parent = get_parent()
|
||||
@onready var save_dialog = _parent.get_node(^"SaveFileDialog")
|
||||
@onready var paint_control = _parent.get_node(^"PaintControl")
|
||||
|
||||
func _ready():
|
||||
# warning-ignore-all:return_value_discarded
|
||||
# Assign all of the needed signals for the oppersation buttons.
|
||||
$ButtonUndo.connect("pressed", self, "button_pressed", ["undo_stroke"])
|
||||
$ButtonSave.connect("pressed", self, "button_pressed", ["save_picture"])
|
||||
$ButtonClear.connect("pressed", self, "button_pressed", ["clear_picture"])
|
||||
$ButtonUndo.connect(&"pressed", self.button_pressed, ["undo_stroke"])
|
||||
$ButtonSave.connect(&"pressed", self.button_pressed, ["save_picture"])
|
||||
$ButtonClear.connect(&"pressed", self.button_pressed, ["clear_picture"])
|
||||
|
||||
# Assign all of the needed signals for the brush buttons.
|
||||
$ButtonToolPencil.connect("pressed", self, "button_pressed", ["mode_pencil"])
|
||||
$ButtonToolEraser.connect("pressed", self, "button_pressed", ["mode_eraser"])
|
||||
$ButtonToolRectangle.connect("pressed", self, "button_pressed", ["mode_rectangle"])
|
||||
$ButtonToolCircle.connect("pressed", self, "button_pressed", ["mode_circle"])
|
||||
$BrushSettings/ButtonShapeBox.connect("pressed", self, "button_pressed", ["shape_rectangle"])
|
||||
$BrushSettings/ButtonShapeCircle.connect("pressed", self, "button_pressed", ["shape_circle"])
|
||||
$ButtonToolPencil.connect(&"pressed", self.button_pressed, ["mode_pencil"])
|
||||
$ButtonToolEraser.connect(&"pressed", self.button_pressed, ["mode_eraser"])
|
||||
$ButtonToolRectangle.connect(&"pressed", self.button_pressed, ["mode_rectangle"])
|
||||
$ButtonToolCircle.connect(&"pressed", self.button_pressed, ["mode_circle"])
|
||||
$BrushSettings/ButtonShapeBox.connect(&"pressed", self.button_pressed, ["shape_rectangle"])
|
||||
$BrushSettings/ButtonShapeCircle.connect(&"pressed", self.button_pressed, ["shape_circle"])
|
||||
|
||||
# Assign all of the needed signals for the other brush settings (and ColorPickerBackground).
|
||||
$ColorPickerBrush.connect("color_changed", self, "brush_color_changed")
|
||||
$ColorPickerBackground.connect("color_changed", self, "background_color_changed")
|
||||
$BrushSettings/HScrollBarBrushSize.connect("value_changed", self, "brush_size_changed")
|
||||
$ColorPickerBrush.connect(&"color_changed", self.brush_color_changed)
|
||||
$ColorPickerBackground.connect(&"color_changed", self.background_color_changed)
|
||||
$BrushSettings/HScrollBarBrushSize.connect(&"value_changed", self.brush_size_changed)
|
||||
|
||||
# Assign the "file_selected" signal in SaveFileDialog.
|
||||
save_dialog.connect("file_selected", self, "save_file_selected")
|
||||
save_dialog.connect(&"file_selected", self.save_file_selected)
|
||||
|
||||
# Set physics process so we can update the status label.
|
||||
set_physics_process(true)
|
||||
@@ -95,7 +95,7 @@ func brush_color_changed(color):
|
||||
|
||||
func background_color_changed(color):
|
||||
# Change the background color to whatever colorthe background color picker is.
|
||||
get_parent().get_node("DrawingAreaBG").modulate = color
|
||||
get_parent().get_node(^"DrawingAreaBG").modulate = color
|
||||
paint_control.bg_color = color
|
||||
# Because of how the eraser works we also need to redraw the paint control.
|
||||
paint_control.update()
|
||||
|
||||
@@ -2,7 +2,7 @@ extends Node2D
|
||||
|
||||
const CAVE_LIMIT = 1000
|
||||
|
||||
onready var cave = $Cave
|
||||
@onready var cave = $Cave
|
||||
|
||||
func _unhandled_input(event):
|
||||
if event is InputEventMouseMotion and event.button_mask > 0:
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[gd_scene load_steps=5 format=2]
|
||||
|
||||
[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]
|
||||
[ext_resource path="res://ocean_beach.png" type="Texture2D" id=2]
|
||||
[ext_resource path="res://ocean_cave.png" type="Texture2D" id=3]
|
||||
|
||||
[sub_resource type="Environment" id=1]
|
||||
background_mode = 4
|
||||
@@ -22,17 +22,17 @@ glow_bicubic_upscale = true
|
||||
[node name="BeachCave" type="Node2D"]
|
||||
script = ExtResource( 1 )
|
||||
|
||||
[node name="Beach" type="Sprite" parent="."]
|
||||
modulate = Color( 2, 2, 2, 1 )
|
||||
self_modulate = Color( 2, 2, 2, 1 )
|
||||
[node name="Beach" type="Sprite2D" parent="."]
|
||||
modulate = Color(2, 2, 2, 1)
|
||||
self_modulate = Color(2, 2, 2, 1)
|
||||
texture = ExtResource( 2 )
|
||||
centered = false
|
||||
region_enabled = true
|
||||
region_rect = Rect2( 0, 0, 3840, 720 )
|
||||
region_rect = Rect2(0, 0, 3840, 720)
|
||||
|
||||
[node name="Cave" type="Sprite" parent="."]
|
||||
self_modulate = Color( 0.233166, 0.221219, 0.23582, 1 )
|
||||
scale = Vector2( 1.2, 1 )
|
||||
[node name="Cave" type="Sprite2D" parent="."]
|
||||
self_modulate = Color(0.233166, 0.221219, 0.23582, 1)
|
||||
scale = Vector2(1.2, 1)
|
||||
texture = ExtResource( 3 )
|
||||
centered = false
|
||||
|
||||
@@ -40,14 +40,14 @@ centered = false
|
||||
environment = SubResource( 1 )
|
||||
|
||||
[node name="Camera2D" type="Camera2D" parent="."]
|
||||
offset = Vector2( 540, 360 )
|
||||
offset = Vector2(540, 360)
|
||||
current = true
|
||||
|
||||
[node name="Label" type="Label" parent="."]
|
||||
margin_left = 10.0
|
||||
margin_top = 10.0
|
||||
margin_right = 135.0
|
||||
margin_bottom = 24.0
|
||||
offset_left = 10.0
|
||||
offset_top = 10.0
|
||||
offset_right = 135.0
|
||||
offset_bottom = 24.0
|
||||
size_flags_horizontal = 2
|
||||
size_flags_vertical = 0
|
||||
text = "Drag Left and Right"
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://icon.png"
|
||||
dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
|
||||
dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/ocean_beach.png-b571ab5468cc775a520aaa47efbed607.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/ocean_beach.png-b571ab5468cc775a520aaa47efbed607.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://ocean_beach.png"
|
||||
dest_files=[ "res://.import/ocean_beach.png-b571ab5468cc775a520aaa47efbed607.stex" ]
|
||||
dest_files=["res://.godot/imported/ocean_beach.png-b571ab5468cc775a520aaa47efbed607.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/ocean_cave.png-2a86f381e3092b4cb698b627d778e19b.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/ocean_cave.png-2a86f381e3092b4cb698b627d778e19b.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://ocean_cave.png"
|
||||
dest_files=[ "res://.import/ocean_cave.png-2a86f381e3092b4cb698b627d778e19b.stex" ]
|
||||
dest_files=["res://.godot/imported/ocean_cave.png-2a86f381e3092b4cb698b627d778e19b.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ window/stretch/aspect="expand"
|
||||
|
||||
[gdnative]
|
||||
|
||||
singletons=[ ]
|
||||
singletons=[]
|
||||
|
||||
[rasterizer]
|
||||
|
||||
@@ -37,4 +37,4 @@ blur_buffer_size=128
|
||||
|
||||
[rendering]
|
||||
|
||||
environment/default_clear_color=Color( 0.05, 0.0453, 0.0265, 1 )
|
||||
environment/default_clear_color=Color(0.05, 0.0453, 0.0265, 1)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://icon.png"
|
||||
dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
|
||||
dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
|
||||
[node name="TileMap" type="TileMap" parent="."]
|
||||
tile_set = ExtResource( 1 )
|
||||
cell_size = Vector2( 82, 94 )
|
||||
cell_size = Vector2(82, 94)
|
||||
cell_half_offset = 1
|
||||
cell_tile_origin = 1
|
||||
format = 1
|
||||
tile_data = PoolIntArray( -458747, 0, 0, -458746, 0, 0, -393212, 0, 0, -393211, 0, 0, -393210, 0, 0, -393209, 0, 0, -393208, 0, 0, -393207, 0, 0, -327678, 0, 0, -327677, 0, 0, -327676, 0, 0, -327675, 6, 0, -327674, 6, 0, -327673, 6, 0, -327672, 6, 0, -327671, 0, 0, -327670, 0, 0, -327669, 0, 0, -262142, 0, 0, -262141, 0, 0, -262140, 6, 0, -262139, 6, 0, -262138, 6, 0, -262137, 6, 0, -262136, 6, 0, -262135, 0, 0, -262134, 0, 0, -262133, 0, 0, -262132, 0, 0, -262131, 0, -1200553578, -196606, 0, 0, -196605, 0, 0, -196604, 6, 0, -196603, 6, 0, -196602, 6, 0, -196601, 6, 0, -196600, 1, 0, -196599, 0, 0, -196598, 1, 0, -196597, 1, 0, -196596, 0, 0, -196595, 0, -1200553578, -196594, 0, -1200553578, -131071, 9, 0, -131070, 0, 0, -131069, 0, 0, -131068, 2, 0, -131067, 2, 0, -131066, 0, 0, -131065, 21, 0, -131064, 19, 0, -131063, 0, 0, -131062, 0, 0, -131061, 16, -1200553578, -131060, 0, -1200553578, -131059, 0, 0, -131058, 0, 0, -131057, 0, 0, -131056, 0, -1200553578, -65534, 0, 0, -65533, 1, 0, -65532, 0, 0, -65531, 0, 0, -65530, 20, 0, -65529, 19, 0, -65528, 2, 0, -65527, 0, 0, -65526, 14, 0, -65525, 0, -1200553578, -65524, 0, 0, -65523, 0, 0, -65522, 23, 0, -65521, 0, 0, -65520, 0, -1200553578, -65519, 0, -1200553578, 3, 1, 0, 4, 2, 0, 5, 0, 0, 6, 1, 0, 7, 1, -1200553578, 8, 0, -1200553578, 9, 10, -1200553578, 10, 12, -1200553578, 11, 0, -1200553578, 12, 0, 0, 13, 8, 0, 14, 0, 0, 15, 0, 0, 16, 0, 0, 17, 0, 0, 65538, 0, -1200553578, 65539, 0, 0, 65540, 2, 0, 65541, 0, 0, 65542, 1, 0, 65543, 15, -1200553578, 65544, 0, 0, 65545, 0, 0, 65546, 0, 0, 65547, 0, 0, 65548, 0, 0, 65549, 25, 0, 65550, 8, 0, 65551, 0, 0, 65552, 21, 0, 65553, 0, 0, 131074, 0, -1200553578, 131075, 1, 0, 131076, 0, 0, 131077, 1, 0, 131078, 0, 0, 131079, 0, 0, 131080, 0, 0, 131081, 5, 0, 131082, 0, 0, 131083, 0, 0, 131084, 0, 0, 131085, 0, 0, 131086, 0, 0, 131087, 0, 0, 131088, 0, 0, 131089, 0, 0, 196610, 0, -1200553578, 196611, 0, 0, 196612, 0, 0, 196613, 23, 0, 196614, 0, 0, 196615, 0, 0, 196616, 0, 0, 196617, 5, 0, 196618, 5, 0, 196619, 0, 0, 196620, 0, 0, 196621, 0, 0, 196622, 0, 0, 196623, 23, 0, 196624, 0, 0, 262148, 0, 0, 262149, 0, 0, 262150, 0, 0, 262151, 0, 0, 262152, 8, 0, 262153, 5, 0, 262154, 5, 0, 262155, 0, 0, 262156, 0, 0, 262157, 21, 0, 262158, 0, 0, 262159, 0, 0, 262160, 0, 0, 327686, 0, 0, 327687, 0, 0, 327688, 0, 0, 327689, 0, 0, 327690, 0, 0, 327691, 0, 0, 327692, 0, 0, 327693, 0, 0, 327694, 0, 0 )
|
||||
tile_data = PackedInt32Array(-458747, 0, 0, -458746, 0, 0, -393212, 0, 0, -393211, 0, 0, -393210, 0, 0, -393209, 0, 0, -393208, 0, 0, -393207, 0, 0, -327678, 0, 0, -327677, 0, 0, -327676, 0, 0, -327675, 6, 0, -327674, 6, 0, -327673, 6, 0, -327672, 6, 0, -327671, 0, 0, -327670, 0, 0, -327669, 0, 0, -262142, 0, 0, -262141, 0, 0, -262140, 6, 0, -262139, 6, 0, -262138, 6, 0, -262137, 6, 0, -262136, 6, 0, -262135, 0, 0, -262134, 0, 0, -262133, 0, 0, -262132, 0, 0, -262131, 0, -1200553578, -196606, 0, 0, -196605, 0, 0, -196604, 6, 0, -196603, 6, 0, -196602, 6, 0, -196601, 6, 0, -196600, 1, 0, -196599, 0, 0, -196598, 1, 0, -196597, 1, 0, -196596, 0, 0, -196595, 0, -1200553578, -196594, 0, -1200553578, -131071, 9, 0, -131070, 0, 0, -131069, 0, 0, -131068, 2, 0, -131067, 2, 0, -131066, 0, 0, -131065, 21, 0, -131064, 19, 0, -131063, 0, 0, -131062, 0, 0, -131061, 16, -1200553578, -131060, 0, -1200553578, -131059, 0, 0, -131058, 0, 0, -131057, 0, 0, -131056, 0, -1200553578, -65534, 0, 0, -65533, 1, 0, -65532, 0, 0, -65531, 0, 0, -65530, 20, 0, -65529, 19, 0, -65528, 2, 0, -65527, 0, 0, -65526, 14, 0, -65525, 0, -1200553578, -65524, 0, 0, -65523, 0, 0, -65522, 23, 0, -65521, 0, 0, -65520, 0, -1200553578, -65519, 0, -1200553578, 3, 1, 0, 4, 2, 0, 5, 0, 0, 6, 1, 0, 7, 1, -1200553578, 8, 0, -1200553578, 9, 10, -1200553578, 10, 12, -1200553578, 11, 0, -1200553578, 12, 0, 0, 13, 8, 0, 14, 0, 0, 15, 0, 0, 16, 0, 0, 17, 0, 0, 65538, 0, -1200553578, 65539, 0, 0, 65540, 2, 0, 65541, 0, 0, 65542, 1, 0, 65543, 15, -1200553578, 65544, 0, 0, 65545, 0, 0, 65546, 0, 0, 65547, 0, 0, 65548, 0, 0, 65549, 25, 0, 65550, 8, 0, 65551, 0, 0, 65552, 21, 0, 65553, 0, 0, 131074, 0, -1200553578, 131075, 1, 0, 131076, 0, 0, 131077, 1, 0, 131078, 0, 0, 131079, 0, 0, 131080, 0, 0, 131081, 5, 0, 131082, 0, 0, 131083, 0, 0, 131084, 0, 0, 131085, 0, 0, 131086, 0, 0, 131087, 0, 0, 131088, 0, 0, 131089, 0, 0, 196610, 0, -1200553578, 196611, 0, 0, 196612, 0, 0, 196613, 23, 0, 196614, 0, 0, 196615, 0, 0, 196616, 0, 0, 196617, 5, 0, 196618, 5, 0, 196619, 0, 0, 196620, 0, 0, 196621, 0, 0, 196622, 0, 0, 196623, 23, 0, 196624, 0, 0, 262148, 0, 0, 262149, 0, 0, 262150, 0, 0, 262151, 0, 0, 262152, 8, 0, 262153, 5, 0, 262154, 5, 0, 262155, 0, 0, 262156, 0, 0, 262157, 21, 0, 262158, 0, 0, 262159, 0, 0, 262160, 0, 0, 327686, 0, 0, 327687, 0, 0, 327688, 0, 0, 327689, 0, 0, 327690, 0, 0, 327691, 0, 0, 327692, 0, 0, 327693, 0, 0, 327694, 0, 0)
|
||||
|
||||
[node name="Troll" parent="." instance=ExtResource( 2 )]
|
||||
position = Vector2( 602.819, -39.2876 )
|
||||
position = Vector2(602.819, -39.2876)
|
||||
|
||||
@@ -23,41 +23,41 @@ window/stretch/aspect="expand"
|
||||
|
||||
[gdnative]
|
||||
|
||||
singletons=[ ]
|
||||
singletons=[]
|
||||
|
||||
[input]
|
||||
|
||||
move_down={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777234,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":83,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":13,"pressure":0.0,"pressed":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":1.0,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
move_left={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777231,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":65,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":14,"pressure":0.0,"pressed":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":-1.0,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
move_right={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777233,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":68,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":15,"pressure":0.0,"pressed":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":0,"axis_value":1.0,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
move_up={
|
||||
"deadzone": 0.5,
|
||||
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"physical_scancode":0,"unicode":0,"echo":false,"script":null)
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":16777232,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"store_command":true,"alt_pressed":false,"shift_pressed":false,"meta_pressed":false,"command_pressed":false,"pressed":false,"keycode":87,"physical_keycode":0,"unicode":0,"echo":false,"script":null)
|
||||
, Object(InputEventJoypadButton,"resource_local_to_scene":false,"resource_name":"","device":0,"button_index":12,"pressure":0.0,"pressed":false,"script":null)
|
||||
, Object(InputEventJoypadMotion,"resource_local_to_scene":false,"resource_name":"","device":0,"axis":1,"axis_value":-1.0,"script":null)
|
||||
]
|
||||
]
|
||||
}
|
||||
|
||||
[rendering]
|
||||
@@ -65,4 +65,4 @@ move_up={
|
||||
quality/driver/driver_name="GLES2"
|
||||
vram_compression/import_etc=true
|
||||
vram_compression/import_etc2=false
|
||||
environment/default_clear_color=Color( 0.172549, 0.219608, 0.129412, 1 )
|
||||
environment/default_clear_color=Color(0.172549, 0.219608, 0.129412, 1)
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-01.png-a74af26d994adfc547572b5b9c0c4034.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-01.png-a74af26d994adfc547572b5b9c0c4034.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-01.png"
|
||||
dest_files=[ "res://.import/WWT-01.png-a74af26d994adfc547572b5b9c0c4034.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-01.png-a74af26d994adfc547572b5b9c0c4034.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-02.png-9a9ae8a623554db2531366e8a06b737a.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-02.png-9a9ae8a623554db2531366e8a06b737a.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-02.png"
|
||||
dest_files=[ "res://.import/WWT-02.png-9a9ae8a623554db2531366e8a06b737a.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-02.png-9a9ae8a623554db2531366e8a06b737a.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-03.png-111a68b27c5234ed5719f8591af32a0c.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-03.png-111a68b27c5234ed5719f8591af32a0c.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-03.png"
|
||||
dest_files=[ "res://.import/WWT-03.png-111a68b27c5234ed5719f8591af32a0c.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-03.png-111a68b27c5234ed5719f8591af32a0c.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-04.png-f26081179f39965c61294d932b10ab21.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-04.png-f26081179f39965c61294d932b10ab21.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-04.png"
|
||||
dest_files=[ "res://.import/WWT-04.png-f26081179f39965c61294d932b10ab21.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-04.png-f26081179f39965c61294d932b10ab21.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-05.png-744e3aac04e57d14153c9ab15d0f478b.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-05.png-744e3aac04e57d14153c9ab15d0f478b.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-05.png"
|
||||
dest_files=[ "res://.import/WWT-05.png-744e3aac04e57d14153c9ab15d0f478b.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-05.png-744e3aac04e57d14153c9ab15d0f478b.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-06.png-42fd05901daa928f55c39f581f1c698b.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-06.png-42fd05901daa928f55c39f581f1c698b.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-06.png"
|
||||
dest_files=[ "res://.import/WWT-06.png-42fd05901daa928f55c39f581f1c698b.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-06.png-42fd05901daa928f55c39f581f1c698b.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-07.png-8e87a5146f132f36aecf29c26d16ff69.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-07.png-8e87a5146f132f36aecf29c26d16ff69.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-07.png"
|
||||
dest_files=[ "res://.import/WWT-07.png-8e87a5146f132f36aecf29c26d16ff69.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-07.png-8e87a5146f132f36aecf29c26d16ff69.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-08.png-9ab3b0ed6304c6b282e0c1c2866f4c65.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-08.png-9ab3b0ed6304c6b282e0c1c2866f4c65.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-08.png"
|
||||
dest_files=[ "res://.import/WWT-08.png-9ab3b0ed6304c6b282e0c1c2866f4c65.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-08.png-9ab3b0ed6304c6b282e0c1c2866f4c65.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-09.png-c899d1db7b10c4bc6e5c8ad44627c439.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-09.png-c899d1db7b10c4bc6e5c8ad44627c439.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-09.png"
|
||||
dest_files=[ "res://.import/WWT-09.png-c899d1db7b10c4bc6e5c8ad44627c439.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-09.png-c899d1db7b10c4bc6e5c8ad44627c439.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-10.png-c7e17e1ca741da0752bae015501fa73f.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-10.png-c7e17e1ca741da0752bae015501fa73f.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-10.png"
|
||||
dest_files=[ "res://.import/WWT-10.png-c7e17e1ca741da0752bae015501fa73f.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-10.png-c7e17e1ca741da0752bae015501fa73f.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-11.png-109af6474e89a87a4598cb99f608a4f7.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-11.png-109af6474e89a87a4598cb99f608a4f7.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-11.png"
|
||||
dest_files=[ "res://.import/WWT-11.png-109af6474e89a87a4598cb99f608a4f7.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-11.png-109af6474e89a87a4598cb99f608a4f7.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-12.png-dfbf3da77ce636a3e88f9e62405a950b.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-12.png-dfbf3da77ce636a3e88f9e62405a950b.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-12.png"
|
||||
dest_files=[ "res://.import/WWT-12.png-dfbf3da77ce636a3e88f9e62405a950b.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-12.png-dfbf3da77ce636a3e88f9e62405a950b.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-13.png-cef8d6fe42386e917ad3aa9b9c54f031.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-13.png-cef8d6fe42386e917ad3aa9b9c54f031.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-13.png"
|
||||
dest_files=[ "res://.import/WWT-13.png-cef8d6fe42386e917ad3aa9b9c54f031.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-13.png-cef8d6fe42386e917ad3aa9b9c54f031.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-14.png-b9075987807eba6a461b896e310a1b8a.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-14.png-b9075987807eba6a461b896e310a1b8a.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-14.png"
|
||||
dest_files=[ "res://.import/WWT-14.png-b9075987807eba6a461b896e310a1b8a.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-14.png-b9075987807eba6a461b896e310a1b8a.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-15.png-00500699e949fc7109f5946f459a9877.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-15.png-00500699e949fc7109f5946f459a9877.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-15.png"
|
||||
dest_files=[ "res://.import/WWT-15.png-00500699e949fc7109f5946f459a9877.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-15.png-00500699e949fc7109f5946f459a9877.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-16.png-fbcd640a627612e528382718aecef7c7.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-16.png-fbcd640a627612e528382718aecef7c7.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-16.png"
|
||||
dest_files=[ "res://.import/WWT-16.png-fbcd640a627612e528382718aecef7c7.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-16.png-fbcd640a627612e528382718aecef7c7.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-17.png-eb18073021ced526bfb8971a84830c46.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-17.png-eb18073021ced526bfb8971a84830c46.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-17.png"
|
||||
dest_files=[ "res://.import/WWT-17.png-eb18073021ced526bfb8971a84830c46.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-17.png-eb18073021ced526bfb8971a84830c46.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-18.png-82273bf41643f8f544a05cdc2226c3b8.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-18.png-82273bf41643f8f544a05cdc2226c3b8.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-18.png"
|
||||
dest_files=[ "res://.import/WWT-18.png-82273bf41643f8f544a05cdc2226c3b8.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-18.png-82273bf41643f8f544a05cdc2226c3b8.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-19.png-5894de00e931e36aaec31583c3ddce5c.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-19.png-5894de00e931e36aaec31583c3ddce5c.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-19.png"
|
||||
dest_files=[ "res://.import/WWT-19.png-5894de00e931e36aaec31583c3ddce5c.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-19.png-5894de00e931e36aaec31583c3ddce5c.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-20.png-88080834968c597a14e2fa47d72452ca.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-20.png-88080834968c597a14e2fa47d72452ca.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-20.png"
|
||||
dest_files=[ "res://.import/WWT-20.png-88080834968c597a14e2fa47d72452ca.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-20.png-88080834968c597a14e2fa47d72452ca.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-21.png-390238468871139dc33ef039ad919c91.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-21.png-390238468871139dc33ef039ad919c91.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-21.png"
|
||||
dest_files=[ "res://.import/WWT-21.png-390238468871139dc33ef039ad919c91.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-21.png-390238468871139dc33ef039ad919c91.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-22.png-61b6f2ffc488560cd737af0df3a2aff4.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-22.png-61b6f2ffc488560cd737af0df3a2aff4.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-22.png"
|
||||
dest_files=[ "res://.import/WWT-22.png-61b6f2ffc488560cd737af0df3a2aff4.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-22.png-61b6f2ffc488560cd737af0df3a2aff4.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-23.png-67ddb05725964560ee768025fb1ace6c.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-23.png-67ddb05725964560ee768025fb1ace6c.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-23.png"
|
||||
dest_files=[ "res://.import/WWT-23.png-67ddb05725964560ee768025fb1ace6c.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-23.png-67ddb05725964560ee768025fb1ace6c.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="StreamTexture"
|
||||
path="res://.import/WWT-24.png-f708ede817cd745747bd03a5050d20d7.stex"
|
||||
type="StreamTexture2D"
|
||||
path="res://.godot/imported/WWT-24.png-f708ede817cd745747bd03a5050d20d7.stex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -10,7 +10,7 @@ metadata={
|
||||
[deps]
|
||||
|
||||
source_file="res://tiles/WWT-24.png"
|
||||
dest_files=[ "res://.import/WWT-24.png-f708ede817cd745747bd03a5050d20d7.stex" ]
|
||||
dest_files=["res://.godot/imported/WWT-24.png-f708ede817cd745747bd03a5050d20d7.stex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user