Add modular holdover fishing world
This commit is contained in:
parent
6a5923fdb8
commit
a91f2b9825
17 changed files with 1354 additions and 191 deletions
140
world/regions/coastal_dock_region.tscn
Normal file
140
world/regions/coastal_dock_region.tscn
Normal file
|
|
@ -0,0 +1,140 @@
|
|||
[gd_scene load_steps=21 format=3]
|
||||
|
||||
[ext_resource type="Script" path="res://world/regions/graybox_region.gd" id="1_region"]
|
||||
[ext_resource type="Script" path="res://world/fishable_water_region.gd" id="2_water"]
|
||||
[ext_resource type="Resource" path="res://fish/pools/test_water_pool.tres" id="3_pool"]
|
||||
[ext_resource type="Script" path="res://world/player_water_trigger.gd" id="4_trigger"]
|
||||
[ext_resource type="Script" path="res://world/safe_respawn_point.gd" id="5_safe"]
|
||||
|
||||
[sub_resource type="BoxShape3D" id="ShoreShape"]
|
||||
size = Vector3(90, 6, 18)
|
||||
[sub_resource type="BoxMesh" id="ShoreMesh"]
|
||||
size = Vector3(90, 6, 18)
|
||||
[sub_resource type="BoxShape3D" id="DockShape"]
|
||||
size = Vector3(7, 0.4, 25)
|
||||
[sub_resource type="BoxMesh" id="DockMesh"]
|
||||
size = Vector3(7, 0.4, 25)
|
||||
[sub_resource type="BoxShape3D" id="DockRampShape"]
|
||||
size = Vector3(7, 0.35, 4)
|
||||
[sub_resource type="BoxMesh" id="DockRampMesh"]
|
||||
size = Vector3(7, 0.35, 4)
|
||||
[sub_resource type="CylinderMesh" id="TowerMesh"]
|
||||
top_radius = 2.4
|
||||
bottom_radius = 3.4
|
||||
height = 13
|
||||
[sub_resource type="CylinderMesh" id="BeaconMesh"]
|
||||
top_radius = 1.4
|
||||
bottom_radius = 1.4
|
||||
height = 2.5
|
||||
[sub_resource type="BoxMesh" id="CraneArmMesh"]
|
||||
size = Vector3(1, 1, 10)
|
||||
[sub_resource type="PlaneMesh" id="WaterMesh"]
|
||||
size = Vector2(90, 54)
|
||||
[sub_resource type="BoxShape3D" id="WaterShape"]
|
||||
size = Vector3(90, 0.2, 54)
|
||||
[sub_resource type="BoxShape3D" id="RecoveryShape"]
|
||||
size = Vector3(90, 5, 54)
|
||||
[sub_resource type="StandardMaterial3D" id="ShoreMaterial"]
|
||||
albedo_color = Color(0.7, 0.66, 0.5, 1)
|
||||
[sub_resource type="StandardMaterial3D" id="DockMaterial"]
|
||||
albedo_color = Color(0.58, 0.4, 0.2, 1)
|
||||
[sub_resource type="StandardMaterial3D" id="TowerMaterial"]
|
||||
albedo_color = Color(0.92, 0.9, 0.76, 1)
|
||||
[sub_resource type="StandardMaterial3D" id="BeaconMaterial"]
|
||||
albedo_color = Color(0.95, 0.28, 0.22, 1)
|
||||
[sub_resource type="StandardMaterial3D" id="WaterMaterial"]
|
||||
transparency = 1
|
||||
albedo_color = Color(0.04, 0.3, 0.62, 0.84)
|
||||
|
||||
[node name="CoastalDockRegion" type="Node3D"]
|
||||
script = ExtResource("1_region")
|
||||
region_id = &"coast"
|
||||
[node name="Visuals" type="Node3D" parent="."]
|
||||
[node name="Shore" type="MeshInstance3D" parent="Visuals"]
|
||||
position = Vector3(0, -3, 22)
|
||||
mesh = SubResource("ShoreMesh")
|
||||
material_override = SubResource("ShoreMaterial")
|
||||
[node name="Ocean" type="MeshInstance3D" parent="Visuals"]
|
||||
position = Vector3(0, 0.2, -14)
|
||||
mesh = SubResource("WaterMesh")
|
||||
material_override = SubResource("WaterMaterial")
|
||||
[node name="MainDock" type="MeshInstance3D" parent="Visuals"]
|
||||
position = Vector3(0, 0.45, -3.5)
|
||||
mesh = SubResource("DockMesh")
|
||||
material_override = SubResource("DockMaterial")
|
||||
[node name="DockApproachRamp" type="MeshInstance3D" parent="Visuals"]
|
||||
position = Vector3(0, 0.155, 11)
|
||||
rotation_degrees = Vector3(9, 0, 0)
|
||||
mesh = SubResource("DockRampMesh")
|
||||
material_override = SubResource("DockMaterial")
|
||||
[node name="Lighthouse" type="MeshInstance3D" parent="Visuals"]
|
||||
position = Vector3(-32, 6.5, 20)
|
||||
mesh = SubResource("TowerMesh")
|
||||
material_override = SubResource("TowerMaterial")
|
||||
[node name="Beacon" type="MeshInstance3D" parent="Visuals"]
|
||||
position = Vector3(-32, 14, 20)
|
||||
mesh = SubResource("BeaconMesh")
|
||||
material_override = SubResource("BeaconMaterial")
|
||||
[node name="CraneArm" type="MeshInstance3D" parent="Visuals"]
|
||||
position = Vector3(17, 5, 19)
|
||||
rotation_degrees = Vector3(0, 0, 60)
|
||||
mesh = SubResource("CraneArmMesh")
|
||||
material_override = SubResource("BeaconMaterial")
|
||||
[node name="CoastLabel" type="Label3D" parent="Visuals"]
|
||||
position = Vector3(25, 3.2, 23)
|
||||
text = "COAST"
|
||||
font_size = 38
|
||||
outline_size = 8
|
||||
billboard = 1
|
||||
no_depth_test = true
|
||||
|
||||
[node name="StaticCollision" type="Node3D" parent="."]
|
||||
[node name="Shore" type="StaticBody3D" parent="StaticCollision"]
|
||||
[node name="Shape" type="CollisionShape3D" parent="StaticCollision/Shore"]
|
||||
position = Vector3(0, -3, 22)
|
||||
shape = SubResource("ShoreShape")
|
||||
[node name="MainDock" type="StaticBody3D" parent="StaticCollision"]
|
||||
[node name="Shape" type="CollisionShape3D" parent="StaticCollision/MainDock"]
|
||||
position = Vector3(0, 0.45, -3.5)
|
||||
shape = SubResource("DockShape")
|
||||
[node name="DockApproachRamp" type="StaticBody3D" parent="StaticCollision"]
|
||||
[node name="Shape" type="CollisionShape3D" parent="StaticCollision/DockApproachRamp"]
|
||||
position = Vector3(0, 0.155, 11)
|
||||
rotation_degrees = Vector3(9, 0, 0)
|
||||
shape = SubResource("DockRampShape")
|
||||
|
||||
[node name="FishingWater" type="Node3D" parent="."]
|
||||
[node name="CoastalWater" type="Area3D" parent="FishingWater"]
|
||||
position = Vector3(0, 0.2, -14)
|
||||
collision_layer = 4
|
||||
collision_mask = 0
|
||||
monitoring = false
|
||||
script = ExtResource("2_water")
|
||||
location_tags = Array[StringName]([&"coast"])
|
||||
fish_pool = ExtResource("3_pool")
|
||||
[node name="Shape" type="CollisionShape3D" parent="FishingWater/CoastalWater"]
|
||||
shape = SubResource("WaterShape")
|
||||
|
||||
[node name="WaterRecovery" type="Node3D" parent="."]
|
||||
[node name="CoastalRecovery" type="Area3D" parent="WaterRecovery"]
|
||||
position = Vector3(0, -2.3, -14)
|
||||
collision_layer = 8
|
||||
collision_mask = 2
|
||||
script = ExtResource("4_trigger")
|
||||
surface_height = 0.2
|
||||
[node name="Shape" type="CollisionShape3D" parent="WaterRecovery/CoastalRecovery"]
|
||||
shape = SubResource("RecoveryShape")
|
||||
|
||||
[node name="SafeRespawns" type="Node3D" parent="."]
|
||||
[node name="DockApproach" type="Marker3D" parent="SafeRespawns"]
|
||||
position = Vector3(8, 0.58, 23)
|
||||
rotation_degrees = Vector3(0, 180, 0)
|
||||
script = ExtResource("5_safe")
|
||||
[node name="DockMidpoint" type="Marker3D" parent="SafeRespawns"]
|
||||
position = Vector3(0, 1.23, 0)
|
||||
rotation_degrees = Vector3(0, 180, 0)
|
||||
script = ExtResource("5_safe")
|
||||
[node name="LighthouseShore" type="Marker3D" parent="SafeRespawns"]
|
||||
position = Vector3(-24, 0.58, 24)
|
||||
rotation_degrees = Vector3(0, -135, 0)
|
||||
script = ExtResource("5_safe")
|
||||
Loading…
Add table
Add a link
Reference in a new issue