Added enemies
This commit is contained in:
@@ -108,3 +108,49 @@ unzip -o -q \"{temp_dir}/{archive_name}\" -d \"{temp_dir}\"
|
||||
ssh_remote_deploy/cleanup_script="#!/usr/bin/env bash
|
||||
kill $(pgrep -x -f \"{temp_dir}/{exe_name} {cmd_args}\")
|
||||
rm -rf \"{temp_dir}\""
|
||||
|
||||
[preset.2]
|
||||
|
||||
name="Web"
|
||||
platform="Web"
|
||||
runnable=true
|
||||
advanced_options=false
|
||||
dedicated_server=false
|
||||
custom_features=""
|
||||
export_filter="all_resources"
|
||||
include_filter=""
|
||||
exclude_filter=""
|
||||
export_path="export/Web/CultManor.html"
|
||||
patches=PackedStringArray()
|
||||
encryption_include_filters=""
|
||||
encryption_exclude_filters=""
|
||||
seed=0
|
||||
encrypt_pck=false
|
||||
encrypt_directory=false
|
||||
script_export_mode=2
|
||||
|
||||
[preset.2.options]
|
||||
|
||||
custom_template/debug=""
|
||||
custom_template/release=""
|
||||
variant/extensions_support=false
|
||||
variant/thread_support=false
|
||||
vram_texture_compression/for_desktop=true
|
||||
vram_texture_compression/for_mobile=false
|
||||
html/export_icon=true
|
||||
html/custom_html_shell=""
|
||||
html/head_include=""
|
||||
html/canvas_resize_policy=2
|
||||
html/focus_canvas_on_start=true
|
||||
html/experimental_virtual_keyboard=false
|
||||
progressive_web_app/enabled=false
|
||||
progressive_web_app/ensure_cross_origin_isolation_headers=true
|
||||
progressive_web_app/offline_page=""
|
||||
progressive_web_app/display=1
|
||||
progressive_web_app/orientation=0
|
||||
progressive_web_app/icon_144x144=""
|
||||
progressive_web_app/icon_180x180=""
|
||||
progressive_web_app/icon_512x512=""
|
||||
progressive_web_app/background_color=Color(0, 0, 0, 1)
|
||||
threads/emscripten_pool_size=8
|
||||
threads/godot_pool_size=4
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
class_name AbstractColorEnemy
|
||||
extends AbstractEnemy
|
||||
|
||||
|
||||
@onready var collision_switcher : CollisionSwitcher = $CollisionSwitcher
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
collision_switcher.material = sprite.material
|
||||
@@ -0,0 +1 @@
|
||||
uid://das7ujanefsn0
|
||||
@@ -0,0 +1,26 @@
|
||||
[gd_scene load_steps=6 format=3 uid="uid://d37eyum03h83i"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://bx0luh4vdob3q" path="res://game/characters/abstract_enemy.tscn" id="1_12hr0"]
|
||||
[ext_resource type="Script" uid="uid://das7ujanefsn0" path="res://game/characters/abstract_color_enemy.gd" id="2_rd56i"]
|
||||
[ext_resource type="PackedScene" uid="uid://5qlocc0yu8ug" path="res://game/collision_switcher.tscn" id="3_e5cea"]
|
||||
[ext_resource type="Shader" uid="uid://lqq1mg6l1qqe" path="res://game/shaders/black_n_white.gdshader" id="3_r5rx0"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_ybui5"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_r5rx0")
|
||||
shader_parameter/black_color = Color(0, 0, 0, 1)
|
||||
shader_parameter/white_color = Color(1, 1, 1, 1)
|
||||
shader_parameter/switch_colors = false
|
||||
shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 5.0
|
||||
shader_parameter/intensity = 1.0
|
||||
shader_parameter/scale = 20.0
|
||||
|
||||
[node name="AbstractColorEnemy" instance=ExtResource("1_12hr0")]
|
||||
script = ExtResource("2_rd56i")
|
||||
|
||||
[node name="AnimatedSprite2D" parent="." index="0"]
|
||||
material = SubResource("ShaderMaterial_ybui5")
|
||||
|
||||
[node name="CollisionSwitcher" parent="." index="2" node_paths=PackedStringArray("object") instance=ExtResource("3_e5cea")]
|
||||
object = NodePath("..")
|
||||
@@ -0,0 +1,5 @@
|
||||
class_name AbstractEnemy
|
||||
extends CharacterBody2D
|
||||
|
||||
|
||||
@onready var sprite : AnimatedSprite2D = $AnimatedSprite2D
|
||||
@@ -0,0 +1 @@
|
||||
uid://but5aeh7y1s0f
|
||||
@@ -0,0 +1,371 @@
|
||||
[gd_scene load_steps=45 format=3 uid="uid://bx0luh4vdob3q"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://but5aeh7y1s0f" path="res://game/characters/abstract_enemy.gd" id="1_2wrno"]
|
||||
[ext_resource type="Texture2D" uid="uid://drk8j57acajrq" path="res://images/characters/cultist.png" id="2_mocsw"]
|
||||
[ext_resource type="Shader" uid="uid://lqq1mg6l1qqe" path="res://game/shaders/black_n_white.gdshader" id="2_tjvyk"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_vecdo"]
|
||||
shader = ExtResource("2_tjvyk")
|
||||
shader_parameter/black_color = Color(0, 0, 0, 1)
|
||||
shader_parameter/white_color = Color(1, 1, 1, 1)
|
||||
shader_parameter/switch_colors = false
|
||||
shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 5.0
|
||||
shader_parameter/intensity = 1.0
|
||||
shader_parameter/scale = 20.0
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_tjvyk"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(128, 96, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_vecdo"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(64, 96, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_qly8p"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(0, 96, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_klrad"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(160, 96, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_rjy0i"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(96, 96, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_ps2ar"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(32, 96, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_ijx3p"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(0, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_nm8xp"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(32, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_mocsw"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(128, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_y256a"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(160, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_8wpvf"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(64, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_vbirv"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(0, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_ntvg2"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(96, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_ssc8d"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(96, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_hrljr"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(0, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_ng7ok"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(64, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_8s45y"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(192, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_qbqct"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(128, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_ga5mk"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(224, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_yu2nn"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(224, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_g4v8m"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(128, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_20lqo"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(192, 0, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_l58xb"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(0, 64, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_jrclg"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(32, 64, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_wwwee"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(64, 64, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_law7y"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(96, 64, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_hme24"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(128, 64, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_qawtf"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(160, 64, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_srxh4"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(192, 64, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_x6npu"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(224, 64, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_xavx3"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(0, 32, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_8t4m8"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(32, 32, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_3seah"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(64, 32, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_koyeg"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(96, 32, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_uw3v1"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(128, 32, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_265lf"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(160, 32, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_tav7c"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(192, 32, 32, 32)
|
||||
|
||||
[sub_resource type="AtlasTexture" id="AtlasTexture_0xs27"]
|
||||
atlas = ExtResource("2_mocsw")
|
||||
region = Rect2(224, 32, 32, 32)
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_2wrno"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_tjvyk")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"fall_down",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_vecdo")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"fall_down_left",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_qly8p")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"fall_down_right",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_klrad")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"fall_up",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_rjy0i")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"fall_up_left",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_ps2ar")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"fall_up_right",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 9.0,
|
||||
"texture": SubResource("AtlasTexture_ijx3p")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_nm8xp")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"idle_front",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 9.0,
|
||||
"texture": SubResource("AtlasTexture_mocsw")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_y256a")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"idle_rear",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_8wpvf")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_vbirv")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_ntvg2")
|
||||
}],
|
||||
"loop": false,
|
||||
"name": &"look_around_front_1",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_ssc8d")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_hrljr")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_ng7ok")
|
||||
}],
|
||||
"loop": false,
|
||||
"name": &"look_around_front_2",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_8s45y")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_qbqct")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_ga5mk")
|
||||
}],
|
||||
"loop": false,
|
||||
"name": &"look_around_rear_1",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_yu2nn")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_g4v8m")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_20lqo")
|
||||
}],
|
||||
"loop": false,
|
||||
"name": &"look_around_rear_2",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_l58xb")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_jrclg")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_wwwee")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_law7y")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_hme24")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_qawtf")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_srxh4")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_x6npu")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"walk_left",
|
||||
"speed": 10.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_xavx3")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_8t4m8")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_3seah")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_koyeg")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_uw3v1")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_265lf")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_tav7c")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": SubResource("AtlasTexture_0xs27")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"walk_right",
|
||||
"speed": 10.0
|
||||
}]
|
||||
|
||||
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_mocsw"]
|
||||
radius = 4.0
|
||||
height = 28.0
|
||||
|
||||
[node name="AbstractEnemy" type="CharacterBody2D"]
|
||||
collision_layer = 0
|
||||
script = ExtResource("1_2wrno")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
material = SubResource("ShaderMaterial_vecdo")
|
||||
sprite_frames = SubResource("SpriteFrames_2wrno")
|
||||
animation = &"walk_right"
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
position = Vector2(0, 2)
|
||||
shape = SubResource("CapsuleShape2D_mocsw")
|
||||
@@ -0,0 +1,2 @@
|
||||
class_name BlackEnemy
|
||||
extends AbstractColorEnemy
|
||||
@@ -0,0 +1 @@
|
||||
uid://c2knsjcp6faf6
|
||||
@@ -0,0 +1,26 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://cutjutvd8dqqc"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://d37eyum03h83i" path="res://game/characters/abstract_color_enemy.tscn" id="1_gj2ks"]
|
||||
[ext_resource type="Script" uid="uid://c2knsjcp6faf6" path="res://game/characters/black_enemy.gd" id="2_332ds"]
|
||||
[ext_resource type="Shader" uid="uid://lqq1mg6l1qqe" path="res://game/shaders/black_n_white.gdshader" id="3_3jy5n"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_3jy5n"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_3jy5n")
|
||||
shader_parameter/black_color = Color(0, 0, 0, 1)
|
||||
shader_parameter/white_color = Color(1, 1, 1, 1)
|
||||
shader_parameter/switch_colors = true
|
||||
shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 5.0
|
||||
shader_parameter/intensity = 1.0
|
||||
shader_parameter/scale = 20.0
|
||||
|
||||
[node name="BlackEnemy" instance=ExtResource("1_gj2ks")]
|
||||
collision_layer = 4
|
||||
script = ExtResource("2_332ds")
|
||||
|
||||
[node name="AnimatedSprite2D" parent="." index="0"]
|
||||
material = SubResource("ShaderMaterial_3jy5n")
|
||||
|
||||
[node name="CollisionSwitcher" parent="." index="2"]
|
||||
initial_state = 0
|
||||
@@ -0,0 +1,2 @@
|
||||
class_name GrayEnemy
|
||||
extends AbstractEnemy
|
||||
@@ -0,0 +1 @@
|
||||
uid://cern5veiqkrkc
|
||||
@@ -0,0 +1,23 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://cb0w6mt8g4mer"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://bx0luh4vdob3q" path="res://game/characters/abstract_enemy.tscn" id="1_q3s46"]
|
||||
[ext_resource type="Script" uid="uid://cern5veiqkrkc" path="res://game/characters/gray_enemy.gd" id="2_olede"]
|
||||
[ext_resource type="Shader" uid="uid://lqq1mg6l1qqe" path="res://game/shaders/black_n_white.gdshader" id="3_ho47d"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_hsdrn"]
|
||||
shader = ExtResource("3_ho47d")
|
||||
shader_parameter/black_color = Color(0, 0, 0, 1)
|
||||
shader_parameter/white_color = Color(1, 1, 1, 1)
|
||||
shader_parameter/switch_colors = false
|
||||
shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 5.0
|
||||
shader_parameter/intensity = 0.70000003325
|
||||
shader_parameter/scale = 20.0
|
||||
|
||||
[node name="GrayEnemy" instance=ExtResource("1_q3s46")]
|
||||
collision_layer = 16
|
||||
collision_mask = 137
|
||||
script = ExtResource("2_olede")
|
||||
|
||||
[node name="AnimatedSprite2D" parent="." index="0"]
|
||||
material = SubResource("ShaderMaterial_hsdrn")
|
||||
@@ -2,6 +2,9 @@ class_name Player
|
||||
extends CharacterBody2D
|
||||
|
||||
|
||||
signal dead
|
||||
|
||||
|
||||
const ANIMATION_IDLE = "idle"
|
||||
const ANIMATION_LOOK_AROUND_1 = "look_around_1"
|
||||
const ANIMATION_LOOK_AROUND_2 = "look_around_2"
|
||||
@@ -47,7 +50,14 @@ func _physics_process(delta: float) -> void:
|
||||
velocity.x = move_toward(velocity.x, 0, acceleration * delta)
|
||||
|
||||
_update_animation()
|
||||
move_and_slide()
|
||||
|
||||
var was_collided := move_and_slide()
|
||||
if was_collided:
|
||||
for i in range(get_slide_collision_count()):
|
||||
var collision := get_slide_collision(i)
|
||||
if collision.get_collider() is AbstractEnemy:
|
||||
queue_free()
|
||||
dead.emit()
|
||||
|
||||
|
||||
func _input(event: InputEvent) -> void:
|
||||
|
||||
@@ -307,7 +307,7 @@ script = ExtResource("1_xln5q")
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
material = SubResource("ShaderMaterial_i05k5")
|
||||
sprite_frames = SubResource("SpriteFrames_v8w1g")
|
||||
animation = &"fall_up"
|
||||
animation = &"look_around_1"
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
position = Vector2(0, 1)
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
class_name WhiteEnemy
|
||||
extends AbstractColorEnemy
|
||||
@@ -0,0 +1 @@
|
||||
uid://dmcpkytgiuedi
|
||||
@@ -0,0 +1,24 @@
|
||||
[gd_scene load_steps=5 format=3 uid="uid://bv2gahb4wxgb1"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://d37eyum03h83i" path="res://game/characters/abstract_color_enemy.tscn" id="1_3yi7g"]
|
||||
[ext_resource type="Script" uid="uid://dmcpkytgiuedi" path="res://game/characters/white_enemy.gd" id="2_c7pdf"]
|
||||
[ext_resource type="Shader" uid="uid://lqq1mg6l1qqe" path="res://game/shaders/black_n_white.gdshader" id="3_uj6yw"]
|
||||
|
||||
[sub_resource type="ShaderMaterial" id="ShaderMaterial_gfhm1"]
|
||||
resource_local_to_scene = true
|
||||
shader = ExtResource("3_uj6yw")
|
||||
shader_parameter/black_color = Color(0, 0, 0, 1)
|
||||
shader_parameter/white_color = Color(1, 1, 1, 1)
|
||||
shader_parameter/switch_colors = false
|
||||
shader_parameter/threshold = 0.5
|
||||
shader_parameter/speed = 5.0
|
||||
shader_parameter/intensity = 1.0
|
||||
shader_parameter/scale = 20.0
|
||||
|
||||
[node name="WhiteEnemy" instance=ExtResource("1_3yi7g")]
|
||||
collision_layer = 64
|
||||
collision_mask = 129
|
||||
script = ExtResource("2_c7pdf")
|
||||
|
||||
[node name="AnimatedSprite2D" parent="." index="0"]
|
||||
material = SubResource("ShaderMaterial_gfhm1")
|
||||
@@ -37,12 +37,7 @@ const SHADER_INTENSITY = "shader_parameter/intensity"
|
||||
|
||||
@export var object : CollisionObject2D
|
||||
|
||||
@export var state := _state:
|
||||
set(value):
|
||||
if (_state != value):
|
||||
_state = value
|
||||
get():
|
||||
return _state
|
||||
@export var initial_state : State = State.White
|
||||
|
||||
|
||||
var material : Material:
|
||||
@@ -50,7 +45,7 @@ var material : Material:
|
||||
material = value
|
||||
_apply_color()
|
||||
|
||||
var _state : State = State.White:
|
||||
var _state : State:
|
||||
set(value):
|
||||
_state = value
|
||||
_apply_color()
|
||||
@@ -71,6 +66,8 @@ func _ready() -> void:
|
||||
_grey_mask = _get_grey_collision(object.collision_mask)
|
||||
_color_mask = _get_color_collision(object.collision_mask)
|
||||
|
||||
_state = initial_state
|
||||
|
||||
|
||||
func switch_color(time: float = 0.0) -> void:
|
||||
if _intensity_tween != null and _intensity_tween.is_running(): return
|
||||
@@ -102,9 +99,9 @@ func _set_shader_internsity(value: float) -> void:
|
||||
func _update_state() -> void:
|
||||
match _state:
|
||||
State.TransitionToBlack:
|
||||
state = State.Black
|
||||
_state = State.Black
|
||||
State.TransitionToWhite:
|
||||
state = State.White
|
||||
_state = State.White
|
||||
|
||||
|
||||
func _apply_color() -> void:
|
||||
@@ -125,7 +122,6 @@ func _apply_color() -> void:
|
||||
object.collision_layer = layer
|
||||
object.collision_mask = mask
|
||||
|
||||
|
||||
if material != null:
|
||||
var is_black := _state == State.Black or _state == State.TransitionToBlack
|
||||
material.set(SHADER_SWITCH_COLORS, is_black)
|
||||
|
||||
@@ -3,13 +3,20 @@ extends Node2D
|
||||
|
||||
|
||||
@onready var pause_menu : PauseMenu = $%PauseMenu
|
||||
@onready var game_over_menu : GameOverMenu = $%GameOverMenu
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
pause_menu.hide()
|
||||
game_over_menu.hide()
|
||||
|
||||
|
||||
func _input(event: InputEvent) -> void:
|
||||
if event.is_action_pressed("pause"):
|
||||
get_tree().paused = true
|
||||
pause_menu.show()
|
||||
|
||||
|
||||
func _on_player_dead() -> void:
|
||||
get_tree().paused = true
|
||||
game_over_menu.show()
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=14 format=3 uid="uid://mpsu4g2b5h3a"]
|
||||
[gd_scene load_steps=15 format=3 uid="uid://mpsu4g2b5h3a"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://c737mx0kxva7i" path="res://game/levels/abstract_level.gd" id="1_o2mui"]
|
||||
[ext_resource type="PackedScene" uid="uid://dtcad8tdx78tg" path="res://game/characters/player.tscn" id="2_r0ht6"]
|
||||
@@ -7,6 +7,7 @@
|
||||
[ext_resource type="Material" uid="uid://d2o2o1w8kb51g" path="res://game/materials/white_walls.tres" id="5_6b8cu"]
|
||||
[ext_resource type="Material" uid="uid://bhksbugqhxxa0" path="res://game/materials/black_walls.tres" id="6_x8k35"]
|
||||
[ext_resource type="PackedScene" uid="uid://dsts4y32slhnc" path="res://game/menu/pause_menu.tscn" id="7_l0xih"]
|
||||
[ext_resource type="PackedScene" uid="uid://84lhc3yn8vub" path="res://game/menu/game_over_menu.tscn" id="8_b7vts"]
|
||||
|
||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_pi5fd"]
|
||||
texture = ExtResource("3_fnnmn")
|
||||
@@ -371,6 +372,8 @@ script = ExtResource("1_o2mui")
|
||||
|
||||
[node name="Pickups" type="Node2D" parent="."]
|
||||
|
||||
[node name="Enemies" type="Node2D" parent="."]
|
||||
|
||||
[node name="Player" parent="." instance=ExtResource("2_r0ht6")]
|
||||
|
||||
[node name="Tiles" type="Node2D" parent="."]
|
||||
@@ -392,3 +395,9 @@ tile_set = SubResource("TileSet_l0xih")
|
||||
[node name="PauseMenu" parent="CanvasLayer" instance=ExtResource("7_l0xih")]
|
||||
unique_name_in_owner = true
|
||||
visible = false
|
||||
|
||||
[node name="GameOverMenu" parent="CanvasLayer" instance=ExtResource("8_b7vts")]
|
||||
unique_name_in_owner = true
|
||||
visible = false
|
||||
|
||||
[connection signal="dead" from="Player" to="." method="_on_player_dead"]
|
||||
|
||||
+30
-11
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=17 format=4 uid="uid://bmn74wc2vophn"]
|
||||
[gd_scene load_steps=21 format=4 uid="uid://bmn74wc2vophn"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://mpsu4g2b5h3a" path="res://game/levels/abstract_level.tscn" id="1_15okj"]
|
||||
[ext_resource type="Script" uid="uid://b04km0lbc108u" path="res://game/levels/level_1.gd" id="2_hj65a"]
|
||||
@@ -16,6 +16,10 @@
|
||||
[ext_resource type="PackedScene" uid="uid://ciubf1ttwc133" path="res://game/pickups/square_key_pickup.tscn" id="9_yrqjd"]
|
||||
[ext_resource type="PackedScene" uid="uid://dqgmfpv2mhdpn" path="res://game/pickups/triangle_key_pickup.tscn" id="10_dea75"]
|
||||
[ext_resource type="PackedScene" uid="uid://b7mhdrj3b6loq" path="res://game/doors/door.tscn" id="11_g1txn"]
|
||||
[ext_resource type="PackedScene" uid="uid://dx1yasi8wlaye" path="res://game/objects/bookstand.tscn" id="13_g3b4m"]
|
||||
[ext_resource type="PackedScene" uid="uid://cb0w6mt8g4mer" path="res://game/characters/gray_enemy.tscn" id="18_blgb8"]
|
||||
[ext_resource type="PackedScene" uid="uid://cutjutvd8dqqc" path="res://game/characters/black_enemy.tscn" id="19_ohfy3"]
|
||||
[ext_resource type="PackedScene" uid="uid://bv2gahb4wxgb1" path="res://game/characters/white_enemy.tscn" id="20_rt0xo"]
|
||||
|
||||
[node name="Level1" instance=ExtResource("1_15okj")]
|
||||
script = ExtResource("2_hj65a")
|
||||
@@ -27,16 +31,16 @@ position = Vector2(416, -56)
|
||||
position = Vector2(1152, 88)
|
||||
|
||||
[node name="ClosedDoor" parent="Doors" index="2" instance=ExtResource("5_1skah")]
|
||||
position = Vector2(1233, 88)
|
||||
position = Vector2(1104, -56)
|
||||
|
||||
[node name="TriangleDoor" parent="Doors" index="3" instance=ExtResource("6_75eok")]
|
||||
position = Vector2(900, -56)
|
||||
position = Vector2(896, -56)
|
||||
|
||||
[node name="SquareDoor" parent="Doors" index="4" instance=ExtResource("7_1skah")]
|
||||
position = Vector2(626, -56)
|
||||
position = Vector2(624, -56)
|
||||
|
||||
[node name="BookDoor" parent="Doors" index="5" instance=ExtResource("8_75eok")]
|
||||
position = Vector2(958, 88)
|
||||
position = Vector2(1280, 88)
|
||||
|
||||
[node name="Fireplace" parent="Objects" index="0" instance=ExtResource("3_tuvkr")]
|
||||
position = Vector2(452, -48)
|
||||
@@ -50,23 +54,38 @@ position = Vector2(65, 1)
|
||||
[node name="SwitchKbd" parent="Objects" index="3" instance=ExtResource("6_l6jt4")]
|
||||
position = Vector2(692, -72)
|
||||
|
||||
[node name="Bookstand" parent="Objects" index="4" instance=ExtResource("13_g3b4m")]
|
||||
position = Vector2(1216, 102)
|
||||
|
||||
[node name="BookPickup" parent="Pickups" index="0" instance=ExtResource("7_fq0h3")]
|
||||
position = Vector2(145, 0)
|
||||
position = Vector2(1216, 86)
|
||||
|
||||
[node name="CircleKeyPickup" parent="Pickups" index="1" instance=ExtResource("8_g1txn")]
|
||||
position = Vector2(172, 0)
|
||||
position = Vector2(949, 88)
|
||||
|
||||
[node name="SquareKeyPickup" parent="Pickups" index="2" instance=ExtResource("9_yrqjd")]
|
||||
position = Vector2(196, 0)
|
||||
position = Vector2(306, -56)
|
||||
|
||||
[node name="TriangleKeyPickup" parent="Pickups" index="3" instance=ExtResource("10_dea75")]
|
||||
position = Vector2(218, 0)
|
||||
position = Vector2(803, -56)
|
||||
|
||||
[node name="GrayEnemy" parent="Enemies" index="0" instance=ExtResource("18_blgb8")]
|
||||
position = Vector2(1390, 96)
|
||||
|
||||
[node name="BlackEnemy" parent="Enemies" index="1" instance=ExtResource("19_ohfy3")]
|
||||
position = Vector2(936, -48)
|
||||
|
||||
[node name="WhiteEnemy" parent="Enemies" index="2" instance=ExtResource("20_rt0xo")]
|
||||
position = Vector2(743, -48)
|
||||
|
||||
[node name="Player" parent="." index="4"]
|
||||
position = Vector2(-13, 0)
|
||||
|
||||
[node name="GrayWalls" parent="Tiles" index="0"]
|
||||
tile_map_data = PackedByteArray("AAD9/wEAAAABAAAAAAD+/wEAAAABAAAAAAD//wEAAAABAAAAAAAAAAEAAAABAAAAAAABAAEAAAABAAAAAAACAAEAAAABAAAAAAD8/wEAAAADAAEAAAD8/wAAAAACAAEAAAD8////AAACAAEAAAD8//7/AAACAAEAAAD8//3/AAACAAEAAAADAAEAAAABAAAAAAAEAAEAAAABAAAAAAAFAAEAAAABAAAAAAAGAAEAAAABAAAAAAAHAAEAAAABAAAAAAAIAAEAAAABAAAAAAAJAAEAAAABAAAAAAAKAAEAAAABAAAAAAALAAEAAAABAAAAAAAMAAEAAAABAAAAAAANAAEAAAABAAAAAAAOAAEAAAABAAAAAAAPAAEAAAABAAAAAAAQAAEAAAABAAAAAAARAAEAAAABAAAAAAASAAEAAAABAAAAAAATAAEAAAAEAAEAAAATAAAAAAAAAAEAAAATAP//AAAAAAEAAAATAP7/AAAAAAAAAAAUAP7/AAABAAAAAAAVAP7/AAABAAAAAAAWAP7/AAABAAAAAAAXAP7/AAABAAAAAAAYAP7/AAABAAAAAAAZAP7/AAABAAAAAAAaAP7/AAABAAAAAAAbAP7/AAABAAAAAAAcAP7/AAABAAAAAAAdAP7/AAABAAAAAAAeAP7/AAABAAAAAAAfAP7/AAABAAAAAAAgAP7/AAABAAAAAAAhAP7/AAABAAAAAAAiAP7/AAABAAAAAAAjAP7/AAABAAAAAAAkAP7/AAABAAAAAAAlAP7/AAABAAAAAAAmAP7/AAABAAAAAAAnAP7/AAABAAAAAAAoAP7/AAABAAAAAAApAP7/AAABAAAAAAAqAP7/AAABAAAAAAArAP7/AAABAAAAAAAsAP7/AAABAAAAAAAtAP7/AAABAAAAAAAuAP7/AAABAAAAAAAvAP7/AAABAAAAAAAwAP7/AAABAAAAAAAxAP7/AAABAAAAAAAyAP7/AAABAAAAAAAzAP7/AAABAAAAAAA0AP7/AAABAAAAAAA1AP7/AAABAAAAAAA2AP7/AAABAAAAAAA3AP7/AAABAAAAAAA4AP7/AAABAAAAAABEAP7/AAAEAAEAAABEAP3/AAAAAAEAAABEAPz/AAAAAAEAAABEAPv/AAAAAAEAAABEAPr/AAAAAAEAAAA5AP7/AAABAAAAAAA6AP7/AAABAAAAAAA7AP7/AAABAAAAAAA8AP7/AAABAAAAAAA9AP7/AAABAAAAAAA+AP7/AAABAAAAAABCAP7/AAABAAAAAABDAP7/AAABAAAAAAA5AAMAAAACAAEAAAA5AAQAAAACAAEAAAA5AAUAAAACAAEAAAA5AAYAAAACAAEAAAA5AAcAAAADAAEAAABHAAcAAAABAAAAAABGAAcAAAABAAAAAABFAAcAAAABAAAAAABEAAcAAAABAAAAAABDAAcAAAABAAAAAABCAAcAAAABAAAAAABBAAcAAAABAAAAAABAAAcAAAABAAAAAAA/AAcAAAABAAAAAAA+AAcAAAABAAAAAAA9AAcAAAABAAAAAAA8AAcAAAABAAAAAAA7AAcAAAABAAAAAAA6AAcAAAABAAAAAAA/AP7/AAAIAAAAAABBAP7/AAAHAAAAAABHAAMAAAAGAAIAAABIAAcAAAABAAAAAABJAAcAAAABAAAAAABKAAcAAAABAAAAAABLAAcAAAABAAAAAABMAAcAAAABAAAAAABNAAcAAAABAAAAAABOAAcAAAABAAAAAABPAAcAAAAEAAEAAABPAAYAAAAAAAEAAABPAAUAAAAAAAEAAABPAAQAAAAAAAEAAABPAAMAAAAAAAEAAABPAAIAAAAEAAAAAABHAAIAAAADAAAAAAAZAPr/AAAGAAIAAAA=")
|
||||
tile_map_data = PackedByteArray("AAD9/wEAAAABAAAAAAD+/wEAAAABAAAAAAD//wEAAAABAAAAAAAAAAEAAAABAAAAAAABAAEAAAABAAAAAAACAAEAAAABAAAAAAD8/wEAAAADAAEAAAD8/wAAAAACAAEAAAD8////AAACAAEAAAD8//7/AAACAAEAAAD8//3/AAACAAEAAAADAAEAAAABAAAAAAAEAAEAAAABAAAAAAAFAAEAAAABAAAAAAAGAAEAAAABAAAAAAAHAAEAAAABAAAAAAAIAAEAAAABAAAAAAAJAAEAAAABAAAAAAAKAAEAAAABAAAAAAALAAEAAAABAAAAAAAMAAEAAAABAAAAAAANAAEAAAABAAAAAAAOAAEAAAABAAAAAAAPAAEAAAABAAAAAAAQAAEAAAABAAAAAAARAAEAAAABAAAAAAASAAEAAAABAAAAAAATAAEAAAAEAAEAAAATAAAAAAAAAAEAAAATAP//AAAAAAEAAAATAP7/AAAAAAAAAAAUAP7/AAABAAAAAAAVAP7/AAABAAAAAAAWAP7/AAABAAAAAAAXAP7/AAABAAAAAAAYAP7/AAABAAAAAAAZAP7/AAABAAAAAAAaAP7/AAABAAAAAAAbAP7/AAABAAAAAAAcAP7/AAABAAAAAAAdAP7/AAABAAAAAAAeAP7/AAABAAAAAAAfAP7/AAABAAAAAAAgAP7/AAABAAAAAAAhAP7/AAABAAAAAAAiAP7/AAABAAAAAAAjAP7/AAABAAAAAAAkAP7/AAABAAAAAAAlAP7/AAABAAAAAAAmAP7/AAABAAAAAAAnAP7/AAABAAAAAAAoAP7/AAABAAAAAAApAP7/AAABAAAAAAAqAP7/AAABAAAAAAArAP7/AAABAAAAAAAsAP7/AAABAAAAAAAtAP7/AAABAAAAAAAuAP7/AAABAAAAAAAvAP7/AAABAAAAAAAwAP7/AAABAAAAAAAxAP7/AAABAAAAAAAyAP7/AAABAAAAAAAzAP7/AAABAAAAAAA0AP7/AAABAAAAAAA1AP7/AAABAAAAAAA2AP7/AAABAAAAAAA3AP7/AAABAAAAAAA4AP7/AAABAAAAAABEAP7/AAABAAAAAABEAPr/AAAGAAIAAAA5AP7/AAABAAAAAAA6AP7/AAABAAAAAAA7AP7/AAABAAAAAAA8AP7/AAABAAAAAAA9AP7/AAABAAAAAAA+AP7/AAABAAAAAABCAP7/AAABAAAAAABDAP7/AAABAAAAAAA5AAMAAAACAAEAAAA5AAQAAAACAAEAAAA5AAUAAAACAAEAAAA5AAYAAAACAAEAAAA5AAcAAAADAAEAAABHAAcAAAABAAAAAABGAAcAAAABAAAAAABFAAcAAAABAAAAAABEAAcAAAABAAAAAABDAAcAAAABAAAAAABCAAcAAAABAAAAAABBAAcAAAABAAAAAABAAAcAAAABAAAAAAA/AAcAAAABAAAAAAA+AAcAAAABAAAAAAA9AAcAAAABAAAAAAA8AAcAAAABAAAAAAA7AAcAAAABAAAAAAA6AAcAAAABAAAAAAA/AP7/AAAIAAAAAABBAP7/AAAHAAAAAABHAAMAAAAGAAIAAABIAAcAAAABAAAAAABJAAcAAAABAAAAAABKAAcAAAABAAAAAABLAAcAAAABAAAAAABMAAcAAAABAAAAAABNAAcAAAABAAAAAABOAAcAAAABAAAAAABPAAcAAAABAAAAAABPAAIAAAAEAAAAAABHAAIAAAADAAAAAAAZAPr/AAAGAAIAAAAmAPr/AAAGAAIAAAA3APr/AAAGAAIAAABFAP7/AAABAAAAAABGAP7/AAABAAAAAABHAP7/AAABAAAAAABIAP7/AAABAAAAAABJAP7/AAABAAAAAABKAP7/AAABAAAAAABLAP7/AAABAAAAAABMAP7/AAABAAAAAABNAP7/AAABAAAAAABOAP7/AAABAAAAAABPAP7/AAABAAAAAABQAP7/AAABAAAAAABRAP7/AAABAAAAAABSAP7/AAABAAAAAABTAP7/AAABAAAAAABUAP7/AAABAAAAAABVAP7/AAABAAAAAABWAP7/AAABAAAAAABXAP7/AAABAAAAAABYAP7/AAABAAAAAABZAP7/AAABAAAAAABaAP7/AAABAAAAAABbAP7/AAABAAAAAABcAP7/AAABAAAAAABdAP7/AAABAAAAAABeAP7/AAABAAAAAABfAP7/AAABAAAAAABgAP7/AAABAAAAAABhAP7/AAABAAAAAABiAP7/AAABAAAAAABEAPn/AAADAAAAAABQAAcAAAABAAAAAABRAAcAAAABAAAAAABSAAcAAAABAAAAAABTAAcAAAABAAAAAABUAAcAAAABAAAAAABVAAcAAAABAAAAAABWAAcAAAABAAAAAABXAAcAAAABAAAAAABYAAcAAAABAAAAAABZAAcAAAABAAAAAABaAAcAAAABAAAAAABbAAcAAAABAAAAAABcAAcAAAAEAAEAAABcAAYAAAAAAAEAAABcAAUAAAAAAAEAAABcAAQAAAAAAAEAAABcAAMAAAAAAAEAAABPAAMAAAAGAAIAAAA=")
|
||||
|
||||
[node name="BlackWalls" parent="Tiles" index="1"]
|
||||
tile_map_data = PackedByteArray("AABAAP7/AAAEAAIAAAA=")
|
||||
|
||||
[node name="WhiteWalls" parent="Tiles" index="2"]
|
||||
tile_map_data = PackedByteArray("AAAwAP3/AAAAAAEAAAAwAPz/AAAAAAEAAAAwAPv/AAAAAAEAAAAwAPr/AAAAAAEAAAAwAPn/AAAAAAEAAAAwAPj/AAAAAAEAAAAwAPf/AAAAAAEAAAD8//z/AAACAAEAAAD8//v/AAACAAEAAAD8//r/AAACAAEAAAD8//n/AAACAAEAAAD8//j/AAACAAEAAAD8//f/AAACAAEAAAD8//b/AAADAAAAAAD9//b/AAABAAIAAAD+//b/AAABAAIAAAD///b/AAABAAIAAAAAAPb/AAABAAIAAAABAPb/AAABAAIAAAACAPb/AAABAAIAAAADAPb/AAABAAIAAAAEAPb/AAABAAIAAAAFAPb/AAABAAIAAAAGAPb/AAABAAIAAAAHAPb/AAABAAIAAAAIAPb/AAABAAIAAAAJAPb/AAABAAIAAAAKAPb/AAABAAIAAAALAPb/AAABAAIAAAAMAPb/AAABAAIAAAANAPb/AAABAAIAAAAOAPb/AAABAAIAAAAPAPb/AAABAAIAAAAQAPb/AAABAAIAAAARAPb/AAABAAIAAAASAPb/AAABAAIAAAATAPb/AAABAAIAAAAUAPb/AAABAAIAAAAVAPb/AAABAAIAAAAWAPb/AAABAAIAAAAXAPb/AAABAAIAAAAYAPb/AAABAAIAAAAZAPb/AAABAAIAAAAaAPb/AAABAAIAAAAbAPb/AAABAAIAAAAcAPb/AAABAAIAAAAdAPb/AAABAAIAAAAeAPb/AAABAAIAAAAfAPb/AAABAAIAAAAgAPb/AAABAAIAAAAhAPb/AAABAAIAAAAiAPb/AAABAAIAAAAjAPb/AAABAAIAAAAkAPb/AAABAAIAAAAlAPb/AAABAAIAAAAmAPb/AAABAAIAAAAnAPb/AAABAAIAAAAoAPb/AAABAAIAAAApAPb/AAABAAIAAAAqAPb/AAABAAIAAAArAPb/AAABAAIAAAAsAPb/AAABAAIAAAAtAPb/AAABAAIAAAAuAPb/AAABAAIAAAAvAPb/AAABAAIAAAAwAPb/AAABAAYAAAAxAPb/AAABAAIAAAAyAPb/AAABAAIAAAAzAPb/AAABAAIAAAA0APb/AAABAAIAAAA1APb/AAABAAIAAAA2APb/AAABAAIAAAA3APb/AAABAAIAAAA4APb/AAABAAIAAAA5APb/AAABAAIAAAA6APb/AAABAAIAAAA7APb/AAABAAIAAAA8APb/AAABAAIAAAA9APb/AAABAAIAAAA+APb/AAABAAIAAAA/APb/AAABAAIAAABAAPb/AAABAAIAAABEAPn/AAAAAAEAAABEAPj/AAAAAAEAAABEAPf/AAAAAAEAAABEAPb/AAAEAAAAAABBAPb/AAABAAIAAABCAPb/AAABAAIAAABDAPb/AAABAAIAAAA+AP7/AAADAAAAAABCAP7/AAAEAAAAAAA+AP//AAACAAIAAABCAP//AAAAAAIAAAA9AP//AAABAAIAAAA8AP//AAABAAIAAAA7AP//AAABAAIAAAA6AP//AAABAAIAAABDAP//AAABAAIAAABEAP//AAABAAIAAABFAP//AAABAAIAAABGAP//AAABAAIAAAA5AP//AAADAAAAAABHAP//AAAEAAAAAAA5AAAAAAACAAEAAAA5AAEAAAACAAEAAAA5AAIAAAACAAEAAABHAAAAAAAAAAEAAABHAAEAAAAAAAEAAABHAAIAAAAAAAEAAABOAAIAAAABAAIAAABNAAIAAAABAAIAAABMAAIAAAABAAIAAABLAAIAAAABAAIAAABKAAIAAAABAAIAAABJAAIAAAABAAIAAABIAAIAAAABAAIAAAAZAPf/AAAGAAEAAAAZAPj/AAAGAAEAAAAZAPn/AAAGAAEAAAA=")
|
||||
tile_map_data = PackedByteArray("AAAwAP3/AAAAAAEAAAAwAPz/AAAAAAEAAAAwAPv/AAAAAAEAAAAwAPr/AAAAAAEAAAAwAPn/AAAAAAEAAAAwAPj/AAAAAAEAAAAwAPf/AAAAAAEAAAD8//z/AAACAAEAAAD8//v/AAACAAEAAAD8//r/AAACAAEAAAD8//n/AAACAAEAAAD8//j/AAACAAEAAAD8//f/AAACAAEAAAD8//b/AAADAAAAAAD9//b/AAABAAIAAAD+//b/AAABAAIAAAD///b/AAABAAIAAAAAAPb/AAABAAIAAAABAPb/AAABAAIAAAACAPb/AAABAAIAAAADAPb/AAABAAIAAAAEAPb/AAABAAIAAAAFAPb/AAABAAIAAAAGAPb/AAABAAIAAAAHAPb/AAABAAIAAAAIAPb/AAABAAIAAAAJAPb/AAABAAIAAAAKAPb/AAABAAIAAAALAPb/AAABAAIAAAAMAPb/AAABAAIAAAANAPb/AAABAAIAAAAOAPb/AAABAAIAAAAPAPb/AAABAAIAAAAQAPb/AAABAAIAAAARAPb/AAABAAIAAAASAPb/AAABAAIAAAATAPb/AAABAAIAAAAUAPb/AAABAAIAAAAVAPb/AAABAAIAAAAWAPb/AAABAAIAAAAXAPb/AAABAAIAAAAYAPb/AAABAAIAAAAZAPb/AAABAAIAAAAaAPb/AAABAAIAAAAbAPb/AAABAAIAAAAcAPb/AAABAAIAAAAdAPb/AAABAAIAAAAeAPb/AAABAAIAAAAfAPb/AAABAAIAAAAgAPb/AAABAAIAAAAhAPb/AAABAAIAAAAiAPb/AAABAAIAAAAjAPb/AAABAAIAAAAkAPb/AAABAAIAAAAlAPb/AAABAAIAAAAmAPb/AAABAAIAAAAnAPb/AAABAAIAAAAoAPb/AAABAAIAAAApAPb/AAABAAIAAAAqAPb/AAABAAIAAAArAPb/AAABAAIAAAAsAPb/AAABAAIAAAAtAPb/AAABAAIAAAAuAPb/AAABAAIAAAAvAPb/AAABAAIAAAAwAPb/AAABAAYAAAAxAPb/AAABAAIAAAAyAPb/AAABAAIAAAAzAPb/AAABAAIAAAA0APb/AAABAAIAAAA1APb/AAABAAIAAAA2APb/AAABAAIAAAA3APb/AAABAAIAAAA4APb/AAABAAIAAAA5APb/AAABAAIAAAA6APb/AAABAAIAAAA7APb/AAABAAIAAAA8APb/AAABAAIAAAA9APb/AAABAAIAAAA+APb/AAABAAIAAAA/APb/AAABAAIAAABAAPb/AAABAAIAAABEAPn/AAAAAAEAAABEAPj/AAAAAAEAAABEAPf/AAAAAAEAAABEAPb/AAAEAAAAAABBAPb/AAABAAIAAABCAPb/AAABAAIAAABDAPb/AAABAAIAAAA+AP7/AAADAAAAAABCAP7/AAAEAAAAAAA+AP//AAACAAIAAABCAP//AAAAAAIAAAA9AP//AAABAAIAAAA8AP//AAABAAIAAAA7AP//AAABAAIAAAA6AP//AAABAAIAAABDAP//AAABAAIAAABEAP//AAABAAIAAABFAP//AAABAAIAAABGAP//AAABAAIAAAA5AP//AAADAAAAAABHAP//AAAEAAAAAAA5AAAAAAACAAEAAAA5AAEAAAACAAEAAAA5AAIAAAACAAEAAABHAAAAAAAAAAEAAABHAAEAAAAAAAEAAABHAAIAAAAAAAEAAABOAAIAAAABAAIAAABNAAIAAAABAAIAAABMAAIAAAABAAIAAABLAAIAAAABAAIAAABKAAIAAAABAAIAAABJAAIAAAABAAIAAABIAAIAAAABAAIAAAAZAPf/AAAGAAEAAAAZAPj/AAAGAAEAAAAZAPn/AAAGAAEAAAAmAPn/AAAGAAEAAAAmAPj/AAAGAAEAAAAmAPf/AAAGAAEAAAA3APn/AAAGAAEAAAA3APj/AAAGAAEAAAA3APf/AAAGAAEAAABFAPn/AAABAAIAAABGAPn/AAABAAIAAABHAPn/AAABAAIAAABIAPn/AAABAAIAAABJAPn/AAABAAIAAABRAPn/AAABAAIAAABKAPn/AAABAAIAAABLAPn/AAABAAIAAABMAPn/AAABAAIAAABNAPn/AAABAAIAAABOAPn/AAABAAIAAABPAPn/AAABAAIAAABQAPn/AAABAAIAAABSAPn/AAABAAIAAABTAPn/AAABAAIAAABUAPn/AAABAAIAAABVAPn/AAABAAIAAABWAPn/AAABAAIAAABbAPn/AAABAAIAAABXAPn/AAABAAIAAABYAPn/AAABAAIAAABZAPn/AAABAAIAAABaAPn/AAABAAIAAABcAPn/AAABAAIAAABdAPn/AAABAAIAAABeAPn/AAABAAIAAABfAPn/AAABAAIAAABgAPn/AAABAAIAAABhAPn/AAABAAIAAABiAPn/AAABAAIAAABjAPn/AAABAAIAAABkAPn/AAABAAIAAABlAPn/AAABAAIAAABmAPn/AAABAAIAAABnAPn/AAABAAIAAABoAPn/AAABAAIAAABpAPn/AAABAAIAAABqAPn/AAABAAIAAABrAPn/AAABAAIAAABsAPn/AAABAAIAAABtAPn/AAABAAIAAABuAPn/AAABAAIAAABvAPn/AAABAAIAAABwAPn/AAABAAIAAABxAPn/AAABAAIAAAByAPn/AAABAAIAAABzAPn/AAABAAIAAAB0APn/AAABAAIAAAB1APn/AAABAAIAAABjAP7/AAABAAAAAABkAP7/AAABAAAAAABlAP7/AAABAAAAAABmAP7/AAABAAAAAABnAP7/AAABAAAAAABoAP7/AAABAAAAAABpAP7/AAABAAAAAABqAP7/AAABAAAAAABrAP7/AAABAAAAAABsAP7/AAABAAAAAABtAP7/AAABAAAAAABuAP7/AAABAAAAAABvAP7/AAABAAAAAABwAP7/AAABAAAAAABxAP7/AAABAAAAAAByAP7/AAABAAAAAABzAP7/AAABAAAAAAB0AP7/AAABAAAAAAB1AP7/AAABAAAAAABQAAIAAAABAAIAAABRAAIAAAABAAIAAABSAAIAAAABAAIAAABTAAIAAAABAAIAAABUAAIAAAABAAIAAABVAAIAAAABAAIAAABWAAIAAAABAAIAAABXAAIAAAABAAIAAABaAAIAAAABAAIAAABZAAIAAAABAAIAAABYAAIAAAABAAIAAABbAAIAAAABAAIAAABcAAIAAAAEAAAAAAA=")
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
class_name GameOverMenu
|
||||
extends Control
|
||||
|
||||
|
||||
@onready var main_menu_button : Button = $%MainMenuButton
|
||||
@onready var focus_timer : Timer = $FocusTimer
|
||||
|
||||
|
||||
func _on_main_menu_button_pressed() -> void:
|
||||
get_tree().paused = false
|
||||
get_tree().change_scene_to_file("res://game/menu/main_menu.tscn")
|
||||
|
||||
|
||||
func _on_visibility_changed() -> void:
|
||||
if visible:
|
||||
if focus_timer != null:
|
||||
focus_timer.start()
|
||||
|
||||
|
||||
func _on_focus_timer_timeout() -> void:
|
||||
if main_menu_button != null:
|
||||
main_menu_button.grab_focus()
|
||||
@@ -0,0 +1 @@
|
||||
uid://bb257l7unttky
|
||||
@@ -0,0 +1,55 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://84lhc3yn8vub"]
|
||||
|
||||
[ext_resource type="Theme" uid="uid://bh56my8b2htnr" path="res://themes/menu.tres" id="1_htxfh"]
|
||||
[ext_resource type="Script" uid="uid://bb257l7unttky" path="res://game/menu/game_over_menu.gd" id="2_m1ad0"]
|
||||
|
||||
[node name="GameOverMenu" type="Control"]
|
||||
process_mode = 2
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme = ExtResource("1_htxfh")
|
||||
script = ExtResource("2_m1ad0")
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
color = Color(0, 0, 0, 1)
|
||||
|
||||
[node name="MarginContainer" type="MarginContainer" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer"]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 4
|
||||
size_flags_vertical = 4
|
||||
theme_override_constants/separation = 64
|
||||
|
||||
[node name="Label" type="Label" parent="MarginContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Game over"
|
||||
horizontal_alignment = 1
|
||||
|
||||
[node name="MainMenuButton" type="Button" parent="MarginContainer/VBoxContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
text = "Main menu"
|
||||
|
||||
[node name="FocusTimer" type="Timer" parent="."]
|
||||
one_shot = true
|
||||
|
||||
[connection signal="visibility_changed" from="." to="." method="_on_visibility_changed"]
|
||||
[connection signal="pressed" from="MarginContainer/VBoxContainer/MainMenuButton" to="." method="_on_main_menu_button_pressed"]
|
||||
[connection signal="timeout" from="FocusTimer" to="." method="_on_focus_timer_timeout"]
|
||||
@@ -33,7 +33,7 @@ float cellular(vec2 coord) {
|
||||
}
|
||||
|
||||
void fragment() {
|
||||
if (COLOR.a != 0.0) {
|
||||
if (COLOR.a > 0.01) {
|
||||
float l = dot(COLOR.rgb, vec3(0.2126, 0.7152, 0.0722));
|
||||
|
||||
bool is_black = l < threshold;
|
||||
|
||||
Binary file not shown.
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://drk8j57acajrq"
|
||||
path="res://.godot/imported/cultist.png-180aacaf67ab096cef480ddf14b42e3d.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://images/characters/cultist.png"
|
||||
dest_files=["res://.godot/imported/cultist.png-180aacaf67ab096cef480ddf14b42e3d.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
Reference in New Issue
Block a user