模板场景文件

This commit is contained in:
2026-09-12 22:18:09 +08:00
parent 9b2f83a4cf
commit 2816092fb4
22 changed files with 6463 additions and 0 deletions
+32
View File
@@ -0,0 +1,32 @@
[gd_scene load_steps=5 format=3]
[ext_resource type="PackedScene" path="res://assets/items/backpacks/models/backpack.fbx" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_item"]
size = Vector3(0.48024, 0.42777, 0.36171)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_item"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="Backpack" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "backpack"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("BoxShape3D_item")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.45, 0, 0, 0, 0.45, 0, 0, 0, 0.45, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_item")
+33
View File
@@ -0,0 +1,33 @@
[gd_scene load_steps=5 format=3]
[ext_resource type="PackedScene" path="res://assets/items/hats/models/fedora.glb" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_hat"]
size = Vector3(0.6525, 0.236667, 0.585665)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_hat"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="Fedora" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "fedora"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
position = Vector3(0, 0.118333, 0)
shape = SubResource("BoxShape3D_hat")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.45, 0, 0, 0, 0.45, 0, 0, 0, 0.45, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_hat")
+32
View File
@@ -0,0 +1,32 @@
[gd_scene load_steps=5 format=3]
[ext_resource type="PackedScene" path="res://assets/items/hats/models/headphones.glb" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_hat"]
size = Vector3(0.5625, 0.418734, 0.192537)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_hat"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="Headphones" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "headphones"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("BoxShape3D_hat")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.45, 0, 0, 0, 0.45, 0, 0, 0, 0.45, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_hat")
+33
View File
@@ -0,0 +1,33 @@
[gd_scene load_steps=5 format=3]
[ext_resource type="PackedScene" path="res://assets/items/hats/models/pirate_hat.glb" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_hat"]
size = Vector3(0.563666, 0.434373, 0.6075)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_hat"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="PirateHat" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "pirate_hat"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
position = Vector3(0, 0.217186, 0)
shape = SubResource("BoxShape3D_hat")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.45, 0, 0, 0, 0.45, 0, 0, 0, 0.45, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_hat")
+33
View File
@@ -0,0 +1,33 @@
[gd_scene load_steps=5 format=3]
[ext_resource type="PackedScene" path="res://assets/items/hats/models/sheriff_hat.glb" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_hat"]
size = Vector3(0.608453, 0.271051, 0.675)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_hat"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="SheriffHat" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "sheriff_hat"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
position = Vector3(0, 0.135525, 0)
shape = SubResource("BoxShape3D_hat")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.45, 0, 0, 0, 0.45, 0, 0, 0, 0.45, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_hat")
+33
View File
@@ -0,0 +1,33 @@
[gd_scene load_steps=5 format=3]
[ext_resource type="PackedScene" path="res://assets/items/hats/models/sombrero.glb" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_hat"]
size = Vector3(0.719778, 0.220565, 0.72)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_hat"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="Sombrero" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "sombrero"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
position = Vector3(0, 0.110282, 0)
shape = SubResource("BoxShape3D_hat")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.45, 0, 0, 0, 0.45, 0, 0, 0, 0.45, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_hat")
+33
View File
@@ -0,0 +1,33 @@
[gd_scene load_steps=5 format=3]
[ext_resource type="PackedScene" path="res://assets/items/hats/models/wizard_hat.glb" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_hat"]
size = Vector3(0.582189, 0.382592, 0.585)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_hat"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="WizardHat" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "wizard_hat"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
position = Vector3(0, 0.191296, 0)
shape = SubResource("BoxShape3D_hat")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.45, 0, 0, 0, 0.45, 0, 0, 0, 0.45, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_hat")
+32
View File
@@ -0,0 +1,32 @@
[gd_scene load_steps=5 format=3]
[ext_resource type="PackedScene" path="res://assets/items/misc/models/bone.fbx" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_item"]
size = Vector3(0.45792, 0.154665, 0.08)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_item"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="Bone" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "bone"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("BoxShape3D_item")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.45, 0, 0, 0, 0.45, 0, 0, 0, 0.45, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_item")
+33
View File
@@ -0,0 +1,33 @@
[gd_scene load_steps=5 format=3]
[ext_resource type="PackedScene" path="res://assets/items/misc/models/chalice.fbx" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_item"]
size = Vector3(0.218565, 0.33606, 0.21852)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_item"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="Chalice" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "chalice"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
position = Vector3(-0.001463, 0.16605, 0)
shape = SubResource("BoxShape3D_item")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.45, 0, 0, 0, 0.45, 0, 0, 0, 0.45, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_item")
+33
View File
@@ -0,0 +1,33 @@
[gd_scene format=3]
[ext_resource type="PackedScene" path="res://assets/items/misc/models/chicken_leg.fbx" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_item"]
size = Vector3(0.46521, 0.193365, 0.20349)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_item"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="ChickenLeg" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "chicken_leg"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
position = Vector3(-0.02961, -0.001237, 0)
shape = SubResource("BoxShape3D_item")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.45, 0, 0, 0, 0.45, 0, 0, 0, 0.45, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_item")
+33
View File
@@ -0,0 +1,33 @@
[gd_scene format=3]
[ext_resource type="PackedScene" uid="uid://dghg7ospl0imy" path="res://assets/items/weapons/models/axe.fbx" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_item"]
size = Vector3(0.31175, 0.78725, 0.08)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_item"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="Axe" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "axe"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
position = Vector3(0.119475, 0.065875, 0)
shape = SubResource("BoxShape3D_item")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.5, 0, 0, 0, 0.5, 0, 0, 0, 0.5, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_item")
+33
View File
@@ -0,0 +1,33 @@
[gd_scene format=3]
[ext_resource type="PackedScene" path="res://assets/items/weapons/models/sword.fbx" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_item"]
size = Vector3(0.18704, 0.805735, 0.08)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_item"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="Sword" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "sword"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
position = Vector3(0, 0.268817, 0)
shape = SubResource("BoxShape3D_item")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.35, 0, 0, 0, 0.35, 0, 0, 0, 0.35, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_item")
+33
View File
@@ -0,0 +1,33 @@
[gd_scene format=3]
[ext_resource type="PackedScene" path="res://assets/items/weapons/models/sword_big.fbx" id="1_model"]
[ext_resource type="Script" path="res://scripts/items/item_rigid_body_3d.gd" id="2_script"]
[sub_resource type="BoxShape3D" id="BoxShape3D_item"]
size = Vector3(0.12996, 0.82038, 0.08)
[sub_resource type="SceneReplicationConfig" id="SceneReplicationConfig_item"]
properties/0/path = NodePath(".:position")
properties/0/spawn = true
properties/0/replication_mode = 2
properties/1/path = NodePath(".:rotation")
properties/1/spawn = true
properties/1/replication_mode = 2
[node name="SwordBig" type="RigidBody3D"]
collision_layer = 4
collision_mask = 7
linear_damp = 1.0
angular_damp = 1.0
script = ExtResource("2_script")
item_id = "sword_big"
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
position = Vector3(0, 0.36504, 0)
shape = SubResource("BoxShape3D_item")
[node name="Model" parent="." instance=ExtResource("1_model")]
transform = Transform3D(0.3, 0, 0, 0, 0.3, 0, 0, 0, 0.3, 0, 0, 0)
[node name="MultiplayerSynchronizer" type="MultiplayerSynchronizer" parent="."]
replication_config = SubResource("SceneReplicationConfig_item")
+279
View File
@@ -0,0 +1,279 @@
[gd_scene load_steps=17 format=3]
[ext_resource type="Texture2D" path="res://assets/environment/textures/prototype_dark.png" id="1_floor"]
[ext_resource type="Texture2D" path="res://assets/environment/textures/prototype_orange.png" id="2_orange"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_floor"]
texture_filter = 5
albedo_texture = ExtResource("1_floor")
roughness = 0.85
uv1_triplanar = true
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_orange"]
texture_filter = 5
albedo_texture = ExtResource("2_orange")
roughness = 0.78
uv1_triplanar = true
[sub_resource type="BoxMesh" id="BoxMesh_floor"]
material = SubResource("StandardMaterial3D_floor")
size = Vector3(100, 0.4, 100)
[sub_resource type="BoxShape3D" id="BoxShape3D_floor"]
size = Vector3(100, 0.4, 100)
[sub_resource type="BoxMesh" id="BoxMesh_boundary"]
material = SubResource("StandardMaterial3D_floor")
size = Vector3(100, 3, 1)
[sub_resource type="BoxShape3D" id="BoxShape3D_boundary"]
size = Vector3(100, 3, 1)
[sub_resource type="BoxMesh" id="BoxMesh_diagonal_wall"]
material = SubResource("StandardMaterial3D_orange")
size = Vector3(9, 2.5, 1.2)
[sub_resource type="BoxShape3D" id="BoxShape3D_diagonal_wall"]
size = Vector3(9, 2.5, 1.2)
[sub_resource type="BoxMesh" id="BoxMesh_low_cover"]
material = SubResource("StandardMaterial3D_orange")
size = Vector3(6, 1.4, 2.4)
[sub_resource type="BoxShape3D" id="BoxShape3D_low_cover"]
size = Vector3(6, 1.4, 2.4)
[sub_resource type="CylinderMesh" id="CylinderMesh_pillar"]
material = SubResource("StandardMaterial3D_orange")
top_radius = 1.5
bottom_radius = 1.5
height = 4.5
radial_segments = 20
[sub_resource type="CylinderShape3D" id="CylinderShape3D_pillar"]
radius = 1.5
height = 4.5
[sub_resource type="CylinderMesh" id="CylinderMesh_center_pad_outer"]
material = SubResource("StandardMaterial3D_orange")
top_radius = 8
bottom_radius = 8
height = 0.025
radial_segments = 48
[sub_resource type="CylinderMesh" id="CylinderMesh_center_pad_inner"]
material = SubResource("StandardMaterial3D_floor")
top_radius = 6.7
bottom_radius = 6.7
height = 0.035
radial_segments = 48
[node name="Arena" type="Node3D"]
[node name="Decoration" type="Node3D" parent="."]
[node name="CenterPadOuter" type="MeshInstance3D" parent="Decoration"]
position = Vector3(0, 0.0125, 0)
cast_shadow = 0
mesh = SubResource("CylinderMesh_center_pad_outer")
[node name="CenterPadInner" type="MeshInstance3D" parent="Decoration"]
position = Vector3(0, 0.03, 0)
cast_shadow = 0
mesh = SubResource("CylinderMesh_center_pad_inner")
[node name="Geometry" type="StaticBody3D" parent="."]
collision_layer = 2
collision_mask = 0
[node name="GroundMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(0, -0.2, 0)
mesh = SubResource("BoxMesh_floor")
[node name="GroundCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(0, -0.2, 0)
shape = SubResource("BoxShape3D_floor")
[node name="BoundaryNorthMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(0, 1.5, -49.5)
mesh = SubResource("BoxMesh_boundary")
[node name="BoundaryNorthCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(0, 1.5, -49.5)
shape = SubResource("BoxShape3D_boundary")
[node name="BoundarySouthMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(0, 1.5, 49.5)
mesh = SubResource("BoxMesh_boundary")
[node name="BoundarySouthCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(0, 1.5, 49.5)
shape = SubResource("BoxShape3D_boundary")
[node name="BoundaryEastMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(49.5, 1.5, 0)
rotation = Vector3(0, 1.5707963, 0)
mesh = SubResource("BoxMesh_boundary")
[node name="BoundaryEastCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(49.5, 1.5, 0)
rotation = Vector3(0, 1.5707963, 0)
shape = SubResource("BoxShape3D_boundary")
[node name="BoundaryWestMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(-49.5, 1.5, 0)
rotation = Vector3(0, 1.5707963, 0)
mesh = SubResource("BoxMesh_boundary")
[node name="BoundaryWestCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(-49.5, 1.5, 0)
rotation = Vector3(0, 1.5707963, 0)
shape = SubResource("BoxShape3D_boundary")
[node name="DiagonalNortheastMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(16, 1.25, -16)
rotation = Vector3(0, 0.7853982, 0)
mesh = SubResource("BoxMesh_diagonal_wall")
[node name="DiagonalNortheastCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(16, 1.25, -16)
rotation = Vector3(0, 0.7853982, 0)
shape = SubResource("BoxShape3D_diagonal_wall")
[node name="DiagonalNorthwestMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(-16, 1.25, -16)
rotation = Vector3(0, -0.7853982, 0)
mesh = SubResource("BoxMesh_diagonal_wall")
[node name="DiagonalNorthwestCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(-16, 1.25, -16)
rotation = Vector3(0, -0.7853982, 0)
shape = SubResource("BoxShape3D_diagonal_wall")
[node name="DiagonalSoutheastMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(16, 1.25, 16)
rotation = Vector3(0, -0.7853982, 0)
mesh = SubResource("BoxMesh_diagonal_wall")
[node name="DiagonalSoutheastCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(16, 1.25, 16)
rotation = Vector3(0, -0.7853982, 0)
shape = SubResource("BoxShape3D_diagonal_wall")
[node name="DiagonalSouthwestMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(-16, 1.25, 16)
rotation = Vector3(0, 0.7853982, 0)
mesh = SubResource("BoxMesh_diagonal_wall")
[node name="DiagonalSouthwestCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(-16, 1.25, 16)
rotation = Vector3(0, 0.7853982, 0)
shape = SubResource("BoxShape3D_diagonal_wall")
[node name="OuterDiagonalNortheastMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(34, 1.25, -22)
rotation = Vector3(0, -0.7853982, 0)
mesh = SubResource("BoxMesh_diagonal_wall")
[node name="OuterDiagonalNortheastCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(34, 1.25, -22)
rotation = Vector3(0, -0.7853982, 0)
shape = SubResource("BoxShape3D_diagonal_wall")
[node name="OuterDiagonalNorthwestMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(-34, 1.25, -22)
rotation = Vector3(0, 0.7853982, 0)
mesh = SubResource("BoxMesh_diagonal_wall")
[node name="OuterDiagonalNorthwestCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(-34, 1.25, -22)
rotation = Vector3(0, 0.7853982, 0)
shape = SubResource("BoxShape3D_diagonal_wall")
[node name="OuterDiagonalSoutheastMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(34, 1.25, 22)
rotation = Vector3(0, 0.7853982, 0)
mesh = SubResource("BoxMesh_diagonal_wall")
[node name="OuterDiagonalSoutheastCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(34, 1.25, 22)
rotation = Vector3(0, 0.7853982, 0)
shape = SubResource("BoxShape3D_diagonal_wall")
[node name="OuterDiagonalSouthwestMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(-34, 1.25, 22)
rotation = Vector3(0, -0.7853982, 0)
mesh = SubResource("BoxMesh_diagonal_wall")
[node name="OuterDiagonalSouthwestCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(-34, 1.25, 22)
rotation = Vector3(0, -0.7853982, 0)
shape = SubResource("BoxShape3D_diagonal_wall")
[node name="LowCoverNorthMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(0, 0.7, -32)
mesh = SubResource("BoxMesh_low_cover")
[node name="LowCoverNorthCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(0, 0.7, -32)
shape = SubResource("BoxShape3D_low_cover")
[node name="LowCoverSouthMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(0, 0.7, 32)
mesh = SubResource("BoxMesh_low_cover")
[node name="LowCoverSouthCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(0, 0.7, 32)
shape = SubResource("BoxShape3D_low_cover")
[node name="LowCoverEastMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(32, 0.7, 0)
rotation = Vector3(0, 1.5707963, 0)
mesh = SubResource("BoxMesh_low_cover")
[node name="LowCoverEastCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(32, 0.7, 0)
rotation = Vector3(0, 1.5707963, 0)
shape = SubResource("BoxShape3D_low_cover")
[node name="LowCoverWestMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(-32, 0.7, 0)
rotation = Vector3(0, 1.5707963, 0)
mesh = SubResource("BoxMesh_low_cover")
[node name="LowCoverWestCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(-32, 0.7, 0)
rotation = Vector3(0, 1.5707963, 0)
shape = SubResource("BoxShape3D_low_cover")
[node name="PillarNortheastMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(40, 2.25, -40)
mesh = SubResource("CylinderMesh_pillar")
[node name="PillarNortheastCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(40, 2.25, -40)
shape = SubResource("CylinderShape3D_pillar")
[node name="PillarNorthwestMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(-40, 2.25, -40)
mesh = SubResource("CylinderMesh_pillar")
[node name="PillarNorthwestCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(-40, 2.25, -40)
shape = SubResource("CylinderShape3D_pillar")
[node name="PillarSoutheastMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(40, 2.25, 40)
mesh = SubResource("CylinderMesh_pillar")
[node name="PillarSoutheastCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(40, 2.25, 40)
shape = SubResource("CylinderShape3D_pillar")
[node name="PillarSouthwestMesh" type="MeshInstance3D" parent="Geometry"]
position = Vector3(-40, 2.25, 40)
mesh = SubResource("CylinderMesh_pillar")
[node name="PillarSouthwestCollision" type="CollisionShape3D" parent="Geometry"]
position = Vector3(-40, 2.25, 40)
shape = SubResource("CylinderShape3D_pillar")
+88
View File
@@ -0,0 +1,88 @@
[gd_scene format=3 uid="uid://dugaivbj1o66n"]
[ext_resource type="Script" uid="uid://d0dgljwwl463n" path="res://scripts/level/level.gd" id="1_e1sh7"]
[ext_resource type="PackedScene" uid="uid://cffjduipbb3s5" path="res://scenes/level/player.tscn" id="1_uvcbi"]
[ext_resource type="PackedScene" path="res://scenes/level/arena.tscn" id="2_arena"]
[ext_resource type="PackedScene" uid="uid://bclq8vh1x2goy" path="res://scenes/ui/inventory_ui.tscn" id="4_x8g2h"]
[ext_resource type="PackedScene" uid="uid://ccencq0lcd3ph" path="res://scenes/ui/multiplayer_chat_ui.tscn" id="5_x9g3h"]
[ext_resource type="PackedScene" uid="uid://bx7mq8t8hjn7q" path="res://scenes/ui/main_menu_ui.tscn" id="6_x9g3h"]
[ext_resource type="PackedScene" path="res://scenes/ui/pause_menu_ui.tscn" id="8_pause"]
[ext_resource type="PackedScene" path="res://scenes/ui/player_list_ui.tscn" id="9_player_list"]
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_main"]
sky_top_color = Color(0.22, 0.46, 0.72, 1)
sky_horizon_color = Color(0.66, 0.8, 0.92, 1)
sky_curve = 0.12
ground_bottom_color = Color(0.12, 0.14, 0.17, 1)
ground_horizon_color = Color(0.52, 0.61, 0.68, 1)
ground_curve = 0.08
sun_angle_max = 20.0
sun_curve = 0.1
[sub_resource type="Sky" id="Sky_main"]
sky_material = SubResource("ProceduralSkyMaterial_main")
[sub_resource type="Environment" id="Environment_qb4jd"]
background_mode = 2
sky = SubResource("Sky_main")
ambient_light_source = 3
reflected_light_source = 2
tonemap_mode = 2
ssao_enabled = true
ssao_radius = 0.7
ssao_intensity = 0.85
ssao_power = 1.1
ssao_detail = 0.35
fog_enabled = true
fog_light_color = Color(0.66, 0.76, 0.84, 1)
fog_light_energy = 0.8
fog_sun_scatter = 0.08
fog_density = 0.0025
fog_aerial_perspective = 0.45
fog_sky_affect = 0.65
[node name="Level" type="Node3D" unique_id=1359265925]
script = ExtResource("1_e1sh7")
player_scene = ExtResource("1_uvcbi")
[node name="ItemMultiplayerSpawner" type="MultiplayerSpawner" parent="." unique_id=150451317]
unique_name_in_owner = true
_spawnable_scenes = PackedStringArray("res://scenes/items/hats/fedora.tscn", "res://scenes/items/hats/headphones.tscn", "res://scenes/items/hats/pirate_hat.tscn", "res://scenes/items/hats/sheriff_hat.tscn", "res://scenes/items/hats/sombrero.tscn", "res://scenes/items/hats/wizard_hat.tscn", "res://scenes/items/backpacks/backpack.tscn", "res://scenes/items/weapons/sword.tscn", "res://scenes/items/weapons/sword_big.tscn", "res://scenes/items/weapons/axe.tscn", "res://scenes/items/misc/chicken_leg.tscn", "res://scenes/items/misc/bone.tscn", "res://scenes/items/misc/chalice.tscn")
spawn_path = NodePath("../Environment/ItemContainer")
[node name="Environment" type="Node3D" parent="." unique_id=523076069]
unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.2542782, 0)
[node name="Arena" parent="Environment" unique_id=318485284 instance=ExtResource("2_arena")]
[node name="WorldEnvironment" type="WorldEnvironment" parent="Environment" unique_id=824936187]
environment = SubResource("Environment_qb4jd")
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="Environment" unique_id=2096374065]
transform = Transform3D(1, 0, 0, 0, -0.50000024, 0.8660253, 0, -0.8660253, -0.50000024, 0, 9.597253, 0)
light_color = Color(1, 0.94, 0.84, 1)
light_energy = 1.15
shadow_enabled = true
shadow_blur = 0.5
[node name="ItemContainer" type="Node3D" parent="Environment" unique_id=1445003613]
[node name="PlayersContainer" type="Node3D" parent="." unique_id=1732952398 groups=["Players"]]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.6891646, 0)
[node name="MainMenuUI" parent="." unique_id=2006763256 instance=ExtResource("6_x9g3h")]
visible = false
[node name="MultiplayerChatUI" parent="." unique_id=1655363280 instance=ExtResource("5_x9g3h")]
visible = false
anchors_preset = -1
[node name="InventoryUI" parent="." unique_id=2001567843 instance=ExtResource("4_x8g2h")]
visible = false
[node name="PlayerListUI" parent="." unique_id=517544055 instance=ExtResource("9_player_list")]
visible = false
[node name="PauseMenuUI" parent="." unique_id=358154633 instance=ExtResource("8_pause")]
visible = false
File diff suppressed because it is too large Load Diff
+64
View File
@@ -0,0 +1,64 @@
[gd_scene load_steps=3 format=3 uid="uid://bglwdpf2mf7g0"]
[ext_resource type="Script" uid="uid://bi0mlil0a0e5i" path="res://scripts/ui/inventory_slot_ui.gd" id="1_5k8m7"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_slot"]
bg_color = Color(0.105, 0.115, 0.135, 0.88)
border_width_left = 1
border_width_top = 1
border_width_right = 1
border_width_bottom = 1
border_color = Color(0.52, 0.57, 0.64, 0.38)
corner_radius_top_left = 3
corner_radius_top_right = 3
corner_radius_bottom_right = 3
corner_radius_bottom_left = 3
[node name="InventorySlotUI" type="Control" unique_id=1288455076]
layout_mode = 3
anchors_preset = 0
offset_right = 64.0
offset_bottom = 64.0
script = ExtResource("1_5k8m7")
[node name="Background" type="Panel" parent="." unique_id=1237187040]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_slot")
[node name="ItemIcon" type="TextureRect" parent="." unique_id=1347257846]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = 8.0
offset_top = 8.0
offset_right = -8.0
offset_bottom = -8.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
expand_mode = 1
stretch_mode = 5
[node name="QuantityLabel" type="Label" parent="." unique_id=1224415972]
layout_mode = 1
anchors_preset = 3
anchor_left = 1.0
anchor_top = 1.0
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = -20.0
offset_top = -20.0
grow_horizontal = 0
grow_vertical = 0
mouse_filter = 2
theme_override_font_sizes/font_size = 14
text = "99"
horizontal_alignment = 2
vertical_alignment = 2
+205
View File
@@ -0,0 +1,205 @@
[gd_scene load_steps=5 format=3 uid="uid://bclq8vh1x2goy"]
[ext_resource type="Script" uid="uid://c2w12kgcvtww4" path="res://scripts/ui/inventory_ui.gd" id="1_h7x4v"]
[ext_resource type="Texture2D" path="res://assets/ui/close.svg" id="2_close"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_panel"]
bg_color = Color(0.055, 0.06, 0.07, 0.82)
border_width_left = 1
border_width_top = 1
border_width_right = 1
border_width_bottom = 1
border_color = Color(0.55, 0.58, 0.62, 0.45)
corner_radius_top_left = 6
corner_radius_top_right = 6
corner_radius_bottom_right = 6
corner_radius_bottom_left = 6
[sub_resource type="StyleBoxLine" id="StyleBoxLine_separator"]
color = Color(0.65, 0.68, 0.72, 0.42)
[node name="InventoryUI" type="Control" unique_id=1878305014]
process_mode = 3
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_h7x4v")
[node name="SafeArea" type="MarginContainer" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/margin_left = 16
theme_override_constants/margin_top = 16
theme_override_constants/margin_right = 16
theme_override_constants/margin_bottom = 16
[node name="CenterContainer" type="CenterContainer" parent="SafeArea"]
layout_mode = 2
[node name="InventoryPanels" type="HBoxContainer" parent="SafeArea/CenterContainer"]
layout_mode = 2
theme_override_constants/separation = 10
[node name="EquipmentPanel" type="PanelContainer" parent="SafeArea/CenterContainer/InventoryPanels"]
custom_minimum_size = Vector2(132, 0)
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_panel")
[node name="MarginContainer" type="MarginContainer" parent="SafeArea/CenterContainer/InventoryPanels/EquipmentPanel"]
layout_mode = 2
theme_override_constants/margin_left = 10
theme_override_constants/margin_top = 10
theme_override_constants/margin_right = 10
theme_override_constants/margin_bottom = 10
[node name="VBoxContainer" type="VBoxContainer" parent="SafeArea/CenterContainer/InventoryPanels/EquipmentPanel/MarginContainer"]
layout_mode = 2
theme_override_constants/separation = 6
[node name="Title" type="Label" parent="SafeArea/CenterContainer/InventoryPanels/EquipmentPanel/MarginContainer/VBoxContainer"]
custom_minimum_size = Vector2(0, 28)
layout_mode = 2
theme_override_font_sizes/font_size = 20
text = "Equipment"
horizontal_alignment = 1
vertical_alignment = 1
[node name="HSeparator" type="HSeparator" parent="SafeArea/CenterContainer/InventoryPanels/EquipmentPanel/MarginContainer/VBoxContainer"]
layout_mode = 2
theme_override_styles/separator = SubResource("StyleBoxLine_separator")
[node name="HatLabel" type="Label" parent="SafeArea/CenterContainer/InventoryPanels/EquipmentPanel/MarginContainer/VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 15
text = "Hat"
horizontal_alignment = 1
[node name="HatSlotContainer" type="CenterContainer" parent="SafeArea/CenterContainer/InventoryPanels/EquipmentPanel/MarginContainer/VBoxContainer"]
custom_minimum_size = Vector2(0, 70)
layout_mode = 2
size_flags_vertical = 3
[node name="WeaponLabel" type="Label" parent="SafeArea/CenterContainer/InventoryPanels/EquipmentPanel/MarginContainer/VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 15
text = "Weapon"
horizontal_alignment = 1
[node name="WeaponSlotContainer" type="CenterContainer" parent="SafeArea/CenterContainer/InventoryPanels/EquipmentPanel/MarginContainer/VBoxContainer"]
custom_minimum_size = Vector2(0, 70)
layout_mode = 2
size_flags_vertical = 3
[node name="BackpackLabel" type="Label" parent="SafeArea/CenterContainer/InventoryPanels/EquipmentPanel/MarginContainer/VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 15
text = "Backpack"
horizontal_alignment = 1
[node name="BackpackSlotContainer" type="CenterContainer" parent="SafeArea/CenterContainer/InventoryPanels/EquipmentPanel/MarginContainer/VBoxContainer"]
custom_minimum_size = Vector2(0, 70)
layout_mode = 2
size_flags_vertical = 3
[node name="InventoryPanel" type="PanelContainer" parent="SafeArea/CenterContainer/InventoryPanels" unique_id=486763135]
custom_minimum_size = Vector2(296, 0)
layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_panel")
[node name="MarginContainer" type="MarginContainer" parent="SafeArea/CenterContainer/InventoryPanels/InventoryPanel" unique_id=1913204593]
layout_mode = 2
theme_override_constants/margin_left = 10
theme_override_constants/margin_top = 10
theme_override_constants/margin_right = 10
theme_override_constants/margin_bottom = 10
[node name="VBoxContainer" type="VBoxContainer" parent="SafeArea/CenterContainer/InventoryPanels/InventoryPanel/MarginContainer" unique_id=599957956]
layout_mode = 2
theme_override_constants/separation = 6
[node name="TitleBar" type="HBoxContainer" parent="SafeArea/CenterContainer/InventoryPanels/InventoryPanel/MarginContainer/VBoxContainer" unique_id=145161483]
custom_minimum_size = Vector2(0, 28)
layout_mode = 2
[node name="TitleSpacer" type="Control" parent="SafeArea/CenterContainer/InventoryPanels/InventoryPanel/MarginContainer/VBoxContainer/TitleBar"]
custom_minimum_size = Vector2(28, 0)
layout_mode = 2
mouse_filter = 2
[node name="Title" type="Label" parent="SafeArea/CenterContainer/InventoryPanels/InventoryPanel/MarginContainer/VBoxContainer/TitleBar" unique_id=860210156]
layout_mode = 2
size_flags_horizontal = 3
theme_override_font_sizes/font_size = 20
text = "Inventory"
horizontal_alignment = 1
vertical_alignment = 1
[node name="CloseButton" type="Button" parent="SafeArea/CenterContainer/InventoryPanels/InventoryPanel/MarginContainer/VBoxContainer/TitleBar" unique_id=698056211]
custom_minimum_size = Vector2(28, 28)
layout_mode = 2
focus_mode = 0
mouse_default_cursor_shape = 2
theme_override_colors/icon_normal_color = Color(0.95, 0.97, 0.95, 1)
theme_override_colors/icon_hover_color = Color(1, 0.55, 0.55, 1)
theme_override_colors/icon_pressed_color = Color(0.82, 0.3, 0.3, 1)
icon = ExtResource("2_close")
flat = true
tooltip_text = "Close inventory"
[node name="HSeparator" type="HSeparator" parent="SafeArea/CenterContainer/InventoryPanels/InventoryPanel/MarginContainer/VBoxContainer" unique_id=609650692]
layout_mode = 2
theme_override_styles/separator = SubResource("StyleBoxLine_separator")
[node name="GridContainer" type="GridContainer" parent="SafeArea/CenterContainer/InventoryPanels/InventoryPanel/MarginContainer/VBoxContainer" unique_id=789467804]
layout_mode = 2
size_flags_horizontal = 4
size_flags_vertical = 3
theme_override_constants/h_separation = 6
theme_override_constants/v_separation = 6
columns = 4
[node name="ItemTooltip" type="Control" parent="." unique_id=1254507357]
visible = false
layout_mode = 1
anchors_preset = 0
offset_right = 280.0
offset_bottom = 1.0
mouse_filter = 2
[node name="Panel" type="Panel" parent="ItemTooltip" unique_id=323031125]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_panel")
[node name="MarginContainer" type="MarginContainer" parent="ItemTooltip/Panel" unique_id=413423816]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
theme_override_constants/margin_left = 8
theme_override_constants/margin_top = 8
theme_override_constants/margin_right = 8
theme_override_constants/margin_bottom = 8
[node name="TooltipText" type="RichTextLabel" parent="ItemTooltip/Panel/MarginContainer" unique_id=571796113]
layout_mode = 2
mouse_filter = 2
bbcode_enabled = true
text = ""
fit_content = true
scroll_active = false
+198
View File
@@ -0,0 +1,198 @@
[gd_scene format=3 uid="uid://bx7mq8t8hjn7q"]
[ext_resource type="Script" uid="uid://c9x8y7z6a5b4c3d2" path="res://scripts/ui/main_menu_ui.gd" id="2_script"]
[sub_resource type="StyleBoxLine" id="StyleBoxLine_npnbc"]
color = Color(0, 0, 0, 0)
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_button_normal"]
content_margin_left = 12.0
content_margin_top = 4.0
content_margin_right = 12.0
content_margin_bottom = 4.0
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_button_hover"]
content_margin_left = 10.0
content_margin_top = 4.0
content_margin_right = 10.0
content_margin_bottom = 4.0
bg_color = Color(0.22, 0.25, 0.29, 0.92)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_button_pressed"]
content_margin_left = 10.0
content_margin_top = 4.0
content_margin_right = 10.0
content_margin_bottom = 4.0
bg_color = Color(0.14, 0.16, 0.19, 0.96)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_button_focus"]
[node name="MainMenuUI" type="Control" unique_id=1809417860]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("2_script")
[node name="ColorRect" type="ColorRect" parent="." unique_id=702505842]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0.0901961, 0.0901961, 0.0901961, 1)
[node name="MainContainer" type="VBoxContainer" parent="." unique_id=473263213]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_left = 24.0
offset_top = 24.0
offset_right = -24.0
offset_bottom = -24.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/separation = 50
alignment = 1
[node name="Label" type="Label" parent="MainContainer" unique_id=293700381]
layout_mode = 2
size_flags_horizontal = 6
size_flags_vertical = 0
theme_override_font_sizes/font_size = 70
text = "3D Multiplayer Template"
[node name="MainMenu" type="VBoxContainer" parent="MainContainer" unique_id=792964549]
layout_direction = 1
layout_mode = 2
size_flags_horizontal = 4
size_flags_vertical = 4
theme_override_constants/separation = 20
alignment = 1
[node name="HSeparator1" type="HSeparator" parent="MainContainer/MainMenu" unique_id=1429481219]
layout_mode = 2
theme_override_constants/separation = 10
theme_override_styles/separator = SubResource("StyleBoxLine_npnbc")
[node name="Option1" type="HBoxContainer" parent="MainContainer/MainMenu" unique_id=414194156]
layout_mode = 2
size_flags_horizontal = 4
size_flags_vertical = 4
alignment = 1
[node name="Label" type="Label" parent="MainContainer/MainMenu/Option1" unique_id=848326644]
layout_mode = 2
size_flags_horizontal = 4
theme_override_font_sizes/font_size = 35
text = "Nickname : "
[node name="NickInput" type="LineEdit" parent="MainContainer/MainMenu/Option1" unique_id=1087637066]
layout_mode = 2
theme_override_font_sizes/font_size = 35
placeholder_text = "YourNick"
max_length = 20
expand_to_text_length = true
[node name="Option2" type="HBoxContainer" parent="MainContainer/MainMenu" unique_id=1404573203]
layout_mode = 2
size_flags_vertical = 4
alignment = 1
[node name="Label" type="Label" parent="MainContainer/MainMenu/Option2" unique_id=1101934130]
layout_mode = 2
size_flags_horizontal = 4
theme_override_font_sizes/font_size = 35
text = "Player Skin : "
[node name="SkinInput" type="OptionButton" parent="MainContainer/MainMenu/Option2" unique_id=2039868006]
layout_mode = 2
size_flags_horizontal = 4
theme_override_font_sizes/font_size = 35
[node name="Option3" type="HBoxContainer" parent="MainContainer/MainMenu" unique_id=1469914367]
layout_mode = 2
size_flags_horizontal = 4
size_flags_vertical = 4
alignment = 1
[node name="Label" type="Label" parent="MainContainer/MainMenu/Option3" unique_id=492922165]
layout_mode = 2
size_flags_horizontal = 4
theme_override_font_sizes/font_size = 35
text = "IP Address : "
[node name="AddressInput" type="LineEdit" parent="MainContainer/MainMenu/Option3" unique_id=2119648065]
layout_mode = 2
theme_override_font_sizes/font_size = 35
placeholder_text = "127.0.0.1"
alignment = 1
expand_to_text_length = true
[node name="HSeparator2" type="HSeparator" parent="MainContainer/MainMenu" unique_id=1512408463]
layout_mode = 2
theme_override_constants/separation = 30
theme_override_styles/separator = SubResource("StyleBoxLine_npnbc")
[node name="Buttons" type="HBoxContainer" parent="MainContainer/MainMenu" unique_id=1105640710]
layout_mode = 2
theme_override_constants/separation = 30
alignment = 1
[node name="Host" type="Button" parent="MainContainer/MainMenu/Buttons" unique_id=18102936]
layout_mode = 2
mouse_default_cursor_shape = 2
theme_override_colors/font_pressed_color = Color(0.42, 0.62, 0.82, 1)
theme_override_colors/font_hover_color = Color(0.55, 0.75, 0.95, 1)
theme_override_font_sizes/font_size = 35
theme_override_styles/normal = SubResource("StyleBoxEmpty_button_normal")
theme_override_styles/hover = SubResource("StyleBoxFlat_button_hover")
theme_override_styles/pressed = SubResource("StyleBoxFlat_button_pressed")
theme_override_styles/focus = SubResource("StyleBoxEmpty_button_focus")
text = "HOST"
flat = true
[node name="Join" type="Button" parent="MainContainer/MainMenu/Buttons" unique_id=1615937929]
layout_mode = 2
mouse_default_cursor_shape = 2
theme_override_colors/font_pressed_color = Color(0.42, 0.62, 0.82, 1)
theme_override_colors/font_hover_color = Color(0.55, 0.75, 0.95, 1)
theme_override_font_sizes/font_size = 35
theme_override_styles/normal = SubResource("StyleBoxEmpty_button_normal")
theme_override_styles/hover = SubResource("StyleBoxFlat_button_hover")
theme_override_styles/pressed = SubResource("StyleBoxFlat_button_pressed")
theme_override_styles/focus = SubResource("StyleBoxEmpty_button_focus")
text = "JOIN"
flat = true
[node name="Option4" type="HBoxContainer" parent="MainContainer/MainMenu" unique_id=1327970814]
layout_mode = 2
size_flags_horizontal = 4
size_flags_vertical = 4
alignment = 1
[node name="Quit" type="Button" parent="MainContainer/MainMenu/Option4" unique_id=1022123460]
layout_mode = 2
mouse_default_cursor_shape = 2
theme_override_colors/font_pressed_color = Color(0.858824, 0, 0, 0.862745)
theme_override_colors/font_hover_color = Color(0.858807, 4.71681e-06, 1.15514e-06, 0.862745)
theme_override_font_sizes/font_size = 35
theme_override_styles/focus = SubResource("StyleBoxEmpty_button_focus")
text = "QUIT"
flat = true
[connection signal="pressed" from="MainContainer/MainMenu/Buttons/Host" to="." method="_on_host_pressed"]
[connection signal="pressed" from="MainContainer/MainMenu/Buttons/Join" to="." method="_on_join_pressed"]
[connection signal="pressed" from="MainContainer/MainMenu/Option4/Quit" to="." method="_on_quit_pressed"]
+76
View File
@@ -0,0 +1,76 @@
[gd_scene load_steps=3 format=3 uid="uid://ccencq0lcd3ph"]
[ext_resource type="Script" uid="uid://c8x9y2z1a3b4c5d6" path="res://scripts/ui/multiplayer_chat_ui.gd" id="1_h7x4v"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_input"]
content_margin_left = 10.0
content_margin_top = 6.0
content_margin_right = 10.0
content_margin_bottom = 6.0
bg_color = Color(0.055, 0.06, 0.07, 0.82)
border_width_left = 1
border_width_top = 1
border_width_right = 1
border_width_bottom = 1
border_color = Color(0.55, 0.58, 0.62, 0.45)
corner_radius_top_left = 6
corner_radius_top_right = 6
corner_radius_bottom_right = 6
corner_radius_bottom_left = 6
[node name="MultiplayerChatUI" type="Control"]
layout_mode = 3
anchors_preset = 0
anchor_top = 1.0
anchor_bottom = 1.0
offset_left = 16.0
offset_top = -284.0
offset_right = 496.0
offset_bottom = -16.0
grow_vertical = 0
mouse_filter = 2
script = ExtResource("1_h7x4v")
[node name="ChatLayout" type="VBoxContainer" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/separation = 8
mouse_filter = 2
[node name="Chat" type="RichTextLabel" parent="ChatLayout"]
layout_mode = 2
size_flags_vertical = 3
mouse_filter = 2
theme_override_colors/default_color = Color(0.96, 0.96, 0.96, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 0.95)
theme_override_colors/font_shadow_color = Color(0, 0, 0, 0.85)
theme_override_constants/outline_size = 4
theme_override_constants/shadow_offset_x = 2
theme_override_constants/shadow_offset_y = 2
theme_override_font_sizes/normal_font_size = 18
bbcode_enabled = true
scroll_active = false
vertical_alignment = 2
[node name="Message" type="LineEdit" parent="ChatLayout"]
custom_minimum_size = Vector2(0, 38)
layout_mode = 2
mouse_filter = 2
theme_override_colors/font_color = Color(1, 1, 1, 1)
theme_override_colors/font_placeholder_color = Color(0.72, 0.72, 0.72, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 0.9)
theme_override_constants/outline_size = 2
theme_override_font_sizes/font_size = 17
theme_override_styles/normal = SubResource("StyleBoxFlat_input")
theme_override_styles/focus = SubResource("StyleBoxFlat_input")
placeholder_text = "Say to all..."
max_length = 100
keep_editing_on_text_submit = true
[node name="FeedTimer" type="Timer" parent="."]
wait_time = 6.0
one_shot = true
+127
View File
@@ -0,0 +1,127 @@
[gd_scene load_steps=6 format=3]
[ext_resource type="Script" path="res://scripts/ui/pause_menu_ui.gd" id="2_script"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_panel"]
bg_color = Color(0.055, 0.06, 0.07, 0.82)
corner_radius_top_left = 6
corner_radius_top_right = 6
corner_radius_bottom_right = 6
corner_radius_bottom_left = 6
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_button_hover"]
content_margin_left = 10.0
content_margin_top = 4.0
content_margin_right = 10.0
content_margin_bottom = 4.0
bg_color = Color(0.22, 0.25, 0.29, 0.92)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_button_pressed"]
content_margin_left = 10.0
content_margin_top = 4.0
content_margin_right = 10.0
content_margin_bottom = 4.0
bg_color = Color(0.14, 0.16, 0.19, 0.96)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_button_focus"]
[node name="PauseMenuUI" type="Control"]
process_mode = 3
z_index = 100
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 0
script = ExtResource("2_script")
[node name="Overlay" 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, 0.58)
[node name="Panel" type="PanelContainer" parent="Overlay"]
custom_minimum_size = Vector2(360, 0)
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -180.0
offset_top = -178.0
offset_right = 180.0
offset_bottom = 178.0
grow_horizontal = 2
grow_vertical = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_panel")
[node name="MarginContainer" type="MarginContainer" parent="Overlay/Panel"]
layout_mode = 2
theme_override_constants/margin_left = 40
theme_override_constants/margin_top = 32
theme_override_constants/margin_right = 40
theme_override_constants/margin_bottom = 32
[node name="Buttons" type="VBoxContainer" parent="Overlay/Panel/MarginContainer"]
layout_mode = 2
theme_override_constants/separation = 24
alignment = 1
[node name="Title" type="Label" parent="Overlay/Panel/MarginContainer/Buttons"]
layout_mode = 2
theme_override_font_sizes/font_size = 52
text = "PAUSED"
horizontal_alignment = 1
[node name="Resume" type="Button" parent="Overlay/Panel/MarginContainer/Buttons"]
layout_mode = 2
mouse_default_cursor_shape = 2
theme_override_colors/font_hover_color = Color(0.55, 0.75, 0.95, 1)
theme_override_colors/font_pressed_color = Color(0.42, 0.62, 0.82, 1)
theme_override_font_sizes/font_size = 32
theme_override_styles/hover = SubResource("StyleBoxFlat_button_hover")
theme_override_styles/pressed = SubResource("StyleBoxFlat_button_pressed")
theme_override_styles/focus = SubResource("StyleBoxEmpty_button_focus")
text = "RESUME"
flat = true
[node name="MainMenu" type="Button" parent="Overlay/Panel/MarginContainer/Buttons"]
layout_mode = 2
mouse_default_cursor_shape = 2
theme_override_colors/font_hover_color = Color(0.55, 0.75, 0.95, 1)
theme_override_colors/font_pressed_color = Color(0.42, 0.62, 0.82, 1)
theme_override_font_sizes/font_size = 32
theme_override_styles/hover = SubResource("StyleBoxFlat_button_hover")
theme_override_styles/pressed = SubResource("StyleBoxFlat_button_pressed")
theme_override_styles/focus = SubResource("StyleBoxEmpty_button_focus")
text = "MAIN MENU"
flat = true
[node name="Quit" type="Button" parent="Overlay/Panel/MarginContainer/Buttons"]
layout_mode = 2
mouse_default_cursor_shape = 2
theme_override_colors/font_hover_color = Color(0.86, 0.1, 0.1, 1)
theme_override_colors/font_pressed_color = Color(0.86, 0.1, 0.1, 1)
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxEmpty_button_focus")
text = "QUIT"
flat = true
[connection signal="pressed" from="Overlay/Panel/MarginContainer/Buttons/Resume" to="." method="_on_resume_pressed"]
[connection signal="pressed" from="Overlay/Panel/MarginContainer/Buttons/MainMenu" to="." method="_on_main_menu_pressed"]
[connection signal="pressed" from="Overlay/Panel/MarginContainer/Buttons/Quit" to="." method="_on_quit_pressed"]
+105
View File
@@ -0,0 +1,105 @@
[gd_scene load_steps=4 format=3]
[ext_resource type="Script" path="res://scripts/ui/player_list_ui.gd" id="2_script"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_panel"]
bg_color = Color(0.055, 0.06, 0.07, 0.82)
border_width_left = 1
border_width_top = 1
border_width_right = 1
border_width_bottom = 1
border_color = Color(0.55, 0.58, 0.62, 0.45)
corner_radius_top_left = 6
corner_radius_top_right = 6
corner_radius_bottom_right = 6
corner_radius_bottom_left = 6
[sub_resource type="StyleBoxLine" id="StyleBoxLine_separator"]
color = Color(0.65, 0.68, 0.72, 0.42)
[node name="PlayerListUI" type="Control"]
z_index = 80
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
script = ExtResource("2_script")
[node name="SafeArea" type="MarginContainer" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/margin_left = 16
theme_override_constants/margin_top = 16
theme_override_constants/margin_right = 16
theme_override_constants/margin_bottom = 16
mouse_filter = 2
[node name="PositionContainer" type="Control" parent="SafeArea"]
layout_mode = 2
mouse_filter = 2
[node name="Panel" type="PanelContainer" parent="SafeArea/PositionContainer"]
layout_mode = 1
anchor_top = 0.2
anchor_bottom = 0.2
grow_vertical = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_panel")
mouse_filter = 2
[node name="MarginContainer" type="MarginContainer" parent="SafeArea/PositionContainer/Panel"]
layout_mode = 2
theme_override_constants/margin_left = 22
theme_override_constants/margin_top = 18
theme_override_constants/margin_right = 22
theme_override_constants/margin_bottom = 20
mouse_filter = 2
[node name="Content" type="VBoxContainer" parent="SafeArea/PositionContainer/Panel/MarginContainer"]
layout_mode = 2
theme_override_constants/separation = 8
mouse_filter = 2
[node name="Title" type="Label" parent="SafeArea/PositionContainer/Panel/MarginContainer/Content"]
layout_mode = 2
theme_override_colors/font_color = Color(0.95, 0.96, 0.97, 1)
theme_override_font_sizes/font_size = 26
text = "ONLINE PLAYERS"
horizontal_alignment = 1
[node name="Count" type="Label" parent="SafeArea/PositionContainer/Panel/MarginContainer/Content"]
layout_mode = 2
theme_override_colors/font_color = Color(0.65, 0.68, 0.72, 1)
theme_override_font_sizes/font_size = 15
text = "0 online"
horizontal_alignment = 1
[node name="HSeparator" type="HSeparator" parent="SafeArea/PositionContainer/Panel/MarginContainer/Content"]
layout_mode = 2
theme_override_styles/separator = SubResource("StyleBoxLine_separator")
[node name="PlayerScroll" type="ScrollContainer" parent="SafeArea/PositionContainer/Panel/MarginContainer/Content"]
custom_minimum_size = Vector2(0, 30)
layout_mode = 2
mouse_filter = 2
horizontal_scroll_mode = 0
vertical_scroll_mode = 1
[node name="Players" type="RichTextLabel" parent="SafeArea/PositionContainer/Panel/MarginContainer/Content/PlayerScroll"]
custom_minimum_size = Vector2(0, 30)
layout_mode = 2
size_flags_horizontal = 3
mouse_filter = 2
theme_override_colors/default_color = Color(0.92, 0.95, 0.93, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 0.8)
theme_override_constants/outline_size = 2
theme_override_font_sizes/normal_font_size = 18
bbcode_enabled = true
fit_content = true
scroll_active = false