Compare commits

..

No commits in common. "f1f56d52cd16f83bfb40684d977909fbb5e5d515" and "c3dd861e61b1a74bb47733c9c886d8fca48188e2" have entirely different histories.

14 changed files with 79 additions and 245 deletions

View File

@ -1,7 +1,8 @@
[gd_scene load_steps=6 format=3 uid="uid://ewovs6ns5y3k"]
[gd_scene load_steps=7 format=3 uid="uid://ewovs6ns5y3k"]
[ext_resource type="PackedScene" uid="uid://c6w0ivy4hetrl" path="res://assets/core/player-controller/scenes/player.tscn" id="2_q510b"]
[ext_resource type="PackedScene" uid="uid://dqymnaouq1mu2" path="res://assets/core/enviroment/dev-level/terrain.tscn" id="3_vcq2f"]
[ext_resource type="PackedScene" uid="uid://c7mtmmke1anxp" path="res://assets/core/ships/test-ship/test-ship.tscn" id="4_feinw"]
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_yg2er"]
sky_horizon_color = Color(0.64625, 0.65575, 0.67075, 1)
@ -26,7 +27,10 @@ transform = Transform3D(-0.866023, -0.433016, 0.250001, 0, 0.499998, 0.866027, -
shadow_enabled = true
[node name="Player" parent="." instance=ExtResource("2_q510b")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.02866, 27.0719, 0.35519)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 9.48712, 0)
joystick_camera_sens_multiplier = 5.0
[node name="TestShip" parent="." instance=ExtResource("4_feinw")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 6.24218, 9.05102, 0)
[node name="level" parent="." instance=ExtResource("3_vcq2f")]

View File

@ -1,36 +0,0 @@
[gd_scene load_steps=7 format=3 uid="uid://ewovs6ns5y3k"]
[ext_resource type="PackedScene" uid="uid://c6w0ivy4hetrl" path="res://assets/core/player-controller/scenes/player.tscn" id="2_q510b"]
[ext_resource type="PackedScene" uid="uid://dqymnaouq1mu2" path="res://assets/core/enviroment/dev-level/terrain.tscn" id="3_vcq2f"]
[ext_resource type="PackedScene" uid="uid://c7mtmmke1anxp" path="res://assets/core/ships/test-ship/test-ship.tscn" id="4_feinw"]
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_yg2er"]
sky_horizon_color = Color(0.64625, 0.65575, 0.67075, 1)
ground_horizon_color = Color(0.64625, 0.65575, 0.67075, 1)
[sub_resource type="Sky" id="Sky_roqfl"]
sky_material = SubResource("ProceduralSkyMaterial_yg2er")
[sub_resource type="Environment" id="Environment_nyust"]
background_mode = 2
sky = SubResource("Sky_roqfl")
tonemap_mode = 2
glow_enabled = true
[node name="DevLevel" type="Node3D"]
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
environment = SubResource("Environment_nyust")
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
transform = Transform3D(-0.866023, -0.433016, 0.250001, 0, 0.499998, 0.866027, -0.500003, 0.749999, -0.43301, 0, 0, 0)
shadow_enabled = true
[node name="Player" parent="." instance=ExtResource("2_q510b")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.02866, 60.1244, 0.35519)
joystick_camera_sens_multiplier = 5.0
[node name="level" parent="." instance=ExtResource("3_vcq2f")]
[node name="TestShip" parent="." instance=ExtResource("4_feinw")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 53.4883, 0)

View File

@ -1,36 +0,0 @@
[gd_scene load_steps=7 format=3 uid="uid://ewovs6ns5y3k"]
[ext_resource type="PackedScene" uid="uid://c6w0ivy4hetrl" path="res://assets/core/player-controller/scenes/player.tscn" id="2_q510b"]
[ext_resource type="PackedScene" uid="uid://dqymnaouq1mu2" path="res://assets/core/enviroment/dev-level/terrain.tscn" id="3_vcq2f"]
[ext_resource type="PackedScene" uid="uid://c7mtmmke1anxp" path="res://assets/core/ships/test-ship/test-ship.tscn" id="4_feinw"]
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_yg2er"]
sky_horizon_color = Color(0.64625, 0.65575, 0.67075, 1)
ground_horizon_color = Color(0.64625, 0.65575, 0.67075, 1)
[sub_resource type="Sky" id="Sky_roqfl"]
sky_material = SubResource("ProceduralSkyMaterial_yg2er")
[sub_resource type="Environment" id="Environment_nyust"]
background_mode = 2
sky = SubResource("Sky_roqfl")
tonemap_mode = 2
glow_enabled = true
[node name="DevLevel" type="Node3D"]
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
environment = SubResource("Environment_nyust")
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
transform = Transform3D(-0.866023, -0.433016, 0.250001, 0, 0.499998, 0.866027, -0.500003, 0.749999, -0.43301, 0, 0, 0)
shadow_enabled = true
[node name="Player" parent="." instance=ExtResource("2_q510b")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.02866, 60.1244, 0.35519)
joystick_camera_sens_multiplier = 5.0
[node name="level" parent="." instance=ExtResource("3_vcq2f")]
[node name="TestShip" parent="." instance=ExtResource("4_feinw")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 53.4883, 0)

