完成藤蔓平台,关卡命名调整,s10左侧关卡构思

This commit is contained in:
EsShen7 2026-02-03 12:51:26 +08:00
parent d83053d2d7
commit 2c1ea309ef
18 changed files with 884 additions and 413 deletions

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=19 format=3 uid="uid://3vc8ojbiyy5w"] [gd_scene format=3 uid="uid://3vc8ojbiyy5w"]
[ext_resource type="Script" uid="uid://crgac4manhoud" path="res://_game/game.gd" id="1_yksyv"] [ext_resource type="Script" uid="uid://crgac4manhoud" path="res://_game/game.gd" id="1_yksyv"]
[ext_resource type="PackedScene" uid="uid://cvqehvdjpoar4" path="res://_player/player_controller.tscn" id="2_x2i0j"] [ext_resource type="PackedScene" uid="uid://cvqehvdjpoar4" path="res://_player/player_controller.tscn" id="2_x2i0j"]
@ -14,44 +14,49 @@
[ext_resource type="PackedScene" uid="uid://2d457ndb7toe" path="res://_scene/level1/l1_s8.tscn" id="11_ktxjv"] [ext_resource type="PackedScene" uid="uid://2d457ndb7toe" path="res://_scene/level1/l1_s8.tscn" id="11_ktxjv"]
[ext_resource type="PackedScene" uid="uid://dcoq4q3brnkw6" path="res://_scene/level1/l1_s9.tscn" id="12_enubi"] [ext_resource type="PackedScene" uid="uid://dcoq4q3brnkw6" path="res://_scene/level1/l1_s9.tscn" id="12_enubi"]
[ext_resource type="PackedScene" uid="uid://dsw3o2bhc8bve" path="res://_scene/level1/l1_s10.tscn" id="13_53pmm"] [ext_resource type="PackedScene" uid="uid://dsw3o2bhc8bve" path="res://_scene/level1/l1_s10.tscn" id="13_53pmm"]
[ext_resource type="PackedScene" uid="uid://5435tmcn1h0x" path="res://_scene/level1/l1_s10_derivative/l1_s10_1.tscn" id="15_twc26"] [ext_resource type="PackedScene" uid="uid://5435tmcn1h0x" path="res://_scene/level1/l1_s10_derivative/l1_s10_R1.tscn" id="15_twc26"]
[ext_resource type="PackedScene" uid="uid://dalreo21de7vf" path="res://_scene/level1/l1_s10_derivative/l1_s10_2.tscn" id="16_jibn5"] [ext_resource type="PackedScene" uid="uid://dalreo21de7vf" path="res://_scene/level1/l1_s10_derivative/l1_s10_R2.tscn" id="16_jibn5"]
[ext_resource type="PackedScene" uid="uid://d04rrja6xhmp4" path="res://_scene/level1/l1_s10_derivative/l1_s10_3.tscn" id="17_ef7py"] [ext_resource type="PackedScene" uid="uid://d04rrja6xhmp4" path="res://_scene/level1/l1_s10_derivative/l1_s10_R3.tscn" id="17_ef7py"]
[ext_resource type="PackedScene" uid="uid://c681o3efaii8a" path="res://_scene/level1/l1_s10_derivative/l1_s10_4.tscn" id="18_5vsgs"] [ext_resource type="PackedScene" uid="uid://c681o3efaii8a" path="res://_scene/level1/l1_s10_derivative/l1_s10_R4.tscn" id="18_5vsgs"]
[ext_resource type="PackedScene" uid="uid://rkoopuv5ndr2" path="res://_scene/level1/l1_s10_derivative/l1_s10_L1.tscn" id="19_5ctuh"]
[node name="Game" type="Node2D" groups=["PLAYER_RESPAWN"]] [node name="Game" type="Node2D" unique_id=1155642617 groups=["PLAYER_RESPAWN"]]
script = ExtResource("1_yksyv") script = ExtResource("1_yksyv")
metadata/_edit_vertical_guides_ = [1074.0]
[node name="PlayerController" parent="." instance=ExtResource("2_x2i0j")] [node name="PlayerController" parent="." unique_id=1762035755 instance=ExtResource("2_x2i0j")]
[node name="PlateformerCamera" parent="." instance=ExtResource("3_enubi")] [node name="PlateformerCamera" parent="." unique_id=236758593 instance=ExtResource("3_enubi")]
[node name="L0_S0" parent="." instance=ExtResource("3_4ifj7")] [node name="L0_S0" parent="." unique_id=468557684 instance=ExtResource("3_4ifj7")]
[node name="L1_S1" parent="." instance=ExtResource("4_m1t3p")] [node name="L1_S1" parent="." unique_id=153388085 instance=ExtResource("4_m1t3p")]
[node name="L1_S2" parent="." instance=ExtResource("5_5s0xe")] [node name="L1_S2" parent="." unique_id=365454739 instance=ExtResource("5_5s0xe")]
[node name="L1_S3" parent="." instance=ExtResource("6_ktxjv")] [node name="L1_S3" parent="." unique_id=1491102572 instance=ExtResource("6_ktxjv")]
[node name="L1_S4" parent="." instance=ExtResource("7_x2i0j")] [node name="L1_S4" parent="." unique_id=779321283 instance=ExtResource("7_x2i0j")]
[node name="L1_S5" parent="." instance=ExtResource("7_4ifj7")] [node name="L1_S5" parent="." unique_id=1462709098 instance=ExtResource("7_4ifj7")]
[node name="L1_S6" parent="." instance=ExtResource("9_m1t3p")] [node name="L1_S6" parent="." unique_id=37322839 instance=ExtResource("9_m1t3p")]
[node name="L1_S7" parent="." instance=ExtResource("10_5s0xe")] [node name="L1_S7" parent="." unique_id=384593411 instance=ExtResource("10_5s0xe")]
[node name="L1_S8" parent="." instance=ExtResource("11_ktxjv")] [node name="L1_S8" parent="." unique_id=784953402 instance=ExtResource("11_ktxjv")]
[node name="L1_S9" parent="." instance=ExtResource("12_enubi")] [node name="L1_S9" parent="." unique_id=997505711 instance=ExtResource("12_enubi")]
[node name="L1_S10" parent="." instance=ExtResource("13_53pmm")] [node name="L1_S10" parent="." unique_id=99397381 instance=ExtResource("13_53pmm")]
[node name="L1_S10_1" parent="L1_S10" instance=ExtResource("15_twc26")] [node name="L1_S10_R1" parent="L1_S10" unique_id=845126004 instance=ExtResource("15_twc26")]
[node name="L1_S10_2" parent="L1_S10" instance=ExtResource("16_jibn5")] [node name="L1_S10_R2" parent="L1_S10" unique_id=692644329 instance=ExtResource("16_jibn5")]
[node name="L1_S10_3" parent="L1_S10" instance=ExtResource("17_ef7py")] [node name="L1_S10_R3" parent="L1_S10" unique_id=2065908461 instance=ExtResource("17_ef7py")]
[node name="L1_S10_4" parent="L1_S10" instance=ExtResource("18_5vsgs")] [node name="L1_S10_R4" parent="L1_S10" unique_id=1329785958 instance=ExtResource("18_5vsgs")]
[node name="L1_S10_L1" parent="L1_S10" unique_id=1598546581 instance=ExtResource("19_5ctuh")]
position = Vector2(190, 78)

