updated oktoberfest
This commit is contained in:
parent
74548cf1f6
commit
50271a157d
20 changed files with 383 additions and 53 deletions
BIN
Florian/Decals/power.png
Normal file
BIN
Florian/Decals/power.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 34 KiB |
35
Florian/Decals/power.png.import
Normal file
35
Florian/Decals/power.png.import
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cx783frd814e6"
|
||||||
|
path.s3tc="res://.godot/imported/power.png-8cfc4df1522afb91a6c231cf297317af.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Florian/Decals/power.png"
|
||||||
|
dest_files=["res://.godot/imported/power.png-8cfc4df1522afb91a6c231cf297317af.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=0
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
[gd_scene load_steps=9 format=3 uid="uid://bfq21ks4r8gma"]
|
[gd_scene load_steps=9 format=3 uid="uid://c4fw8rjct7vms"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bwdlms684oaxg" path="res://Amanda/Sprite assets/accor.png" id="1_gqqs6"]
|
[ext_resource type="Texture2D" uid="uid://bwdlms684oaxg" path="res://Amanda/Sprite assets/accor.png" id="1_gqqs6"]
|
||||||
[ext_resource type="PackedScene" uid="uid://c8gnb0kut2n5h" path="res://Florian/PointsLogic/point_thing.tscn" id="2_rc5w7"]
|
[ext_resource type="PackedScene" uid="uid://c8gnb0kut2n5h" path="res://Florian/PointsLogic/point_thing.tscn" id="2_rc5w7"]
|
||||||
|
|
@ -54,4 +54,4 @@ sprite_frames = SubResource("SpriteFrames_80p6a")
|
||||||
|
|
||||||
[node name="PointThing" parent="." instance=ExtResource("2_rc5w7")]
|
[node name="PointThing" parent="." instance=ExtResource("2_rc5w7")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.7, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.7, 0)
|
||||||
points_name = "Guitar"
|
points_name = "Accordion"
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
[gd_scene load_steps=9 format=3 uid="uid://ovrmixk51bsv"]
|
[gd_scene load_steps=9 format=3 uid="uid://d3ynlus2dwtle"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://bf4mdirph5vwa" path="res://Amanda/Sprite assets/beer.png" id="1_4cb43"]
|
[ext_resource type="Texture2D" uid="uid://bf4mdirph5vwa" path="res://Amanda/Sprite assets/beer.png" id="1_4cb43"]
|
||||||
[ext_resource type="PackedScene" uid="uid://c8gnb0kut2n5h" path="res://Florian/PointsLogic/point_thing.tscn" id="2_1b8ry"]
|
[ext_resource type="PackedScene" uid="uid://c8gnb0kut2n5h" path="res://Florian/PointsLogic/point_thing.tscn" id="2_1b8ry"]
|
||||||
|
|
@ -47,11 +47,15 @@ animations = [{
|
||||||
}]
|
}]
|
||||||
|
|
||||||
[node name="beer" type="AnimatedSprite3D"]
|
[node name="beer" type="AnimatedSprite3D"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.1, -0.7, 0)
|
||||||
|
pixel_size = 0.1
|
||||||
shaded = true
|
shaded = true
|
||||||
alpha_cut = 2
|
alpha_cut = 2
|
||||||
texture_filter = 0
|
texture_filter = 0
|
||||||
sprite_frames = SubResource("SpriteFrames_8do5l")
|
sprite_frames = SubResource("SpriteFrames_8do5l")
|
||||||
|
autoplay = "default"
|
||||||
|
frame_progress = 0.539534
|
||||||
|
|
||||||
[node name="PointThing" parent="." instance=ExtResource("2_1b8ry")]
|
[node name="PointThing" parent="." instance=ExtResource("2_1b8ry")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.7, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.2, 1, 0)
|
||||||
points_name = "Guitar"
|
points_name = "Beer"
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
[gd_scene load_steps=11 format=3 uid="uid://trvl3oxmfnpb"]
|
[gd_scene load_steps=11 format=3 uid="uid://dk05y5r50lmm2"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://b6x0516k2r07" path="res://Amanda/Sprite assets/dudes_2.png" id="1_85p31"]
|
[ext_resource type="Texture2D" uid="uid://b6x0516k2r07" path="res://Amanda/Sprite assets/dudes_2.png" id="1_85p31"]
|
||||||
[ext_resource type="PackedScene" uid="uid://c8gnb0kut2n5h" path="res://Florian/PointsLogic/point_thing.tscn" id="2_cauvc"]
|
[ext_resource type="PackedScene" uid="uid://c8gnb0kut2n5h" path="res://Florian/PointsLogic/point_thing.tscn" id="2_cauvc"]
|
||||||
|
|
|
||||||
|
|
@ -1,23 +1,29 @@
|
||||||
[gd_scene load_steps=18 format=3 uid="uid://by5cq6m32hbor"]
|
[gd_scene load_steps=27 format=3 uid="uid://by5cq6m32hbor"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dv401srtwuvtg" path="res://icon.svg" id="1_6v0xc"]
|
[ext_resource type="Texture2D" uid="uid://dv401srtwuvtg" path="res://icon.svg" id="1_6v0xc"]
|
||||||
[ext_resource type="Texture2D" uid="uid://cd1v04y3nf1dv" path="res://Amanda/furni/Images/table_diffuse.jpg" id="1_tre0f"]
|
[ext_resource type="Texture2D" uid="uid://cd1v04y3nf1dv" path="res://Amanda/furni/Images/table_diffuse.jpg" id="1_tre0f"]
|
||||||
[ext_resource type="PackedScene" uid="uid://crrco762ow56c" path="res://Florian/Player/PlayerRigidbody.tscn" id="2_82wr0"]
|
[ext_resource type="PackedScene" uid="uid://crrco762ow56c" path="res://Florian/Player/PlayerRigidbody.tscn" id="2_82wr0"]
|
||||||
[ext_resource type="PackedScene" uid="uid://bobfhgsydmmr2" path="res://Florian/pyro.tscn" id="4_h8052"]
|
[ext_resource type="PackedScene" uid="uid://bobfhgsydmmr2" path="res://Florian/pyro.tscn" id="4_h8052"]
|
||||||
[ext_resource type="PackedScene" uid="uid://byhsp6ujjsh8m" path="res://Florian/Entity/interactable.tscn" id="5_ygtpi"]
|
[ext_resource type="PackedScene" uid="uid://byhsp6ujjsh8m" path="res://Florian/Entity/interactable.tscn" id="5_ygtpi"]
|
||||||
|
[ext_resource type="Script" uid="uid://ddwcbl3nbt6j4" path="res://Florian/Map/lights.gd" id="6_g561u"]
|
||||||
[ext_resource type="PackedScene" uid="uid://c8gnb0kut2n5h" path="res://Florian/PointsLogic/point_thing.tscn" id="6_miqpv"]
|
[ext_resource type="PackedScene" uid="uid://c8gnb0kut2n5h" path="res://Florian/PointsLogic/point_thing.tscn" id="6_miqpv"]
|
||||||
[ext_resource type="PackedScene" uid="uid://bk4djtjemu7we" path="res://Florian/Entity/People/guitar.tscn" id="6_ptxqs"]
|
[ext_resource type="PackedScene" uid="uid://bk4djtjemu7we" path="res://Florian/Entity/People/guitar.tscn" id="6_ptxqs"]
|
||||||
[ext_resource type="PackedScene" uid="uid://c5552lenumx2j" path="res://Florian/Entity/People/saxophone.tscn" id="7_miqpv"]
|
[ext_resource type="PackedScene" uid="uid://c5552lenumx2j" path="res://Florian/Entity/People/saxophone.tscn" id="7_miqpv"]
|
||||||
[ext_resource type="PackedScene" uid="uid://bybsn53hd1mge" path="res://Florian/Entity/People/guys.tscn" id="9_3box6"]
|
[ext_resource type="PackedScene" uid="uid://bybsn53hd1mge" path="res://Florian/Entity/People/guys.tscn" id="9_3box6"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bw73kprk7ptvn" path="res://Florian/PointsLogic/PictureSpot.tscn" id="10_28ddj"]
|
||||||
|
[ext_resource type="Script" uid="uid://cu3fdbo1lelob" path="res://Florian/Map/dancing_people.gd" id="10_mbtuy"]
|
||||||
[ext_resource type="PackedScene" uid="uid://k3ij7wrtwpms" path="res://Florian/table_0.tscn" id="10_ubr03"]
|
[ext_resource type="PackedScene" uid="uid://k3ij7wrtwpms" path="res://Florian/table_0.tscn" id="10_ubr03"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://oxm6ufgip22u" path="res://Florian/Props/tent.tscn" id="11_4etk5"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cx783frd814e6" path="res://Florian/Decals/power.png" id="11_bsfgy"]
|
||||||
[ext_resource type="PackedScene" uid="uid://lrf6ltd1wwg1" path="res://Florian/Entity/People/waitress_path.tscn" id="12_g561u"]
|
[ext_resource type="PackedScene" uid="uid://lrf6ltd1wwg1" path="res://Florian/Entity/People/waitress_path.tscn" id="12_g561u"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://ctcspqlxrw22q" path="res://Florian/PhysicsProps/PhysicsBarrel.tscn" id="13_ijkca"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://ow35tpunk744" path="res://Florian/PhysicsProps/physics_beer.tscn" id="18_3uiso"]
|
||||||
|
|
||||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_g561u"]
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_g561u"]
|
||||||
albedo_texture = ExtResource("1_tre0f")
|
albedo_texture = ExtResource("1_tre0f")
|
||||||
|
|
||||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_eral8"]
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_eral8"]
|
||||||
albedo_texture = ExtResource("1_6v0xc")
|
albedo_texture = ExtResource("1_6v0xc")
|
||||||
uv1_scale = Vector3(50, 50, 50)
|
|
||||||
|
|
||||||
[sub_resource type="PlaneMesh" id="PlaneMesh_82wr0"]
|
[sub_resource type="PlaneMesh" id="PlaneMesh_82wr0"]
|
||||||
material = SubResource("StandardMaterial3D_eral8")
|
material = SubResource("StandardMaterial3D_eral8")
|
||||||
|
|
@ -25,6 +31,12 @@ size = Vector2(500, 500)
|
||||||
|
|
||||||
[sub_resource type="WorldBoundaryShape3D" id="WorldBoundaryShape3D_tw6g5"]
|
[sub_resource type="WorldBoundaryShape3D" id="WorldBoundaryShape3D_tw6g5"]
|
||||||
|
|
||||||
|
[sub_resource type="BoxShape3D" id="BoxShape3D_ijkca"]
|
||||||
|
size = Vector3(33, 7, 29)
|
||||||
|
|
||||||
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_4etk5"]
|
||||||
|
albedo_color = Color(0.51859, 0.210826, 0.0712605, 1)
|
||||||
|
|
||||||
[sub_resource type="Curve3D" id="Curve3D_4etk5"]
|
[sub_resource type="Curve3D" id="Curve3D_4etk5"]
|
||||||
closed = true
|
closed = true
|
||||||
_data = {
|
_data = {
|
||||||
|
|
@ -48,7 +60,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.378755, 0)
|
||||||
shape = SubResource("WorldBoundaryShape3D_tw6g5")
|
shape = SubResource("WorldBoundaryShape3D_tw6g5")
|
||||||
|
|
||||||
[node name="PlayerRigidbody" parent="." instance=ExtResource("2_82wr0")]
|
[node name="PlayerRigidbody" parent="." instance=ExtResource("2_82wr0")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 2)
|
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -20, 1, -9)
|
||||||
|
|
||||||
[node name="Stage" type="Node3D" parent="."]
|
[node name="Stage" type="Node3D" parent="."]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -8)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -8)
|
||||||
|
|
@ -61,22 +73,33 @@ radius = 4.0
|
||||||
|
|
||||||
[node name="Pyro" parent="Stage" instance=ExtResource("4_h8052")]
|
[node name="Pyro" parent="Stage" instance=ExtResource("4_h8052")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.6, 0.9, 2.6)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.6, 0.9, 2.6)
|
||||||
|
visible = false
|
||||||
|
|
||||||
[node name="Pyro2" parent="Stage" instance=ExtResource("4_h8052")]
|
[node name="Pyro2" parent="Stage" instance=ExtResource("4_h8052")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.4, 0.9, 2.6)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.4, 0.9, 2.6)
|
||||||
|
visible = false
|
||||||
|
|
||||||
[node name="Pyro3" parent="Stage" instance=ExtResource("4_h8052")]
|
[node name="Pyro3" parent="Stage" instance=ExtResource("4_h8052")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.6, 0.9, -2.4)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.6, 0.9, -2.4)
|
||||||
|
visible = false
|
||||||
|
|
||||||
[node name="Pyro4" parent="Stage" instance=ExtResource("4_h8052")]
|
[node name="Pyro4" parent="Stage" instance=ExtResource("4_h8052")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.4, 0.9, -2.4)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.4, 0.9, -2.4)
|
||||||
|
visible = false
|
||||||
|
|
||||||
[node name="Interactable" parent="Stage" instance=ExtResource("5_ygtpi")]
|
[node name="Interactable" parent="Stage" instance=ExtResource("5_ygtpi")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.4, 0.9, 1)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.4, 0.9, 1)
|
||||||
|
|
||||||
|
[node name="guitar" parent="Stage" instance=ExtResource("6_ptxqs")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 2, 0)
|
||||||
|
|
||||||
|
[node name="saxophone" parent="Stage" instance=ExtResource("7_miqpv")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 2, 0)
|
||||||
|
|
||||||
[node name="Truss" type="Node3D" parent="Stage"]
|
[node name="Truss" type="Node3D" parent="Stage"]
|
||||||
|
|
||||||
[node name="CSGCombiner3D" type="CSGCombiner3D" parent="Stage/Truss"]
|
[node name="CSGCombiner3D" type="CSGCombiner3D" parent="Stage/Truss"]
|
||||||
|
use_collision = true
|
||||||
|
|
||||||
[node name="CSGCylinder3D" type="CSGCylinder3D" parent="Stage/Truss/CSGCombiner3D"]
|
[node name="CSGCylinder3D" type="CSGCylinder3D" parent="Stage/Truss/CSGCombiner3D"]
|
||||||
radius = 15.0
|
radius = 15.0
|
||||||
|
|
@ -93,6 +116,8 @@ radius = 15.0
|
||||||
height = 14.0
|
height = 14.0
|
||||||
|
|
||||||
[node name="Lights" type="Node3D" parent="Stage/Truss/CSGCombiner3D"]
|
[node name="Lights" type="Node3D" parent="Stage/Truss/CSGCombiner3D"]
|
||||||
|
visible = false
|
||||||
|
script = ExtResource("6_g561u")
|
||||||
|
|
||||||
[node name="SpotLight3D" type="SpotLight3D" parent="Stage/Truss/CSGCombiner3D/Lights"]
|
[node name="SpotLight3D" type="SpotLight3D" parent="Stage/Truss/CSGCombiner3D/Lights"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 0.866025, 0.5, 0, -0.5, 0.866025, 0, 7, 14)
|
transform = Transform3D(1, 0, 0, 0, 0.866025, 0.5, 0, -0.5, 0.866025, 0, 7, 14)
|
||||||
|
|
@ -124,14 +149,21 @@ points_worth = 50
|
||||||
points_name = "Stage Lights"
|
points_name = "Stage Lights"
|
||||||
points_multiplier = 1.5
|
points_multiplier = 1.5
|
||||||
|
|
||||||
[node name="guitar" parent="Stage/Truss/CSGCombiner3D" instance=ExtResource("6_ptxqs")]
|
[node name="CSGBox3D" type="CSGBox3D" parent="Stage/Truss/CSGCombiner3D"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 2, 0)
|
transform = Transform3D(0.965926, -0.258819, 0, 0.258819, 0.965926, 0, 0, 0, 1, -19.1421, 5.96001, -0.5)
|
||||||
|
size = Vector3(11, 0.6, 2)
|
||||||
|
|
||||||
[node name="saxophone" parent="Stage/Truss/CSGCombiner3D" instance=ExtResource("7_miqpv")]
|
[node name="PictureSpot" parent="Stage/Truss" instance=ExtResource("10_28ddj")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 2, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 9, 0)
|
||||||
|
points_multiplier = 2
|
||||||
|
|
||||||
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="Stage/Truss/PictureSpot"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1, -1)
|
||||||
|
shape = SubResource("BoxShape3D_ijkca")
|
||||||
|
|
||||||
[node name="DancingPeople" type="Node3D" parent="Stage"]
|
[node name="DancingPeople" type="Node3D" parent="Stage"]
|
||||||
transform = Transform3D(0.707107, 0, -0.707107, 0, 1, 0, 0.707107, 0, 0.707107, 0, 0, 0)
|
transform = Transform3D(0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, 0.707107, 0, 0, 0)
|
||||||
|
script = ExtResource("10_mbtuy")
|
||||||
|
|
||||||
[node name="guys" parent="Stage/DancingPeople" instance=ExtResource("9_3box6")]
|
[node name="guys" parent="Stage/DancingPeople" instance=ExtResource("9_3box6")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0.9, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0.9, 0)
|
||||||
|
|
@ -139,14 +171,96 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -6, 0.9, 0)
|
||||||
[node name="guys2" parent="Stage/DancingPeople" instance=ExtResource("9_3box6")]
|
[node name="guys2" parent="Stage/DancingPeople" instance=ExtResource("9_3box6")]
|
||||||
transform = Transform3D(0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, 0.707107, -4.24264, 0.9, 4.24264)
|
transform = Transform3D(0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, 0.707107, -4.24264, 0.9, 4.24264)
|
||||||
|
|
||||||
|
[node name="guys3" parent="Stage/DancingPeople" instance=ExtResource("9_3box6")]
|
||||||
|
transform = Transform3D(-5.96046e-08, 0, 1, 0, 1, 0, -1, 0, -5.96046e-08, 9.53674e-07, 0.9, 6)
|
||||||
|
|
||||||
|
[node name="guys4" parent="Stage/DancingPeople" instance=ExtResource("9_3box6")]
|
||||||
|
transform = Transform3D(-0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, -0.707107, 4.24264, 0.9, 4.24264)
|
||||||
|
|
||||||
|
[node name="guys5" parent="Stage/DancingPeople" instance=ExtResource("9_3box6")]
|
||||||
|
transform = Transform3D(-1, 0, -5.96046e-08, 0, 1, 0, 5.96046e-08, 0, -1, 6, 0.9, 4.76837e-07)
|
||||||
|
|
||||||
|
[node name="guys6" parent="Stage/DancingPeople" instance=ExtResource("9_3box6")]
|
||||||
|
transform = Transform3D(-0.707107, 0, -0.707107, 0, 1, 0, 0.707107, 0, -0.707107, 4.24264, 0.9, -4.24264)
|
||||||
|
|
||||||
|
[node name="guys7" parent="Stage/DancingPeople" instance=ExtResource("9_3box6")]
|
||||||
|
transform = Transform3D(1.49012e-07, 0, -1, 0, 1, 0, 1, 0, 1.49012e-07, -1.43051e-06, 0.9, -6)
|
||||||
|
|
||||||
|
[node name="guys8" parent="Stage/DancingPeople" instance=ExtResource("9_3box6")]
|
||||||
|
transform = Transform3D(0.707107, 0, -0.707107, 0, 1, 0, 0.707107, 0, 0.707107, -4.24264, 0.9, -4.24264)
|
||||||
|
|
||||||
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
||||||
transform = Transform3D(1, 0, 0, 0, 0.707107, 0.707107, 0, -0.707107, 0.707107, 0, 0, 0)
|
transform = Transform3D(1, 0, 0, 0, 0.707107, 0.707107, 0, -0.707107, 0.707107, 0, 0, 0)
|
||||||
shadow_enabled = true
|
shadow_enabled = true
|
||||||
|
|
||||||
[node name="Backstage" type="Node3D" parent="."]
|
[node name="Backstage" type="Node3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -23, 0, -2)
|
||||||
|
|
||||||
|
[node name="Powerhouse" type="CSGCombiner3D" parent="Backstage"]
|
||||||
|
use_collision = true
|
||||||
|
|
||||||
|
[node name="CSGBox3D" type="CSGBox3D" parent="Backstage/Powerhouse"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1.5, -6)
|
||||||
|
size = Vector3(1, 4, 12)
|
||||||
|
|
||||||
|
[node name="CSGBox3D" type="CSGBox3D" parent="Backstage/Powerhouse/CSGBox3D"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -0.5)
|
||||||
|
operation = 2
|
||||||
|
size = Vector3(1, 3, 2)
|
||||||
|
|
||||||
|
[node name="CSGBox3D2" type="CSGBox3D" parent="Backstage/Powerhouse"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10, 1.5, -6)
|
||||||
|
size = Vector3(1, 4, 12)
|
||||||
|
|
||||||
|
[node name="CSGBox3D3" type="CSGBox3D" parent="Backstage/Powerhouse"]
|
||||||
|
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -4.5, 1.5, -0.5)
|
||||||
|
size = Vector3(1, 4, 12)
|
||||||
|
|
||||||
|
[node name="CSGBox3D4" type="CSGBox3D" parent="Backstage/Powerhouse"]
|
||||||
|
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -4.5, 1.5, -11.5)
|
||||||
|
size = Vector3(1, 4, 12)
|
||||||
|
|
||||||
|
[node name="CSGBox3D5" type="CSGBox3D" parent="Backstage/Powerhouse"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.5, 4, -6)
|
||||||
|
size = Vector3(12, 1, 12)
|
||||||
|
material = SubResource("StandardMaterial3D_4etk5")
|
||||||
|
|
||||||
|
[node name="Decal" type="Decal" parent="Backstage/Powerhouse"]
|
||||||
|
transform = Transform3D(-4.37114e-08, -1, 0, -4.37114e-08, 1.91069e-15, -1, 1, -4.37114e-08, -4.37114e-08, 1, 2, -3)
|
||||||
|
texture_albedo = ExtResource("11_bsfgy")
|
||||||
|
|
||||||
|
[node name="OmniLight3D" type="OmniLight3D" parent="Backstage"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.2, 2.8, -6)
|
||||||
|
|
||||||
|
[node name="Interactable" parent="Backstage" instance=ExtResource("5_ygtpi")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3, 2, -11)
|
||||||
|
|
||||||
[node name="Tables" type="Node3D" parent="."]
|
[node name="Tables" type="Node3D" parent="."]
|
||||||
|
|
||||||
|
[node name="merchant_tent3" parent="Tables" instance=ExtResource("11_4etk5")]
|
||||||
|
transform = Transform3D(2.07, 0, 0, 0, 2.07, 0, 0, 0, 2.07, 4.965, 0, 1.863)
|
||||||
|
|
||||||
|
[node name="OmniLight3D" type="OmniLight3D" parent="Tables/merchant_tent3"]
|
||||||
|
transform = Transform3D(0.483092, 0, 0, 0, 0.483092, 0, 0, 0, 0.483092, 0.821256, 1.44928, 1.01449)
|
||||||
|
|
||||||
|
[node name="merchant_tent4" parent="Tables" instance=ExtResource("11_4etk5")]
|
||||||
|
transform = Transform3D(2.07, 0, 0, 0, 2.07, 0, 0, 0, 2.07, 4.965, 0, 5.796)
|
||||||
|
|
||||||
|
[node name="OmniLight3D" type="OmniLight3D" parent="Tables/merchant_tent4"]
|
||||||
|
transform = Transform3D(0.483092, 0, 0, 0, 0.483092, 0, 0, 0, 0.483092, 0.821256, 1.44928, 1.01449)
|
||||||
|
|
||||||
|
[node name="merchant_tent5" parent="Tables" instance=ExtResource("11_4etk5")]
|
||||||
|
transform = Transform3D(2.07, 0, 0, 0, 2.07, 0, 0, 0, 2.07, -0.845, 0.1, 1.863)
|
||||||
|
|
||||||
|
[node name="OmniLight3D" type="OmniLight3D" parent="Tables/merchant_tent5"]
|
||||||
|
transform = Transform3D(0.483092, 0, 0, 0, 0.483092, 0, 0, 0, 0.483092, 0.821256, 1.44928, 1.01449)
|
||||||
|
|
||||||
|
[node name="merchant_tent6" parent="Tables" instance=ExtResource("11_4etk5")]
|
||||||
|
transform = Transform3D(2.07, 0, 0, 0, 2.07, 0, 0, 0, 2.07, -0.845, 0.1, 5.796)
|
||||||
|
|
||||||
|
[node name="OmniLight3D" type="OmniLight3D" parent="Tables/merchant_tent6"]
|
||||||
|
transform = Transform3D(0.483092, 0, 0, 0, 0.483092, 0, 0, 0, 0.483092, 0.821256, 1.44928, 1.01449)
|
||||||
|
|
||||||
[node name="table0" parent="Tables" instance=ExtResource("10_ubr03")]
|
[node name="table0" parent="Tables" instance=ExtResource("10_ubr03")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 3)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 3)
|
||||||
|
|
||||||
|
|
@ -222,17 +336,57 @@ transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 0, 0,
|
||||||
path = NodePath("..")
|
path = NodePath("..")
|
||||||
|
|
||||||
[node name="CSGBox3D" type="CSGBox3D" parent="."]
|
[node name="CSGBox3D" type="CSGBox3D" parent="."]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5, 3, 6)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12, 3, 17)
|
||||||
use_collision = true
|
use_collision = true
|
||||||
size = Vector3(1, 7, 13)
|
size = Vector3(79, 7, 1)
|
||||||
material = SubResource("StandardMaterial3D_tre0f")
|
material = SubResource("StandardMaterial3D_tre0f")
|
||||||
|
|
||||||
[node name="Decal" type="Decal" parent="CSGBox3D"]
|
[node name="CSGBox3D2" type="CSGBox3D" parent="."]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 1, -1)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -12, 3, -59)
|
||||||
size = Vector3(2, 4, 6)
|
use_collision = true
|
||||||
texture_albedo = ExtResource("1_6v0xc")
|
size = Vector3(79, 7, 1)
|
||||||
|
material = SubResource("StandardMaterial3D_tre0f")
|
||||||
|
|
||||||
|
[node name="CSGBox3D3" type="CSGBox3D" parent="."]
|
||||||
|
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, -50, 3, -21)
|
||||||
|
use_collision = true
|
||||||
|
size = Vector3(79, 7, 1)
|
||||||
|
material = SubResource("StandardMaterial3D_tre0f")
|
||||||
|
|
||||||
|
[node name="CSGBox3D4" type="CSGBox3D" parent="."]
|
||||||
|
transform = Transform3D(-4.37114e-08, 0, -1, 0, 1, 0, 1, 0, -4.37114e-08, 26, 3, -21)
|
||||||
|
use_collision = true
|
||||||
|
size = Vector3(79, 7, 1)
|
||||||
|
material = SubResource("StandardMaterial3D_tre0f")
|
||||||
|
|
||||||
|
[node name="Physics" type="Node3D" parent="."]
|
||||||
|
|
||||||
|
[node name="PhysicsBarrel" parent="Physics" instance=ExtResource("13_ijkca")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -23, 0.751997, -14.7)
|
||||||
|
|
||||||
|
[node name="PhysicsBarrel2" parent="Physics" instance=ExtResource("13_ijkca")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -26, 0.751997, -14.7)
|
||||||
|
|
||||||
|
[node name="PhysicsBarrel5" parent="Physics" instance=ExtResource("13_ijkca")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -24.5, 0.751997, -14.7)
|
||||||
|
|
||||||
|
[node name="PhysicsBarrel3" parent="Physics" instance=ExtResource("13_ijkca")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -23, 2.252, -14.7)
|
||||||
|
|
||||||
|
[node name="PhysicsBarrel4" parent="Physics" instance=ExtResource("13_ijkca")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -26, 2.252, -14.7)
|
||||||
|
|
||||||
|
[node name="Barrels" type="Node3D" parent="Physics"]
|
||||||
|
|
||||||
|
[node name="Beer" type="Node3D" parent="Physics"]
|
||||||
|
|
||||||
|
[node name="PhysicsBeer" parent="Physics/Beer" instance=ExtResource("18_3uiso")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
|
||||||
|
|
||||||
|
[node name="Node3D2" type="Node3D" parent="."]
|
||||||
|
|
||||||
[connection signal="interact" from="Stage/Interactable" to="Stage/Pyro" method="_turn_on_off"]
|
[connection signal="interact" from="Stage/Interactable" to="Stage/Pyro" method="_turn_on_off"]
|
||||||
[connection signal="interact" from="Stage/Interactable" to="Stage/Pyro2" method="_turn_on_off"]
|
[connection signal="interact" from="Stage/Interactable" to="Stage/Pyro2" method="_turn_on_off"]
|
||||||
[connection signal="interact" from="Stage/Interactable" to="Stage/Pyro3" method="_turn_on_off"]
|
[connection signal="interact" from="Stage/Interactable" to="Stage/Pyro3" method="_turn_on_off"]
|
||||||
[connection signal="interact" from="Stage/Interactable" to="Stage/Pyro4" method="_turn_on_off"]
|
[connection signal="interact" from="Stage/Interactable" to="Stage/Pyro4" method="_turn_on_off"]
|
||||||
|
[connection signal="interact" from="Backstage/Interactable" to="Stage/Truss/CSGCombiner3D/Lights" method="_turn_on_off_lights"]
|
||||||
|
|
|
||||||
4
Florian/Map/dancing_people.gd
Normal file
4
Florian/Map/dancing_people.gd
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
extends Node3D
|
||||||
|
|
||||||
|
func _process(delta: float) -> void:
|
||||||
|
rotate_y(1 * delta)
|
||||||
1
Florian/Map/dancing_people.gd.uid
Normal file
1
Florian/Map/dancing_people.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
uid://cu3fdbo1lelob
|
||||||
7
Florian/Map/lights.gd
Normal file
7
Florian/Map/lights.gd
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
extends Node3D
|
||||||
|
|
||||||
|
func _turn_on_off_lights():
|
||||||
|
if visible:
|
||||||
|
hide()
|
||||||
|
else:
|
||||||
|
show()
|
||||||
1
Florian/Map/lights.gd.uid
Normal file
1
Florian/Map/lights.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
uid://ddwcbl3nbt6j4
|
||||||
20
Florian/PhysicsProps/PhysicsBarrel.tscn
Normal file
20
Florian/PhysicsProps/PhysicsBarrel.tscn
Normal file
|
|
@ -0,0 +1,20 @@
|
||||||
|
[gd_scene load_steps=4 format=3 uid="uid://ctcspqlxrw22q"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://djm4egh3lh3nj" path="res://Florian/Props/barrel_2.tscn" id="1_cseio"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://c8gnb0kut2n5h" path="res://Florian/PointsLogic/point_thing.tscn" id="2_4hgdl"]
|
||||||
|
|
||||||
|
[sub_resource type="CylinderShape3D" id="CylinderShape3D_4hgdl"]
|
||||||
|
height = 1.44609
|
||||||
|
|
||||||
|
[node name="PhysicsBarrel" type="RigidBody3D"]
|
||||||
|
|
||||||
|
[node name="barrel2" parent="." instance=ExtResource("1_cseio")]
|
||||||
|
transform = Transform3D(4, 0, 0, 0, 4, 0, 0, 0, 4, 0, 0, 0)
|
||||||
|
|
||||||
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0121093, 0)
|
||||||
|
shape = SubResource("CylinderShape3D_4hgdl")
|
||||||
|
|
||||||
|
[node name="PointThing" parent="." instance=ExtResource("2_4hgdl")]
|
||||||
|
points_worth = 5
|
||||||
|
points_name = "Barrel"
|
||||||
16
Florian/PhysicsProps/physics_beer.tscn
Normal file
16
Florian/PhysicsProps/physics_beer.tscn
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
[gd_scene load_steps=3 format=3 uid="uid://ow35tpunk744"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://d3ynlus2dwtle" path="res://Florian/Entity/People/beer.tscn" id="1_aypp7"]
|
||||||
|
|
||||||
|
[sub_resource type="CylinderShape3D" id="CylinderShape3D_aypp7"]
|
||||||
|
height = 1.125
|
||||||
|
|
||||||
|
[node name="PhysicsBeer" type="RigidBody3D"]
|
||||||
|
axis_lock_angular_x = true
|
||||||
|
axis_lock_angular_z = true
|
||||||
|
|
||||||
|
[node name="beer" parent="." instance=ExtResource("1_aypp7")]
|
||||||
|
|
||||||
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0875, 0)
|
||||||
|
shape = SubResource("CylinderShape3D_aypp7")
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
[gd_scene load_steps=6 format=3 uid="uid://crrco762ow56c"]
|
[gd_scene load_steps=7 format=3 uid="uid://crrco762ow56c"]
|
||||||
|
|
||||||
[ext_resource type="Script" uid="uid://c35h32dniya44" path="res://Florian/Player/playerRigidbody.gd" id="1_7u3v3"]
|
[ext_resource type="Script" uid="uid://c35h32dniya44" path="res://Florian/Player/playerRigidbody.gd" id="1_7u3v3"]
|
||||||
[ext_resource type="PackedScene" uid="uid://4hac7s0wvoye" path="res://Florian/Player/cool_camera.tscn" id="2_leq5j"]
|
[ext_resource type="PackedScene" uid="uid://4hac7s0wvoye" path="res://Florian/Player/cool_camera.tscn" id="2_leq5j"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://nkeb217f5ont" path="res://Florian/Player/pickup.tscn" id="3_ir482"]
|
||||||
|
|
||||||
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_jbuyh"]
|
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_jbuyh"]
|
||||||
friction = 0.0
|
friction = 0.0
|
||||||
|
|
@ -41,6 +42,9 @@ debug_shape_thickness = 1
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
||||||
player = NodePath("../../..")
|
player = NodePath("../../..")
|
||||||
|
|
||||||
|
[node name="Pickup" parent="BoundingBox/RotationHelper" instance=ExtResource("3_ir482")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
||||||
|
|
||||||
[node name="ThirdPerson" type="Node3D" parent="BoundingBox"]
|
[node name="ThirdPerson" type="Node3D" parent="BoundingBox"]
|
||||||
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, 0, 1.94907, 3)
|
transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926, 0, 1.94907, 3)
|
||||||
|
|
||||||
|
|
@ -48,6 +52,7 @@ transform = Transform3D(1, 0, 0, 0, 0.965926, 0.258819, 0, -0.258819, 0.965926,
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
|
||||||
|
|
||||||
[node name="FloorChecks" type="Node3D" parent="BoundingBox"]
|
[node name="FloorChecks" type="Node3D" parent="BoundingBox"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.1, 0)
|
||||||
|
|
||||||
[node name="Diagonals" type="Node3D" parent="BoundingBox/FloorChecks"]
|
[node name="Diagonals" type="Node3D" parent="BoundingBox/FloorChecks"]
|
||||||
transform = Transform3D(0.707107, 0, -0.707107, 0, 1, 0, 0.707107, 0, 0.707107, 0, 0, 0)
|
transform = Transform3D(0.707107, 0, -0.707107, 0, 1, 0, 0.707107, 0, 0.707107, 0, 0, 0)
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ func _calculate_points():
|
||||||
_calculate_picture_spots()
|
_calculate_picture_spots()
|
||||||
label.text = "%s\nTotal points: %d x %.2f = %.2f" % [points_string, total_points, total_points_multipliers, total_points * total_points_multipliers]
|
label.text = "%s\nTotal points: %d x %.2f = %.2f" % [points_string, total_points, total_points_multipliers, total_points * total_points_multipliers]
|
||||||
|
|
||||||
var acceptable_length = 0.1
|
var acceptable_length = 1
|
||||||
|
|
||||||
func _calculate_picture_objects():
|
func _calculate_picture_objects():
|
||||||
for takeable in PictureTakeablesArray.picture_takables:
|
for takeable in PictureTakeablesArray.picture_takables:
|
||||||
|
|
@ -41,8 +41,8 @@ func _calculate_picture_objects():
|
||||||
if raycast.is_colliding():
|
if raycast.is_colliding():
|
||||||
print("raycast hit")
|
print("raycast hit")
|
||||||
var raycast_hit = raycast.get_collision_point()
|
var raycast_hit = raycast.get_collision_point()
|
||||||
print(str((raycast_hit - self.global_position).length()))
|
print(str((raycast_hit - takeable.global_position).length()))
|
||||||
if (raycast_hit - self.global_position).length() > acceptable_length:
|
if (raycast_hit - takeable.global_position).length() > acceptable_length:
|
||||||
print("Not in range!")
|
print("Not in range!")
|
||||||
raycast.queue_free()
|
raycast.queue_free()
|
||||||
continue
|
continue
|
||||||
|
|
|
||||||
51
Florian/Player/pickup.gd
Normal file
51
Florian/Player/pickup.gd
Normal file
|
|
@ -0,0 +1,51 @@
|
||||||
|
extends Node3D
|
||||||
|
|
||||||
|
@onready var pickup_ray: RayCast3D = $PickupRay
|
||||||
|
|
||||||
|
@export var max_heaviness: float = 30.0 # max object mass allowed
|
||||||
|
@export var hold_distance: float = 3.0 # how far in front of player to hold
|
||||||
|
@export var hold_strength: float = 8.0 # how strongly we pull the object toward target
|
||||||
|
@export var damping: float = 20.0 # smoothness of movement
|
||||||
|
|
||||||
|
var held_object: RigidBody3D = null
|
||||||
|
|
||||||
|
func _physics_process(delta: float) -> void:
|
||||||
|
# --- Pickup / Drop toggle ---
|
||||||
|
if Input.is_action_just_pressed("interact"):
|
||||||
|
print("pickup")
|
||||||
|
if held_object:
|
||||||
|
_drop_object()
|
||||||
|
else:
|
||||||
|
_try_pickup()
|
||||||
|
|
||||||
|
# --- If holding an object, move it toward the target point ---
|
||||||
|
if held_object:
|
||||||
|
_move_held_object(delta)
|
||||||
|
|
||||||
|
|
||||||
|
func _try_pickup() -> void:
|
||||||
|
if pickup_ray.is_colliding():
|
||||||
|
var obj = pickup_ray.get_collider()
|
||||||
|
if obj is RigidBody3D and obj.mass <= max_heaviness:
|
||||||
|
held_object = obj
|
||||||
|
# disable gravity while held (optional)
|
||||||
|
held_object.gravity_scale = 0
|
||||||
|
|
||||||
|
|
||||||
|
func _drop_object() -> void:
|
||||||
|
if held_object:
|
||||||
|
held_object.gravity_scale = 1
|
||||||
|
held_object = null
|
||||||
|
|
||||||
|
|
||||||
|
func _move_held_object(delta: float) -> void:
|
||||||
|
if not held_object: return
|
||||||
|
|
||||||
|
var target_pos = pickup_ray.global_transform.origin + pickup_ray.global_transform.basis.z * -hold_distance
|
||||||
|
var to_target = target_pos - held_object.global_transform.origin
|
||||||
|
|
||||||
|
# Smooth velocity-based pulling
|
||||||
|
held_object.linear_velocity = held_object.linear_velocity.lerp(to_target * hold_strength, damping * delta)
|
||||||
|
|
||||||
|
# Optional: dampen angular spin so object is stable
|
||||||
|
held_object.angular_velocity = held_object.angular_velocity.lerp(Vector3.ZERO, damping * delta)
|
||||||
1
Florian/Player/pickup.gd.uid
Normal file
1
Florian/Player/pickup.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
uid://cjrrd28as06ws
|
||||||
10
Florian/Player/pickup.tscn
Normal file
10
Florian/Player/pickup.tscn
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
[gd_scene load_steps=2 format=3 uid="uid://nkeb217f5ont"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://cjrrd28as06ws" path="res://Florian/Player/pickup.gd" id="1_iqk3k"]
|
||||||
|
|
||||||
|
[node name="Pickup" type="Node3D"]
|
||||||
|
script = ExtResource("1_iqk3k")
|
||||||
|
|
||||||
|
[node name="PickupRay" type="RayCast3D" parent="."]
|
||||||
|
target_position = Vector3(0, 0, -4)
|
||||||
|
debug_shape_thickness = 1
|
||||||
|
|
@ -14,8 +14,8 @@ var max_air_speed = 1
|
||||||
var air_acceleration = max_speed * 20
|
var air_acceleration = max_speed * 20
|
||||||
|
|
||||||
var friction = 16
|
var friction = 16
|
||||||
|
var jump_velocity = 6
|
||||||
|
|
||||||
var jump_velocity = 5
|
|
||||||
|
|
||||||
|
|
||||||
var currentSpeed = 0
|
var currentSpeed = 0
|
||||||
|
|
@ -85,7 +85,7 @@ func _physics_process(delta):
|
||||||
var lR = 0 - Input.get_action_strength("left", 1) + Input.get_action_strength("right", 1)
|
var lR = 0 - Input.get_action_strength("left", 1) + Input.get_action_strength("right", 1)
|
||||||
# Get the input direction and handle the movement/deceleration.
|
# Get the input direction and handle the movement/deceleration.
|
||||||
# As good practice, you should replace UI actions with custom gameplay actions.
|
# As good practice, you should replace UI actions with custom gameplay actions.
|
||||||
var input_dir : Vector3 = Vector3(lR, 0, fB).rotated(Vector3.UP, bounding_box.rotation.y)
|
var input_dir : Vector3 = Vector3(lR, 0, fB).rotated(Vector3.UP, bounding_box.global_rotation.y)
|
||||||
|
|
||||||
var wishDir = input_dir.normalized()
|
var wishDir = input_dir.normalized()
|
||||||
|
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Add table
Reference in a new issue