View File

@ -12,7 +12,7 @@ shader_parameter/WallTexScale = 1.0
shader_parameter/WallColor = Color(0.662452, 0.662452, 0.662452, 1)
shader_parameter/TopTexScale = 1.005
shader_parameter/TopColor = Color(0.466181, 0.466181, 0.466181, 1)
shader_parameter/BlendValues = Vector4(3.12, -1.96, 0, 1.115)
shader_parameter/BlendValues = Vector4(3.045, -1.825, 0, 1.115)
shader_parameter/WallTex = ExtResource("4_c1a6l")
shader_parameter/TopTex = ExtResource("3_u3eue")
@ -20,7 +20,3 @@ shader_parameter/TopTex = ExtResource("3_u3eue")
[node name="Landscape" parent="." index="0"]
surface_material_override/0 = SubResource("ShaderMaterial_4w1dc")
[node name="StaticBody3D" parent="Landscape" index="0"]
collision_layer = 64
collision_mask = 143

View File

@ -3,11 +3,9 @@ class_name ShipHelm
extends Interactable
@export var parent_ship: Ship
@export var helm_lock_pos: Marker3D
var is_being_piloted: bool = false
func interact():
if !is_being_piloted:
player_reference.set_is_piloting(true)
@ -19,4 +17,3 @@ func interact():
print("set player to NOT piloting")
is_being_piloted = false
parent_ship.ship_is_piloted = false
GameConsole.log_debug("helm pilot state - " + str(is_being_piloted))

View File