View File

@ -12,8 +12,10 @@ func _ready() -> void:
#$L1_S8.switch_act_by_id(1) #$L1_S8.switch_act_by_id(1)
#$L1_S9.switch_act_by_id(1) #$L1_S9.switch_act_by_id(1)
#$L1_S10.switch_act_by_id(1) #$L1_S10.switch_act_by_id(1)
#$L1_S10/L1_S10_1.switch_act_by_id(1) $L1_S10/L1_S10_R1.switch_act_by_id(1)
$L1_S10/L1_S10_2.switch_act_by_id(1) #$L1_S10/L1_S10_R2.switch_act_by_id(1)
#$L1_S10/L1_S10_R3.switch_act_by_id(1)
#$L1_S10/L1_S10_R4.switch_act_by_id(1)
GlobalEvent.player_follow_camera() GlobalEvent.player_follow_camera()
await get_tree().process_frame await get_tree().process_frame
get_tree().call_group(&"PLAYER_RESPAWN",&"respawn_avatar") get_tree().call_group(&"PLAYER_RESPAWN",&"respawn_avatar")

View File

@ -1,4 +1,4 @@
[gd_resource type="Resource" script_class="ReedPropEffect" load_steps=6 format=3 uid="uid://bjjxh7g7iosla"] [gd_resource type="Resource" script_class="ReedPropEffect" format=3 uid="uid://bjjxh7g7iosla"]
[ext_resource type="Script" uid="uid://cdvgq0xqdbagk" path="res://addons/reedscene/prop/Effect/ReedPropEffect.gd" id="1_4meba"] [ext_resource type="Script" uid="uid://cdvgq0xqdbagk" path="res://addons/reedscene/prop/Effect/ReedPropEffect.gd" id="1_4meba"]
[ext_resource type="Script" uid="uid://bf1qlvdbf8qdp" path="res://addons/reedscene/prop/Effect/EAT_CallFunc.gd" id="1_qrdf4"] [ext_resource type="Script" uid="uid://bf1qlvdbf8qdp" path="res://addons/reedscene/prop/Effect/EAT_CallFunc.gd" id="1_qrdf4"]

