feat: tutorialisation;end screen improvements
|
|
@ -28,7 +28,7 @@
|
|||
inkscape:document-units="mm"
|
||||
inkscape:zoom="0.45495383"
|
||||
inkscape:cx="967.1311"
|
||||
inkscape:cy="747.32857"
|
||||
inkscape:cy="746.22957"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs1" />
|
||||
|
|
@ -38,12 +38,12 @@
|
|||
id="layer1">
|
||||
<path
|
||||
style="fill:#000000;stroke-width:3.46501;stroke-linecap:square;paint-order:stroke markers fill"
|
||||
d="M 0,0 H 177.95762 L 136.08524,285.75 0,285.75 Z"
|
||||
d="M 0,285.75 H 177.95762 L 136.08524,0 H 0 Z"
|
||||
id="path1"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
style="fill:#000000;stroke-width:3.46501;stroke-linecap:square;paint-order:stroke markers fill"
|
||||
d="m 439.45614,0 h 68.54385 v 285.75 h -27.04918 z"
|
||||
d="m 439.45614,285.75 h 68.54385 V 0 h -27.04918 z"
|
||||
id="path2"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
</g>
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
|
@ -26,9 +26,9 @@
|
|||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:zoom="0.69040128"
|
||||
inkscape:cx="396.87064"
|
||||
inkscape:cy="715.5259"
|
||||
inkscape:zoom="1.3808026"
|
||||
inkscape:cx="142.67065"
|
||||
inkscape:cy="916.49598"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs1" />
|
||||
|
|
@ -38,12 +38,12 @@
|
|||
id="layer1">
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.46501;stroke-linecap:square;paint-order:stroke markers fill"
|
||||
d="M 0,0 H 285.75 V 9.3590252 L 0,38.970163 Z"
|
||||
d="m 0,0 h 285.75 l 0,23.007892 L 0,61.433343 Z"
|
||||
id="path1"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.46501;stroke-linecap:square;paint-order:stroke markers fill"
|
||||
d="m 0,285.75 h 285.75 l 0,-26.68568 L 0,277.07618 Z"
|
||||
d="M 0,285.75 H 285.75 V 232.81298 L 0,262.70501 Z"
|
||||
id="path2"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
</g>
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
|
|
@ -27,6 +27,11 @@ void LevelEnd::_bind_methods() {
|
|||
void LevelEnd::body_entered(Node *body) {
|
||||
if (cast_to<PlayerBody>(body) != nullptr) {
|
||||
Node *scene{ this->intermission_screen->instantiate() };
|
||||
Ref<LevelResult> result{ memnew(LevelResult) };
|
||||
result->store_current_state();
|
||||
if (IntermissionScreen * intermission{ cast_to<IntermissionScreen>(scene->get_node(NodePath("%IntermissionScreen"))) }) {
|
||||
intermission->set_result(result);
|
||||
}
|
||||
callable_mp(get_tree(), &SceneTree::change_scene_to_node).call_deferred(scene);
|
||||
}
|
||||
}
|
||||
|
|
@ -43,3 +48,7 @@ void LevelEnd::_notification(int what) {
|
|||
return;
|
||||
}
|
||||
}
|
||||
|
||||
void IntermissionScreen::_bind_methods() {
|
||||
BIND_HPROPERTY(Variant::OBJECT, result, PROPERTY_HINT_RESOURCE_TYPE, "LevelResult");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,8 @@
|
|||
#include "break_utopia/macros.h"
|
||||
#include "core/io/resource.h"
|
||||
#include "scene/3d/physics/area_3d.h"
|
||||
#include "scene/gui/control.h"
|
||||
#include "scene/main/viewport.h"
|
||||
#include "scene/resources/packed_scene.h"
|
||||
|
||||
class LevelResult : public Resource {
|
||||
|
|
@ -37,3 +39,12 @@ private:
|
|||
public:
|
||||
GET_SET_FNS(Ref<PackedScene>, intermission_screen);
|
||||
};
|
||||
|
||||
class IntermissionScreen : public Control {
|
||||
GDCLASS(IntermissionScreen, Control);
|
||||
static void _bind_methods();
|
||||
Ref<LevelResult> result{};
|
||||
|
||||
public:
|
||||
GET_SET_FNS(Ref<LevelResult>, result);
|
||||
};
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ void initialize_break_utopia_module(ModuleInitializationLevel p_level) {
|
|||
ClassDB::register_class<EnemyDamageBox>();
|
||||
ClassDB::register_class<LevelEnd>();
|
||||
ClassDB::register_class<LevelResult>();
|
||||
ClassDB::register_class<IntermissionScreen>();
|
||||
}
|
||||
|
||||
void uninitialize_break_utopia_module(ModuleInitializationLevel p_level) {
|
||||
|
|
|
|||
|
|
@ -3,6 +3,6 @@
|
|||
[resource]
|
||||
cull_mode = 1
|
||||
shading_mode = 0
|
||||
albedo_color = Color(0.9, 0, 0.47999996, 1)
|
||||
albedo_color = Color(0.99899036, 1.8289685e-06, 0.53277034, 1)
|
||||
grow = true
|
||||
grow_amount = 0.02
|
||||
|
|
|
|||
BIN
project/assets/models/props/fragments/blockade_fragments.blend
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://bffa2rkc5vprr"
|
||||
path="res://.godot/imported/blockade_fragments.blend-c168b8a5186bf18457ebd8a8b1b10f88.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/models/props/fragments/blockade_fragments.blend"
|
||||
dest_files=["res://.godot/imported/blockade_fragments.blend-c168b8a5186bf18457ebd8a8b1b10f88.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type=""
|
||||
nodes/root_name=""
|
||||
nodes/root_script=null
|
||||
nodes/apply_root_scale=true
|
||||
nodes/root_scale=1.0
|
||||
nodes/import_as_skeleton_bones=false
|
||||
nodes/use_name_suffixes=true
|
||||
nodes/use_node_type_suffixes=true
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=1
|
||||
meshes/lightmap_texel_size=0.2
|
||||
meshes/force_disable_compression=false
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/fps=30
|
||||
animation/trimming=false
|
||||
animation/remove_immutable_tracks=true
|
||||
animation/import_rest_as_RESET=false
|
||||
import_script/path=""
|
||||
materials/extract=0
|
||||
materials/extract_format=0
|
||||
materials/extract_path=""
|
||||
_subresources={}
|
||||
blender/nodes/visible=0
|
||||
blender/nodes/active_collection_only=false
|
||||
blender/nodes/punctual_lights=true
|
||||
blender/nodes/cameras=true
|
||||
blender/nodes/custom_properties=true
|
||||
blender/nodes/modifiers=1
|
||||
blender/meshes/colors=false
|
||||
blender/meshes/uvs=true
|
||||
blender/meshes/normals=true
|
||||
blender/meshes/export_geometry_nodes_instances=false
|
||||
blender/meshes/gpu_instances=false
|
||||
blender/meshes/tangents=true
|
||||
blender/meshes/skins=2
|
||||
blender/meshes/export_bones_deforming_mesh_only=false
|
||||
blender/materials/unpack_enabled=true
|
||||
blender/materials/export_materials=1
|
||||
blender/animation/limit_playback=true
|
||||
blender/animation/always_sample=true
|
||||
blender/animation/group_tracks=true
|
||||
gltf/naming_version=2
|
||||
|
After Width: | Height: | Size: 211 KiB |
|
|
@ -0,0 +1,44 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bjsy15i4d7dmt"
|
||||
path.s3tc="res://.godot/imported/blockade_fragments_chainlink_albedo.png-803c6dd60a41c57a847ed2da61ee2a78.s3tc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
generator_parameters={
|
||||
"md5": "70d1b975f745c18a590461cecd49d245"
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/models/props/fragments/blockade_fragments_chainlink_albedo.png"
|
||||
dest_files=["res://.godot/imported/blockade_fragments_chainlink_albedo.png-803c6dd60a41c57a847ed2da61ee2a78.s3tc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=2
|
||||
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=true
|
||||
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=0
|
||||
|
|
@ -15,11 +15,11 @@
|
|||
id="layer1">
|
||||
<path
|
||||
style="fill:#000000;stroke-width:3.46501;stroke-linecap:square;paint-order:stroke markers fill"
|
||||
d="M 0,0 H 177.95762 L 136.08524,285.75 H 0 Z"
|
||||
d="M 0,285.75 H 177.95762 L 136.08524,0 H 0 Z"
|
||||
id="path1" />
|
||||
<path
|
||||
style="fill:#000000;stroke-width:3.46501;stroke-linecap:square;paint-order:stroke markers fill"
|
||||
d="m 439.45614,0 h 68.54385 v 285.75 h -27.04918 z"
|
||||
d="m 439.45614,285.75 h 68.54385 V 0 h -27.04918 z"
|
||||
id="path2" />
|
||||
</g>
|
||||
</svg>
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 741 B After Width: | Height: | Size: 741 B |
|
|
@ -15,11 +15,11 @@
|
|||
id="layer1">
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.46501;stroke-linecap:square;paint-order:stroke markers fill"
|
||||
d="M 0,0 H 285.75 V 9.3590252 L 0,38.970163 Z"
|
||||
d="M 0,0 H 285.75 V 23.007892 L 0,61.433343 Z"
|
||||
id="path1" />
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:3.46501;stroke-linecap:square;paint-order:stroke markers fill"
|
||||
d="M 0,285.75 H 285.75 V 259.06432 L 0,277.07618 Z"
|
||||
d="M 0,285.75 H 285.75 V 232.81298 L 0,262.70501 Z"
|
||||
id="path2" />
|
||||
</g>
|
||||
</svg>
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 801 B After Width: | Height: | Size: 801 B |
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
[ext_resource type="PackedScene" uid="uid://b1j2onf8vl82j" path="res://assets/models/props/blockade.blend" id="1_pwcew"]
|
||||
[ext_resource type="Texture2D" uid="uid://ccp6svl4d1jab" path="res://assets/ui/west_face.png" id="2_ao1rk"]
|
||||
[ext_resource type="PackedScene" uid="uid://bkdtw77ai1qrf" path="res://objects/destructable_props/combo_gate_destroyed.tscn" id="3_pgwac"]
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_ao1rk"]
|
||||
size = Vector3(3.399414, 3.9816895, 0.4248047)
|
||||
|
|
@ -33,6 +34,7 @@ texture = ExtResource("2_ao1rk")
|
|||
collision_layer = 11
|
||||
collision_mask = 2
|
||||
defense = 2
|
||||
destroyed_object = ExtResource("3_pgwac")
|
||||
shake_object = NodePath("../blockade")
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="DestructableObject" unique_id=992292980]
|
||||
|
|
|
|||
28
project/objects/destructable_props/combo_gate_destroyed.tscn
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
[gd_scene format=3 uid="uid://bkdtw77ai1qrf"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://bffa2rkc5vprr" path="res://assets/models/props/fragments/blockade_fragments.blend" id="1_c3uqf"]
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_c3uqf"]
|
||||
resource_name = "ComboGateDestroyed"
|
||||
script/source = "extends Node3D
|
||||
|
||||
var count : int = 0
|
||||
|
||||
func _ready():
|
||||
iter(self)
|
||||
|
||||
func iter(node):
|
||||
for child in node.get_children():
|
||||
if child is RigidBody3D:
|
||||
child.linear_velocity = ((child.global_position - global_position).normalized() + Vector3(1, 0 ,0).rotated(Vector3.UP, randf_range(0, PI*2)).normalized()) * 4
|
||||
child.angular_velocity = Vector3(randf_range(4, 5), randf_range(4, 5), randf_range(4, 5))
|
||||
count += 1
|
||||
if count % 3 != 0:
|
||||
get_tree().create_timer(5 + (count % 5)).timeout.connect(child.queue_free)
|
||||
iter(child)
|
||||
"
|
||||
|
||||
[node name="ComboGateDestroyed" type="Node3D" unique_id=269300662]
|
||||
|
||||
[node name="blockade_fragments" parent="." unique_id=860386304 instance=ExtResource("1_c3uqf")]
|
||||
script = SubResource("GDScript_c3uqf")
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
[gd_scene load_steps=4 format=3 uid="uid://ct650octef6l3"]
|
||||
[gd_scene format=3 uid="uid://ct650octef6l3"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://cwc5pk8n2n85j" path="res://objects/destructable_props/table_destroyed.tscn" id="1_370rb"]
|
||||
[ext_resource type="PackedScene" uid="uid://48poptqvf7w4" path="res://assets/models/props/long_table.blend" id="2_7o4nk"]
|
||||
|
|
@ -6,15 +6,16 @@
|
|||
[sub_resource type="BoxShape3D" id="BoxShape3D_j8sr1"]
|
||||
size = Vector3(4.04395, 1.09866, 1.95508)
|
||||
|
||||
[node name="Table" type="Node3D"]
|
||||
[node name="Table" type="Node3D" unique_id=86783406]
|
||||
|
||||
[node name="HitBox" type="DestructableObject" parent="."]
|
||||
[node name="HitBox" type="DestructableObject" parent="." unique_id=2140583576 node_paths=PackedStringArray("shake_object")]
|
||||
collision_layer = 3
|
||||
defense = 2
|
||||
destroyed_object = ExtResource("1_370rb")
|
||||
shake_object = NodePath("../long_table")
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="HitBox"]
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="HitBox" unique_id=1786095584]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.559225, 0)
|
||||
shape = SubResource("BoxShape3D_j8sr1")
|
||||
|
||||
[node name="long_table" parent="." instance=ExtResource("2_7o4nk")]
|
||||
[node name="long_table" parent="." unique_id=1803023856 instance=ExtResource("2_7o4nk")]
|
||||
|
|
|
|||
|
|
@ -227,9 +227,9 @@ root_motion_track = NodePath("character2/Skeleton3D:root")
|
|||
tree_root = SubResource("AnimationNodeStateMachine_yaurm")
|
||||
anim_player = NodePath("../character/AnimationPlayer")
|
||||
|
||||
[node name="character" parent="." unique_id=1193329137 instance=ExtResource("1_yaurm")]
|
||||
[node name="character" parent="." unique_id=1031558579 instance=ExtResource("1_yaurm")]
|
||||
|
||||
[node name="BoneAttachment3D" type="BoneAttachment3D" parent="character/character2/Skeleton3D" parent_id_path=PackedInt32Array(1193329137, 519303389) index="2" unique_id=566409344]
|
||||
[node name="BoneAttachment3D" type="BoneAttachment3D" parent="character/character2/Skeleton3D" parent_id_path=PackedInt32Array(1031558579, 1094092726) index="2" unique_id=566409344]
|
||||
transform = Transform3D(-0.74619925, -0.6650274, 0.030413395, 0.6645052, -0.7468186, -0.026356531, 0.040241107, 0.0005426332, 0.99918985, 0.6361852, 2.0346472, -0.14206453)
|
||||
bone_name = "hammer_2"
|
||||
bone_idx = 18
|
||||
|
|
|
|||
|
|
@ -3,6 +3,11 @@
|
|||
[ext_resource type="Texture2D" uid="uid://cr56o21nptvt6" path="res://assets/ui/frame.svg" id="1_cer2l"]
|
||||
[ext_resource type="Texture2D" uid="uid://kn5w07mgntvq" path="res://assets/ui/frame_base.svg" id="2_25bap"]
|
||||
[ext_resource type="StyleBox" uid="uid://dx4vl7rb650ph" path="res://objects/ui/textbox_style.tres" id="3_lscdw"]
|
||||
[ext_resource type="Texture2D" uid="uid://borgwswaglvre" path="res://assets/ui/style_letters/style_anarchic.png" id="4_ddhud"]
|
||||
[ext_resource type="Texture2D" uid="uid://ddnnht5030owy" path="res://assets/ui/style_letters/style_explosive.png" id="5_guo48"]
|
||||
[ext_resource type="Texture2D" uid="uid://cu6xs12a4v4lv" path="res://assets/ui/style_letters/style_destructive.png" id="6_xf154"]
|
||||
[ext_resource type="Texture2D" uid="uid://bsspt7d0wkkwc" path="res://assets/ui/style_letters/style_catastrophic.png" id="7_8u8q2"]
|
||||
[ext_resource type="Texture2D" uid="uid://b304c6efrbpup" path="res://assets/ui/style_letters/style_breaking.png" id="8_o8kss"]
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_ddhud"]
|
||||
resource_name = "PauseFrame"
|
||||
|
|
@ -60,31 +65,28 @@ func _health_changed(health : float):
|
|||
[sub_resource type="GDScript" id="GDScript_b61jh"]
|
||||
script/source = "extends RichTextLabel
|
||||
|
||||
@export var textures : Array[Texture2D]
|
||||
|
||||
func _ready():
|
||||
LevelStatus.get_instance().style_changed.connect(_style_changed)
|
||||
_style_changed(0)
|
||||
|
||||
func _style_changed(style):
|
||||
%StyleTexture.texture = textures[style]
|
||||
match int(floor(style)):
|
||||
0:
|
||||
visible = false
|
||||
text = \"\"
|
||||
1: # F
|
||||
visible = true
|
||||
text = \"Fatal\"
|
||||
2: # E
|
||||
visible = true
|
||||
text = \"Explosive\"
|
||||
3: # D
|
||||
visible = true
|
||||
text = \"Destructive\"
|
||||
4: # C
|
||||
visible = true
|
||||
text = \"Catastrophic\"
|
||||
5: # B
|
||||
visible = true
|
||||
text = \"Breaking\"
|
||||
6: # A
|
||||
visible = true
|
||||
text = \"Anarchist\"
|
||||
"
|
||||
|
||||
|
|
@ -155,38 +157,67 @@ value = 0.65
|
|||
show_percentage = false
|
||||
script = SubResource("GDScript_lscdw")
|
||||
|
||||
[node name="PanelContainer" type="PanelContainer" parent="." unique_id=1876159707]
|
||||
[node name="Panel" type="Panel" parent="." unique_id=828550183]
|
||||
layout_mode = 0
|
||||
offset_left = 0.9999995
|
||||
offset_top = -17.999996
|
||||
offset_right = 343.35724
|
||||
offset_bottom = 129.11588
|
||||
rotation = 0.049929842
|
||||
offset_left = 33.0
|
||||
offset_top = -31.0
|
||||
offset_right = 307.5043
|
||||
offset_bottom = 235.67764
|
||||
rotation = 0.18656573
|
||||
theme_override_styles/panel = ExtResource("3_lscdw")
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer" unique_id=1476210021]
|
||||
layout_mode = 2
|
||||
[node name="PanelContainer" type="PanelContainer" parent="." unique_id=1876159707]
|
||||
layout_mode = 0
|
||||
offset_left = -1.999999
|
||||
offset_top = 214.00002
|
||||
offset_right = 297.5713
|
||||
offset_bottom = 319.0
|
||||
rotation = 0.04287675
|
||||
theme_override_styles/panel = ExtResource("3_lscdw")
|
||||
|
||||
[node name="RichTextLabel" type="RichTextLabel" parent="PanelContainer/VBoxContainer" unique_id=1440807256]
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="PanelContainer" unique_id=1058345758]
|
||||
layout_mode = 2
|
||||
size_flags_vertical = 3
|
||||
theme_override_constants/separation = -10
|
||||
|
||||
[node name="RichTextLabel" type="RichTextLabel" parent="PanelContainer/HBoxContainer" unique_id=1440807256]
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
focus_mode = 0
|
||||
mouse_filter = 2
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/normal_font_size = 48
|
||||
theme_override_font_sizes/normal_font_size = 32
|
||||
text = "Destructive"
|
||||
fit_content = true
|
||||
scroll_active = false
|
||||
vertical_alignment = 1
|
||||
script = SubResource("GDScript_b61jh")
|
||||
textures = Array[Texture2D]([null, null, ExtResource("5_guo48"), ExtResource("6_xf154"), ExtResource("7_8u8q2"), ExtResource("8_o8kss"), ExtResource("4_ddhud")])
|
||||
|
||||
[node name="StyleTexture" type="TextureRect" parent="." unique_id=1404766304]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 0
|
||||
offset_left = 25.0
|
||||
offset_top = -2.0
|
||||
offset_right = 280.39163
|
||||
offset_bottom = 247.35599
|
||||
rotation = 0.05656576
|
||||
texture = ExtResource("4_ddhud")
|
||||
expand_mode = 1
|
||||
|
||||
[node name="PanelContainer2" type="PanelContainer" parent="." unique_id=789180801]
|
||||
layout_mode = 1
|
||||
offset_left = -20.734081
|
||||
offset_top = 115.99999
|
||||
offset_right = 284.01514
|
||||
offset_bottom = 221.0
|
||||
rotation = 0.031108975
|
||||
anchors_preset = 3
|
||||
anchor_left = 1.0
|
||||
anchor_top = 1.0
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -329.99988
|
||||
offset_top = -146.0
|
||||
offset_right = -25.250366
|
||||
offset_bottom = -41.0
|
||||
grow_horizontal = 0
|
||||
grow_vertical = 0
|
||||
rotation = 0.07959896
|
||||
theme_override_styles/panel = ExtResource("3_lscdw")
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="PanelContainer2" unique_id=788268433]
|
||||
|
|
|
|||
|
|
@ -6,6 +6,10 @@
|
|||
[ext_resource type="Texture2D" uid="uid://c0yeswk37c1h7" path="res://assets/ui/end_screen_frame.svg" id="3_c1u11"]
|
||||
[ext_resource type="StyleBox" uid="uid://dx4vl7rb650ph" path="res://objects/ui/textbox_style.tres" id="4_pkge6"]
|
||||
[ext_resource type="Texture2D" uid="uid://b304c6efrbpup" path="res://assets/ui/style_letters/style_breaking.png" id="5_tx4gm"]
|
||||
[ext_resource type="Texture2D" uid="uid://borgwswaglvre" path="res://assets/ui/style_letters/style_anarchic.png" id="7_fokjh"]
|
||||
[ext_resource type="Texture2D" uid="uid://ddnnht5030owy" path="res://assets/ui/style_letters/style_explosive.png" id="7_jlscs"]
|
||||
[ext_resource type="Texture2D" uid="uid://cu6xs12a4v4lv" path="res://assets/ui/style_letters/style_destructive.png" id="8_83m3j"]
|
||||
[ext_resource type="Texture2D" uid="uid://bsspt7d0wkkwc" path="res://assets/ui/style_letters/style_catastrophic.png" id="9_j4c8f"]
|
||||
|
||||
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_444kp"]
|
||||
sky_horizon_color = Color(0.6527628, 0.6763377, 0.70551276, 1)
|
||||
|
|
@ -31,6 +35,39 @@ func _ready():
|
|||
$AnimationPlayer.play(\"falling\")
|
||||
"
|
||||
|
||||
[sub_resource type="LevelResult" id="LevelResult_jlscs"]
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_jlscs"]
|
||||
resource_name = "IntermissionScreenScoreLabel"
|
||||
script/source = "extends RichTextLabel
|
||||
|
||||
func _ready():
|
||||
text = \"Score: %d\" % %IntermissionScreen.result.score
|
||||
"
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_83m3j"]
|
||||
resource_name = "IntermissionPercentageLabel"
|
||||
script/source = "extends RichTextLabel
|
||||
|
||||
func _ready():
|
||||
var result := (%IntermissionScreen as IntermissionScreen).result
|
||||
if result.total_objects > 0:
|
||||
text = \"Destroyed: %d\" % ((result.destroyed / result.total_objects) * 100)
|
||||
else:
|
||||
text = \"Destroyed: 0%\"
|
||||
"
|
||||
|
||||
[sub_resource type="GDScript" id="GDScript_7q532"]
|
||||
resource_name = "IntermissionStyleLetter"
|
||||
script/source = "extends TextureRect
|
||||
|
||||
@export var textures : Array[Texture2D]
|
||||
@onready var result := (%IntermissionScreen as IntermissionScreen).result
|
||||
|
||||
func _ready():
|
||||
texture = textures[result.style-1]
|
||||
"
|
||||
|
||||
[node name="LevelEndScreen" type="Node3D" unique_id=1188670411]
|
||||
|
||||
[node name="WorldEnvironment" type="WorldEnvironment" parent="." unique_id=1630900158]
|
||||
|
|
@ -46,27 +83,28 @@ flip_faces = true
|
|||
size = Vector3(6.0234375, 15.5095215, 6.79895)
|
||||
material = ExtResource("1_444kp")
|
||||
|
||||
[node name="character" parent="." unique_id=815638724 instance=ExtResource("1_48f2e")]
|
||||
[node name="character" parent="." unique_id=1031558579 instance=ExtResource("1_48f2e")]
|
||||
script = SubResource("GDScript_48f2e")
|
||||
|
||||
[node name="body" parent="character/character2/Skeleton3D" parent_id_path=PackedInt32Array(815638724, 861182108) index="0" unique_id=341965371]
|
||||
[node name="body" parent="character/character2/Skeleton3D" parent_id_path=PackedInt32Array(1031558579, 1094092726) index="0" unique_id=1162912264]
|
||||
material_overlay = ExtResource("3_7q532")
|
||||
|
||||
[node name="body_001" parent="character/character2/Skeleton3D" parent_id_path=PackedInt32Array(815638724, 861182108) index="1" unique_id=1376782923]
|
||||
[node name="body_001" parent="character/character2/Skeleton3D" parent_id_path=PackedInt32Array(1031558579, 1094092726) index="1" unique_id=1829355373]
|
||||
material_overlay = ExtResource("3_7q532")
|
||||
|
||||
[node name="hammer" parent="character/character2/Skeleton3D" parent_id_path=PackedInt32Array(815638724, 861182108) index="2" unique_id=746522655]
|
||||
[node name="hammer" parent="character/character2/Skeleton3D" parent_id_path=PackedInt32Array(1031558579, 1094092726) index="2" unique_id=1132059472]
|
||||
material_overlay = ExtResource("3_7q532")
|
||||
|
||||
[node name="UI" type="Control" parent="." unique_id=1653265546]
|
||||
layout_mode = 3
|
||||
[node name="IntermissionScreen" type="IntermissionScreen" parent="." unique_id=167990140]
|
||||
unique_name_in_owner = true
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
result = SubResource("LevelResult_jlscs")
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="UI" unique_id=226567850]
|
||||
[node name="TextureRect" type="TextureRect" parent="IntermissionScreen" unique_id=226567850]
|
||||
layout_mode = 1
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
|
|
@ -76,66 +114,79 @@ grow_vertical = 2
|
|||
texture = ExtResource("3_c1u11")
|
||||
expand_mode = 1
|
||||
|
||||
[node name="PanelContainer" type="PanelContainer" parent="UI" unique_id=171117788]
|
||||
[node name="PanelContainer" type="PanelContainer" parent="IntermissionScreen" unique_id=171117788]
|
||||
layout_mode = 0
|
||||
offset_left = 168.99997
|
||||
offset_top = 57.0
|
||||
offset_right = 836.2428
|
||||
offset_bottom = 205.0
|
||||
offset_bottom = 175.0
|
||||
rotation = 0.09742515
|
||||
theme_override_styles/panel = ExtResource("4_pkge6")
|
||||
|
||||
[node name="RichTextLabel" type="RichTextLabel" parent="UI/PanelContainer" unique_id=129594155]
|
||||
[node name="RichTextLabel" type="RichTextLabel" parent="IntermissionScreen/PanelContainer" unique_id=129594155]
|
||||
layout_mode = 2
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/normal_font_size = 64
|
||||
theme_override_font_sizes/normal_font_size = 42
|
||||
text = "Score: 123456"
|
||||
fit_content = true
|
||||
scroll_active = false
|
||||
script = SubResource("GDScript_jlscs")
|
||||
|
||||
[node name="PanelContainer2" type="PanelContainer" parent="UI" unique_id=979281030]
|
||||
[node name="PanelContainer2" type="PanelContainer" parent="IntermissionScreen" unique_id=979281030]
|
||||
layout_mode = 0
|
||||
offset_left = 118.0
|
||||
offset_top = 343.99997
|
||||
offset_right = 803.8578
|
||||
offset_bottom = 491.99997
|
||||
offset_left = 140.0
|
||||
offset_top = 297.0
|
||||
offset_right = 825.8578
|
||||
offset_bottom = 415.0
|
||||
rotation = -0.025691543
|
||||
theme_override_styles/panel = ExtResource("4_pkge6")
|
||||
|
||||
[node name="RichTextLabel" type="RichTextLabel" parent="UI/PanelContainer2" unique_id=1687861345]
|
||||
[node name="RichTextLabel" type="RichTextLabel" parent="IntermissionScreen/PanelContainer2" unique_id=1687861345]
|
||||
layout_mode = 2
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/normal_font_size = 64
|
||||
theme_override_font_sizes/normal_font_size = 42
|
||||
text = "Destruction: 200%"
|
||||
fit_content = true
|
||||
scroll_active = false
|
||||
script = SubResource("GDScript_83m3j")
|
||||
|
||||
[node name="PanelContainer3" type="PanelContainer" parent="UI" unique_id=402491634]
|
||||
[node name="Panel" type="Panel" parent="IntermissionScreen" unique_id=1703835801]
|
||||
layout_mode = 0
|
||||
offset_left = 99.00001
|
||||
offset_top = 543.0
|
||||
offset_right = 739.14355
|
||||
offset_bottom = 691.0
|
||||
offset_left = 264.27393
|
||||
offset_top = 554.0
|
||||
offset_right = 559.411
|
||||
offset_bottom = 851.73035
|
||||
rotation = 0.17307885
|
||||
theme_override_styles/panel = ExtResource("4_pkge6")
|
||||
|
||||
[node name="PanelContainer3" type="PanelContainer" parent="IntermissionScreen" unique_id=402491634]
|
||||
layout_mode = 0
|
||||
offset_left = 179.00002
|
||||
offset_top = 478.0
|
||||
offset_right = 520.1164
|
||||
offset_bottom = 596.0
|
||||
rotation = 0.13659918
|
||||
theme_override_styles/panel = ExtResource("4_pkge6")
|
||||
|
||||
[node name="RichTextLabel" type="RichTextLabel" parent="UI/PanelContainer3" unique_id=1708404379]
|
||||
[node name="RichTextLabel" type="RichTextLabel" parent="IntermissionScreen/PanelContainer3" unique_id=1708404379]
|
||||
layout_mode = 2
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
theme_override_font_sizes/normal_font_size = 64
|
||||
theme_override_font_sizes/normal_font_size = 42
|
||||
text = "Style:"
|
||||
fit_content = true
|
||||
scroll_active = false
|
||||
|
||||
[node name="TextureRect2" type="TextureRect" parent="UI" unique_id=668257733]
|
||||
[node name="TextureRect2" type="TextureRect" parent="IntermissionScreen" unique_id=668257733]
|
||||
layout_mode = 1
|
||||
offset_left = 339.00003
|
||||
offset_top = 535.0
|
||||
offset_right = 746.6963
|
||||
offset_bottom = 901.0
|
||||
rotation = -0.035710998
|
||||
offset_left = 238.0
|
||||
offset_top = 607.00006
|
||||
offset_right = 509.90198
|
||||
offset_bottom = 851.0938
|
||||
rotation = 0.034808658
|
||||
size_flags_horizontal = 8
|
||||
texture = ExtResource("5_tx4gm")
|
||||
expand_mode = 1
|
||||
script = SubResource("GDScript_7q532")
|
||||
textures = Array[Texture2D]([null, ExtResource("7_jlscs"), ExtResource("8_83m3j"), ExtResource("9_j4c8f"), ExtResource("5_tx4gm"), ExtResource("7_fokjh")])
|
||||
|
||||
[editable path="character"]
|
||||
|
|
|
|||
|
|
@ -88,7 +88,7 @@ transform = Transform3D(0.7274735, -0.09339222, -0.6797502, 4.4703484e-08, 0.990
|
|||
keep_aspect = 0
|
||||
fov = 58.302567
|
||||
|
||||
[node name="character" parent="." unique_id=1121355691 instance=ExtResource("2_ekxnf")]
|
||||
[node name="character" parent="." unique_id=1031558579 instance=ExtResource("2_ekxnf")]
|
||||
transform = Transform3D(0.99800366, 0, -0.06315637, 0, 1, 0, 0.06315637, 0, 0.99800366, -3.1153452, 0.2585796, 0.84043175)
|
||||
script = SubResource("GDScript_ekxnf")
|
||||
|
||||
|
|
|
|||
|
|
@ -177,15 +177,10 @@ use_collision = true
|
|||
collision_layer = 5
|
||||
collision_mask = 5
|
||||
|
||||
[node name="CSGBox3D3" type="CSGBox3D" parent="Environment/CSGCombiner3D" unique_id=1106412156]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 2.00604, 1.78183, 1.52303)
|
||||
flip_faces = true
|
||||
size = Vector3(13.0256, 3.9247, 12.0219)
|
||||
|
||||
[node name="CSGBox3D7" type="CSGBox3D" parent="Environment/CSGCombiner3D" unique_id=1810177399]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 2.08339, 1.78183, -15.576)
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 2.0833905, 1.78183, -6.984256)
|
||||
flip_faces = true
|
||||
size = Vector3(13.0256, 3.9247, 12.0219)
|
||||
size = Vector3(30.20909, 3.9247, 12.0219)
|
||||
|
||||
[node name="CSGBox3D5" type="CSGBox3D" parent="Environment/CSGCombiner3D" unique_id=709562439]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 6.6595173, 1.78183, -7.0210905)
|
||||
|
|
@ -202,21 +197,6 @@ transform = Transform3D(-1, 0, -8.742279e-08, 0, 1, 0, 8.742279e-08, 0, -1, 16.3
|
|||
flip_faces = true
|
||||
size = Vector3(15.387126, 3.9247, 14.189308)
|
||||
|
||||
[node name="CSGBox3D8" type="CSGBox3D" parent="Environment/CSGCombiner3D" unique_id=2012956993]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 2.01214, 2.55284, -7.03223)
|
||||
flip_faces = true
|
||||
size = Vector3(4.24414, 2.17948, 11.6148)
|
||||
|
||||
[node name="CSGBox3D9" type="CSGBox3D" parent="Environment/CSGCombiner3D" unique_id=1950176907]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -1.096, 1.19392, -5.06365)
|
||||
flip_faces = true
|
||||
size = Vector3(1.5, 2.749, 3.1123047)
|
||||
|
||||
[node name="CSGBox3D13" type="CSGBox3D" parent="Environment/CSGCombiner3D" unique_id=1674531504]
|
||||
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 4.733099, 1.19392, -9.101494)
|
||||
flip_faces = true
|
||||
size = Vector3(1.5, 2.749, 3.1123047)
|
||||
|
||||
[node name="CSGBox3D12" type="CSGBox3D" parent="Environment/CSGCombiner3D" unique_id=1443450172]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.4652538, 1.8695965, -3.1749)
|
||||
operation = 1
|
||||
|
|
|
|||