@ -10,14 +10,16 @@ radius = 0.35
radius = 0.35
[node name="Player" type="CharacterBody3D" node_paths=PackedStringArray("camera")]
collision_mask = 243
script = ExtResource("1_bv7t4")
camera = NodePath("Neck/Camera3D")
[node name="PlayerTag" type="Label3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.26654, 0)
visibility_range_begin = 0.7
visibility_range_begin_margin = 14.0
visibility_range_end = 15.0
visibility_range_end_margin = 14.0
visibility_range_fade_mode = 1
billboard = 1
text = "username"

View File

@ -54,11 +54,9 @@ func _physics_process(delta: float) -> void:
if current_ship != null:
if !is_piloting:
velocity = walk(delta) + _gravity(delta) + _jump(delta)
global_basis = current_ship.global_basis
global_transform.basis = current_ship.global_transform.basis
else:
global_rotation.y = current_ship.global_rotation.y
global_rotation.y = current_ship.global_rotation.y
else:
velocity = walk(delta) + _gravity(delta) + _jump(delta)
@ -132,4 +130,3 @@ func player_exited_ship(ship_global_position: Vector3, ship: Ship):
func set_is_piloting(state: bool):
is_piloting = state
GameConsole.log_debug("player pilot state" + str(is_piloting))

View File

@ -1,79 +0,0 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://f7xy5w0gmpwj"
path="res://.godot/imported/airship_raft.glb-1a32b47e3a34d6fd0fa8ba18d05f8c1e.scn"
[deps]
source_file="res://assets/core/ships/test-ship/airship_raft.glb"
dest_files=["res://.godot/imported/airship_raft.glb-1a32b47e3a34d6fd0fa8ba18d05f8c1e.scn"]
[params]
nodes/root_type=""
nodes/root_name=""
nodes/apply_root_scale=true
nodes/root_scale=1.0
nodes/import_as_skeleton_bones=false
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=""
_subresources={
"materials": {
"@MATERIAL:1": {
"use_external/enabled": true,
"use_external/path": "res://assets/core/ships/test-ship/new_standard_material_3d.tres"
},
"Material": {
"use_external/enabled": true,
"use_external/path": "res://assets/core/ships/test-ship/new_standard_material_3d.tres"
}
},
"nodes": {
"PATH:balloon/StaticBody3D": {
"import/skip_import": true
},
"PATH:deck": {
"generate/physics": true,
"physics/layer": 16
},
"PATH:deck/StaticBody3D": {
"import/skip_import": true
},
"PATH:hull": {
"generate/physics": true,
"physics/layer": 16
},
"PATH:hull/StaticBody3D": {
"import/skip_import": true
},
"PATH:interior_floor": {
"generate/physics": true,
"physics/layer": 16
},
"PATH:interior_floor/StaticBody3D": {
"import/skip_import": true
},
"PATH:reference_man": {
"import/skip_import": true
},
"PATH:wheel/StaticBody3D": {
"import/skip_import": true
}
}
}
gltf/naming_version=1
gltf/embedded_image_handling=1

View File

@ -1,7 +0,0 @@
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://ctemnr3tq0iu0"]
[ext_resource type="Texture2D" uid="uid://gymb0tju4y67" path="res://addons/kennysprototypetextures/Dark/texture_black (1).png" id="1_bfgog"]
[resource]
albedo_texture = ExtResource("1_bfgog")
uv1_triplanar = true

View File

@ -1,59 +1,69 @@
[gd_scene load_steps=7 format=3 uid="uid://c7mtmmke1anxp"]
[gd_scene load_steps=8 format=3 uid="uid://c7mtmmke1anxp"]
[ext_resource type="Script" path="res://assets/core/ships/test-ship/test_ship.gd" id="1_yql7r"]
[ext_resource type="PackedScene" uid="uid://dm31ddavxv5gt" path="res://assets/core/interactables/ship-helm/ship-helm.tscn" id="3_3wdac"]
[ext_resource type="PackedScene" uid="uid://f7xy5w0gmpwj" path="res://assets/core/ships/test-ship/airship_raft.glb" id="3_h6lyp"]
[ext_resource type="Material" uid="uid://ctemnr3tq0iu0" path="res://assets/core/ships/test-ship/new_standard_material_3d.tres" id="4_hhywo"]
[ext_resource type="PackedScene" uid="uid://dm31ddavxv5gt" path="res://assets/core/interactables/ship-helm/ship-helm.tscn" id="2_bmsx0"]
[sub_resource type="BoxShape3D" id="BoxShape3D_kbheo"]
size = Vector3(12.0762, 9.20947, 45.9958)
[sub_resource type="BoxMesh" id="BoxMesh_tkeg5"]
size = Vector3(5, 0.25, 10)
[sub_resource type="BoxShape3D" id="BoxShape3D_6w3y5"]
size = Vector3(12.0762, 13.7578, 45.9553)
[sub_resource type="BoxShape3D" id="BoxShape3D_fs34p"]
size = Vector3(5, 0.25, 10)
[sub_resource type="CapsuleMesh" id="CapsuleMesh_oqio3"]
radius = 1.401
height = 7.405
[sub_resource type="BoxShape3D" id="BoxShape3D_7jr0u"]
size = Vector3(5.14063, 6.07324, 10.1924)
[sub_resource type="CylinderMesh" id="CylinderMesh_h3cm2"]
top_radius = 0.1
bottom_radius = 0.1
height = 4.5
[node name="TestShip" type="RigidBody3D" node_paths=PackedStringArray("ship_area", "ship_helm")]
collision_layer = 8
collision_mask = 72
mass = 800.0
gravity_scale = 0.0
script = ExtResource("1_yql7r")
ship_area = NodePath("Area3D")
ship_helm = NodePath("ShipHelm")
[node name="ShipHelm" parent="." node_paths=PackedStringArray("parent_ship", "helm_lock_pos") instance=ExtResource("3_3wdac")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.47976, -10.9455)
parent_ship = NodePath("..")
helm_lock_pos = NodePath("HelmLockPos")
[node name="HelmLockPos" type="Marker3D" parent="ShipHelm"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.345567, 1)
[node name="airship_raft" parent="." instance=ExtResource("3_h6lyp")]
[node name="hull" parent="airship_raft" index="0"]
surface_material_override/0 = ExtResource("4_hhywo")
[node name="wheel" parent="airship_raft" index="1"]
surface_material_override/0 = ExtResource("4_hhywo")
[node name="balloon" parent="airship_raft" index="2"]
surface_material_override/0 = ExtResource("4_hhywo")
[node name="deck" parent="airship_raft" index="3"]
surface_material_override/0 = ExtResource("4_hhywo")
[node name="interior_floor" parent="airship_raft" index="4"]
surface_material_override/0 = ExtResource("4_hhywo")
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
mesh = SubResource("BoxMesh_tkeg5")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -4.44604, -1.75908)
shape = SubResource("BoxShape3D_kbheo")
shape = SubResource("BoxShape3D_fs34p")
[node name="Balloon" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 5.12542, 0)
mesh = SubResource("CapsuleMesh_oqio3")
skeleton = NodePath("")
[node name="Area3D" type="Area3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -2.16844, -1.85111)
collision_layer = 32
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.99997, 0)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D"]
shape = SubResource("BoxShape3D_6w3y5")
shape = SubResource("BoxShape3D_7jr0u")
[editable path="airship_raft"]
[node name="MeshInstance3D2" type="MeshInstance3D" parent="."]
transform = Transform3D(0.866025, -0.5, 0, 0.5, 0.866025, 0, 0, 0, 1, 1.25913, 1.87582, 2.33493)
mesh = SubResource("CylinderMesh_h3cm2")
[node name="MeshInstance3D3" type="MeshInstance3D" parent="."]
transform = Transform3D(0.866025, 0.5, 0, -0.5, 0.866025, 0, 0, 0, 1, -1.2691, 1.87582, 2.33493)
mesh = SubResource("CylinderMesh_h3cm2")
[node name="MeshInstance3D4" type="MeshInstance3D" parent="."]
transform = Transform3D(0.866025, -0.5, 0, 0.5, 0.866025, 0, 0, 0, 1, 1.25913, 1.87582, -2.52429)
mesh = SubResource("CylinderMesh_h3cm2")
[node name="MeshInstance3D5" type="MeshInstance3D" parent="."]
transform = Transform3D(0.866025, 0.5, 0, -0.5, 0.866025, 0, 0, 0, 1, -1.2691, 1.87582, -2.52429)
mesh = SubResource("CylinderMesh_h3cm2")
[node name="ShipHelm" parent="." node_paths=PackedStringArray("parent_ship") instance=ExtResource("2_bmsx0")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.8, -0.598755)
parent_ship = NodePath("..")
[connection signal="body_entered" from="Area3D" to="." method="_on_area_3d_body_entered"]
[connection signal="body_exited" from="Area3D" to="." method="_on_area_3d_body_exited"]