View File

@ -1,4 +1,4 @@
[gd_resource type="Resource" script_class="ReedPropEffect" load_steps=6 format=3 uid="uid://458r8rf7x02p"] [gd_resource type="Resource" script_class="ReedPropEffect" format=3 uid="uid://458r8rf7x02p"]
[ext_resource type="Script" uid="uid://bf1qlvdbf8qdp" path="res://addons/reedscene/prop/Effect/EAT_CallFunc.gd" id="1_lgnrf"] [ext_resource type="Script" uid="uid://bf1qlvdbf8qdp" path="res://addons/reedscene/prop/Effect/EAT_CallFunc.gd" id="1_lgnrf"]
[ext_resource type="Script" uid="uid://cdvgq0xqdbagk" path="res://addons/reedscene/prop/Effect/ReedPropEffect.gd" id="2_lgnrf"] [ext_resource type="Script" uid="uid://cdvgq0xqdbagk" path="res://addons/reedscene/prop/Effect/ReedPropEffect.gd" id="2_lgnrf"]

View File

@ -1,4 +1,4 @@
[gd_resource type="Resource" script_class="ReedPropEffect" load_steps=6 format=3 uid="uid://dd4df6yjkeifa"] [gd_resource type="Resource" script_class="ReedPropEffect" format=3 uid="uid://dd4df6yjkeifa"]
[ext_resource type="Script" uid="uid://cdvgq0xqdbagk" path="res://addons/reedscene/prop/Effect/ReedPropEffect.gd" id="1_bxu3h"] [ext_resource type="Script" uid="uid://cdvgq0xqdbagk" path="res://addons/reedscene/prop/Effect/ReedPropEffect.gd" id="1_bxu3h"]
[ext_resource type="Script" uid="uid://bf1qlvdbf8qdp" path="res://addons/reedscene/prop/Effect/EAT_CallFunc.gd" id="1_y2h7j"] [ext_resource type="Script" uid="uid://bf1qlvdbf8qdp" path="res://addons/reedscene/prop/Effect/EAT_CallFunc.gd" id="1_y2h7j"]

View File

@ -1,4 +1,4 @@
[gd_resource type="Resource" script_class="ReedPropEffect" load_steps=6 format=3 uid="uid://b6iglvt36pm55"] [gd_resource type="Resource" script_class="ReedPropEffect" format=3 uid="uid://b6iglvt36pm55"]
[ext_resource type="Script" uid="uid://cdvgq0xqdbagk" path="res://addons/reedscene/prop/Effect/ReedPropEffect.gd" id="1_3md03"] [ext_resource type="Script" uid="uid://cdvgq0xqdbagk" path="res://addons/reedscene/prop/Effect/ReedPropEffect.gd" id="1_3md03"]
[ext_resource type="Script" uid="uid://bf1qlvdbf8qdp" path="res://addons/reedscene/prop/Effect/EAT_CallFunc.gd" id="1_uj0dv"] [ext_resource type="Script" uid="uid://bf1qlvdbf8qdp" path="res://addons/reedscene/prop/Effect/EAT_CallFunc.gd" id="1_uj0dv"]

View File

