Compare commits
No commits in common. "b7442f9efa8a73e66f22ff49fbe20fd782844fff" and "8465f2eadb0ad06fb9685eff57e93a65221e3052" have entirely different histories.
b7442f9efa
...
8465f2eadb
26 changed files with 105 additions and 432 deletions
Binary file not shown.
Binary file not shown.
7
godot/Holster.gd
Normal file
7
godot/Holster.gd
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
extends Node3D
|
||||||
|
|
||||||
|
func _ready():
|
||||||
|
set_as_top_level(true)
|
||||||
|
|
||||||
|
func _process(delta):
|
||||||
|
global_transform.origin = $"../grape_man".get_pickup_bone_location()
|
|
@ -3,10 +3,10 @@
|
||||||
[ext_resource type="PackedScene" uid="uid://d2d4uv7o5gx5p" path="res://Level/World/screen_shader.tscn" id="1_huyen"]
|
[ext_resource type="PackedScene" uid="uid://d2d4uv7o5gx5p" path="res://Level/World/screen_shader.tscn" id="1_huyen"]
|
||||||
[ext_resource type="PackedScene" uid="uid://b35w4hlh4n1jt" path="res://Level/World/world_environment.tscn" id="2_lerrn"]
|
[ext_resource type="PackedScene" uid="uid://b35w4hlh4n1jt" path="res://Level/World/world_environment.tscn" id="2_lerrn"]
|
||||||
[ext_resource type="PackedScene" uid="uid://d3ccrfjpg4hbv" path="res://Models/palm_curved.tscn" id="3_bth2b"]
|
[ext_resource type="PackedScene" uid="uid://d3ccrfjpg4hbv" path="res://Models/palm_curved.tscn" id="3_bth2b"]
|
||||||
[ext_resource type="PackedScene" uid="uid://c1n2lfcn4rkx7" path="res://Models/palm_default.tscn" id="4_2cnue"]
|
[ext_resource type="PackedScene" path="res://Models/palm_default.tscn" id="4_2cnue"]
|
||||||
[ext_resource type="PackedScene" uid="uid://ctbyl0qbks4k6" path="res://Models/ocean.tscn" id="4_dey2i"]
|
[ext_resource type="PackedScene" uid="uid://ctbyl0qbks4k6" path="res://Models/ocean.tscn" id="4_dey2i"]
|
||||||
[ext_resource type="PackedScene" uid="uid://difi2tur2j4dg" path="res://Models/island.tscn" id="4_lq6cy"]
|
[ext_resource type="PackedScene" uid="uid://difi2tur2j4dg" path="res://Models/island.tscn" id="4_lq6cy"]
|
||||||
[ext_resource type="PackedScene" uid="uid://hg1yr5rnxd47" path="res://Models/palm_young.tscn" id="5_prlw2"]
|
[ext_resource type="PackedScene" path="res://Models/palm_young.tscn" id="5_prlw2"]
|
||||||
[ext_resource type="PackedScene" uid="uid://ce7jbp7f55cro" path="res://Models/buildings/building_1.tscn" id="8_6qbns"]
|
[ext_resource type="PackedScene" uid="uid://ce7jbp7f55cro" path="res://Models/buildings/building_1.tscn" id="8_6qbns"]
|
||||||
[ext_resource type="PackedScene" uid="uid://cx44bjuxlhq06" path="res://Models/buildings/building_2.tscn" id="9_maqyx"]
|
[ext_resource type="PackedScene" uid="uid://cx44bjuxlhq06" path="res://Models/buildings/building_2.tscn" id="9_maqyx"]
|
||||||
[ext_resource type="PackedScene" uid="uid://bm65tvb4irjqw" path="res://Models/buildings/building_3.tscn" id="10_j7nf7"]
|
[ext_resource type="PackedScene" uid="uid://bm65tvb4irjqw" path="res://Models/buildings/building_3.tscn" id="10_j7nf7"]
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,6 +1,7 @@
|
||||||
extends Node3D
|
extends Node3D
|
||||||
|
|
||||||
@onready var animation: AnimationNodeStateMachinePlayback = $AnimationTree.get("parameters/playback")
|
@onready var animation: AnimationNodeStateMachinePlayback = $AnimationTree.get("parameters/playback")
|
||||||
|
@onready var pickup_bone_idx = $rig/Skeleton3D.find_bone("PickupBone")
|
||||||
|
|
||||||
signal anim_check_grab(position: Vector3)
|
signal anim_check_grab(position: Vector3)
|
||||||
|
|
||||||
|
@ -28,8 +29,12 @@ func idle_hold():
|
||||||
animation.travel("IdleHold")
|
animation.travel("IdleHold")
|
||||||
|
|
||||||
func animation_key_grab():
|
func animation_key_grab():
|
||||||
emit_signal("anim_check_grab", $GrabPointLocation.global_transform)
|
emit_signal("anim_check_grab", get_pickup_bone_location())
|
||||||
|
|
||||||
|
func get_pickup_bone_location() -> Vector3:
|
||||||
|
var trans = $rig/Skeleton3D.global_transform * $rig/Skeleton3D.get_bone_global_pose(pickup_bone_idx)
|
||||||
|
return trans.origin
|
||||||
|
|
||||||
func animation_key_pickup_completed():
|
func animation_key_pickup_completed():
|
||||||
pickup_animation_in_progress = false
|
pickup_animation_in_progress = false
|
||||||
emit_signal("pickup_animation_finished")
|
emit_signal("pickup_animation_finished")
|
||||||
|
|
BIN
godot/Models/grape_man.glb
(Stored with Git LFS)
BIN
godot/Models/grape_man.glb
(Stored with Git LFS)
Binary file not shown.
|
@ -5430,7 +5430,7 @@ _subresources={
|
||||||
"UpperBodyIdle": {
|
"UpperBodyIdle": {
|
||||||
"save_to_file/enabled": true,
|
"save_to_file/enabled": true,
|
||||||
"save_to_file/keep_custom_tracks": true,
|
"save_to_file/keep_custom_tracks": true,
|
||||||
"save_to_file/path": "res://Models/grape_animations/upper_body_idle.res.res",
|
"save_to_file/path": "res://Models/grape_animations/upper_body_idle.res",
|
||||||
"settings/loop_mode": 0,
|
"settings/loop_mode": 0,
|
||||||
"slice_1/end_frame": 0,
|
"slice_1/end_frame": 0,
|
||||||
"slice_1/loop_mode": 0,
|
"slice_1/loop_mode": 0,
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
[ext_resource type="Script" path="res://Models/grape_man.gd" id="2_ksje8"]
|
[ext_resource type="Script" path="res://Models/grape_man.gd" id="2_ksje8"]
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAdd2" id="AnimationNodeAdd2_a0vxm"]
|
[sub_resource type="AnimationNodeAdd2" id="AnimationNodeAdd2_a0vxm"]
|
||||||
filter_enabled = true
|
|
||||||
filters = ["rig/Skeleton3D:forearm.L", "rig/Skeleton3D:forearm.R", "rig/Skeleton3D:head", "rig/Skeleton3D:upper_arm.L", "rig/Skeleton3D:upper_arm.R"]
|
filters = ["rig/Skeleton3D:forearm.L", "rig/Skeleton3D:forearm.R", "rig/Skeleton3D:head", "rig/Skeleton3D:upper_arm.L", "rig/Skeleton3D:upper_arm.R"]
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_s8uqe"]
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_s8uqe"]
|
||||||
|
@ -14,7 +13,7 @@ animation = &"UpperBodyIdle"
|
||||||
animation = &"Idle"
|
animation = &"Idle"
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_ojr1k"]
|
[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_ojr1k"]
|
||||||
graph_offset = Vector2(-312, -69)
|
graph_offset = Vector2(-74, 44)
|
||||||
nodes/Add2/node = SubResource("AnimationNodeAdd2_a0vxm")
|
nodes/Add2/node = SubResource("AnimationNodeAdd2_a0vxm")
|
||||||
nodes/Add2/position = Vector2(160, 80)
|
nodes/Add2/position = Vector2(160, 80)
|
||||||
nodes/Animation/node = SubResource("AnimationNodeAnimation_4ft7i")
|
nodes/Animation/node = SubResource("AnimationNodeAnimation_4ft7i")
|
||||||
|
@ -24,7 +23,6 @@ nodes/Animation/position = Vector2(0, 80)
|
||||||
node_connections = [&"output", 0, &"Add2", &"Add2", 0, &"Animation", &"Add2", 1, &"Animation 2"]
|
node_connections = [&"output", 0, &"Add2", &"Add2", 0, &"Animation", &"Add2", 1, &"Animation 2"]
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAdd2" id="AnimationNodeAdd2_4gk6k"]
|
[sub_resource type="AnimationNodeAdd2" id="AnimationNodeAdd2_4gk6k"]
|
||||||
filter_enabled = true
|
|
||||||
filters = ["rig/Skeleton3D:forearm.L", "rig/Skeleton3D:forearm.R", "rig/Skeleton3D:head", "rig/Skeleton3D:upper_arm.L", "rig/Skeleton3D:upper_arm.R"]
|
filters = ["rig/Skeleton3D:forearm.L", "rig/Skeleton3D:forearm.R", "rig/Skeleton3D:head", "rig/Skeleton3D:upper_arm.L", "rig/Skeleton3D:upper_arm.R"]
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_alnh1"]
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_alnh1"]
|
||||||
|
@ -48,7 +46,6 @@ node_connections = [&"output", 0, &"Add2", &"Add2", 0, &"Animation", &"Add2", 1,
|
||||||
animation = &"Pickup"
|
animation = &"Pickup"
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAdd2" id="AnimationNodeAdd2_rd6bn"]
|
[sub_resource type="AnimationNodeAdd2" id="AnimationNodeAdd2_rd6bn"]
|
||||||
filter_enabled = true
|
|
||||||
filters = ["rig/Skeleton3D:forearm.L", "rig/Skeleton3D:forearm.R", "rig/Skeleton3D:head", "rig/Skeleton3D:upper_arm.L", "rig/Skeleton3D:upper_arm.R"]
|
filters = ["rig/Skeleton3D:forearm.L", "rig/Skeleton3D:forearm.R", "rig/Skeleton3D:head", "rig/Skeleton3D:upper_arm.L", "rig/Skeleton3D:upper_arm.R"]
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_7s7tg"]
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_7s7tg"]
|
||||||
|
@ -58,7 +55,7 @@ animation = &"UpperBodyIdle"
|
||||||
animation = &"Walk"
|
animation = &"Walk"
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_6rmmo"]
|
[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_6rmmo"]
|
||||||
graph_offset = Vector2(-358.186, -79.7423)
|
graph_offset = Vector2(-384.186, 6.2577)
|
||||||
nodes/Add2/node = SubResource("AnimationNodeAdd2_rd6bn")
|
nodes/Add2/node = SubResource("AnimationNodeAdd2_rd6bn")
|
||||||
nodes/Add2/position = Vector2(140, 80)
|
nodes/Add2/position = Vector2(140, 80)
|
||||||
nodes/Animation/node = SubResource("AnimationNodeAnimation_ir63n")
|
nodes/Animation/node = SubResource("AnimationNodeAnimation_ir63n")
|
||||||
|
@ -68,7 +65,6 @@ nodes/Animation/position = Vector2(-40, 60)
|
||||||
node_connections = [&"output", 0, &"Add2", &"Add2", 0, &"Animation", &"Add2", 1, &"Animation 2"]
|
node_connections = [&"output", 0, &"Add2", &"Add2", 0, &"Animation", &"Add2", 1, &"Animation 2"]
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAdd2" id="AnimationNodeAdd2_sv87c"]
|
[sub_resource type="AnimationNodeAdd2" id="AnimationNodeAdd2_sv87c"]
|
||||||
filter_enabled = true
|
|
||||||
filters = ["rig/Skeleton3D:forearm.L", "rig/Skeleton3D:forearm.R", "rig/Skeleton3D:head", "rig/Skeleton3D:upper_arm.L", "rig/Skeleton3D:upper_arm.R"]
|
filters = ["rig/Skeleton3D:forearm.L", "rig/Skeleton3D:forearm.R", "rig/Skeleton3D:head", "rig/Skeleton3D:upper_arm.L", "rig/Skeleton3D:upper_arm.R"]
|
||||||
|
|
||||||
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_y7bu0"]
|
[sub_resource type="AnimationNodeAnimation" id="AnimationNodeAnimation_y7bu0"]
|
||||||
|
@ -147,14 +143,14 @@ states/WalkEmpty/position = Vector2(548, 208)
|
||||||
states/WalkHold/node = SubResource("AnimationNodeBlendTree_kalnq")
|
states/WalkHold/node = SubResource("AnimationNodeBlendTree_kalnq")
|
||||||
states/WalkHold/position = Vector2(351, 323)
|
states/WalkHold/position = Vector2(351, 323)
|
||||||
transitions = ["Start", "IdleEmpty", SubResource("AnimationNodeStateMachineTransition_8sw6d"), "IdleEmpty", "WalkHold", SubResource("AnimationNodeStateMachineTransition_71rn8"), "WalkHold", "IdleEmpty", SubResource("AnimationNodeStateMachineTransition_cp7lp"), "WalkEmpty", "IdleEmpty", SubResource("AnimationNodeStateMachineTransition_27n2r"), "IdleEmpty", "WalkEmpty", SubResource("AnimationNodeStateMachineTransition_v26jl"), "IdleHold", "WalkHold", SubResource("AnimationNodeStateMachineTransition_u0rau"), "IdleHold", "WalkEmpty", SubResource("AnimationNodeStateMachineTransition_1hqga"), "WalkEmpty", "IdleHold", SubResource("AnimationNodeStateMachineTransition_uekhs"), "WalkHold", "IdleHold", SubResource("AnimationNodeStateMachineTransition_652wi"), "IdleEmpty", "Pickup", SubResource("AnimationNodeStateMachineTransition_sdgve"), "Pickup", "IdleEmpty", SubResource("AnimationNodeStateMachineTransition_otprv"), "IdleEmpty", "IdleHold", SubResource("AnimationNodeStateMachineTransition_fbwhh"), "IdleHold", "IdleEmpty", SubResource("AnimationNodeStateMachineTransition_4rq7a"), "WalkHold", "WalkEmpty", SubResource("AnimationNodeStateMachineTransition_oange"), "WalkEmpty", "WalkHold", SubResource("AnimationNodeStateMachineTransition_et4tx"), "Pickup", "IdleHold", SubResource("AnimationNodeStateMachineTransition_y2dr5")]
|
transitions = ["Start", "IdleEmpty", SubResource("AnimationNodeStateMachineTransition_8sw6d"), "IdleEmpty", "WalkHold", SubResource("AnimationNodeStateMachineTransition_71rn8"), "WalkHold", "IdleEmpty", SubResource("AnimationNodeStateMachineTransition_cp7lp"), "WalkEmpty", "IdleEmpty", SubResource("AnimationNodeStateMachineTransition_27n2r"), "IdleEmpty", "WalkEmpty", SubResource("AnimationNodeStateMachineTransition_v26jl"), "IdleHold", "WalkHold", SubResource("AnimationNodeStateMachineTransition_u0rau"), "IdleHold", "WalkEmpty", SubResource("AnimationNodeStateMachineTransition_1hqga"), "WalkEmpty", "IdleHold", SubResource("AnimationNodeStateMachineTransition_uekhs"), "WalkHold", "IdleHold", SubResource("AnimationNodeStateMachineTransition_652wi"), "IdleEmpty", "Pickup", SubResource("AnimationNodeStateMachineTransition_sdgve"), "Pickup", "IdleEmpty", SubResource("AnimationNodeStateMachineTransition_otprv"), "IdleEmpty", "IdleHold", SubResource("AnimationNodeStateMachineTransition_fbwhh"), "IdleHold", "IdleEmpty", SubResource("AnimationNodeStateMachineTransition_4rq7a"), "WalkHold", "WalkEmpty", SubResource("AnimationNodeStateMachineTransition_oange"), "WalkEmpty", "WalkHold", SubResource("AnimationNodeStateMachineTransition_et4tx"), "Pickup", "IdleHold", SubResource("AnimationNodeStateMachineTransition_y2dr5")]
|
||||||
graph_offset = Vector2(26, 89)
|
graph_offset = Vector2(3, 172)
|
||||||
|
|
||||||
[node name="grape_man" instance=ExtResource("1_fh5yr")]
|
[node name="grape_man" instance=ExtResource("1_fh5yr")]
|
||||||
transform = Transform3D(0.065, 0, 0, 0, 0.065, 0, 0, 0, 0.065, 0, 0, 0)
|
transform = Transform3D(0.065, 0, 0, 0, 0.065, 0, 0, 0, 0.065, 0, 0, 0)
|
||||||
script = ExtResource("2_ksje8")
|
script = ExtResource("2_ksje8")
|
||||||
|
|
||||||
[node name="Skeleton3D" parent="rig" index="0"]
|
[node name="Skeleton3D" parent="rig" index="0"]
|
||||||
bones/0/rotation = Quaternion(0.0897714, 0, 0, 0.995962)
|
bones/0/rotation = Quaternion(0.0970975, 0, 0, 0.995275)
|
||||||
bones/1/rotation = Quaternion(-0.0891896, 1.18734e-07, -1.06322e-08, 0.996015)
|
bones/1/rotation = Quaternion(-0.0891896, 1.18734e-07, -1.06322e-08, 0.996015)
|
||||||
bones/2/rotation = Quaternion(0.0133933, -1.19199e-07, 1.5966e-09, 0.99991)
|
bones/2/rotation = Quaternion(0.0133933, -1.19199e-07, 1.5966e-09, 0.99991)
|
||||||
bones/3/rotation = Quaternion(-0.00997737, 0.100365, -0.694951, 0.711948)
|
bones/3/rotation = Quaternion(-0.00997737, 0.100365, -0.694951, 0.711948)
|
||||||
|
@ -167,13 +163,10 @@ bones/7/rotation = Quaternion(0.0142813, -6.34259e-18, -4.44044e-16, 0.999898)
|
||||||
bones/10/rotation = Quaternion(0.105246, 0.0039338, -0.0113526, 0.994374)
|
bones/10/rotation = Quaternion(0.105246, 0.0039338, -0.0113526, 0.994374)
|
||||||
bones/15/rotation = Quaternion(0.105246, -0.0039338, 0.0113526, 0.994374)
|
bones/15/rotation = Quaternion(0.105246, -0.0039338, 0.0113526, 0.994374)
|
||||||
|
|
||||||
[node name="GrabPointLocation" type="Node3D" parent="." index="2"]
|
[node name="OmniLight3D" type="OmniLight3D" parent="." index="2"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1.29365)
|
|
||||||
|
|
||||||
[node name="OmniLight3D" type="OmniLight3D" parent="." index="3"]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.289473, 8.26292, 4.26359)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.289473, 8.26292, 4.26359)
|
||||||
|
|
||||||
[node name="AnimationTree" type="AnimationTree" parent="." index="4"]
|
[node name="AnimationTree" type="AnimationTree" parent="." index="3"]
|
||||||
tree_root = SubResource("AnimationNodeStateMachine_6mfdu")
|
tree_root = SubResource("AnimationNodeStateMachine_6mfdu")
|
||||||
anim_player = NodePath("../AnimationPlayer")
|
anim_player = NodePath("../AnimationPlayer")
|
||||||
active = true
|
active = true
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
extends CharacterBody3D
|
extends CharacterBody3D
|
||||||
|
|
||||||
|
|
||||||
const SPEED = 5.0
|
const SPEED = 5.0
|
||||||
const JUMP_VELOCITY = 4.5
|
const JUMP_VELOCITY = 4.5
|
||||||
@export var horiz_sens = 0.25
|
@export var horiz_sens = 0.25
|
||||||
|
@ -17,6 +16,7 @@ func _ready():
|
||||||
$CameraMount.global_rotation.x = clampf($CameraMount.global_rotation.x, deg_to_rad(-60), deg_to_rad(-11))
|
$CameraMount.global_rotation.x = clampf($CameraMount.global_rotation.x, deg_to_rad(-60), deg_to_rad(-11))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
func _process(_delta):
|
func _process(_delta):
|
||||||
# Brings your mouse out of the window if you press escape. Add pause screen function here?
|
# Brings your mouse out of the window if you press escape. Add pause screen function here?
|
||||||
if Input.is_action_pressed("ui_cancel"):
|
if Input.is_action_pressed("ui_cancel"):
|
||||||
|
@ -26,6 +26,7 @@ func _process(_delta):
|
||||||
func _input(event):
|
func _input(event):
|
||||||
# Handle the rotation of the camera using mouse movement.
|
# Handle the rotation of the camera using mouse movement.
|
||||||
if event is InputEventMouseMotion:
|
if event is InputEventMouseMotion:
|
||||||
|
# Side to side, first player object then player visuals.
|
||||||
rotate_y(deg_to_rad(-event.relative.x * horiz_sens))
|
rotate_y(deg_to_rad(-event.relative.x * horiz_sens))
|
||||||
$CameraMount.rotate_x(deg_to_rad(-event.relative.y * vert_sens))
|
$CameraMount.rotate_x(deg_to_rad(-event.relative.y * vert_sens))
|
||||||
$grape_man.rotate_y(deg_to_rad(event.relative.x * horiz_sens))
|
$grape_man.rotate_y(deg_to_rad(event.relative.x * horiz_sens))
|
||||||
|
|
Binary file not shown.
|
@ -1,24 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="wav"
|
|
||||||
type="AudioStreamWAV"
|
|
||||||
uid="uid://dg35jx6svmrj2"
|
|
||||||
path="res://.godot/imported/SlimeParty.wav-3a5ca824380a5317a9f053c836f3f093.sample"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Sounds/SlimeParty.wav"
|
|
||||||
dest_files=["res://.godot/imported/SlimeParty.wav-3a5ca824380a5317a9f053c836f3f093.sample"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
force/8_bit=false
|
|
||||||
force/mono=false
|
|
||||||
force/max_rate=false
|
|
||||||
force/max_rate_hz=44100
|
|
||||||
edit/trim=false
|
|
||||||
edit/normalize=false
|
|
||||||
edit/loop_mode=0
|
|
||||||
edit/loop_begin=0
|
|
||||||
edit/loop_end=-1
|
|
||||||
compress/mode=0
|
|
Binary file not shown.
|
@ -1,24 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="wav"
|
|
||||||
type="AudioStreamWAV"
|
|
||||||
uid="uid://l02hcu1llpjk"
|
|
||||||
path="res://.godot/imported/beachquiet.wav-4d7b3f362a0eb18f5504682a02c34ea5.sample"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Sounds/beachquiet.wav"
|
|
||||||
dest_files=["res://.godot/imported/beachquiet.wav-4d7b3f362a0eb18f5504682a02c34ea5.sample"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
force/8_bit=false
|
|
||||||
force/mono=false
|
|
||||||
force/max_rate=false
|
|
||||||
force/max_rate_hz=44100
|
|
||||||
edit/trim=false
|
|
||||||
edit/normalize=false
|
|
||||||
edit/loop_mode=0
|
|
||||||
edit/loop_begin=0
|
|
||||||
edit/loop_end=-1
|
|
||||||
compress/mode=0
|
|
BIN
godot/Sounds/dropgrunt.ogg
(Stored with Git LFS)
BIN
godot/Sounds/dropgrunt.ogg
(Stored with Git LFS)
Binary file not shown.
|
@ -1,19 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="oggvorbisstr"
|
|
||||||
type="AudioStreamOggVorbis"
|
|
||||||
uid="uid://csboqs15k3vps"
|
|
||||||
path="res://.godot/imported/dropgrunt.ogg-17874ed33d96ba69ea351610265a51dd.oggvorbisstr"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Sounds/dropgrunt.ogg"
|
|
||||||
dest_files=["res://.godot/imported/dropgrunt.ogg-17874ed33d96ba69ea351610265a51dd.oggvorbisstr"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
loop=false
|
|
||||||
loop_offset=0
|
|
||||||
bpm=0
|
|
||||||
beat_count=0
|
|
||||||
bar_beats=4
|
|
BIN
godot/Sounds/heartychuckle.ogg
(Stored with Git LFS)
BIN
godot/Sounds/heartychuckle.ogg
(Stored with Git LFS)
Binary file not shown.
|
@ -1,19 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="oggvorbisstr"
|
|
||||||
type="AudioStreamOggVorbis"
|
|
||||||
uid="uid://b80t5xqckjoqk"
|
|
||||||
path="res://.godot/imported/heartychuckle.ogg-5d7553a58eca2ba7e4b363c99bfd92a4.oggvorbisstr"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Sounds/heartychuckle.ogg"
|
|
||||||
dest_files=["res://.godot/imported/heartychuckle.ogg-5d7553a58eca2ba7e4b363c99bfd92a4.oggvorbisstr"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
loop=false
|
|
||||||
loop_offset=0
|
|
||||||
bpm=0
|
|
||||||
beat_count=0
|
|
||||||
bar_beats=4
|
|
BIN
godot/Sounds/pickup_grunt.ogg
(Stored with Git LFS)
BIN
godot/Sounds/pickup_grunt.ogg
(Stored with Git LFS)
Binary file not shown.
|
@ -1,19 +0,0 @@
|
||||||
[remap]
|
|
||||||
|
|
||||||
importer="oggvorbisstr"
|
|
||||||
type="AudioStreamOggVorbis"
|
|
||||||
uid="uid://baocyd0p3jcku"
|
|
||||||
path="res://.godot/imported/pickup_grunt.ogg-b9b8b2eeb327248ea7dccb4c4bd8e12d.oggvorbisstr"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Sounds/pickup_grunt.ogg"
|
|
||||||
dest_files=["res://.godot/imported/pickup_grunt.ogg-b9b8b2eeb327248ea7dccb4c4bd8e12d.oggvorbisstr"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
loop=false
|
|
||||||
loop_offset=0
|
|
||||||
bpm=0
|
|
||||||
beat_count=0
|
|
||||||
bar_beats=4
|
|
|
@ -1,55 +1,85 @@
|
||||||
extends Node3D
|
extends CharacterBody3D
|
||||||
|
|
||||||
var rng = RandomNumberGenerator.new()
|
var rng = RandomNumberGenerator.new()
|
||||||
var spin_amount = 0
|
@export var target_location_xz = global_transform.origin * Vector3(1, 0, 1)
|
||||||
var spinning = false
|
@export var location_xz = global_transform.origin * Vector3(1, 0, 1)
|
||||||
var wait_time = 0
|
@export var target_direction_xz = (transform.basis * Vector3(1, 0, 1)).normalized()
|
||||||
|
@export var direction_xz = (transform.basis * Vector3(1, 0, 1)).normalized()
|
||||||
|
var task = "idle"
|
||||||
|
|
||||||
|
# Percentage chances of the character performing certain actions while idle.
|
||||||
|
@export var walk_chance = 0.1
|
||||||
|
@export var spin_chance = 0.2
|
||||||
|
|
||||||
|
@export var walk_speed = 0.5
|
||||||
|
|
||||||
|
# Rate at which character corrects their direction after going off course (decimal percentage).
|
||||||
|
@export var spin_speed = 0.50
|
||||||
|
|
||||||
|
# Margin of accuracy to which the character will correct their direction when off course (radians).
|
||||||
|
@export var dir_accuracy = deg_to_rad(0.1)
|
||||||
|
|
||||||
|
# Get the gravity from the project settings to be synced with RigidBody nodes.
|
||||||
|
var gravity = ProjectSettings.get_setting("physics/3d/default_gravity")
|
||||||
|
|
||||||
# Called when the node enters the scene tree for the first time.
|
# Called when the node enters the scene tree for the first time.
|
||||||
func _ready():
|
func _ready():
|
||||||
pass # Replace with function body.
|
pass
|
||||||
|
|
||||||
|
|
||||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
func _process(delta):
|
func _process(delta):
|
||||||
var task = "idle"
|
location_xz = global_transform.origin * Vector3(1, 0, 1)
|
||||||
|
direction_xz = (transform.basis * Vector3(1, 0, 1)).normalized()
|
||||||
|
|
||||||
match task:
|
match task:
|
||||||
"idle":
|
"idle":
|
||||||
task = rng.randi_range(0, 100)
|
task = rng.randf_range(0, 100)
|
||||||
|
|
||||||
if task <= 33:
|
# Chance to walk somewhere.
|
||||||
|
if task <= walk_chance:
|
||||||
task = "walk"
|
task = "walk"
|
||||||
elif task > 33 and task <= 50:
|
target_location_xz = global_transform.origin * Vector3(1, 0, 1) + (direction_xz * 16)
|
||||||
|
# Chance to rotate.
|
||||||
|
elif task > walk_chance and task <= (walk_chance + spin_chance):
|
||||||
task = "spin"
|
task = "spin"
|
||||||
elif task > 50:
|
var rotation_angle = rng.randf_range(-2*PI, 2*PI)
|
||||||
task = "wait"
|
var rotation_vector = Vector3(cos(rotation_angle), 0, sin(rotation_angle))
|
||||||
|
target_direction_xz = direction_xz + rotation_vector
|
||||||
|
# Chance to idle.
|
||||||
|
elif task > (spin_chance + walk_chance):
|
||||||
|
task = "idle"
|
||||||
|
|
||||||
"walk":
|
"walk":
|
||||||
pass
|
# Get the direction to the target in z-x plane.
|
||||||
|
target_direction_xz = (location_xz.direction_to(target_location_xz) * Vector3(1, 0, 1)).normalized()
|
||||||
|
|
||||||
|
# Continue to correct direction to within a margin of dir_accuracy degrees.
|
||||||
|
if direction_xz.angle_to(target_direction_xz) >= dir_accuracy:
|
||||||
|
# Rotate towards destination at specified percentage rate.
|
||||||
|
rotate_y(direction_xz.angle_to(target_direction_xz) * spin_speed)
|
||||||
|
|
||||||
|
if location_xz.distance_to(target_location_xz) <= (Vector2(direction_xz.x, direction_xz.z) * walk_speed).length():
|
||||||
|
target_direction_xz = direction_xz
|
||||||
|
target_location_xz = location_xz
|
||||||
|
task = "idle"
|
||||||
|
|
||||||
"spin":
|
"spin":
|
||||||
if !spinning:
|
if direction_xz.angle_to(target_direction_xz) >= dir_accuracy:
|
||||||
var spin_amount = rng.randi_range(-360, 360)
|
# Rotate towards destination at specified percentage rate.
|
||||||
spinning = true
|
rotate_y(direction_xz.angle_to(target_direction_xz) * spin_speed)
|
||||||
|
|
||||||
if spin_amount > 0:
|
|
||||||
rotate_y(5)
|
|
||||||
spin_amount -= 5
|
|
||||||
elif spin_amount < 0:
|
|
||||||
rotate_y(-5)
|
|
||||||
spin_amount += 5
|
|
||||||
else:
|
else:
|
||||||
task = "idle"
|
task = "idle"
|
||||||
spinning = false
|
|
||||||
|
|
||||||
"wait":
|
|
||||||
# Idle Animation goes here!
|
|
||||||
wait_time += 1
|
|
||||||
if wait_time == 100:
|
|
||||||
task = "idle"
|
|
||||||
wait_time = 0
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
func _physics_process(delta):
|
||||||
|
# Add the gravity.
|
||||||
|
if not is_on_floor():
|
||||||
|
velocity.y -= gravity * delta
|
||||||
|
|
||||||
|
# Walk to target location.
|
||||||
|
if location_xz.distance_to(target_location_xz) > (Vector2(direction_xz.x, direction_xz.z) * walk_speed).length():
|
||||||
|
velocity.x = direction_xz.x * walk_speed
|
||||||
|
velocity.z = direction_xz.z * walk_speed
|
||||||
|
|
||||||
|
move_and_slide()
|
||||||
|
|
|
@ -1,10 +1,13 @@
|
||||||
[gd_scene load_steps=4 format=3 uid="uid://7utef1nnena8"]
|
[gd_scene load_steps=6 format=3 uid="uid://7utef1nnena8"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://Player.gd" id="1_7gpdp"]
|
[ext_resource type="Script" path="res://Player.gd" id="1_7gpdp"]
|
||||||
[ext_resource type="PackedScene" uid="uid://bgoo1lbt28na" path="res://Models/grape_man.tscn" id="2_hg0av"]
|
[ext_resource type="PackedScene" uid="uid://bgoo1lbt28na" path="res://Models/grape_man.tscn" id="2_hg0av"]
|
||||||
|
[ext_resource type="Script" path="res://Holster.gd" id="3_a68da"]
|
||||||
|
|
||||||
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_kb4ms"]
|
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_kb4ms"]
|
||||||
|
|
||||||
|
[sub_resource type="SphereShape3D" id="SphereShape3D_6l1w6"]
|
||||||
|
|
||||||
[node name="Player" type="CharacterBody3D"]
|
[node name="Player" type="CharacterBody3D"]
|
||||||
script = ExtResource("1_7gpdp")
|
script = ExtResource("1_7gpdp")
|
||||||
|
|
||||||
|
@ -21,4 +24,13 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1.39043)
|
||||||
current = true
|
current = true
|
||||||
fov = 50.0
|
fov = 50.0
|
||||||
|
|
||||||
|
[node name="Holster" type="Node3D" parent="."]
|
||||||
|
script = ExtResource("3_a68da")
|
||||||
|
|
||||||
|
[node name="Area3D" type="Area3D" parent="Holster"]
|
||||||
|
|
||||||
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="Holster/Area3D"]
|
||||||
|
transform = Transform3D(0.1, 0, 0, 0, 0.1, 0, 0, 0, 0.1, 0, 0, 0)
|
||||||
|
shape = SubResource("SphereShape3D_6l1w6")
|
||||||
|
|
||||||
[connection signal="anim_check_grab" from="grape_man" to="." method="_on_grape_man_anim_check_grab"]
|
[connection signal="anim_check_grab" from="grape_man" to="." method="_on_grape_man_anim_check_grab"]
|
||||||
|
|
|
@ -1,259 +0,0 @@
|
||||||
[gd_scene load_steps=24 format=3 uid="uid://v3vjhyhrqfhi"]
|
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://d2d4uv7o5gx5p" path="res://Level/World/screen_shader.tscn" id="1_ee0bf"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://b35w4hlh4n1jt" path="res://Level/World/world_environment.tscn" id="2_wvs0f"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://difi2tur2j4dg" path="res://Models/island.tscn" id="3_30dtd"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://ctbyl0qbks4k6" path="res://Models/ocean.tscn" id="4_527x8"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://d3ccrfjpg4hbv" path="res://Models/palm_curved.tscn" id="5_a3wkm"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://c1n2lfcn4rkx7" path="res://Models/palm_default.tscn" id="6_106fc"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://hg1yr5rnxd47" path="res://Models/palm_young.tscn" id="7_ill0p"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://g8vvg7c5ddkr" path="res://Models/rocks/rock_1.tscn" id="8_lwun6"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://bjafsu0utvm0g" path="res://Models/rocks/rock_2.tscn" id="9_ywqbr"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://bf6bbqbaeh21y" path="res://Models/rocks/rock_3.tscn" id="10_pmsfa"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://ce7jbp7f55cro" path="res://Models/buildings/building_1.tscn" id="11_wytos"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://cx44bjuxlhq06" path="res://Models/buildings/building_2.tscn" id="12_soqmo"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://bm65tvb4irjqw" path="res://Models/buildings/building_3.tscn" id="13_bqbcp"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://tky3cco2k7v7" path="res://Models/buildings/building_4.tscn" id="14_26vp6"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://dhrnbubumgi5h" path="res://Models/buildings/buildingruined.tscn" id="15_pvu04"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://bj8le45u845v3" path="res://Models/beach_decor/floatie.tscn" id="16_o5f84"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://dvpank15vkvtv" path="res://Models/beach_decor/parsol.tscn" id="17_tvwlm"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://b3aus2kigf8xt" path="res://Models/beach_decor/cooler.tscn" id="18_whrnr"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://bw3k2c75qavce" path="res://Models/beach_decor/bucket.tscn" id="19_yg6e1"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://g4gmc0pwlak1" path="res://Models/buildings/fence.tscn" id="20_k7apf"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://bgoo1lbt28na" path="res://Models/grape_man.tscn" id="21_j8hpq"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://c3q6fva1c1baa" path="res://Models/slime.tscn" id="22_f6psl"]
|
|
||||||
[ext_resource type="PackedScene" uid="uid://7utef1nnena8" path="res://player.tscn" id="23_bmfvv"]
|
|
||||||
|
|
||||||
[node name="World" type="Node3D"]
|
|
||||||
|
|
||||||
[node name="ScreenShader" parent="." instance=ExtResource("1_ee0bf")]
|
|
||||||
|
|
||||||
[node name="WorldEnvironment" parent="." instance=ExtResource("2_wvs0f")]
|
|
||||||
|
|
||||||
[node name="island" parent="." instance=ExtResource("3_30dtd")]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
|
|
||||||
|
|
||||||
[node name="ocean" parent="." instance=ExtResource("4_527x8")]
|
|
||||||
transform = Transform3D(1.96278, 0, 0, 0, 1.96278, 0, 0, 0, 1.96278, 0, 1.6366, 0)
|
|
||||||
|
|
||||||
[node name="Decorations" type="Node3D" parent="."]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
|
|
||||||
|
|
||||||
[node name="nature" type="Node3D" parent="Decorations"]
|
|
||||||
|
|
||||||
[node name="PalmCurved" parent="Decorations/nature" instance=ExtResource("5_a3wkm")]
|
|
||||||
transform = Transform3D(0.0166766, 0, 0, 0, 0.0166766, 0, 0, 0, 0.0166766, 2.60201, 1.38633, -0.419671)
|
|
||||||
|
|
||||||
[node name="PalmCurved2" parent="Decorations/nature" instance=ExtResource("5_a3wkm")]
|
|
||||||
transform = Transform3D(0.0206421, 0, 0, 0, 0.0206421, 0, 0, 0, 0.0206421, 1.60311, 1.38633, -2.78547)
|
|
||||||
|
|
||||||
[node name="PalmCurved3" parent="Decorations/nature" instance=ExtResource("5_a3wkm")]
|
|
||||||
transform = Transform3D(0.0228198, -0.00350905, 0.0182581, 0.00447368, 0.029093, 0, -0.018046, 0.00277496, 0.0230881, 1.60311, 1.38633, -3.05434)
|
|
||||||
|
|
||||||
[node name="PalmDefault" parent="Decorations/nature" instance=ExtResource("6_106fc")]
|
|
||||||
transform = Transform3D(0.0285645, 0, 0, 0, 0.0285645, 0, 0, 0, 0.0285645, 1.58539, 1.19143, 0.741446)
|
|
||||||
|
|
||||||
[node name="PalmDefault2" parent="Decorations/nature" instance=ExtResource("6_106fc")]
|
|
||||||
transform = Transform3D(0.0285645, 0, 0, 0, 0.0285645, 0, 0, 0, 0.0285645, 2.54841, 1.33006, -0.654728)
|
|
||||||
|
|
||||||
[node name="PalmCurved4" parent="Decorations/nature" instance=ExtResource("5_a3wkm")]
|
|
||||||
transform = Transform3D(-0.0165298, 0, -0.0022076, 0, 0.0166766, 0, 0.0022076, 0, -0.0165298, -2.92791, 1.29787, -2.21588)
|
|
||||||
|
|
||||||
[node name="PalmDefault4" parent="Decorations/nature" instance=ExtResource("6_106fc")]
|
|
||||||
transform = Transform3D(-0.0283131, 0, -0.00378129, 0, 0.0285645, 0, 0.00378129, 0, -0.0283131, -2.84367, 1.2416, -1.98999)
|
|
||||||
|
|
||||||
[node name="PalmDefault3" parent="Decorations/nature" instance=ExtResource("6_106fc")]
|
|
||||||
transform = Transform3D(0.0357832, 0, 0, 0, 0.0357832, 0, 0, 0, 0.0357832, 1.57703, 1.36549, -3.01082)
|
|
||||||
|
|
||||||
[node name="PalmYoung" parent="Decorations/nature" instance=ExtResource("7_ill0p")]
|
|
||||||
transform = Transform3D(0.0328739, 0, 0, 0, 0.0328739, 0, 0, 0, 0.0328739, 0.0679206, 1.38939, 0.60797)
|
|
||||||
|
|
||||||
[node name="PalmYoung2" parent="Decorations/nature" instance=ExtResource("7_ill0p")]
|
|
||||||
transform = Transform3D(0.0324601, 0, -0.00519927, -0.000382867, 0.0327846, -0.00239032, 0.00518516, 0.00242079, 0.032372, 1.36351, 1.17911, 0.610679)
|
|
||||||
|
|
||||||
[node name="PalmYoung3" parent="Decorations/nature" instance=ExtResource("7_ill0p")]
|
|
||||||
transform = Transform3D(0.0247079, -4.21649e-12, -0.00395757, -0.00112831, 0.0239843, -0.0070443, 0.00379331, 0.00713409, 0.0236825, 1.68554, 1.21103, 0.610679)
|
|
||||||
|
|
||||||
[node name="PalmDefault5" parent="Decorations/nature" instance=ExtResource("6_106fc")]
|
|
||||||
transform = Transform3D(0.0105791, -0.0084015, -0.025168, 0.00325558, 0.027301, -0.00774509, 0.0263328, 0, 0.0110687, -0.427893, 1.9423, -2.64889)
|
|
||||||
|
|
||||||
[node name="PalmYoung4" parent="Decorations/nature" instance=ExtResource("7_ill0p")]
|
|
||||||
transform = Transform3D(0.00756592, -0.0117757, -0.0297453, 0.00192772, 0.0306781, -0.0116546, 0.0319333, 0.000938053, 0.00775109, -0.391226, 1.9407, -2.90411)
|
|
||||||
|
|
||||||
[node name="PalmYoung5" parent="Decorations/nature" instance=ExtResource("7_ill0p")]
|
|
||||||
transform = Transform3D(0.00614041, -0.0133402, -0.0202603, 0.000709091, 0.0209891, -0.0136051, 0.0242474, 0.00276446, 0.00552858, -0.293324, 2.04682, -2.60724)
|
|
||||||
|
|
||||||
[node name="PalmDefault6" parent="Decorations/nature" instance=ExtResource("6_106fc")]
|
|
||||||
transform = Transform3D(0.0378488, 0, 0, 0, 0.0378488, 0, 0, 0, 0.0378488, -2.78499, 0.880813, -5.32234)
|
|
||||||
|
|
||||||
[node name="PalmYoung6" parent="Decorations/nature" instance=ExtResource("7_ill0p")]
|
|
||||||
transform = Transform3D(0.0324601, 0, -0.00519927, -0.000382867, 0.0327846, -0.00239032, 0.00518516, 0.00242079, 0.032372, -2.92514, 0.929941, -5.44034)
|
|
||||||
|
|
||||||
[node name="PalmYoung7" parent="Decorations/nature" instance=ExtResource("7_ill0p")]
|
|
||||||
transform = Transform3D(0.0247079, -4.21649e-12, -0.00395757, -0.00112831, 0.0239843, -0.0070443, 0.00379331, 0.00713409, 0.0236825, -2.48546, 1.27716, -5.5655)
|
|
||||||
|
|
||||||
[node name="rock1" parent="Decorations/nature" instance=ExtResource("8_lwun6")]
|
|
||||||
transform = Transform3D(2.22588, -0.121134, 0, 0.121134, 2.22588, 0, 0, 0, 2.22917, 1.5143, 1.55265, -0.92903)
|
|
||||||
|
|
||||||
[node name="rock2" parent="Decorations/nature" instance=ExtResource("9_ywqbr")]
|
|
||||||
transform = Transform3D(0.691597, 0, 2.18402, 0, 2.29091, 0, -2.18402, 0, 0.691597, -2.49043, 1.75613, -2.80585)
|
|
||||||
|
|
||||||
[node name="rock4" parent="Decorations/nature" instance=ExtResource("9_ywqbr")]
|
|
||||||
transform = Transform3D(1.07799, 0, -2.02144, 0, 2.29091, 0, 2.02144, 0, 1.07799, 2.91299, 1.48205, -2.24697)
|
|
||||||
|
|
||||||
[node name="rock3" parent="Decorations/nature" instance=ExtResource("10_pmsfa")]
|
|
||||||
transform = Transform3D(1.34711, 0, -1.03681, 0, 1.69991, 0, 1.03681, 0, 1.34711, -0.627084, 1.6587, -0.745724)
|
|
||||||
|
|
||||||
[node name="rock5" parent="Decorations/nature" instance=ExtResource("10_pmsfa")]
|
|
||||||
transform = Transform3D(2.17971, 0, 1.18206, 0, 2.4796, 0, -1.18206, 0, 2.17971, -2.78722, 1.02155, -5.94306)
|
|
||||||
|
|
||||||
[node name="buildings" type="Node3D" parent="Decorations"]
|
|
||||||
|
|
||||||
[node name="buildingtall" parent="Decorations/buildings" instance=ExtResource("11_wytos")]
|
|
||||||
transform = Transform3D(21.8862, 0, 0, 0, 21.8862, 0, 0, 0, 21.8862, -4.3809, 2.55474, 2.89074)
|
|
||||||
|
|
||||||
[node name="buildingtall2" parent="Decorations/buildings" instance=ExtResource("11_wytos")]
|
|
||||||
transform = Transform3D(13.5064, 0, 0, 0, 13.5064, 0, 0, 0, 13.5064, -1.47841, 2.55474, -12.1844)
|
|
||||||
|
|
||||||
[node name="buildingtall3" parent="Decorations/buildings" instance=ExtResource("11_wytos")]
|
|
||||||
transform = Transform3D(10.4606, 0, 0, 0, 10.4606, 0, 0, 0, 10.4606, 5.31898, 2.55474, -8.06938)
|
|
||||||
|
|
||||||
[node name="buildingtall5" parent="Decorations/buildings" instance=ExtResource("11_wytos")]
|
|
||||||
transform = Transform3D(-0.0729599, 0, 21.8861, 0, 21.8862, 0, -21.8861, 0, -0.0729599, 12.1925, 2.55474, -11.372)
|
|
||||||
|
|
||||||
[node name="buildingtall6" parent="Decorations/buildings" instance=ExtResource("11_wytos")]
|
|
||||||
transform = Transform3D(-0.0450251, 0, 13.5063, 0, 13.5064, 0, -13.5063, 0, -0.0450251, -2.89216, 2.55474, -14.2242)
|
|
||||||
|
|
||||||
[node name="buildingtall7" parent="Decorations/buildings" instance=ExtResource("11_wytos")]
|
|
||||||
transform = Transform3D(-0.0348714, 0, 10.4605, 0, 10.4606, 0, -10.4605, 0, -0.0348714, 1.20015, 2.55474, -21.0353)
|
|
||||||
|
|
||||||
[node name="buildingtall4" parent="Decorations/buildings" instance=ExtResource("11_wytos")]
|
|
||||||
transform = Transform3D(10.4606, 0, 0, 0, 10.4606, 0, 0, 0, 10.4606, 8.3496, 2.55474, 5.62082)
|
|
||||||
|
|
||||||
[node name="buildingdark" parent="Decorations/buildings" instance=ExtResource("12_soqmo")]
|
|
||||||
transform = Transform3D(4.44687, 0, 0, 0, 4.44687, 0, 0, 0, 4.44687, -4.40636, 1.95165, 3.4984)
|
|
||||||
|
|
||||||
[node name="buildingdark4" parent="Decorations/buildings" instance=ExtResource("12_soqmo")]
|
|
||||||
transform = Transform3D(6.78288, 0, 0, 0, 6.78288, 0, 0, 0, 6.78288, -6.16993, 1.95165, -3.65367)
|
|
||||||
|
|
||||||
[node name="buildingtall8" parent="Decorations/buildings" instance=ExtResource("11_wytos")]
|
|
||||||
transform = Transform3D(-0.0116848, 0, 10.4606, 0, 10.4606, 0, -10.4606, 0, -0.0116848, -14.3399, 2.55474, -17.0464)
|
|
||||||
|
|
||||||
[node name="buildingtall9" parent="Decorations/buildings" instance=ExtResource("11_wytos")]
|
|
||||||
transform = Transform3D(-13.5063, 0, -0.0601121, 0, 13.5064, 0, 0.0601121, 0, -13.5063, -20.4855, 2.55474, -8.82839)
|
|
||||||
|
|
||||||
[node name="buildingdark8" parent="Decorations/buildings" instance=ExtResource("12_soqmo")]
|
|
||||||
transform = Transform3D(-0.00757671, 0, 6.78287, 0, 6.78288, 0, -6.78287, 0, -0.00757671, -9.91133, 1.95165, -5.56244)
|
|
||||||
|
|
||||||
[node name="buildingdark2" parent="Decorations/buildings" instance=ExtResource("12_soqmo")]
|
|
||||||
transform = Transform3D(4.44687, 0, 0, 0, 4.44687, 0, 0, 0, 4.44687, 6.77348, 1.95165, 3.4984)
|
|
||||||
|
|
||||||
[node name="buildingdark3" parent="Decorations/buildings" instance=ExtResource("12_soqmo")]
|
|
||||||
transform = Transform3D(4.44687, 0, 0, 0, 4.44687, 0, 0, 0, 4.44687, 5.32956, 1.95165, 3.4984)
|
|
||||||
|
|
||||||
[node name="buildingdark5" parent="Decorations/buildings" instance=ExtResource("12_soqmo")]
|
|
||||||
transform = Transform3D(7.67301, 0, 0, 0, 7.67301, 0, 0, 0, 7.67301, -0.410835, 2.81886, 6.63391)
|
|
||||||
|
|
||||||
[node name="buildinggray" parent="Decorations/buildings" instance=ExtResource("13_bqbcp")]
|
|
||||||
transform = Transform3D(6.28093, 0, 0, 0, 6.28093, 0, 0, 0, 6.28093, 8.30197, 1.03036, -1.61307)
|
|
||||||
|
|
||||||
[node name="buildinggray2" parent="Decorations/buildings" instance=ExtResource("13_bqbcp")]
|
|
||||||
transform = Transform3D(6.28093, 0, 0, 0, 6.28093, 0, 0, 0, 6.28093, 8.30197, 1.03036, -3.69042)
|
|
||||||
|
|
||||||
[node name="buildinggray3" parent="Decorations/buildings" instance=ExtResource("13_bqbcp")]
|
|
||||||
transform = Transform3D(6.28093, 0, 0, 0, 6.28093, 0, 0, 0, 6.28093, 8.30197, 1.03036, -10.8574)
|
|
||||||
|
|
||||||
[node name="buildingshort" parent="Decorations/buildings" instance=ExtResource("14_26vp6")]
|
|
||||||
transform = Transform3D(4.16771, 0, 0, 0, 4.16771, 0, 0, 0, 4.16771, -0.459043, 1.40556, 3.90663)
|
|
||||||
|
|
||||||
[node name="buildingshort3" parent="Decorations/buildings" instance=ExtResource("14_26vp6")]
|
|
||||||
transform = Transform3D(4.57392, 0, 0, 0, 4.57392, 0, 0, 0, 4.57392, -6.12576, 1.40556, -10.1037)
|
|
||||||
|
|
||||||
[node name="buildingdark6" parent="Decorations/buildings" instance=ExtResource("12_soqmo")]
|
|
||||||
transform = Transform3D(-0.0169875, 0, -6.71246, 0, 6.71248, 0, 6.71246, 0, -0.0169875, -4.48605, 2.0444, 15.7302)
|
|
||||||
|
|
||||||
[node name="buildingdark7" parent="Decorations/buildings" instance=ExtResource("12_soqmo")]
|
|
||||||
transform = Transform3D(-0.0259113, 0, -10.2386, 0, 10.2386, 0, 10.2386, 0, -0.0259113, 6.31659, 2.0444, 13.0954)
|
|
||||||
|
|
||||||
[node name="buildingshort6" parent="Decorations/buildings" instance=ExtResource("14_26vp6")]
|
|
||||||
transform = Transform3D(-0.0174728, 0, -6.90423, 0, 6.90426, 0, 6.90423, 0, -0.0174728, 16.0526, 1.22007, 13.1868)
|
|
||||||
|
|
||||||
[node name="buildingshort2" parent="Decorations/buildings" instance=ExtResource("14_26vp6")]
|
|
||||||
transform = Transform3D(4.16771, 0, 0, 0, 4.16771, 0, 0, 0, 4.16771, 1.65087, 1.40556, 3.90663)
|
|
||||||
|
|
||||||
[node name="buildingshort4" parent="Decorations/buildings" instance=ExtResource("14_26vp6")]
|
|
||||||
transform = Transform3D(4.02251, 0, 0, 0, 4.02251, 0, 0, 0, 4.02251, 1.64013, 1.40556, -9.83171)
|
|
||||||
|
|
||||||
[node name="buildingshort5" parent="Decorations/buildings" instance=ExtResource("14_26vp6")]
|
|
||||||
transform = Transform3D(4.02251, 0, 0, 0, 4.02251, 0, 0, 0, 4.02251, 3.67653, 1.40556, -9.83171)
|
|
||||||
|
|
||||||
[node name="buildingruined" parent="Decorations/buildings" instance=ExtResource("15_pvu04")]
|
|
||||||
transform = Transform3D(3, 0, 0, 0, 7, 0, 0, 0, 3, 0.264704, 3.59073, -4.06142)
|
|
||||||
|
|
||||||
[node name="beach items" type="Node3D" parent="Decorations"]
|
|
||||||
|
|
||||||
[node name="Floatie" parent="Decorations/beach items" instance=ExtResource("16_o5f84")]
|
|
||||||
transform = Transform3D(0.15, 0, 0, 0, 0.15, 0, 0, 0, 0.15, -0.784158, 0.853456, 2.16031)
|
|
||||||
|
|
||||||
[node name="Floatie2" parent="Decorations/beach items" instance=ExtResource("16_o5f84")]
|
|
||||||
transform = Transform3D(0.142475, -0.0469124, 0, 0.0469124, 0.142475, 0, 0, 0, 0.15, -3.06407, 0.899973, -0.715843)
|
|
||||||
|
|
||||||
[node name="Floatie3" parent="Decorations/beach items" instance=ExtResource("16_o5f84")]
|
|
||||||
transform = Transform3D(0.130141, 0.074587, 0, -0.074587, 0.130141, 0, 0, 0, 0.15, 3.48612, 0.899973, -0.715843)
|
|
||||||
|
|
||||||
[node name="Floatie4" parent="Decorations/beach items" instance=ExtResource("16_o5f84")]
|
|
||||||
transform = Transform3D(0.130141, 0.074587, 0, -0.074587, 0.130141, 0, 0, 0, 0.15, 0.886782, 1.39103, -0.739674)
|
|
||||||
|
|
||||||
[node name="Parsol" parent="Decorations/beach items" instance=ExtResource("17_tvwlm")]
|
|
||||||
transform = Transform3D(0.15, 0, 0, 0, 0.15, 0, 0, 0, 0.15, -1.66573, 0.876208, 1.05714)
|
|
||||||
|
|
||||||
[node name="Parsol4" parent="Decorations/beach items" instance=ExtResource("17_tvwlm")]
|
|
||||||
transform = Transform3D(-0.0239309, 0.0261311, -0.145755, 0.020213, 0.14684, 0.023007, 0.146693, -0.0159705, -0.0269481, 1.76494, 1.33168, -0.229817)
|
|
||||||
|
|
||||||
[node name="Parsol5" parent="Decorations/beach items" instance=ExtResource("17_tvwlm")]
|
|
||||||
transform = Transform3D(-0.0239309, 0.0261311, -0.145755, 0.020213, 0.14684, 0.023007, 0.146693, -0.0159705, -0.0269481, 2.32692, 1.57535, -2.17909)
|
|
||||||
|
|
||||||
[node name="Parsol2" parent="Decorations/beach items" instance=ExtResource("17_tvwlm")]
|
|
||||||
transform = Transform3D(0.1347, -6.66134e-17, 0.0660003, -0.0146604, 0.146253, 0.0299204, -0.0643514, -0.0333191, 0.131334, -1.14782, 1.47649, -0.558166)
|
|
||||||
|
|
||||||
[node name="Parsol3" parent="Decorations/beach items" instance=ExtResource("17_tvwlm")]
|
|
||||||
transform = Transform3D(0.134699, 1.78109e-09, 0.0660003, 0.0272818, 0.136585, -0.0556792, -0.0600977, 0.0620038, 0.122653, -1.99932, 1.60507, -2.17045)
|
|
||||||
|
|
||||||
[node name="Cooler" parent="Decorations/beach items" instance=ExtResource("18_whrnr")]
|
|
||||||
transform = Transform3D(0.120432, 0, 0.0894211, 0, 0.15, 0, -0.0894211, 0, 0.120432, 0.152196, 1.35823, -1.06364)
|
|
||||||
|
|
||||||
[node name="Cooler3" parent="Decorations/beach items" instance=ExtResource("18_whrnr")]
|
|
||||||
transform = Transform3D(0.148429, 0.0216508, 0, -0.0216154, 0.148186, -0.00857972, -0.00123839, 0.00848987, 0.149754, 1.4826, 1.19789, 0.782173)
|
|
||||||
|
|
||||||
[node name="Cooler2" parent="Decorations/beach items" instance=ExtResource("18_whrnr")]
|
|
||||||
transform = Transform3D(0.0773985, -0.0174174, -0.127303, -0.0231678, 0.144288, -0.0338269, 0.126383, 0.0371166, 0.071761, -2.22704, 1.55195, -2.24528)
|
|
||||||
|
|
||||||
[node name="Bucket" parent="Decorations/beach items" instance=ExtResource("19_yg6e1")]
|
|
||||||
transform = Transform3D(0.15, 0, 0, 0, 0.15, 0, 0, 0, 0.15, 0.0735223, 1.38544, -0.541391)
|
|
||||||
|
|
||||||
[node name="slimepen" type="Node3D" parent="Decorations"]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.406997, 0.0234586, 0.519028)
|
|
||||||
|
|
||||||
[node name="fence" parent="Decorations/slimepen" instance=ExtResource("20_k7apf")]
|
|
||||||
transform = Transform3D(0.75, 0, 0, 0, 1.8, 0, 0, 0, 1.8, -0.193081, 1.39007, -1.43506)
|
|
||||||
|
|
||||||
[node name="fence2" parent="Decorations/slimepen" instance=ExtResource("20_k7apf")]
|
|
||||||
transform = Transform3D(-6.55671e-08, 0, 1.5, 0, 1.5, 0, -1.5, 0, -6.55671e-08, 0, 1.40507, -1.34639)
|
|
||||||
|
|
||||||
[node name="fence3" parent="Decorations/slimepen" instance=ExtResource("20_k7apf")]
|
|
||||||
transform = Transform3D(-6.55671e-08, 0, -1.5, 0, 1.5, 0, 1.5, 0, -6.55671e-08, 0, 1.40507, -1.34639)
|
|
||||||
|
|
||||||
[node name="fence4" parent="Decorations/slimepen" instance=ExtResource("20_k7apf")]
|
|
||||||
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 1.40507, -2.10425)
|
|
||||||
|
|
||||||
[node name="grape_man" parent="." instance=ExtResource("21_j8hpq")]
|
|
||||||
transform = Transform3D(0.065, 0, 0, 0, 0.065, 0, 0, 0, 0.065, -0.219532, 2.64323, 0)
|
|
||||||
|
|
||||||
[node name="slime" parent="." instance=ExtResource("22_f6psl")]
|
|
||||||
transform = Transform3D(0.035, 0, 0, 0, 0.035, 0, 0, 0, 0.035, -0.240886, 2.72271, 0.267039)
|
|
||||||
|
|
||||||
[node name="Camera3D" type="Camera3D" parent="."]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 0.965509, 0.26037, 0, -0.26037, 0.965509, 0, 5.42228, 4.14616)
|
|
||||||
|
|
||||||
[node name="Player" parent="." instance=ExtResource("23_bmfvv")]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.548558, 2.93052, 0.413536)
|
|
|
@ -6,13 +6,11 @@
|
||||||
|
|
||||||
[sub_resource type="CapsuleMesh" id="CapsuleMesh_b3srs"]
|
[sub_resource type="CapsuleMesh" id="CapsuleMesh_b3srs"]
|
||||||
|
|
||||||
[node name="Node3D" type="Node3D"]
|
[node name="Villager" type="CharacterBody3D"]
|
||||||
script = ExtResource("1_ardgw")
|
script = ExtResource("1_ardgw")
|
||||||
|
|
||||||
[node name="RigidBody3D" type="RigidBody3D" parent="."]
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||||
|
|
||||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D"]
|
|
||||||
shape = SubResource("CapsuleShape3D_s4x8n")
|
shape = SubResource("CapsuleShape3D_s4x8n")
|
||||||
|
|
||||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="RigidBody3D/CollisionShape3D"]
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="CollisionShape3D"]
|
||||||
mesh = SubResource("CapsuleMesh_b3srs")
|
mesh = SubResource("CapsuleMesh_b3srs")
|
||||||
|
|
Loading…
Add table
Reference in a new issue