View File

@ -4,7 +4,7 @@ extends RigidBody3D
@export var ship_area: Area3D
@export var ship_helm: ShipHelm
var ship_id: int = 0
var ship_id: String = "1a"
var ship_is_piloted: bool = false
var base_turn_speed: float = 1
var ship_lift_speed: float = 20 # Adjust this value as needed
@ -14,16 +14,6 @@ var ship_top_speed: float = 100
var current_speed: float = 0.0
var max_force: float = 1000.0
var piloting_player: Player = null
func _ready():
ship_area.body_entered.connect(_on_area_3d_body_entered)
ship_area.body_exited.connect(_on_area_3d_body_exited)
ship_id = randi_range(1000, 9999)
GameConsole.log_debug("Ship ID: " + str(ship_id))
func _physics_process(delta):
global_rotation.x = lerpf(global_rotation.x, 0, 0.01)
global_rotation.z = lerpf(global_rotation.z, 0, 0.01)
@ -49,25 +39,14 @@ func _physics_process(delta):
forward_force = forward_force.normalized() * min(forward_force.length(), max_force)
apply_central_force(forward_force)
if Input.is_action_pressed("crouch"):
apply_impulse(Vector3.DOWN * ship_lift_speed)
angular_velocity.y = clamp(angular_velocity.y, -0.5, 0.5)
if piloting_player != null and ship_helm.is_being_piloted:
piloting_player.global_position = ship_helm.helm_lock_pos.global_position
func _on_area_3d_body_entered(body):
if body is Player:
body.player_entered_ship(global_position, self)
piloting_player = body
print(self.name)
func _on_area_3d_body_exited(body):
if body is Player:
body.player_exited_ship(global_position, self)
ship_helm.is_being_piloted = false
piloting_player = null

9
assets/scenes/main.tscn Normal file
View File

@ -0,0 +1,9 @@
[gd_scene load_steps=2 format=3 uid="uid://huq7dxk5yvjk"]
[ext_resource type="Script" path="res://assets/core/networking/old/old_NetworkManager.gd" id="1_dcack"]
[node name="Main" type="Node"]
[node name="NetworkManager" type="Node" parent="."]
unique_name_in_owner = true
script = ExtResource("1_dcack")

View File

@ -137,12 +137,10 @@ interact={
[layer_names]
3d_physics/layer_1="players"
3d_physics/layer_2="entities"
3d_physics/layer_3="items"
3d_physics/layer_4="ship_to_ship"
3d_physics/layer_5="ship_to_player"
3d_physics/layer_6="ship_player_area"
3d_physics/layer_7="terrain"
3d_physics/layer_8="dynamic_objects"
3d_physics/layer_9="interactable_objects"
3d_render/layer_1="players"
3d_render/layer_2="entities"
3d_render/layer_3="ships"
3d_render/layer_4="items"
3d_render/layer_5="static_objects"
3d_render/layer_6="dynamic_objects"
3d_render/layer_7="interactable_objects"