@ -1,11 +1,176 @@
extends Node class_name VinePlatform
extends StaticBody2D
## ===== 节点引用 =====
@onready var player_trigger: Area2D = %PlayerTriggerVolumn
@onready var hook_trigger: Area2D = %HookAttractVolumn
@onready var sprite: Sprite2D = $Sprite2D
@onready var collision: CollisionShape2D = $CollisionShape2D
## ===== 配置 =====
## 触发到消失的总时间(固定)
@export var destroy_total_time: float = 2.0
## 触发后多久开始抖动(可调)
@export var shake_start_time: float = 1.0
## 消失后多久恢复(再生时间)
@export var respawn_time: float = 3.0
## 抖动参数
@export var shake_x: float = 1.0
@export var shake_y: float = 1.0
@export var step_time: float = 0.034
## ===== 状态机 =====
enum State {
IDLE,
TRIGGERED,
DISAPPEARED
}
var _current_state: State = State.IDLE
## ===== 抖动控制 =====
var _shake_tween: Tween
var _shake_origin_pos: Vector2
## 防止重复触发
var _sequence_started := false
# Called when the node enters the scene tree for the first time.
func _ready() -> void: func _ready() -> void:
pass # Replace with function body. player_trigger.body_entered.connect(_on_player_entered)
hook_trigger.body_entered.connect(_on_hook_hit)
# Called every frame. 'delta' is the elapsed time since the previous frame. ## ==============================
func _process(delta: float) -> void: ## 状态切换
pass ## ==============================
func change_state(new_state: State) -> void:
if new_state == _current_state:
return
_current_state = new_state
match new_state:
State.IDLE:
_enable_platform(true)
State.TRIGGERED:
_start_destroy_sequence()
State.DISAPPEARED:
_disappear_and_respawn()
## ==============================
## 触发入口
## ==============================
func _on_player_entered(body: Node) -> void:
if body is Player:
_trigger_platform()
func _on_hook_hit(hit_pos: Vector2, hook: Hook) -> void:
_trigger_platform()
func _trigger_platform() -> void:
if _sequence_started:
return
_sequence_started = true
print("藤蔓平台触发2秒后消失再生时间:", respawn_time)
change_state(State.TRIGGERED)
## ==============================
## 销毁流程:抖动 + 消失(非销毁)
## ==============================
func _start_destroy_sequence() -> void:
var shake_time: float = clampf(shake_start_time, 0.0, destroy_total_time)
var remaining_time: float = destroy_total_time - shake_time
# 前半段静止
if shake_time > 0.0:
await get_tree().create_timer(shake_time).timeout
# 后半段抖动
if remaining_time > 0.0:
start_shaking()
await get_tree().create_timer(remaining_time).timeout
stop_shaking()
# 进入消失状态
change_state(State.DISAPPEARED)
## ==============================
## 消失 + 再生
## ==============================
func _disappear_and_respawn() -> void:
print("平台消失,等待再生...")
# 关闭平台
_enable_platform(false)
# 等待再生时间
await get_tree().create_timer(respawn_time).timeout
print("平台恢复!")
# 重置触发锁
_sequence_started = false
# 回到初始状态
change_state(State.IDLE)
## ==============================
## 启用/禁用平台(关键)
## ==============================
func _enable_platform(enable: bool) -> void:
sprite.visible = enable
collision.disabled = not enable
player_trigger.monitoring = enable
hook_trigger.monitoring = enable
## ==============================
## 抖动效果
## ==============================
func start_shaking() -> void:
if _shake_tween and _shake_tween.is_running():
return
_shake_origin_pos = sprite.position
_shake_tween = create_tween()
_shake_tween.set_loops()
_shake_tween.set_trans(Tween.TRANS_SINE)
_shake_tween.set_ease(Tween.EASE_IN_OUT)
_shake_tween.tween_property(sprite, "position", _shake_origin_pos + Vector2(-shake_x, -shake_y), step_time)
_shake_tween.tween_property(sprite, "position", _shake_origin_pos + Vector2(shake_x, shake_y), step_time)
_shake_tween.tween_property(sprite, "position", _shake_origin_pos + Vector2(-shake_x, shake_y), step_time)
_shake_tween.tween_property(sprite, "position", _shake_origin_pos + Vector2(shake_x, -shake_y), step_time)
func stop_shaking() -> void:
if _shake_tween:
_shake_tween.kill()
_shake_tween = null
sprite.position = _shake_origin_pos

View File

@ -1,3 +1,45 @@
[gd_scene format=3 uid="uid://dfwups0m7a5m4"] [gd_scene format=3 uid="uid://dfwups0m7a5m4"]
[node name="VinePlatform" type="Node2D"] [ext_resource type="Texture2D" uid="uid://c673bap4b12fx" path="res://icon.svg" id="1_a6xdh"]
[ext_resource type="Script" uid="uid://bog8pjjhrcd3g" path="res://_props/vine_platform/vine_platform.gd" id="1_jux4m"]
[ext_resource type="PackedScene" uid="uid://bonrls3iuhdqb" path="res://_props/_prefabs/player/player_trigger_volumn.tscn" id="2_1eb6k"]
[sub_resource type="RectangleShape2D" id="RectangleShape2D_1eb6k"]
size = Vector2(32, 16)
[sub_resource type="RectangleShape2D" id="RectangleShape2D_1ul4y"]
size = Vector2(32, 24)
[sub_resource type="RectangleShape2D" id="RectangleShape2D_jux4m"]
size = Vector2(38, 22)
[node name="VinePlatform" type="StaticBody2D" unique_id=1779509136 groups=["GRAPABLE"]]
collision_layer = 4
collision_mask = 2
script = ExtResource("1_jux4m")
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1586582263]
scale = Vector2(0.24999999, 0.125)
texture = ExtResource("1_a6xdh")
[node name="CollisionShape2D" type="CollisionShape2D" parent="." unique_id=314807201]
shape = SubResource("RectangleShape2D_1eb6k")
debug_color = Color(1, 0.24705882, 0.40784314, 0.41960785)
[node name="PlayerTriggerVolumn" parent="." unique_id=869831136 instance=ExtResource("2_1eb6k")]
unique_name_in_owner = true
debug_print = false
[node name="CollisionShape2D" type="CollisionShape2D" parent="PlayerTriggerVolumn" unique_id=209979624]
position = Vector2(0, -4)
shape = SubResource("RectangleShape2D_1ul4y")
debug_color = Color(0.19215687, 0.6431373, 0, 0)
[node name="HookAttractVolumn" type="Area2D" parent="." unique_id=71519728]
unique_name_in_owner = true
collision_layer = 32
collision_mask = 0
[node name="CollisionShape2D" type="CollisionShape2D" parent="HookAttractVolumn" unique_id=1847255495]
shape = SubResource("RectangleShape2D_jux4m")
debug_color = Color(1, 0, 0.14509805, 0)

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,201 @@
[gd_scene format=4 uid="uid://rkoopuv5ndr2"]
[ext_resource type="Script" uid="uid://5e157vdk6175" path="res://addons/reedscene/scene/ReedScene.gd" id="1_o4f8j"]
[ext_resource type="Script" uid="uid://bh066o84byplh" path="res://addons/reedscene/scene/ReedSceneID.gd" id="2_xt22h"]
[ext_resource type="Script" uid="uid://dn0ksjoswquf5" path="res://addons/reedscene/scene/SceneManager.gd" id="3_xmu2d"]
[ext_resource type="Script" uid="uid://ons77en82uls" path="res://addons/reedscene/scene/scene_trigger/base/SceneTrigger.gd" id="4_dijx0"]
[ext_resource type="Resource" uid="uid://bym4pb0ellj7b" path="res://_scene/scene_trigger_resource/default_switch.tres" id="5_n38ht"]
[ext_resource type="Script" uid="uid://dsgl7lbyjsiif" path="res://addons/reedscene/act/ActManager.gd" id="6_yoilp"]
[ext_resource type="Script" uid="uid://fxpk2ot6otfh" path="res://addons/reedscene/act/Act.gd" id="7_v6a6i"]
[ext_resource type="Script" uid="uid://baqgorvlumyju" path="res://addons/reedscene/act/SingleAct.gd" id="8_lxf02"]
[ext_resource type="Script" uid="uid://pxjf5vst08eo" path="res://addons/reedscene/prop/PropManager.gd" id="9_bpwnr"]
[ext_resource type="PackedScene" uid="uid://bflwr7cryd2l0" path="res://_camera/CameraAnchor.tscn" id="10_4eht7"]
[ext_resource type="Script" uid="uid://b4menkyub4ce7" path="res://addons/reedscene/prop/PropComponent.gd" id="11_tli2f"]
[ext_resource type="Script" uid="uid://di41kt2tj34c2" path="res://addons/reedscene/prop/StateManager.gd" id="12_se3ue"]
[ext_resource type="Script" uid="uid://7lml6d1t5xtq" path="res://addons/reedscene/prop/PropState.gd" id="13_kqge0"]
[ext_resource type="Script" uid="uid://cdvgq0xqdbagk" path="res://addons/reedscene/prop/Effect/ReedPropEffect.gd" id="14_h8iwj"]
[ext_resource type="Resource" uid="uid://bjjxh7g7iosla" path="res://_props/_camera/camera_anchor_disable.tres" id="15_obh84"]
[ext_resource type="Resource" uid="uid://458r8rf7x02p" path="res://_props/_camera/camera_anchor_enable.tres" id="16_bpxc0"]
[ext_resource type="PackedScene" uid="uid://bonrls3iuhdqb" path="res://_props/_prefabs/player/player_trigger_volumn.tscn" id="17_lpnk4"]
[ext_resource type="Resource" uid="uid://dd4df6yjkeifa" path="res://_props/_prefabs/player/effect/player_trigger_volumn_disable.tres" id="18_o05e8"]
[ext_resource type="Resource" uid="uid://b6iglvt36pm55" path="res://_props/_prefabs/player/effect/player_trigger_volumn_enable.tres" id="19_efmxf"]
[ext_resource type="PackedScene" uid="uid://cxgcmdxlbwwjh" path="res://_props/_prefabs/player/player_respawn_point.tscn" id="20_wn5en"]
[ext_resource type="Script" uid="uid://bf1qlvdbf8qdp" path="res://addons/reedscene/prop/Effect/EAT_CallFunc.gd" id="21_5xf6r"]
[ext_resource type="Script" uid="uid://8cqs3i8sr8b1" path="res://addons/reedscene/prop/Effect/ETT_Owner.gd" id="22_5odgk"]
[ext_resource type="TileSet" uid="uid://doepkfp83k0lb" path="res://_tileset/test.tres" id="23_wpd7o"]
[sub_resource type="Resource" id="Resource_6bhoi"]
script = ExtResource("8_lxf02")
metadata/_custom_type_script = "uid://baqgorvlumyju"
[sub_resource type="Resource" id="Resource_0dl6r"]
script = ExtResource("8_lxf02")
state_id = 1
metadata/_custom_type_script = "uid://baqgorvlumyju"
[sub_resource type="Resource" id="Resource_pfh14"]
script = ExtResource("8_lxf02")
metadata/_custom_type_script = "uid://baqgorvlumyju"
[sub_resource type="Resource" id="Resource_sv1n5"]
script = ExtResource("7_v6a6i")
prop_state_map = Dictionary[int, ExtResource("8_lxf02")]({
0: SubResource("Resource_6bhoi"),
1: SubResource("Resource_0dl6r"),
2: SubResource("Resource_pfh14")
})
metadata/_custom_type_script = "uid://fxpk2ot6otfh"
[sub_resource type="Resource" id="Resource_rvnvs"]
script = ExtResource("8_lxf02")
state_id = 1
metadata/_custom_type_script = "uid://baqgorvlumyju"
[sub_resource type="Resource" id="Resource_3jyxx"]
script = ExtResource("8_lxf02")
metadata/_custom_type_script = "uid://baqgorvlumyju"
[sub_resource type="Resource" id="Resource_dalgl"]
script = ExtResource("8_lxf02")
state_id = 1
metadata/_custom_type_script = "uid://baqgorvlumyju"
[sub_resource type="Resource" id="Resource_fwmv2"]
script = ExtResource("7_v6a6i")
prop_state_map = Dictionary[int, ExtResource("8_lxf02")]({
0: SubResource("Resource_rvnvs"),
1: SubResource("Resource_3jyxx"),
2: SubResource("Resource_dalgl")
})
metadata/_custom_type_script = "uid://fxpk2ot6otfh"
[sub_resource type="RectangleShape2D" id="RectangleShape2D_nvw5u"]
size = Vector2(745, 470.73492)
[sub_resource type="Resource" id="Resource_ctwrc"]
script = ExtResource("21_5xf6r")
func_name = &"pop_respawner"
metadata/_custom_type_script = "uid://bf1qlvdbf8qdp"
[sub_resource type="Resource" id="Resource_0u6xi"]
script = ExtResource("22_5odgk")
[sub_resource type="Resource" id="Resource_r0e2c"]
script = ExtResource("14_h8iwj")
effect_target_type = SubResource("Resource_0u6xi")
effect_apply_type = SubResource("Resource_ctwrc")
metadata/_custom_type_script = "uid://cdvgq0xqdbagk"
[sub_resource type="Resource" id="Resource_hatj6"]
script = ExtResource("21_5xf6r")
func_name = &"push_respawner"
metadata/_custom_type_script = "uid://bf1qlvdbf8qdp"
[sub_resource type="Resource" id="Resource_o2v7x"]
script = ExtResource("22_5odgk")
[sub_resource type="Resource" id="Resource_ubvm0"]
script = ExtResource("14_h8iwj")
effect_target_type = SubResource("Resource_o2v7x")
effect_apply_type = SubResource("Resource_hatj6")
metadata/_custom_type_script = "uid://cdvgq0xqdbagk"
[node name="L1_S10_R4" type="Node2D" unique_id=1598546581]
editor_description = "右侧落石触发后击中龟裂岩层形成两条通路向上前往l1_s10_3向下打通l1_s10_1的路"
script = ExtResource("1_o4f8j")
metadata/_custom_type_script = "uid://5e157vdk6175"
[node name="[Invalid!]" type="Node" parent="." unique_id=646196142]
script = ExtResource("2_xt22h")
[node name="SceneManager" type="Node" parent="." unique_id=401167145]
script = ExtResource("3_xmu2d")
quick_trigger = Array[ExtResource("4_dijx0")]([ExtResource("5_n38ht")])
[node name="ActManager" type="Node" parent="." unique_id=763626072]
script = ExtResource("6_yoilp")
prop_state_map = Dictionary[int, ExtResource("7_v6a6i")]({
0: SubResource("Resource_sv1n5"),
1: SubResource("Resource_fwmv2")
})
init_act_id = 0
[node name="Props" type="Node2D" parent="." unique_id=171021219]
script = ExtResource("9_bpwnr")
[node name="CameraAnchor" parent="Props" unique_id=901470129 instance=ExtResource("10_4eht7")]
position = Vector2(734, -2012)
zoom = Vector2(1, 1)
limit_top = -185
limit_bottom = 185
limit_left = -320
limit_right = 290
[node name="[Prop_0000]" type="Node" parent="Props/CameraAnchor" unique_id=2107924787]
script = ExtResource("11_tli2f")
prop_id = 0
[node name="States" type="Node" parent="Props/CameraAnchor/[Prop_0000]" unique_id=431268830]
script = ExtResource("12_se3ue")
[node name="[ID_0] Disable" type="Node" parent="Props/CameraAnchor/[Prop_0000]/States" unique_id=1989686279]
script = ExtResource("13_kqge0")
state_id = 0
effects = Array[ExtResource("14_h8iwj")]([ExtResource("15_obh84")])
[node name="[ID_1] Enable" type="Node" parent="Props/CameraAnchor/[Prop_0000]/States" unique_id=1332631643]
script = ExtResource("13_kqge0")
state_id = 1
effects = Array[ExtResource("14_h8iwj")]([ExtResource("16_bpxc0")])
[node name="PlayerTriggerVolumn" parent="Props" unique_id=482697410 instance=ExtResource("17_lpnk4")]
visible = false
position = Vector2(816, -2136)
[node name="CollisionShape2D" type="CollisionShape2D" parent="Props/PlayerTriggerVolumn" unique_id=1008103022]
position = Vector2(-132.5, 144.63257)
shape = SubResource("RectangleShape2D_nvw5u")
debug_color = Color(0.56463546, 0.55446386, 0.07705598, 0.41960785)
[node name="[Prop_0001]" type="Node" parent="Props/PlayerTriggerVolumn" unique_id=1211005631]
script = ExtResource("11_tli2f")
prop_id = 1
[node name="States" type="Node" parent="Props/PlayerTriggerVolumn/[Prop_0001]" unique_id=982089992]
script = ExtResource("12_se3ue")
[node name="[ID_0] Disable" type="Node" parent="Props/PlayerTriggerVolumn/[Prop_0001]/States" unique_id=483138117]
script = ExtResource("13_kqge0")
state_id = 0
effects = Array[ExtResource("14_h8iwj")]([ExtResource("18_o05e8")])
[node name="[ID_1] Enable" type="Node" parent="Props/PlayerTriggerVolumn/[Prop_0001]/States" unique_id=1044439139]
script = ExtResource("13_kqge0")
state_id = 1
effects = Array[ExtResource("14_h8iwj")]([ExtResource("19_efmxf")])
[node name="PlayerRespawnPoint" parent="Props" unique_id=924964703 instance=ExtResource("20_wn5en")]
position = Vector2(893, -1869)
[node name="[Prop_0002]" type="Node" parent="Props/PlayerRespawnPoint" unique_id=339110471]
script = ExtResource("11_tli2f")
prop_id = 2
[node name="States" type="Node" parent="Props/PlayerRespawnPoint/[Prop_0002]" unique_id=1050487094]
script = ExtResource("12_se3ue")
[node name="[ID_0] Disable" type="Node" parent="Props/PlayerRespawnPoint/[Prop_0002]/States" unique_id=429861633]
script = ExtResource("13_kqge0")
state_id = 0
effects = Array[ExtResource("14_h8iwj")]([SubResource("Resource_r0e2c")])
[node name="[ID_1] Enable" type="Node" parent="Props/PlayerRespawnPoint/[Prop_0002]/States" unique_id=2071507006]
script = ExtResource("13_kqge0")
state_id = 1
effects = Array[ExtResource("14_h8iwj")]([SubResource("Resource_ubvm0")])
[node name="TileMapLayer" type="TileMapLayer" parent="." unique_id=262089249 groups=["GRAPABLE"]]
tile_map_data = PackedByteArray("AABBAIb/AAAAAAAAAABBAIf/AAAAAAAAAABBAIj/AAAAAAAAAABBAIn/AAAAAAAAAABBAIr/AAAAAAAAAABBAIv/AAAAAAAAAABBAIz/AAAAAAAAAABBAI3/AAAAAAAAAABAAI3/AAAAAAAAAAA/AI3/AAAAAAAAAAAxAI3/AAAAAAAAAAAwAI3/AAAAAAAAAAAvAI3/AAAAAAAAAAAuAI3/AAAAAAAAAAAtAI3/AAAAAAAAAAAsAI3/AAAAAAAAAAArAI3/AAAAAAAAAAAqAI3/AAAAAAAAAAApAI3/AAAAAAAAAAAoAI3/AAAAAAAAAAAnAI3/AAAAAAAAAAAmAI3/AAAAAAAAAAAlAI3/AAAAAAAAAAAkAI3/AAAAAAAAAAAjAI3/AAAAAAAAAAAiAI3/AAAAAAAAAAAhAI3/AAAAAAAAAAAgAI3/AAAAAAAAAAAfAI3/AAAAAAAAAAAeAI3/AAAAAAAAAAAdAI3/AAAAAAAAAAAcAI3/AAAAAAAAAAAbAI3/AAAAAAAAAAAaAI3/AAAAAAAAAAAyAI3/AAAAAAAAAAAzAI3/AAAAAAAAAAA0AI3/AAAAAAAAAAA1AI3/AAAAAAAAAAA2AI3/AAAAAAAAAAA3AI3/AAAAAAAAAAA4AI3/AAAAAAAAAAA5AI3/AAAAAAAAAAA6AI3/AAAAAAAAAAA7AI3/AAAAAAAAAAA8AI3/AAAAAAAAAAA9AI3/AAAAAAAAAAA+AI3/AAAAAAAAAABBAIH/AAAAAAAAAABBAID/AAAAAAAAAABBAH//AAAAAAAAAABBAH7/AAAAAAAAAABBAH3/AAAAAAAAAABBAHz/AAAAAAAAAABBAHv/AAAAAAAAAABBAHr/AAAAAAAAAABBAHn/AAAAAAAAAABBAHj/AAAAAAAAAABBAHf/AAAAAAAAAAA=")
tile_set = ExtResource("23_wpd7o")
[connection signal="player_entered" from="Props/PlayerTriggerVolumn" to="SceneManager" method="_on_player_trigger_volumn_player_entered"]

File diff suppressed because one or more lines are too long

View File

@ -1,4 +1,4 @@
[gd_resource type="Resource" script_class="SceneTrigger" load_steps=19 format=3 uid="uid://bym4pb0ellj7b"] [gd_resource type="Resource" script_class="SceneTrigger" format=3 uid="uid://bym4pb0ellj7b"]
[ext_resource type="Script" uid="uid://ons77en82uls" path="res://addons/reedscene/scene/scene_trigger/base/SceneTrigger.gd" id="2_cq8o1"] [ext_resource type="Script" uid="uid://ons77en82uls" path="res://addons/reedscene/scene/scene_trigger/base/SceneTrigger.gd" id="2_cq8o1"]
[ext_resource type="Script" uid="uid://dxj5vimigc651" path="res://addons/reedscene/scene/scene_trigger/base/SceneTriggerEffectPair.gd" id="3_m0qh3"] [ext_resource type="Script" uid="uid://dxj5vimigc651" path="res://addons/reedscene/scene/scene_trigger/base/SceneTriggerEffectPair.gd" id="3_m0qh3"]

View File

@ -1,4 +1,4 @@
[gd_resource type="TileSet" load_steps=4 format=3 uid="uid://doepkfp83k0lb"] [gd_resource type="TileSet" format=3 uid="uid://doepkfp83k0lb"]
[ext_resource type="Texture2D" uid="uid://doxhsab56pe50" path="res://_asset/all.png" id="1_26tvm"] [ext_resource type="Texture2D" uid="uid://doxhsab56pe50" path="res://_asset/all.png" id="1_26tvm"]

View File

@ -8,11 +8,15 @@
config_version=5 config_version=5
[animation]
compatibility/default_parent_skeleton_in_mesh_instance_3d=true
[application] [application]
config/name="godot-plateformer" config/name="godot-plateformer"
run/main_scene="uid://3vc8ojbiyy5w" run/main_scene="uid://3vc8ojbiyy5w"
config/features=PackedStringArray("4.5", "Forward Plus") config/features=PackedStringArray("4.6", "Forward Plus")
config/icon="res://icon.svg" config/icon="res://icon.svg"
[autoload] [autoload]