Compare commits

...

78 Commits

Author SHA1 Message Date
Spencer Killen 092ee29cb6
fix pause menu controller order 2023-08-20 22:40:50 -06:00
Spencer Killen 17aaf6944e
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 17:35:20 -06:00
Spencer Killen 475398bef7
a 2023-08-20 17:35:02 -06:00
ncusimano faa041e3b0 Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 17:34:39 -06:00
ncusimano 00c7052bee WAHOO 2023-08-20 17:33:37 -06:00
Spencer Killen d4caed7c8d
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 17:27:14 -06:00
Spencer Killen f5c2d190d3
push 2023-08-20 17:26:28 -06:00
ncusimano c898f5fc10 Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 17:26:06 -06:00
ncusimano 297a56088b Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 17:25:56 -06:00
vengefulcartographer ed231c7ca6 pause menu 2023-08-20 17:22:02 -06:00
ncusimano 76ab245ad1 Slime sound 2023-08-20 17:21:02 -06:00
Spencer Killen cded78e677
pause 2023-08-20 17:18:44 -06:00
Spencer Killen 915d20005b
a 2023-08-20 17:12:21 -06:00
Spencer Killen 0c18478e1d
a 2023-08-20 17:01:30 -06:00
ncusimano c1693ff787 Cultist Killability 2023-08-20 16:58:05 -06:00
vengefulcartographer 70309d0949 Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 16:54:21 -06:00
Spencer Killen 3b749fe157
a 2023-08-20 16:53:58 -06:00
Spencer Killen 9bb2929507
revert grapeman 2023-08-20 16:53:03 -06:00
Spencer Killen d82a4cc483
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 16:52:31 -06:00
Spencer Killen 0a95e545ce
daynight 2023-08-20 16:49:08 -06:00
vengefulcartographer db2602ae30 Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 16:48:36 -06:00
vengefulcartographer 4611460751 title screen 2023-08-20 16:48:12 -06:00
ncusimano 7c47381d86 Spawner Added
On top of skyscraper :)
2023-08-20 16:43:13 -06:00
Spencer Killen 9712819295
fix glitched beachball 2023-08-20 16:31:27 -06:00
Spencer Killen 5f36024e8f
a 2023-08-20 16:27:51 -06:00
Spencer Killen 5894fd7826
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 16:25:45 -06:00
Spencer Killen f972ee5974
beach ball 2023-08-20 16:23:50 -06:00
ncusimano a16ea0cd15 Slimes Turn When Stuck :) 2023-08-20 15:43:03 -06:00
vengefulcartographer dd395a335f Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 15:23:23 -06:00
vengefulcartographer 04ce565c1b pause menu done 2023-08-20 15:23:11 -06:00
ncusimano 6f9894ede9 Merge branch 'master' into NoahBackup-08-20-1.22PM 2023-08-20 15:03:55 -06:00
ncusimano d227d15ed3 Cultist Works! 2023-08-20 15:03:09 -06:00
ncusimano bbb160cd40 Merge branch 'master' into NoahBackup-08-20-1.22PM 2023-08-20 15:02:53 -06:00
Spencer Killen 7471d64491
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 15:00:57 -06:00
Spencer Killen 0ebfcb9f32
a 2023-08-20 15:00:54 -06:00
vengefulcartographer cf7d391b00 Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 14:59:43 -06:00
vengefulcartographer 0f2f954930 pause menu 2023-08-20 14:59:32 -06:00
Spencer Killen d22b1d281d
a 2023-08-20 14:06:31 -06:00
Spencer Killen 332e9e0066
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 13:44:54 -06:00
Spencer Killen 0f80bc6c21
remove signal 2023-08-20 13:44:54 -06:00
vengefulcartographer a7ac6e9a66 Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 13:44:07 -06:00
vengefulcartographer 6035ef67f2 daynight in Island 2023-08-20 13:43:47 -06:00
Spencer Killen 4aab474313
better texture 2023-08-20 13:42:35 -06:00
Spencer Killen fef587d00a
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 13:34:05 -06:00
vengefulcartographer 264a029cbd Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 13:32:04 -06:00
vengefulcartographer 8c9ba03def new environment 2023-08-20 13:31:48 -06:00
Spencer Killen e8e0140a1f
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 13:31:12 -06:00
ncusimano 47b6c465de Villager and Cultist changes 2023-08-20 13:31:07 -06:00
Spencer Killen b95f3ea0fe
a 2023-08-20 13:30:11 -06:00
ncusimano 3bf7a73c1b Resolve Merges
Kept incoming changes
2023-08-20 13:29:27 -06:00
Spencer Killen aac237f44b
Fix colour changing 2023-08-20 13:24:04 -06:00
Spencer Killen c1cd31bc81
foostep sounds 2023-08-20 12:53:08 -06:00
Spencer Killen cc9cc3436d
Woohoo 2023-08-20 12:35:52 -06:00
Spencer Killen 3ed04bb92e
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 12:31:28 -06:00
Spencer Killen b4e0603e33
jostick camera 2023-08-20 12:31:24 -06:00
ncusimano d62d10e7e0 Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 12:18:50 -06:00
ncusimano 2c5a328665 Resolve Conflict
Also has Cultist updates
2023-08-20 12:18:04 -06:00
Spencer Killen 16d31becb5
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 12:14:11 -06:00
Spencer Killen d411911cac
Improve walking 2023-08-20 12:13:54 -06:00
vengefulcartographer 1a41a4b36d soundboard 2023-08-20 11:48:25 -06:00
vengefulcartographer 32f6f40e3b input fiddling 2023-08-20 11:19:59 -06:00
vengefulcartographer 478a16f72b moved holster up 2023-08-20 11:00:14 -06:00
Spencer Killen 61b11defb9
colorgame 2023-08-20 02:05:40 -06:00
Spencer Killen e6fbcbc1aa
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 01:03:31 -06:00
Spencer Killen 5d9cfdb01f
fun with colours 2023-08-20 01:03:30 -06:00
vengefulcartographer cddbd39765 Update island 2023-08-20 00:12:47 -06:00
vengefulcartographer 0277e45a03 update island 2023-08-20 00:11:36 -06:00
vengefulcartographer c77ef38bdb Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 00:10:14 -06:00
vengefulcartographer 1f8288735c ocean wave 2023-08-20 00:09:59 -06:00
Spencer Killen ea195e54cc
Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 00:08:32 -06:00
Spencer Killen 9e67ca3822
Add sounds 2023-08-20 00:08:31 -06:00
vengefulcartographer e22b5a7bd0 Building collision 2023-08-20 00:05:58 -06:00
ncusimano 77877b0c35 Merge branch 'master' of https://git.sjkillen.ca/sjkillen/ABGJ-23 2023-08-20 00:00:47 -06:00
ncusimano 0e4b71387e New Slimes Just Dropped 2023-08-20 00:00:17 -06:00
vengefulcartographer 25c7c0771c moved holster 2023-08-19 23:37:41 -06:00
Spencer Killen 6d3b2f70dd
a 2023-08-19 23:32:59 -06:00
vengefulcartographer 6e28f0721c world border 2023-08-19 23:32:26 -06:00
Spencer Killen eec35a04d7
a 2023-08-19 23:10:30 -06:00
112 changed files with 3336 additions and 234 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
blends/ring.blend Normal file

Binary file not shown.

View File

@ -1,11 +1,9 @@
[gd_scene load_steps=7 format=3 uid="uid://cdm267rtmop75"] [gd_scene load_steps=7 format=3 uid="uid://cdm267rtmop75"]
[ext_resource type="PackedScene" uid="uid://c4s6y758n77lw" path="res://villager_shared.tscn" id="1_6uu34"]
[ext_resource type="PackedScene" uid="uid://7utef1nnena8" path="res://player.tscn" id="1_jbc4n"] [ext_resource type="PackedScene" uid="uid://7utef1nnena8" path="res://player.tscn" id="1_jbc4n"]
[ext_resource type="PackedScene" uid="uid://dl4g083w17qh1" path="res://villager.tscn" id="2_i3gws"]
[ext_resource type="PackedScene" uid="uid://e0s4phx2jiit" path="res://cultist.tscn" id="3_renxb"] [ext_resource type="PackedScene" uid="uid://e0s4phx2jiit" path="res://cultist.tscn" id="3_renxb"]
[ext_resource type="PackedScene" uid="uid://d0uw7ykhb1cx8" path="res://spawner.tscn" id="4_ib8u6"]
[sub_resource type="CylinderShape3D" id="CylinderShape3D_62oje"]
radius = 10.0
[sub_resource type="CylinderMesh" id="CylinderMesh_c2b6h"] [sub_resource type="CylinderMesh" id="CylinderMesh_c2b6h"]
top_radius = 80.23 top_radius = 80.23
@ -15,28 +13,26 @@ data = PackedVector3Array(0, 1, 80.23, 7.8639, 1, 79.8437, 0, 0.6, 64.284, 7.863
[node name="Node3D" type="Node3D"] [node name="Node3D" type="Node3D"]
[node name="Player" parent="." instance=ExtResource("1_jbc4n")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -24, 5, 40)
[node name="StaticBody3D" type="StaticBody3D" parent="."]
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D"]
shape = SubResource("CylinderShape3D_62oje")
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."] [node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
transform = Transform3D(1, 0, 0, 0, -0.523317, 0.852138, 0, -0.852138, -0.523317, 0, 10.6239, 0) transform = Transform3D(1, 0, 0, 0, -0.523317, 0.852138, 0, -0.852138, -0.523317, 0, 10.6239, 0)
[node name="Node3D" parent="." instance=ExtResource("2_i3gws")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -22, 3, 43)
[node name="Node3D2" parent="." instance=ExtResource("3_renxb")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 29, 4, 33)
[node name="MeshInstance3D" type="MeshInstance3D" parent="."] [node name="MeshInstance3D" type="MeshInstance3D" parent="."]
mesh = SubResource("CylinderMesh_c2b6h") mesh = SubResource("CylinderMesh_c2b6h")
skeleton = NodePath("../StaticBody3D/CollisionShape3D") skeleton = NodePath("")
[node name="StaticBody3D" type="StaticBody3D" parent="MeshInstance3D"] [node name="StaticBody3D" type="StaticBody3D" parent="MeshInstance3D"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="MeshInstance3D/StaticBody3D"] [node name="CollisionShape3D" type="CollisionShape3D" parent="MeshInstance3D/StaticBody3D"]
shape = SubResource("ConcavePolygonShape3D_8q044") shape = SubResource("ConcavePolygonShape3D_8q044")
[node name="villager" parent="." instance=ExtResource("1_6uu34")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.28115, 0)
[node name="Cultist" parent="." instance=ExtResource("3_renxb")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.87818, 2, 0.191837)
[node name="Player" parent="." instance=ExtResource("1_jbc4n")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.140476, 0.999999, 1.27725)
[node name="Node3D" parent="." instance=ExtResource("4_ib8u6")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 3)

4
godot/Crate.gd Normal file
View File

@ -0,0 +1,4 @@
extends RigidBody3D
var is_holdable = true
var is_pushable = true

View File

@ -1,7 +1,6 @@
[gd_scene load_steps=26 format=3 uid="uid://3d51hjh2st8a"] [gd_scene load_steps=35 format=3 uid="uid://3d51hjh2st8a"]
[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://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" uid="uid://c1n2lfcn4rkx7" 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"]
@ -23,20 +22,52 @@
[ext_resource type="PackedScene" uid="uid://c4s6y758n77lw" path="res://villager_shared.tscn" id="24_ddfvk"] [ext_resource type="PackedScene" uid="uid://c4s6y758n77lw" path="res://villager_shared.tscn" id="24_ddfvk"]
[ext_resource type="PackedScene" uid="uid://b3aus2kigf8xt" path="res://Models/beach_decor/cooler.tscn" id="24_sl7ne"] [ext_resource type="PackedScene" uid="uid://b3aus2kigf8xt" path="res://Models/beach_decor/cooler.tscn" id="24_sl7ne"]
[ext_resource type="PackedScene" uid="uid://cft26nug7kyqb" path="res://ambient_light_1.tscn" id="25_novxt"] [ext_resource type="PackedScene" uid="uid://cft26nug7kyqb" path="res://ambient_light_1.tscn" id="25_novxt"]
[ext_resource type="PackedScene" uid="uid://ukful430mmkn" path="res://color_cube.tscn" id="25_rm0cr"]
[ext_resource type="PackedScene" uid="uid://d2pvg0f5jtpve" path="res://slime_kill_box.tscn" id="27_cjxk6"]
[ext_resource type="PackedScene" uid="uid://bw3k2c75qavce" path="res://Models/beach_decor/bucket.tscn" id="27_f3p1i"] [ext_resource type="PackedScene" uid="uid://bw3k2c75qavce" path="res://Models/beach_decor/bucket.tscn" id="27_f3p1i"]
[ext_resource type="PackedScene" uid="uid://6ycop5t3nra5" path="res://Level/World/DayNightEnvironment.tscn" id="27_jutn4"]
[ext_resource type="PackedScene" uid="uid://g4gmc0pwlak1" path="res://Models/buildings/fence.tscn" id="28_prydb"] [ext_resource type="PackedScene" uid="uid://g4gmc0pwlak1" path="res://Models/buildings/fence.tscn" id="28_prydb"]
[ext_resource type="PackedScene" uid="uid://ckbba1bs71tl" path="res://crate.tscn" id="28_x0lrj"]
[ext_resource type="PackedScene" path="res://spawner.tscn" id="29_etvc6"]
[ext_resource type="PackedScene" uid="uid://e0s4phx2jiit" path="res://cultist.tscn" id="30_8gvtc"]
[sub_resource type="Animation" id="Animation_jpnyu"]
resource_name = "waves"
length = 6.0
loop_mode = 1
tracks/0/type = "position_3d"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath(".")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = PackedFloat32Array(0, 1, 0, 1.67685, 0, 3, 1, 0, 1.72422, 0, 6, 1, 0, 1.67685, 0)
[sub_resource type="AnimationLibrary" id="AnimationLibrary_p0f8x"]
_data = {
"waves": SubResource("Animation_jpnyu")
}
[sub_resource type="WorldBoundaryShape3D" id="WorldBoundaryShape3D_hf2jh"]
[sub_resource type="BoxShape3D" id="BoxShape3D_um2bu"]
size = Vector3(19.9041, 1, 1)
[node name="World" type="Node3D"] [node name="World" type="Node3D"]
[node name="ScreenShader" parent="." instance=ExtResource("1_huyen")] [node name="ScreenShader" parent="." instance=ExtResource("1_huyen")]
[node name="WorldEnvironment" parent="." instance=ExtResource("2_lerrn")]
[node name="island" parent="." instance=ExtResource("4_lq6cy")] [node name="island" parent="." instance=ExtResource("4_lq6cy")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
[node name="ocean" parent="." instance=ExtResource("4_dey2i")] [node name="ocean" parent="." instance=ExtResource("4_dey2i")]
transform = Transform3D(5.04206, 0, 0, 0, 1.96278, 0, 0, 0, 4.42374, 0, 1.6366, 0) transform = Transform3D(5.04206, 0, 0, 0, 1.96278, 0, 0, 0, 4.42374, 0, 1.70282, 0)
[node name="AnimationPlayer" type="AnimationPlayer" parent="ocean"]
autoplay = "waves"
libraries = {
"": SubResource("AnimationLibrary_p0f8x")
}
[node name="Decorations" type="Node3D" parent="."] [node name="Decorations" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
@ -59,10 +90,10 @@ transform = Transform3D(0.0285645, 0, 0, 0, 0.0285645, 0, 0, 0, 0.0285645, 1.585
transform = Transform3D(0.0285645, 0, 0, 0, 0.0285645, 0, 0, 0, 0.0285645, 2.54841, 1.33006, -0.654728) 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("3_bth2b")] [node name="PalmCurved4" parent="Decorations/nature" instance=ExtResource("3_bth2b")]
transform = Transform3D(-0.0165298, 0, -0.0022076, 0, 0.0166766, 0, 0.0022076, 0, -0.0165298, -2.92791, 1.29787, -2.21588) transform = Transform3D(-0.0165298, 0, -0.0022076, 0, 0.0166766, 0, 0.0022076, 0, -0.0165298, -2.92791, 1.21961, -2.21588)
[node name="PalmDefault4" parent="Decorations/nature" instance=ExtResource("4_2cnue")] [node name="PalmDefault4" parent="Decorations/nature" instance=ExtResource("4_2cnue")]
transform = Transform3D(-0.0283131, 0, -0.00378129, 0, 0.0285645, 0, 0.00378129, 0, -0.0283131, -2.84367, 1.2416, -1.98999) transform = Transform3D(-0.0283131, 0, -0.00378129, 0, 0.0285645, 0, 0.00378129, 0, -0.0283131, -2.84367, 1.20295, -1.98999)
[node name="PalmDefault3" parent="Decorations/nature" instance=ExtResource("4_2cnue")] [node name="PalmDefault3" parent="Decorations/nature" instance=ExtResource("4_2cnue")]
transform = Transform3D(0.0357832, 0, 0, 0, 0.0357832, 0, 0, 0, 0.0357832, 1.57703, 1.36549, -3.01082) transform = Transform3D(0.0357832, 0, 0, 0, 0.0357832, 0, 0, 0, 0.0357832, 1.57703, 1.36549, -3.01082)
@ -89,7 +120,7 @@ transform = Transform3D(0.00614041, -0.0133402, -0.0202603, 0.000709091, 0.02098
transform = Transform3D(0.0378488, 0, 0, 0, 0.0378488, 0, 0, 0, 0.0378488, -2.78499, 0.880813, -5.32234) 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("5_prlw2")] [node name="PalmYoung6" parent="Decorations/nature" instance=ExtResource("5_prlw2")]
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) transform = Transform3D(0.0324601, 3.0533e-11, -0.00519927, -0.00145012, 0.0315694, -0.00905337, 0.00499296, 0.00916877, 0.0311721, -2.63137, 1.1568, -5.54767)
[node name="PalmYoung7" parent="Decorations/nature" instance=ExtResource("5_prlw2")] [node name="PalmYoung7" parent="Decorations/nature" instance=ExtResource("5_prlw2")]
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) 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)
@ -204,10 +235,10 @@ transform = Transform3D(8.34623, 5.51405, 6.3941, -2.9358, 24.1936, 0, -6.15225,
transform = Transform3D(0.15, 0, 0, 0, 0.15, 0, 0, 0, 0.15, -0.784158, 0.853456, 2.16031) 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("15_2v7p7")] [node name="Floatie2" parent="Decorations/beach items" instance=ExtResource("15_2v7p7")]
transform = Transform3D(0.142475, -0.0469124, 0, 0.0469124, 0.142475, 0, 0, 0, 0.15, -3.06407, 0.899973, -0.715843) transform = Transform3D(0.13762, -0.0596706, 0, 0.0596706, 0.13762, 0, 0, 0, 0.15, -2.54018, 1.22524, -0.715843)
[node name="Floatie3" parent="Decorations/beach items" instance=ExtResource("15_2v7p7")] [node name="Floatie3" parent="Decorations/beach items" instance=ExtResource("15_2v7p7")]
transform = Transform3D(0.130141, 0.074587, 0, -0.074587, 0.130141, 0, 0, 0, 0.15, 3.48612, 0.899973, -0.715843) transform = Transform3D(0.130141, 0.074587, 0, -0.074587, 0.130141, 0, 0, 0, 0.15, 3.25389, 1.0559, -0.715843)
[node name="Floatie4" parent="Decorations/beach items" instance=ExtResource("15_2v7p7")] [node name="Floatie4" parent="Decorations/beach items" instance=ExtResource("15_2v7p7")]
transform = Transform3D(0.0101389, 0.149653, -0.00103465, -0.149655, 0.0101343, -0.000689841, -0.000618342, 0.0010789, 0.149995, 0.819336, 1.48238, -0.739674) transform = Transform3D(0.0101389, 0.149653, -0.00103465, -0.149655, 0.0101343, -0.000689841, -0.000618342, 0.0010789, 0.149995, 0.819336, 1.48238, -0.739674)
@ -254,15 +285,47 @@ transform = Transform3D(-6.55671e-08, 0, -1.5, 0, 1.5, 0, 1.5, 0, -6.55671e-08,
[node name="fence4" parent="Decorations/slimepen" instance=ExtResource("28_prydb")] [node name="fence4" parent="Decorations/slimepen" instance=ExtResource("28_prydb")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 1.40507, -2.10425) transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 1.40507, -2.10425)
[node name="slimepen2" type="Node3D" parent="Decorations"]
transform = Transform3D(0.0237168, 0, -0.999719, 0, 1, 0, 0.999719, 0, 0.0237168, -2.15781, 0.0660278, -1.25464)
[node name="fence" parent="Decorations/slimepen2" instance=ExtResource("28_prydb")]
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/slimepen2" instance=ExtResource("28_prydb")]
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/slimepen2" instance=ExtResource("28_prydb")]
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/slimepen2" instance=ExtResource("28_prydb")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 1.40507, -2.10425)
[node name="slimepen3" type="Node3D" parent="Decorations"]
transform = Transform3D(0.0237168, 0, -0.999719, 0.326977, 0.945, 0.00775704, 0.944735, -0.327069, 0.0224124, -2.943, -0.05, -3.795)
[node name="fence" parent="Decorations/slimepen3" instance=ExtResource("28_prydb")]
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/slimepen3" instance=ExtResource("28_prydb")]
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/slimepen3" instance=ExtResource("28_prydb")]
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/slimepen3" instance=ExtResource("28_prydb")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 1.40507, -2.10425)
[node name="Player" parent="." instance=ExtResource("22_cuxj6")] [node name="Player" parent="." instance=ExtResource("22_cuxj6")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.192051, 2.60275, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.192051, 2.60275, 0)
[node name="Ambiance" type="AudioStreamPlayer" parent="."] [node name="Ambiance" type="AudioStreamPlayer" parent="."]
process_mode = 3
stream = ExtResource("22_4tylf") stream = ExtResource("22_4tylf")
volume_db = 5.0 volume_db = 7.0
autoplay = true autoplay = true
[node name="Music" type="AudioStreamPlayer" parent="."] [node name="Music" type="AudioStreamPlayer" parent="."]
process_mode = 3
volume_db = -5.0 volume_db = -5.0
script = ExtResource("22_2pcqg") script = ExtResource("22_2pcqg")
@ -290,8 +353,23 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.124053, 2.37507, -4.54257)
[node name="villager6" parent="." instance=ExtResource("24_ddfvk")] [node name="villager6" parent="." instance=ExtResource("24_ddfvk")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0673849, 3.01779, -4.0846) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0673849, 3.01779, -4.0846)
[node name="MeshInstance3D" parent="." instance=ExtResource("25_rm0cr")]
transform = Transform3D(0.00734817, 0, -0.0494571, 0, 0.05, 0, 0.0494571, 0, 0.00734817, -1.23595, 2.41994, -1.22155)
[node name="MeshInstance3D5" parent="." instance=ExtResource("25_rm0cr")]
transform = Transform3D(0.00734817, 0, -0.0494571, 0, 0.05, 0, 0.0494571, 0, 0.00734817, -2.01716, 2.35204, -3.86729)
[node name="MeshInstance3D4" parent="." instance=ExtResource("25_rm0cr")]
transform = Transform3D(0.0499974, 0, 0.000513115, 0, 0.05, 0, -0.000513115, 0, 0.0499974, 0.454694, 2.38629, -0.394798)
[node name="MeshInstance3D2" parent="." instance=ExtResource("25_rm0cr")]
transform = Transform3D(0.607958, 0, -0.793969, 0, 1, 0, 0.793969, 0, 0.607958, 9.95052, 2.51, 0.423212)
[node name="MeshInstance3D3" parent="." instance=ExtResource("25_rm0cr")]
transform = Transform3D(1, 0, 0, 0, 0.93516, 0.354226, 0, -0.354226, 0.93516, -1.96412, 2.47836, -3.94085)
[node name="villager7" parent="." instance=ExtResource("24_ddfvk")] [node name="villager7" parent="." instance=ExtResource("24_ddfvk")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.124385, 2.04828, -5.05899) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.33509, 2.39757, -4.24071)
[node name="villager8" parent="." instance=ExtResource("24_ddfvk")] [node name="villager8" parent="." instance=ExtResource("24_ddfvk")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.31916, 2.22662, -3.08429) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.31916, 2.22662, -3.08429)
@ -324,7 +402,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.89617, 2.21949, -3.20033)
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.20015, 2.4323, -3.35734) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.20015, 2.4323, -3.35734)
[node name="villager18" parent="." instance=ExtResource("24_ddfvk")] [node name="villager18" parent="." instance=ExtResource("24_ddfvk")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.22409, 2.20857, -4.4881) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.54584, 2.33609, -4.4881)
[node name="villager19" parent="." instance=ExtResource("24_ddfvk")] [node name="villager19" parent="." instance=ExtResource("24_ddfvk")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.709331, 2.50856, -1.84133) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.709331, 2.50856, -1.84133)
@ -346,21 +424,82 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.11439, 2.14828, -1.28646)
[node name="OmniLight3D" parent="." instance=ExtResource("25_novxt")] [node name="OmniLight3D" parent="." instance=ExtResource("25_novxt")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.13746, 2.69992, -0.435097) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.13746, 2.69992, -0.435097)
light_energy = 0.1
[node name="OmniLight3D2" parent="." instance=ExtResource("25_novxt")] [node name="OmniLight3D2" parent="." instance=ExtResource("25_novxt")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.22669, 2.84986, -2.06954) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.22669, 2.84986, -2.06954)
light_energy = 0.1
[node name="OmniLight3D3" parent="." instance=ExtResource("25_novxt")] [node name="OmniLight3D3" parent="." instance=ExtResource("25_novxt")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.76529, 2.60448, -0.160995) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.76529, 2.60448, -0.160995)
light_energy = 0.1
[node name="OmniLight3D4" parent="." instance=ExtResource("25_novxt")] [node name="OmniLight3D4" parent="." instance=ExtResource("25_novxt")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.57077, 2.69259, -2.05053) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.57077, 2.69259, -2.05053)
light_energy = 0.1
[node name="OmniLight3D5" parent="." instance=ExtResource("25_novxt")] [node name="OmniLight3D5" parent="." instance=ExtResource("25_novxt")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.41671, 2.76416, -1.32509) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.41671, 2.76416, -1.32509)
light_energy = 0.1
[node name="OmniLight3D6" parent="." instance=ExtResource("25_novxt")] [node name="OmniLight3D6" parent="." instance=ExtResource("25_novxt")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.19657, 2.76902, -1.46035) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.19657, 2.76902, -1.46035)
light_energy = 0.1
[node name="WorldBottom" type="StaticBody3D" parent="."]
[node name="CollisionShape3D" type="CollisionShape3D" parent="WorldBottom"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.82605, 0)
shape = SubResource("WorldBoundaryShape3D_hf2jh")
[node name="WorldBarrier" type="StaticBody3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.798231, -0.956472)
[node name="CollisionShape3D" type="CollisionShape3D" parent="WorldBarrier"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.12891, 5.37235)
shape = SubResource("BoxShape3D_um2bu")
[node name="WorldBarrier2" type="StaticBody3D" parent="."]
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -1.29945, -0.798231, 0)
[node name="CollisionShape3D" type="CollisionShape3D" parent="WorldBarrier2"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.12274, 3.12891, 9.31375)
shape = SubResource("BoxShape3D_um2bu")
[node name="WorldBarrier4" type="StaticBody3D" parent="."]
transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -17.0471, -0.798231, 0)
[node name="CollisionShape3D" type="CollisionShape3D" parent="WorldBarrier4"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.12274, 3.12891, 9.31375)
shape = SubResource("BoxShape3D_um2bu")
[node name="WorldBarrier3" type="StaticBody3D" parent="."]
transform = Transform3D(-1, 0, -8.74228e-08, 0, 1, 0, 8.74228e-08, 0, -1, 4.00923, -0.798231, -0.328403)
[node name="CollisionShape3D" type="CollisionShape3D" parent="WorldBarrier3"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.12274, 3.12891, 9.31375)
shape = SubResource("BoxShape3D_um2bu")
[node name="DayNightEnvironment" parent="." instance=ExtResource("27_jutn4")]
[node name="SlimeKillBox" parent="." instance=ExtResource("27_cjxk6")]
[node name="Crate" parent="." instance=ExtResource("28_x0lrj")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 2.44712, -1)
[node name="Crate3" parent="." instance=ExtResource("28_x0lrj")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.75088, 2.39766, -4.28161)
[node name="Crate4" parent="." instance=ExtResource("28_x0lrj")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.31447, 2.55588, -2.13044)
[node name="Node3D" parent="." instance=ExtResource("29_etvc6")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.41845, 9.26863, -2.62281)
[node name="Node3D2" type="Node3D" parent="."]
[node name="Cultist" parent="." instance=ExtResource("30_8gvtc")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.10096, 2.40767, -1.07752)
[connection signal="finished" from="Music" to="Music" method="_on_finished"] [connection signal="finished" from="Music" to="Music" method="_on_finished"]
[connection signal="timeout" from="Music/Transition" to="Music" method="_on_transition_timer_timeout"] [connection signal="timeout" from="Music/Transition" to="Music" method="_on_transition_timer_timeout"]

View File

@ -0,0 +1,16 @@
extends Node3D
var we = [
preload("res://Level/World/world_environment.tscn"),
preload("res://Level/World/world_environment2.tscn"),
]
var current = null
func _ready():
randomize_env()
func randomize_env():
if current:
current.queue_free()
current = we[randi() % we.size()].instantiate()
add_child(current)

View File

@ -0,0 +1,43 @@
[gd_scene load_steps=4 format=3 uid="uid://6ycop5t3nra5"]
[ext_resource type="Script" path="res://Level/World/DayNightEnvironment.gd" id="1_82go6"]
[sub_resource type="Animation" id="Animation_l6y5u"]
resource_name = "DayNightCycle"
length = 300.0
loop_mode = 1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("DirectionalLight3D:rotation")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 300),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector3(0, 0, 0), Vector3(0, 0, 0)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_2t5g8"]
_data = {
"DayNightCycle": SubResource("Animation_l6y5u")
}
[node name="DayNightEnvironment" type="Node3D"]
script = ExtResource("1_82go6")
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
light_energy = 0.75
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
autoplay = "DayNightCycle"
libraries = {
"": SubResource("AnimationLibrary_2t5g8")
}
[node name="ChangeWorldEnvTimer" type="Timer" parent="."]
wait_time = 60.0
autostart = true
[connection signal="timeout" from="ChangeWorldEnvTimer" to="." method="randomize_env"]

View File

@ -4,13 +4,14 @@
[sub_resource type="ShaderMaterial" id="ShaderMaterial_yagpk"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_yagpk"]
shader = ExtResource("1_ldrc3") shader = ExtResource("1_ldrc3")
shader_parameter/param = 40.0 shader_parameter/param = 20.0
shader_parameter/param2 = 20.0 shader_parameter/param2 = 15.0
shader_parameter/scale = 4.0 shader_parameter/scale = 4.0
shader_parameter/grid = 5 shader_parameter/grid = 5
shader_parameter/anim_period = 3.0 shader_parameter/anim_period = 3.0
[node name="ScreenShader" type="CanvasLayer"] [node name="ScreenShader" type="CanvasLayer"]
process_mode = 1
[node name="ColorRect" type="ColorRect" parent="."] [node name="ColorRect" type="ColorRect" parent="."]
material = SubResource("ShaderMaterial_yagpk") material = SubResource("ShaderMaterial_yagpk")
@ -19,3 +20,4 @@ anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
mouse_filter = 2

View File

@ -10,10 +10,11 @@ sky_material = SubResource("PanoramaSkyMaterial_0nggy")
[sub_resource type="Environment" id="Environment_cxd2l"] [sub_resource type="Environment" id="Environment_cxd2l"]
background_mode = 2 background_mode = 2
background_color = Color(0.733333, 0.317647, 0, 1)
sky = SubResource("Sky_xyk6p") sky = SubResource("Sky_xyk6p")
ambient_light_source = 2 ambient_light_source = 2
ambient_light_color = Color(0.988235, 0.752941, 0.580392, 1) ambient_light_color = Color(0.988235, 0.752941, 0.580392, 1)
ambient_light_energy = 0.5 ambient_light_energy = 0.01
fog_light_color = Color(0.670588, 0.333333, 0.129412, 1) fog_light_color = Color(0.670588, 0.333333, 0.129412, 1)
fog_sun_scatter = 0.25 fog_sun_scatter = 0.25
fog_sky_affect = 0.0 fog_sky_affect = 0.0

View File

@ -0,0 +1,23 @@
[gd_scene load_steps=6 format=3 uid="uid://b7il746jn24fx"]
[sub_resource type="Gradient" id="Gradient_6ntap"]
colors = PackedColorArray(0, 0.447059, 0.603922, 1, 0, 0, 0, 1)
[sub_resource type="GradientTexture2D" id="GradientTexture2D_bagcs"]
gradient = SubResource("Gradient_6ntap")
fill_from = Vector2(1, 0.525641)
[sub_resource type="PhysicalSkyMaterial" id="PhysicalSkyMaterial_es06v"]
night_sky = SubResource("GradientTexture2D_bagcs")
[sub_resource type="Sky" id="Sky_qcavb"]
sky_material = SubResource("PhysicalSkyMaterial_es06v")
[sub_resource type="Environment" id="Environment_d42bf"]
background_mode = 2
background_energy_multiplier = 0.5
sky = SubResource("Sky_qcavb")
sky_rotation = Vector3(6.28319, 0, 0)
[node name="WorldEnvironment" type="WorldEnvironment"]
environment = SubResource("Environment_d42bf")

4
godot/MeshInstance3D.gd Normal file
View File

@ -0,0 +1,4 @@
extends MeshInstance3D
func _process(_delta):
visible = Global.cheating

609
godot/Models/ball.obj Normal file
View File

@ -0,0 +1,609 @@
# Blender v2.90.0 OBJ File: ''
# www.blender.org
mtllib ball.mtl
o ball
v 0.076537 0.000000 -0.184776
v 0.000000 0.076537 -0.184776
v 0.070711 0.076537 -0.170711
v 0.000000 0.200000 0.000000
v 0.029289 0.184776 -0.070711
v 0.000000 0.184776 -0.076537
v 0.000000 0.141421 -0.141421
v -0.070711 0.076537 -0.170711
v -0.054120 0.141421 -0.130656
v 0.130656 -0.076537 -0.130656
v 0.141421 0.000000 -0.141421
v 0.054120 0.184776 -0.054120
v 0.054120 0.141421 -0.130656
v 0.029289 -0.184776 -0.070711
v 0.000000 -0.200000 -0.000000
v 0.000000 -0.184776 -0.076537
v 0.000000 -0.141421 -0.141421
v 0.054120 -0.141421 -0.130656
v 0.170711 -0.076537 -0.070711
v 0.184776 0.000000 -0.076537
v 0.100000 -0.141421 -0.100000
v 0.070711 -0.076537 -0.170711
v 0.130656 0.076537 -0.130656
v 0.100000 0.141421 -0.100000
v 0.054120 -0.184776 -0.054120
v 0.130656 0.141421 -0.054120
v 0.070711 0.184776 -0.029289
v 0.184776 0.076537 0.000000
v 0.141421 0.141421 0.000000
v 0.170711 0.076537 -0.070711
v 0.070711 -0.184776 -0.029289
v 0.130656 -0.141421 -0.054120
v 0.184776 -0.076537 -0.000000
v 0.200000 0.000000 0.000000
v 0.070711 -0.184776 0.029289
v 0.141421 -0.141421 -0.000000
v 0.130656 -0.141421 0.054120
v 0.076537 -0.184776 -0.000000
v 0.076537 0.184776 0.000000
v 0.170711 -0.076537 0.070711
v 0.184776 -0.000000 0.076537
v 0.100000 -0.141421 0.100000
v 0.170711 0.076537 0.070711
v 0.130656 0.141421 0.054120
v 0.070711 0.184776 0.029289
v 0.130656 -0.076537 0.130656
v 0.141421 -0.000000 0.141421
v 0.130656 0.076537 0.130656
v 0.100000 0.141421 0.100000
v 0.076537 -0.000000 0.184776
v 0.070711 0.076537 0.170711
v 0.054120 -0.184776 0.054120
v 0.054120 0.184776 0.054120
v 0.070711 -0.076537 0.170711
v 0.029289 -0.184776 0.070711
v 0.054120 -0.141421 0.130656
v 0.000000 -0.184776 0.076537
v 0.029289 0.184776 0.070711
v 0.054120 0.141421 0.130656
v 0.000000 -0.076537 0.184776
v 0.000000 -0.000000 0.200000
v 0.000000 -0.141421 0.141421
v -0.070711 0.076537 0.170711
v 0.000000 0.076537 0.184776
v 0.000000 0.184776 0.076537
v -0.029289 -0.184776 0.070711
v 0.000000 0.141421 0.141421
v -0.054120 -0.141421 0.130656
v -0.054120 -0.184776 0.054120
v -0.029289 0.184776 0.070711
v -0.070711 -0.076537 0.170711
v -0.076537 -0.000000 0.184776
v -0.070711 0.184776 -0.029289
v -0.141421 0.141421 0.000000
v -0.076537 0.184776 0.000000
v -0.054120 0.141421 0.130656
v -0.130656 0.076537 0.130656
v -0.070711 0.184776 0.029289
v -0.054120 0.184776 0.054120
v -0.130656 -0.076537 0.130656
v -0.141421 -0.000000 0.141421
v -0.170711 -0.076537 0.070711
v -0.184776 -0.000000 0.076537
v -0.100000 0.141421 0.100000
v -0.100000 -0.141421 0.100000
v -0.070711 -0.184776 0.029289
v -0.184776 -0.076537 -0.000000
v -0.200000 0.000000 0.000000
v 0.000000 0.000000 -0.200000
v -0.170711 0.076537 0.070711
v -0.130656 0.141421 0.054120
v -0.130656 -0.141421 0.054120
v -0.076537 -0.184776 -0.000000
v -0.170711 -0.076537 -0.070711
v -0.184776 0.000000 -0.076537
v -0.184776 0.076537 0.000000
v -0.141421 -0.141421 -0.000000
v -0.130656 -0.076537 -0.130656
v -0.141421 0.000000 -0.141421
v -0.130656 -0.141421 -0.054120
v -0.170711 0.076537 -0.070711
v -0.130656 0.141421 -0.054120
v -0.070711 -0.184776 -0.029289
v -0.070711 -0.076537 -0.170711
v -0.076537 0.000000 -0.184776
v -0.100000 -0.141421 -0.100000
v -0.130656 0.076537 -0.130656
v -0.100000 0.141421 -0.100000
v -0.054120 0.184776 -0.054120
v -0.054120 -0.184776 -0.054120
v 0.000000 -0.076537 -0.184776
v -0.029289 0.184776 -0.070711
v -0.029289 -0.184776 -0.070711
v -0.054120 -0.141421 -0.130656
vt 0.687500 0.500000
vt 0.750000 0.625000
vt 0.687500 0.625000
vt 0.703125 1.000000
vt 0.687500 0.875000
vt 0.750000 0.875000
vt 0.750000 0.750000
vt 0.812500 0.625000
vt 0.812500 0.750000
vt 0.625000 0.375000
vt 0.625000 0.500000
vt 0.625000 0.875000
vt 0.687500 0.750000
vt 0.687500 0.125000
vt 0.734375 0.000000
vt 0.750000 0.125000
vt 0.750000 0.250000
vt 0.687500 0.250000
vt 0.562500 0.375000
vt 0.562500 0.500000
vt 0.625000 0.250000
vt 0.687500 0.375000
vt 0.625000 0.625000
vt 0.625000 0.750000
vt 0.625000 0.125000
vt 0.671875 0.000000
vt 0.640625 1.000000
vt 0.562500 0.750000
vt 0.562500 0.875000
vt 0.500000 0.625000
vt 0.500000 0.750000
vt 0.562500 0.625000
vt 0.562500 0.125000
vt 0.562500 0.250000
vt 0.609375 0.000000
vt 0.578125 1.000000
vt 0.500000 0.375000
vt 0.500000 0.500000
vt 0.437500 0.125000
vt 0.500000 0.250000
vt 0.437500 0.250000
vt 0.500000 0.125000
vt 0.546875 0.000000
vt 0.515625 1.000000
vt 0.500000 0.875000
vt 0.437500 0.375000
vt 0.437500 0.500000
vt 0.375000 0.250000
vt 0.437500 0.625000
vt 0.437500 0.750000
vt 0.484375 0.000000
vt 0.453124 1.000000
vt 0.437500 0.875000
vt 0.375000 0.375000
vt 0.375000 0.500000
vt 0.375000 0.625000
vt 0.375000 0.750000
vt 0.312500 0.500000
vt 0.312500 0.625000
vt 0.375000 0.125000
vt 0.421875 0.000000
vt 0.390625 1.000000
vt 0.375000 0.875000
vt 0.312500 0.375000
vt 0.312500 0.125000
vt 0.312500 0.250000
vt 0.250000 0.125000
vt 0.296875 0.000000
vt 0.359375 0.000000
vt 0.328125 1.000000
vt 0.312500 0.875000
vt 0.312500 0.750000
vt 0.250000 0.375000
vt 0.250000 0.500000
vt 0.250000 0.250000
vt 0.187500 0.625000
vt 0.250000 0.625000
vt 0.265625 1.000000
vt 0.250000 0.875000
vt 0.187500 0.125000
vt 0.234375 0.000000
vt 0.250000 0.750000
vt 0.187500 0.250000
vt 0.125000 0.125000
vt 0.171875 0.000000
vt 0.203125 1.000000
vt 0.187500 0.875000
vt 0.187500 0.375000
vt 0.187500 0.500000
vt 0.937500 0.875000
vt 1.000000 0.750000
vt 1.000000 0.875000
vt 0.187500 0.750000
vt 0.125000 0.625000
vt 0.078125 1.000000
vt 0.062500 0.875000
vt 0.125000 0.875000
vt 0.125000 0.375000
vt 0.125000 0.500000
vt 0.062500 0.375000
vt 0.062500 0.500000
vt 0.140625 1.000000
vt 0.125000 0.750000
vt 0.125000 0.250000
vt 0.062500 0.125000
vt 0.109375 0.000000
vt 0.000000 0.375000
vt 0.000000 0.500000
vt 0.750000 0.500000
vt 0.062500 0.625000
vt 0.062500 0.750000
vt 0.062500 0.250000
vt 0.000000 0.125000
vt 0.046875 0.000000
vt 0.015625 1.000000
vt 0.000000 0.875000
vt 0.937500 0.375000
vt 1.000000 0.500000
vt 0.937500 0.500000
vt 0.000000 0.625000
vt 0.000000 0.750000
vt 0.000000 0.250000
vt 0.953125 1.000000
vt 0.875000 0.375000
vt 0.875000 0.500000
vt 0.937500 0.250000
vt 1.000000 0.250000
vt 1.000000 0.375000
vt 0.937500 0.625000
vt 0.937500 0.750000
vt 0.937500 0.125000
vt 1.000000 0.625000
vt 0.984375 0.000000
vt 1.000000 0.125000
vt 0.812500 0.375000
vt 0.812500 0.500000
vt 0.875000 0.250000
vt 0.875000 0.625000
vt 0.875000 0.750000
vt 0.875000 0.875000
vt 0.875000 0.125000
vt 0.921875 0.000000
vt 0.890625 1.000000
vt 0.750000 0.375000
vt 0.812500 0.875000
vt 0.796875 0.000000
vt 0.812500 0.125000
vt 0.812500 0.250000
vt 0.859375 0.000000
vt 0.828125 1.000000
vt 0.765625 1.000000
vn 0.3827 0.0000 -0.9239
vn 0.0000 0.3744 -0.9273
vn 0.3549 0.3744 -0.8567
vn -0.0000 1.0000 0.0000
vn 0.1543 0.9152 -0.3724
vn -0.0000 0.9152 -0.4031
vn -0.0000 0.6952 -0.7189
vn -0.3549 0.3744 -0.8567
vn -0.2751 0.6952 -0.6641
vn 0.6557 -0.3744 -0.6557
vn 0.7071 0.0000 -0.7071
vn 0.2850 0.9152 -0.2850
vn 0.2751 0.6952 -0.6641
vn 0.1543 -0.9152 -0.3724
vn -0.0000 -1.0000 -0.0000
vn 0.0000 -0.9152 -0.4031
vn -0.0000 -0.6952 -0.7189
vn 0.2751 -0.6952 -0.6641
vn 0.8567 -0.3744 -0.3549
vn 0.9239 0.0000 -0.3827
vn 0.5083 -0.6952 -0.5083
vn 0.3549 -0.3744 -0.8567
vn 0.6557 0.3744 -0.6557
vn 0.5083 0.6952 -0.5083
vn 0.2850 -0.9152 -0.2850
vn 0.6641 0.6952 -0.2751
vn 0.3724 0.9152 -0.1543
vn 0.9273 0.3744 0.0000
vn 0.7189 0.6952 0.0000
vn 0.8567 0.3744 -0.3549
vn 0.3724 -0.9152 -0.1543
vn 0.6641 -0.6952 -0.2751
vn 0.9273 -0.3744 -0.0000
vn 1.0000 0.0000 -0.0000
vn 0.3724 -0.9152 0.1543
vn 0.7189 -0.6952 -0.0000
vn 0.6641 -0.6952 0.2751
vn 0.4031 -0.9152 0.0000
vn 0.4031 0.9152 0.0000
vn 0.8567 -0.3744 0.3549
vn 0.9239 0.0000 0.3827
vn 0.5083 -0.6952 0.5083
vn 0.8567 0.3744 0.3549
vn 0.6641 0.6952 0.2751
vn 0.3724 0.9152 0.1543
vn 0.6557 -0.3744 0.6557
vn 0.7071 0.0000 0.7071
vn 0.6557 0.3744 0.6557
vn 0.5083 0.6952 0.5083
vn 0.3827 -0.0000 0.9239
vn 0.3549 0.3744 0.8567
vn 0.2850 -0.9152 0.2850
vn 0.2850 0.9152 0.2850
vn 0.3549 -0.3744 0.8567
vn 0.1543 -0.9152 0.3724
vn 0.2751 -0.6952 0.6641
vn -0.0000 -0.9152 0.4031
vn 0.1543 0.9152 0.3724
vn 0.2751 0.6952 0.6641
vn 0.0000 -0.3744 0.9273
vn 0.0000 -0.0000 1.0000
vn -0.0000 -0.6952 0.7189
vn -0.3549 0.3744 0.8567
vn 0.0000 0.3744 0.9273
vn 0.0000 0.9152 0.4031
vn -0.1543 -0.9152 0.3724
vn 0.0000 0.6952 0.7189
vn -0.2751 -0.6952 0.6641
vn -0.2850 -0.9152 0.2850
vn -0.1543 0.9152 0.3724
vn -0.3549 -0.3744 0.8567
vn -0.3827 -0.0000 0.9239
vn -0.3724 0.9152 -0.1543
vn -0.7189 0.6952 0.0000
vn -0.4031 0.9152 -0.0000
vn -0.2751 0.6952 0.6641
vn -0.6557 0.3744 0.6557
vn -0.3724 0.9152 0.1543
vn -0.2850 0.9152 0.2850
vn -0.6557 -0.3744 0.6557
vn -0.7071 -0.0000 0.7071
vn -0.8567 -0.3744 0.3549
vn -0.9239 -0.0000 0.3827
vn -0.5083 0.6952 0.5083
vn -0.5083 -0.6952 0.5083
vn -0.3724 -0.9152 0.1543
vn -0.9273 -0.3744 0.0000
vn -1.0000 -0.0000 0.0000
vn -0.0000 0.0000 -1.0000
vn -0.8567 0.3744 0.3549
vn -0.6641 0.6952 0.2751
vn -0.6641 -0.6952 0.2751
vn -0.4031 -0.9152 -0.0000
vn -0.8567 -0.3744 -0.3549
vn -0.9239 0.0000 -0.3827
vn -0.9273 0.3744 0.0000
vn -0.7189 -0.6952 -0.0000
vn -0.6557 -0.3744 -0.6557
vn -0.7071 0.0000 -0.7071
vn -0.6641 -0.6952 -0.2751
vn -0.8567 0.3744 -0.3549
vn -0.6641 0.6952 -0.2751
vn -0.3724 -0.9152 -0.1543
vn -0.3549 -0.3744 -0.8567
vn -0.3827 0.0000 -0.9239
vn -0.5083 -0.6952 -0.5083
vn -0.6557 0.3744 -0.6557
vn -0.5083 0.6952 -0.5083
vn -0.2850 0.9152 -0.2850
vn -0.2850 -0.9152 -0.2850
vn -0.0000 -0.3744 -0.9273
vn -0.1543 0.9152 -0.3724
vn -0.1543 -0.9152 -0.3724
vn -0.2751 -0.6952 -0.6641
usemtl Default_OBJ
s 1
f 1/1/1 2/2/2 3/3/3
f 4/4/4 5/5/5 6/6/6
f 7/7/7 8/8/8 9/9/9
f 10/10/10 1/1/1 11/11/11
f 12/12/12 13/13/13 5/5/5
f 3/3/3 7/7/7 13/13/13
f 14/14/14 15/15/15 16/16/16
f 14/14/14 17/17/17 18/18/18
f 19/19/19 11/11/11 20/20/20
f 19/19/19 21/21/21 10/10/10
f 10/10/10 18/18/18 22/22/22
f 23/23/23 13/13/13 24/24/24
f 25/25/25 18/18/18 21/21/21
f 23/23/23 1/1/1 3/3/3
f 25/25/25 15/26/15 14/14/14
f 4/27/4 12/12/12 5/5/5
f 26/28/26 12/12/12 27/29/27
f 28/30/28 26/28/26 29/31/29
f 30/32/30 24/24/24 26/28/26
f 31/33/31 21/21/21 32/34/32
f 20/20/20 23/23/23 30/32/30
f 31/33/31 15/35/15 25/25/25
f 4/36/4 27/29/27 12/12/12
f 33/37/33 20/20/20 34/38/34
f 33/37/33 32/34/32 19/19/19
f 35/39/35 36/40/36 37/41/37
f 36/40/36 31/33/31 32/34/32
f 34/38/34 30/32/30 28/30/28
f 38/42/38 15/43/15 31/33/31
f 4/44/4 39/45/39 27/29/27
f 40/46/40 34/38/34 41/47/41
f 29/31/29 27/29/27 39/45/39
f 37/41/37 33/37/33 40/46/40
f 42/48/42 35/39/35 37/41/37
f 41/47/41 28/30/28 43/49/43
f 43/49/43 29/31/29 44/50/44
f 35/39/35 15/51/15 38/42/38
f 4/52/4 45/53/45 39/45/39
f 46/54/46 41/47/41 47/55/47
f 45/53/45 29/31/29 39/45/39
f 48/56/48 44/50/44 49/57/49
f 50/58/50 48/56/48 51/59/51
f 48/56/48 41/47/41 43/49/43
f 52/60/52 15/61/15 35/39/35
f 4/62/4 53/63/53 45/53/45
f 54/64/54 47/55/47 50/58/50
f 49/57/49 45/53/45 53/63/53
f 46/54/46 37/41/37 40/46/40
f 55/65/55 42/48/42 56/66/56
f 57/67/57 15/68/15 55/65/55
f 55/65/55 15/69/15 52/60/52
f 4/70/4 58/71/58 53/63/53
f 59/72/59 53/63/53 58/71/58
f 60/73/60 50/58/50 61/74/61
f 54/64/54 42/48/42 46/54/46
f 51/59/51 49/57/49 59/72/59
f 62/75/62 55/65/55 56/66/56
f 63/76/63 61/74/61 64/77/64
f 4/78/4 65/79/65 58/71/58
f 61/74/61 51/59/51 64/77/64
f 66/80/66 15/81/15 57/67/57
f 67/82/67 58/71/58 65/79/65
f 62/75/62 54/64/54 60/73/60
f 64/77/64 59/72/59 67/82/67
f 66/80/66 62/75/62 68/83/68
f 69/84/69 15/85/15 66/80/66
f 4/86/4 70/87/70 65/79/65
f 71/88/71 61/74/61 72/89/72
f 73/90/73 74/91/74 75/92/75
f 76/93/76 65/79/65 70/87/70
f 71/88/71 62/75/62 60/73/60
f 63/76/63 67/82/67 76/93/76
f 77/94/77 72/89/72 63/76/63
f 4/95/4 78/96/78 79/97/79
f 80/98/80 72/89/72 81/99/81
f 82/100/82 81/99/81 83/101/83
f 4/102/4 79/97/79 70/87/70
f 80/98/80 68/83/68 71/88/71
f 77/94/77 76/93/76 84/103/84
f 69/84/69 68/83/68 85/104/85
f 86/105/86 15/106/15 69/84/69
f 87/107/87 83/101/83 88/108/88
f 78/96/78 84/103/84 79/97/79
f 22/22/22 89/109/89 1/1/1
f 82/100/82 85/104/85 80/98/80
f 90/110/90 84/103/84 91/111/91
f 86/105/86 85/104/85 92/112/92
f 90/110/90 81/99/81 77/94/77
f 93/113/93 15/114/15 86/105/86
f 4/115/4 75/116/75 78/96/78
f 94/117/94 88/118/88 95/119/95
f 75/116/75 91/111/91 78/96/78
f 87/107/87 92/112/92 82/100/82
f 96/120/96 91/111/91 74/121/74
f 97/122/97 86/105/86 92/112/92
f 96/120/96 83/101/83 90/110/90
f 4/123/4 73/90/73 75/92/75
f 98/124/98 95/119/95 99/125/99
f 98/124/98 100/126/100 94/117/94
f 94/117/94 97/127/97 87/128/87
f 101/129/101 74/91/74 102/130/102
f 103/131/103 97/127/97 100/126/100
f 101/129/101 88/118/88 96/132/96
f 103/131/103 15/133/15 93/134/93
f 104/135/104 99/125/99 105/136/105
f 104/135/104 106/137/106 98/124/98
f 107/138/107 102/130/102 108/139/108
f 109/140/109 102/130/102 73/90/73
f 110/141/110 100/126/100 106/137/106
f 107/138/107 95/119/95 101/129/101
f 110/141/110 15/142/15 103/131/103
f 4/143/4 109/140/109 73/90/73
f 111/144/111 105/136/105 89/109/89
f 9/9/9 109/140/109 112/145/112
f 16/16/16 15/146/15 113/147/113
f 8/8/8 108/139/108 9/9/9
f 113/147/113 106/137/106 114/148/114
f 8/8/8 99/125/99 107/138/107
f 113/147/113 15/149/15 110/141/110
f 4/150/4 112/145/112 109/140/109
f 13/13/13 6/6/6 5/5/5
f 18/18/18 111/144/111 22/22/22
f 17/17/17 113/147/113 114/148/114
f 2/2/2 105/136/105 8/8/8
f 4/151/4 6/6/6 112/145/112
f 111/144/111 114/148/114 104/135/104
f 6/6/6 9/9/9 112/145/112
f 84/103/84 70/87/70 79/97/79
f 1/1/1 89/109/89 2/2/2
f 7/7/7 2/2/2 8/8/8
f 10/10/10 22/22/22 1/1/1
f 12/12/12 24/24/24 13/13/13
f 3/3/3 2/2/2 7/7/7
f 14/14/14 16/16/16 17/17/17
f 19/19/19 10/10/10 11/11/11
f 19/19/19 32/34/32 21/21/21
f 10/10/10 21/21/21 18/18/18
f 23/23/23 3/3/3 13/13/13
f 25/25/25 14/14/14 18/18/18
f 23/23/23 11/11/11 1/1/1
f 26/28/26 24/24/24 12/12/12
f 28/30/28 30/32/30 26/28/26
f 30/32/30 23/23/23 24/24/24
f 31/33/31 25/25/25 21/21/21
f 20/20/20 11/11/11 23/23/23
f 33/37/33 19/19/19 20/20/20
f 33/37/33 36/40/36 32/34/32
f 35/39/35 38/42/38 36/40/36
f 36/40/36 38/42/38 31/33/31
f 34/38/34 20/20/20 30/32/30
f 40/46/40 33/37/33 34/38/34
f 29/31/29 26/28/26 27/29/27
f 37/41/37 36/40/36 33/37/33
f 42/48/42 52/60/52 35/39/35
f 41/47/41 34/38/34 28/30/28
f 43/49/43 28/30/28 29/31/29
f 46/54/46 40/46/40 41/47/41
f 45/53/45 44/50/44 29/31/29
f 48/56/48 43/49/43 44/50/44
f 50/58/50 47/55/47 48/56/48
f 48/56/48 47/55/47 41/47/41
f 54/64/54 46/54/46 47/55/47
f 49/57/49 44/50/44 45/53/45
f 46/54/46 42/48/42 37/41/37
f 55/65/55 52/60/52 42/48/42
f 59/72/59 49/57/49 53/63/53
f 60/73/60 54/64/54 50/58/50
f 54/64/54 56/66/56 42/48/42
f 51/59/51 48/56/48 49/57/49
f 62/75/62 57/67/57 55/65/55
f 63/76/63 72/89/72 61/74/61
f 61/74/61 50/58/50 51/59/51
f 67/82/67 59/72/59 58/71/58
f 62/75/62 56/66/56 54/64/54
f 64/77/64 51/59/51 59/72/59
f 66/80/66 57/67/57 62/75/62
f 71/88/71 60/73/60 61/74/61
f 73/90/73 102/130/102 74/91/74
f 76/93/76 67/82/67 65/79/65
f 71/88/71 68/83/68 62/75/62
f 63/76/63 64/77/64 67/82/67
f 77/94/77 81/99/81 72/89/72
f 80/98/80 71/88/71 72/89/72
f 82/100/82 80/98/80 81/99/81
f 80/98/80 85/104/85 68/83/68
f 77/94/77 63/76/63 76/93/76
f 69/84/69 66/80/66 68/83/68
f 87/107/87 82/100/82 83/101/83
f 78/96/78 91/111/91 84/103/84
f 22/22/22 111/144/111 89/109/89
f 82/100/82 92/112/92 85/104/85
f 90/110/90 77/94/77 84/103/84
f 86/105/86 69/84/69 85/104/85
f 90/110/90 83/101/83 81/99/81
f 94/117/94 87/128/87 88/118/88
f 75/116/75 74/121/74 91/111/91
f 87/107/87 97/122/97 92/112/92
f 96/120/96 90/110/90 91/111/91
f 97/122/97 93/113/93 86/105/86
f 96/120/96 88/108/88 83/101/83
f 98/124/98 94/117/94 95/119/95
f 98/124/98 106/137/106 100/126/100
f 94/117/94 100/126/100 97/127/97
f 101/129/101 96/132/96 74/91/74
f 103/131/103 93/134/93 97/127/97
f 101/129/101 95/119/95 88/118/88
f 104/135/104 98/124/98 99/125/99
f 104/135/104 114/148/114 106/137/106
f 107/138/107 101/129/101 102/130/102
f 109/140/109 108/139/108 102/130/102
f 110/141/110 103/131/103 100/126/100
f 107/138/107 99/125/99 95/119/95
f 111/144/111 104/135/104 105/136/105
f 9/9/9 108/139/108 109/140/109
f 8/8/8 107/138/107 108/139/108
f 113/147/113 110/141/110 106/137/106
f 8/8/8 105/136/105 99/125/99
f 13/13/13 7/7/7 6/6/6
f 18/18/18 17/17/17 111/144/111
f 17/17/17 16/16/16 113/147/113
f 2/2/2 89/109/89 105/136/105
f 111/144/111 17/17/17 114/148/114
f 6/6/6 7/7/7 9/9/9
f 84/103/84 76/93/76 70/87/70

View File

@ -0,0 +1,21 @@
[remap]
importer="wavefront_obj"
importer_version=1
type="Mesh"
uid="uid://dpgqjgkd2kx4b"
path="res://.godot/imported/ball.obj-63d20b0a9ce44f76b9838ac1af5672bf.mesh"
[deps]
files=["res://.godot/imported/ball.obj-63d20b0a9ce44f76b9838ac1af5672bf.mesh"]
source_file="res://Models/ball.obj"
dest_files=["res://.godot/imported/ball.obj-63d20b0a9ce44f76b9838ac1af5672bf.mesh", "res://.godot/imported/ball.obj-63d20b0a9ce44f76b9838ac1af5672bf.mesh"]
[params]
generate_tangents=true
scale_mesh=Vector3(1, 1, 1)
offset_mesh=Vector3(0, 0, 0)
optimize_mesh=true

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=4 format=3 uid="uid://ce7jbp7f55cro"] [gd_scene load_steps=5 format=3 uid="uid://ce7jbp7f55cro"]
[ext_resource type="PackedScene" uid="uid://cchgdggcbyk6f" path="res://Models/buildings/building_01.1.glb" id="1_8lstr"] [ext_resource type="PackedScene" uid="uid://cchgdggcbyk6f" path="res://Models/buildings/building_01.1.glb" id="1_8lstr"]
[ext_resource type="Texture2D" uid="uid://b4qbyum6h2mhf" path="res://Textures/building_01.png" id="2_w406q"] [ext_resource type="Texture2D" uid="uid://b4qbyum6h2mhf" path="res://Textures/building_01.png" id="2_w406q"]
@ -6,7 +6,16 @@
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_i2ykn"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_i2ykn"]
albedo_texture = ExtResource("2_w406q") albedo_texture = ExtResource("2_w406q")
[sub_resource type="BoxShape3D" id="BoxShape3D_hr7fu"]
size = Vector3(0.183504, 0.527655, 0.184908)
[node name="building_01_1" instance=ExtResource("1_8lstr")] [node name="building_01_1" instance=ExtResource("1_8lstr")]
[node name="node_id4" parent="root" index="0"] [node name="node_id4" parent="root" index="0"]
surface_material_override/0 = SubResource("StandardMaterial3D_i2ykn") surface_material_override/0 = SubResource("StandardMaterial3D_i2ykn")
[node name="StaticBody3D" type="StaticBody3D" parent="root" index="1"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="root/StaticBody3D" index="0"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.251368)
shape = SubResource("BoxShape3D_hr7fu")

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=4 format=3 uid="uid://cx44bjuxlhq06"] [gd_scene load_steps=5 format=3 uid="uid://cx44bjuxlhq06"]
[ext_resource type="PackedScene" uid="uid://buxxa2rq7s8eg" path="res://Models/buildings/building_01.2.glb" id="1_sy5sk"] [ext_resource type="PackedScene" uid="uid://buxxa2rq7s8eg" path="res://Models/buildings/building_01.2.glb" id="1_sy5sk"]
[ext_resource type="Texture2D" uid="uid://vnlqr1ob2tss" path="res://Textures/building_02.png" id="2_ns75r"] [ext_resource type="Texture2D" uid="uid://vnlqr1ob2tss" path="res://Textures/building_02.png" id="2_ns75r"]
@ -6,7 +6,16 @@
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ktg7d"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ktg7d"]
albedo_texture = ExtResource("2_ns75r") albedo_texture = ExtResource("2_ns75r")
[sub_resource type="BoxShape3D" id="BoxShape3D_wy6bt"]
size = Vector3(0.377897, 0.527655, 0.362437)
[node name="building_01_2" instance=ExtResource("1_sy5sk")] [node name="building_01_2" instance=ExtResource("1_sy5sk")]
[node name="node_id4" parent="root" index="0"] [node name="node_id4" parent="root" index="0"]
surface_material_override/0 = SubResource("StandardMaterial3D_ktg7d") surface_material_override/0 = SubResource("StandardMaterial3D_ktg7d")
[node name="StaticBody3D" type="StaticBody3D" parent="." index="1"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D" index="0"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.00178906, 0.251368)
shape = SubResource("BoxShape3D_wy6bt")

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=4 format=3 uid="uid://bm65tvb4irjqw"] [gd_scene load_steps=5 format=3 uid="uid://bm65tvb4irjqw"]
[ext_resource type="PackedScene" uid="uid://dgm33vy6bq45y" path="res://Models/buildings/building_01.3.glb" id="1_6oij5"] [ext_resource type="PackedScene" uid="uid://dgm33vy6bq45y" path="res://Models/buildings/building_01.3.glb" id="1_6oij5"]
[ext_resource type="Texture2D" uid="uid://cew7em3xjhrbo" path="res://Textures/building_03.png" id="2_qgmwq"] [ext_resource type="Texture2D" uid="uid://cew7em3xjhrbo" path="res://Textures/building_03.png" id="2_qgmwq"]
@ -6,7 +6,16 @@
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_h48n6"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_h48n6"]
albedo_texture = ExtResource("2_qgmwq") albedo_texture = ExtResource("2_qgmwq")
[sub_resource type="BoxShape3D" id="BoxShape3D_t3xdb"]
size = Vector3(0.366655, 0.527655, 0.367689)
[node name="building_01_3" instance=ExtResource("1_6oij5")] [node name="building_01_3" instance=ExtResource("1_6oij5")]
[node name="node_id4" parent="root" index="0"] [node name="node_id4" parent="root" index="0"]
surface_material_override/0 = SubResource("StandardMaterial3D_h48n6") surface_material_override/0 = SubResource("StandardMaterial3D_h48n6")
[node name="StaticBody3D" type="StaticBody3D" parent="root" index="1"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="root/StaticBody3D" index="0"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.251368)
shape = SubResource("BoxShape3D_t3xdb")

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=4 format=3 uid="uid://tky3cco2k7v7"] [gd_scene load_steps=5 format=3 uid="uid://tky3cco2k7v7"]
[ext_resource type="PackedScene" uid="uid://ct2lgbtpp3wp" path="res://Models/buildings/building_01.4.glb" id="1_xd1sg"] [ext_resource type="PackedScene" uid="uid://ct2lgbtpp3wp" path="res://Models/buildings/building_01.4.glb" id="1_xd1sg"]
[ext_resource type="Texture2D" uid="uid://ckmnisf86xgdu" path="res://Textures/building_05.png" id="2_1ortp"] [ext_resource type="Texture2D" uid="uid://ckmnisf86xgdu" path="res://Textures/building_05.png" id="2_1ortp"]
@ -6,7 +6,16 @@
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_3mjbs"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_3mjbs"]
albedo_texture = ExtResource("2_1ortp") albedo_texture = ExtResource("2_1ortp")
[sub_resource type="BoxShape3D" id="BoxShape3D_6nnc6"]
size = Vector3(0.53466, 0.527655, 0.526273)
[node name="building_01_4" instance=ExtResource("1_xd1sg")] [node name="building_01_4" instance=ExtResource("1_xd1sg")]
[node name="node_id4" parent="root" index="0"] [node name="node_id4" parent="root" index="0"]
surface_material_override/0 = SubResource("StandardMaterial3D_3mjbs") surface_material_override/0 = SubResource("StandardMaterial3D_3mjbs")
[node name="StaticBody3D" type="StaticBody3D" parent="root" index="1"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="root/StaticBody3D" index="0"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.251368)
shape = SubResource("BoxShape3D_6nnc6")

BIN
godot/Models/grape_man.glb (Stored with Git LFS)

Binary file not shown.

View File

@ -1,10 +1,12 @@
[gd_scene load_steps=40 format=3 uid="uid://bgoo1lbt28na"] [gd_scene load_steps=42 format=3 uid="uid://bgoo1lbt28na"]
[ext_resource type="PackedScene" uid="uid://bhanbx2dyhv2d" path="res://Models/grape_man.glb" id="1_fh5yr"] [ext_resource type="PackedScene" uid="uid://bhanbx2dyhv2d" path="res://Models/grape_man.glb" id="1_fh5yr"]
[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"]
[ext_resource type="AudioStream" uid="uid://csboqs15k3vps" path="res://Sounds/dropgrunt.ogg" id="3_c648b"] [ext_resource type="AudioStream" uid="uid://csboqs15k3vps" path="res://Sounds/dropgrunt.ogg" id="3_c648b"]
[ext_resource type="AudioStream" uid="uid://baocyd0p3jcku" path="res://Sounds/pickup_grunt.ogg" id="4_nvurj"] [ext_resource type="AudioStream" uid="uid://baocyd0p3jcku" path="res://Sounds/pickup_grunt.ogg" id="4_nvurj"]
[ext_resource type="AudioStream" uid="uid://b80t5xqckjoqk" path="res://Sounds/heartychuckle.ogg" id="5_b32re"] [ext_resource type="AudioStream" uid="uid://b80t5xqckjoqk" path="res://Sounds/heartychuckle.ogg" id="5_b32re"]
[ext_resource type="AudioStream" uid="uid://0mhkf1ls1wcn" path="res://Sounds/sadsound.ogg" id="6_qe4bi"]
[ext_resource type="AudioStream" uid="uid://bmocmgq06o6f5" path="res://Sounds/footstep.ogg" id="7_b2ik0"]
[sub_resource type="AnimationNodeAdd2" id="AnimationNodeAdd2_a0vxm"] [sub_resource type="AnimationNodeAdd2" id="AnimationNodeAdd2_a0vxm"]
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"]
@ -153,7 +155,7 @@ 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.0962932, 0, 0, 0.995353) bones/0/rotation = Quaternion(0.0733902, 0, 0, 0.997303)
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)
@ -168,6 +170,7 @@ bones/15/rotation = Quaternion(0.105246, -0.0039338, 0.0113526, 0.994374)
[node name="OmniLight3D" type="OmniLight3D" parent="." index="2"] [node name="OmniLight3D" type="OmniLight3D" parent="." index="2"]
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)
light_energy = 0.5
[node name="AnimationTree" type="AnimationTree" parent="." index="3"] [node name="AnimationTree" type="AnimationTree" parent="." index="3"]
tree_root = SubResource("AnimationNodeStateMachine_6mfdu") tree_root = SubResource("AnimationNodeStateMachine_6mfdu")
@ -186,3 +189,13 @@ stream = ExtResource("4_nvurj")
[node name="chuckle" type="AudioStreamPlayer" parent="." index="6"] [node name="chuckle" type="AudioStreamPlayer" parent="." index="6"]
stream = ExtResource("5_b32re") stream = ExtResource("5_b32re")
[node name="sad" type="AudioStreamPlayer" parent="." index="7"]
stream = ExtResource("6_qe4bi")
[node name="soundboard" type="AudioStreamPlayer" parent="." index="8"]
stream = ExtResource("6_qe4bi")
[node name="footstep" type="AudioStreamPlayer" parent="." index="9"]
stream = ExtResource("7_b2ik0")
volume_db = -10.0

View File

@ -3,7 +3,7 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://ce7qteyplgh7d" uid="uid://ce7qteyplgh7d"
path.s3tc="res://.godot/imported/grape_man_grape_man.png-2e5aad214d556f9249cd2523505b0b56.s3tc.ctex" path.bptc="res://.godot/imported/grape_man_grape_man.png-2e5aad214d556f9249cd2523505b0b56.bptc.ctex"
metadata={ metadata={
"imported_formats": ["s3tc_bptc"], "imported_formats": ["s3tc_bptc"],
"vram_texture": true "vram_texture": true
@ -13,12 +13,12 @@ generator_parameters={}
[deps] [deps]
source_file="res://Models/grape_man_grape_man.png" source_file="res://Models/grape_man_grape_man.png"
dest_files=["res://.godot/imported/grape_man_grape_man.png-2e5aad214d556f9249cd2523505b0b56.s3tc.ctex"] dest_files=["res://.godot/imported/grape_man_grape_man.png-2e5aad214d556f9249cd2523505b0b56.bptc.ctex"]
[params] [params]
compress/mode=2 compress/mode=2
compress/high_quality=false compress/high_quality=true
compress/lossy_quality=0.7 compress/lossy_quality=0.7
compress/hdr_compression=1 compress/hdr_compression=1
compress/normal_map=0 compress/normal_map=0

6
godot/Models/island.gd Normal file
View File

@ -0,0 +1,6 @@
extends Node3D
var color: Color = Color("6c9e25")
func _ready():
$Island_001.get_active_material(0).albedo_color = color

BIN
godot/Models/island.glb (Stored with Git LFS)

Binary file not shown.

View File

@ -30,8 +30,14 @@ animation/remove_immutable_tracks=true
import_script/path="" import_script/path=""
_subresources={ _subresources={
"nodes": { "nodes": {
"PATH:Ocean": { "PATH:Island": {
"import/skip_import": true "generate/physics": true,
"physics/shape_type": 2
},
"PATH:Island_001": {
"decomposition/precision": 10,
"generate/physics": true,
"physics/shape_type": 2
} }
} }
} }

File diff suppressed because one or more lines are too long

BIN
godot/Models/island_grass1.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,36 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b3wyfvquke8qo"
path.s3tc="res://.godot/imported/island_grass1.png-c39d61eb86dec28b8d2d96218e7ec133.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={}
[deps]
source_file="res://Models/island_grass1.png"
dest_files=["res://.godot/imported/island_grass1.png-c39d61eb86dec28b8d2d96218e7ec133.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

BIN
godot/Models/ring.glb (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,32 @@
[remap]
importer="scene"
importer_version=1
type="PackedScene"
uid="uid://frderao1bxgg"
path="res://.godot/imported/ring.glb-26ac43d74527a30dcde06236f951335f.scn"
[deps]
source_file="res://Models/ring.glb"
dest_files=["res://.godot/imported/ring.glb-26ac43d74527a30dcde06236f951335f.scn"]
[params]
nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1

5
godot/Models/ring.tscn Normal file
View File

@ -0,0 +1,5 @@
[gd_scene load_steps=2 format=3 uid="uid://bcq7y48pnfq18"]
[ext_resource type="PackedScene" uid="uid://frderao1bxgg" path="res://Models/ring.glb" id="1_6ph58"]
[node name="ring" instance=ExtResource("1_6ph58")]

View File

@ -1,7 +1,7 @@
[gd_scene load_steps=3 format=3 uid="uid://g8vvg7c5ddkr"] [gd_scene load_steps=3 format=3 uid="uid://g8vvg7c5ddkr"]
[ext_resource type="PackedScene" uid="uid://djmky2hkbqcni" path="res://Models/rocks/rock1.glb" id="1_81161"] [ext_resource type="PackedScene" uid="uid://djmky2hkbqcni" path="res://Models/rocks/rock1.glb" id="1_81161"]
[ext_resource type="Material" uid="uid://c5u3wq66dejxt" path="res://Textures/rock.tres" id="2_iyn5h"] [ext_resource type="Material" path="res://Textures/rock.tres" id="2_iyn5h"]
[node name="rock1" instance=ExtResource("1_81161")] [node name="rock1" instance=ExtResource("1_81161")]

View File

@ -2,12 +2,22 @@ extends Node3D
@onready var animation_state: AnimationNodeStateMachinePlayback = $AnimationTree.get("parameters/playback") @onready var animation_state: AnimationNodeStateMachinePlayback = $AnimationTree.get("parameters/playback")
@export var colors: Array[Color] @export var colors: Array[Color]
@onready var color_idx: int = randi() % colors.size()
var mat: Material
func _ready(): func _ready():
var color = colors[randi() % colors.size()] mat = $Armature/Skeleton3D/Slime.get_active_material(3).duplicate()
var mat = $Armature/Skeleton3D/Slime.get_active_material(3).duplicate()
$Armature/Skeleton3D/Slime.set_surface_override_material(3, mat) $Armature/Skeleton3D/Slime.set_surface_override_material(3, mat)
$Armature/Skeleton3D/Slime.get_active_material(3).albedo_color = color var color = colors[randi() % colors.size()]
mat.albedo_color = color
func change_color(idx: int):
color_idx = idx % colors.size()
var color = colors[color_idx]
get_tree().create_tween().tween_property(mat, "albedo_color", color, .3)
func get_color():
return colors[color_idx]
func walk(): func walk():
animation_state.travel("Walk") animation_state.travel("Walk")

View File

@ -33,13 +33,13 @@ colors = Array[Color]([Color(0, 0.113725, 0.905882, 1), Color(0.592157, 0, 0.243
transform = Transform3D(0.859505, 0, -0.511128, 0, 1, 0, 0.511128, 0, 0.859505, 0, 0, 0) transform = Transform3D(0.859505, 0, -0.511128, 0, 1, 0, 0.511128, 0, 0.859505, 0, 0, 0)
[node name="Skeleton3D" parent="Armature" index="0"] [node name="Skeleton3D" parent="Armature" index="0"]
bones/1/position = Vector3(0, 0.532995, 0) bones/1/position = Vector3(0, 0.421476, 0)
bones/2/rotation = Quaternion(-0.0627444, 0.00212883, -0.213248, 0.974979) bones/2/rotation = Quaternion(-0.0627444, 0.00212883, -0.213248, 0.974979)
bones/3/rotation = Quaternion(0.100834, -0.698956, 0.0125015, 0.707911) bones/3/rotation = Quaternion(0.100834, -0.698956, 0.0125015, 0.707911)
bones/7/rotation = Quaternion(-0.129267, 2.66294e-09, 2.4271e-09, 0.99161) bones/7/rotation = Quaternion(-0.257687, 2.32309e-09, 2.75415e-09, 0.966228)
bones/8/rotation = Quaternion(0.591049, -1.01643e-09, -4.6686e-11, 0.806635) bones/8/rotation = Quaternion(0.19232, -9.0028e-10, -4.74124e-10, 0.981332)
bones/10/rotation = Quaternion(0.085015, -4.52807e-08, -6.64593e-08, 0.99638) bones/10/rotation = Quaternion(0.252279, -5.58669e-08, -5.78452e-08, 0.967654)
bones/11/rotation = Quaternion(-0.613365, 5.48373e-08, 5.89338e-08, 0.789799) bones/11/rotation = Quaternion(-0.195486, 7.54015e-08, 2.81945e-08, 0.980707)
[node name="AnimationTree" type="AnimationTree" parent="." index="2"] [node name="AnimationTree" type="AnimationTree" parent="." index="2"]
tree_root = SubResource("AnimationNodeStateMachine_prt7l") tree_root = SubResource("AnimationNodeStateMachine_prt7l")

View File

@ -1,11 +1,13 @@
extends CharacterBody3D extends CharacterBody3D
const SPEED = 0.5 const SPEED = 0.4
const JUMP_VELOCITY = 4.5 const JUMP_VELOCITY = 4.5
@export var horiz_sens = 0.25 @export var horiz_sens = 0.25
@export var vert_sens = 0.25 @export var vert_sens = 0.25
var LOWER_CAMERA_LIMIT = -60
var UPPER_CAMERA_LIMIT = -11
var target: WeakRef = weakref(null) var target: WeakRef = weakref(null)
var holding: WeakRef = weakref(null) var holding: WeakRef = weakref(null)
@ -13,29 +15,39 @@ var holding: WeakRef = weakref(null)
# Get the gravity from the project settings to be synced with RigidBody nodes. # Get the gravity from the project settings to be synced with RigidBody nodes.
var gravity = ProjectSettings.get_setting("physics/3d/default_gravity") var gravity = ProjectSettings.get_setting("physics/3d/default_gravity")
@onready var pause_menu = $PauseMenu
func _ready(): func _ready():
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
$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(LOWER_CAMERA_LIMIT), deg_to_rad(UPPER_CAMERA_LIMIT))
func _process(_delta): func _process(_delta):
# Brings your mouse out of the window if you press escape. Add pause screen function here?
if Input.is_action_pressed("ui_cancel"):
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
var obj = holding.get_ref() var obj = holding.get_ref()
if obj: if obj:
obj.global_transform.origin = $grape_man.get_pickup_bone_location() obj.global_transform.origin = $grape_man.get_pickup_bone_location()
var event = Input.get_vector("camera_left", "camera_right", "camera_up", "camera_down") * 4
rotate_y(deg_to_rad(-event.x * horiz_sens))
$CameraMount.rotate_x(deg_to_rad(-event.y * vert_sens))
var roty = deg_to_rad(event.x * horiz_sens)
$grape_man.rotate_y(roty)
$CameraMount.global_rotation.x = clampf($CameraMount.global_rotation.x, deg_to_rad(LOWER_CAMERA_LIMIT), deg_to_rad(UPPER_CAMERA_LIMIT))
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:
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))
var roty = deg_to_rad(event.relative.x * horiz_sens) var roty = deg_to_rad(event.relative.x * horiz_sens)
$grape_man.rotate_y(roty) $grape_man.rotate_y(roty)
$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(LOWER_CAMERA_LIMIT), deg_to_rad(UPPER_CAMERA_LIMIT))
if Input.is_action_just_pressed("ui_accept"): if Input.is_action_just_pressed("ui_accept"):
var obj = holding.get_ref() var obj = holding.get_ref()
@ -46,7 +58,17 @@ func _input(event):
$grape_man/pickup.play() $grape_man/pickup.play()
$grape_man.pickup() $grape_man.pickup()
if Input.is_action_just_pressed("Soundboard"):
var sound_list = (["res://Sounds/jingle.ogg",
"res://Sounds/yawn.ogg",
"res://Sounds/woohoo.ogg",
"res://Sounds/slimeu.ogg"])
var sound = sound_list[randi() % sound_list.size()]
$grape_man/soundboard.stream = load(sound)
$grape_man/soundboard.play()
func _physics_process(delta): func _physics_process(delta):
@ -88,24 +110,44 @@ func _physics_process(delta):
move_and_slide() move_and_slide()
var push = 0.1
# after calling move_and_slide()
for index in get_slide_collision_count():
var c = get_slide_collision(index)
var collision = c.get_collider()
if "is_pushable" not in collision:
continue
collision.apply_central_impulse(-c.get_normal() * push)
func drop(): func drop():
var obj = holding.get_ref() var obj: Node3D = holding.get_ref()
if not obj: if not obj:
print("dropped, but wasn't holding anything?") print("dropped, but wasn't holding anything?")
return return
remove_collision_exception_with(obj) remove_collision_exception_with(obj)
obj.look_at(Vector3(
$grape_man.global_position.x,
obj.global_position.y,
$grape_man.global_position.z,
))
obj.rotate_y(deg_to_rad(-90))
obj.translate_object_local(Vector3(0.125, 0.0, 0.0))
obj.set_process(true) obj.set_process(true)
obj.set_physics_process(true)
holding = weakref(null) holding = weakref(null)
func _on_grape_man_anim_check_grab(_position): func _on_grape_man_anim_check_grab(_position):
var obj = target.get_ref() var obj = target.get_ref()
if not obj: if not obj:
$grape_man/sad.play()
return return
$grape_man/chuckle.play()
holding = target holding = target
target = weakref(null) target = weakref(null)
add_collision_exception_with(obj) add_collision_exception_with(obj)
obj.set_process(false) obj.set_process(false)
obj.set_physics_process(false)
func _on_holster_enter(body): func _on_holster_enter(body):
if target.get_ref() or holding.get_ref() or "is_holdable" not in body: if target.get_ref() or holding.get_ref() or "is_holdable" not in body:

BIN
godot/Sounds/IslandBoogie.ogg (Stored with Git LFS)

Binary file not shown.

BIN
godot/Sounds/death.ogg (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://c2cnum2ucjh2q"
path="res://.godot/imported/death.ogg-d87d44f044d6d892acc0289ac44ecb04.oggvorbisstr"
[deps]
source_file="res://Sounds/death.ogg"
dest_files=["res://.godot/imported/death.ogg-d87d44f044d6d892acc0289ac44ecb04.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
godot/Sounds/footstep.ogg (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://bmocmgq06o6f5"
path="res://.godot/imported/footstep.ogg-a3742943496340f7ceaa5ff03c6d5aa9.oggvorbisstr"
[deps]
source_file="res://Sounds/footstep.ogg"
dest_files=["res://.godot/imported/footstep.ogg-a3742943496340f7ceaa5ff03c6d5aa9.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
godot/Sounds/jingle.ogg (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://cv01lbq7nickx"
path="res://.godot/imported/jingle.ogg-30e599e95982f25a980bebf5f44752bb.oggvorbisstr"
[deps]
source_file="res://Sounds/jingle.ogg"
dest_files=["res://.godot/imported/jingle.ogg-30e599e95982f25a980bebf5f44752bb.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
godot/Sounds/slimeu.ogg (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://c2p6nh3x3s71d"
path="res://.godot/imported/slimeu.ogg-e1a145db9ae5baab7ff05b87ac82d526.oggvorbisstr"
[deps]
source_file="res://Sounds/slimeu.ogg"
dest_files=["res://.godot/imported/slimeu.ogg-e1a145db9ae5baab7ff05b87ac82d526.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
godot/Sounds/woohoo.ogg (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://cmga4mqbgi48u"
path="res://.godot/imported/woohoo.ogg-e84d72f39cbdd9c391663f84463dd6e4.oggvorbisstr"
[deps]
source_file="res://Sounds/woohoo.ogg"
dest_files=["res://.godot/imported/woohoo.ogg-e84d72f39cbdd9c391663f84463dd6e4.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
godot/Sounds/yawn.ogg (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://gs0cxfn62d4y"
path="res://.godot/imported/yawn.ogg-84771ea7ecb9e9dc22c90aa208a644a4.oggvorbisstr"
[deps]
source_file="res://Sounds/yawn.ogg"
dest_files=["res://.godot/imported/yawn.ogg-84771ea7ecb9e9dc22c90aa208a644a4.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
godot/Textures/ball.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cuc1p8nq2vs6p"
path.s3tc="res://.godot/imported/ball.png-bc91096d257a7ab889f72eb03aef0a7c.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Textures/ball.png"
dest_files=["res://.godot/imported/ball.png-bc91096d257a7ab889f72eb03aef0a7c.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

BIN
godot/Textures/blueskygradient.jpg (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://6k4ialfiwfxe"
path.s3tc="res://.godot/imported/blueskygradient.jpg-d6c6e0628914c8bb67a152e92adda07d.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://Textures/blueskygradient.jpg"
dest_files=["res://.godot/imported/blueskygradient.jpg-d6c6e0628914c8bb67a152e92adda07d.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

View File

@ -1,13 +0,0 @@
[gd_resource type="StandardMaterial3D" load_steps=3 format=3 uid="uid://yuhlhpwji3c4"]
[ext_resource type="Texture2D" uid="uid://d0pddcjy8uhp" path="res://Textures/leaves3.png" id="1_2cxg6"]
[ext_resource type="Texture2D" uid="uid://b2iu26wm0edrx" path="res://Textures/dirt1.png" id="1_yock7"]
[resource]
diffuse_mode = 3
specular_mode = 1
albedo_color = Color(1, 1, 0.682353, 1)
albedo_texture = ExtResource("1_yock7")
normal_texture = ExtResource("1_2cxg6")
uv1_scale = Vector3(150, 150, 150)
uv1_triplanar_sharpness = 0.00995752

View File

@ -6,7 +6,7 @@
[resource] [resource]
diffuse_mode = 3 diffuse_mode = 3
specular_mode = 1 specular_mode = 1
albedo_color = Color(0.423529, 0.619608, 0.145098, 1) albedo_color = Color(0.294118, 0.435294, 0.0980392, 1)
albedo_texture = ExtResource("1_40rrr") albedo_texture = ExtResource("1_40rrr")
normal_texture = ExtResource("1_r1qrb") normal_texture = ExtResource("1_r1qrb")
uv1_scale = Vector3(75, 75, 75) uv1_scale = Vector3(75, 75, 75)

BIN
godot/Textures/kill.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cali86gqly7e3"
path="res://.godot/imported/kill.png-e4f5f842049185427e5a508f24a44118.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Textures/kill.png"
dest_files=["res://.godot/imported/kill.png-e4f5f842049185427e5a508f24a44118.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

View File

@ -6,7 +6,7 @@
[resource] [resource]
diffuse_mode = 3 diffuse_mode = 3
specular_mode = 1 specular_mode = 1
albedo_color = Color(0.439216, 0.552941, 0, 1) albedo_color = Color(0.192157, 0.376471, 0.156863, 1)
albedo_texture = ExtResource("1_5s240") albedo_texture = ExtResource("1_5s240")
normal_texture = ExtResource("2_blarx") normal_texture = ExtResource("2_blarx")
uv1_scale = Vector3(2, 2, 2) uv1_scale = Vector3(2, 2, 2)

BIN
godot/Textures/redo.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b5l5hur0x6nx0"
path="res://.godot/imported/redo.png-2705bf6a1fcf83551fb9c16401980fe8.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://Textures/redo.png"
dest_files=["res://.godot/imported/redo.png-2705bf6a1fcf83551fb9c16401980fe8.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

View File

@ -1,12 +1,13 @@
[gd_resource type="StandardMaterial3D" load_steps=2 format=3 uid="uid://yuhlhpwji3c4"] [gd_resource type="StandardMaterial3D" load_steps=3 format=3 uid="uid://yuhlhpwji3c4"]
[ext_resource type="Texture2D" uid="uid://b2iu26wm0edrx" path="res://Textures/dirt1.png" id="1_cauqg"]
[ext_resource type="Texture2D" uid="uid://d0pddcjy8uhp" path="res://Textures/leaves3.png" id="1_cj3li"] [ext_resource type="Texture2D" uid="uid://d0pddcjy8uhp" path="res://Textures/leaves3.png" id="1_cj3li"]
[resource] [resource]
diffuse_mode = 3 diffuse_mode = 3
specular_mode = 1 specular_mode = 1
albedo_color = Color(0.219608, 0.494118, 0.0705882, 1) albedo_color = Color(1, 0.996078, 0.592157, 1)
albedo_texture = ExtResource("1_cj3li") albedo_texture = ExtResource("1_cauqg")
normal_texture = ExtResource("1_cj3li") normal_texture = ExtResource("1_cj3li")
uv1_scale = Vector3(150, 150, 150) uv1_scale = Vector3(150, 150, 150)
uv1_triplanar_sharpness = 0.00995752 uv1_triplanar_sharpness = 0.00995752

5
godot/UI/CameraPivot.gd Normal file
View File

@ -0,0 +1,5 @@
extends Node3D
func _process(delta):
rotation.y += 0.05*delta

BIN
godot/UI/Exit.png (Stored with Git LFS) Normal file

Binary file not shown.

34
godot/UI/Exit.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://hgb2ifbdpp3"
path="res://.godot/imported/Exit.png-26c1acde1a0bd151103ef1554a8e3af5.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/Exit.png"
dest_files=["res://.godot/imported/Exit.png-26c1acde1a0bd151103ef1554a8e3af5.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

98
godot/UI/MenE62D.tmp Normal file
View File

@ -0,0 +1,98 @@
[gd_scene load_steps=6 format=3 uid="uid://ctginaw0hfnwu"]
[ext_resource type="Script" path="res://UI/MenuScreen.gd" id="1_pvf1f"]
[ext_resource type="Texture2D" uid="uid://dxxd258q3uomg" path="res://UI/Play.png" id="1_r8ube"]
[ext_resource type="Texture2D" uid="uid://brtraq11vg3ss" path="res://UI/People.png" id="2_wj8wl"]
[ext_resource type="Texture2D" uid="uid://6ujjdpbmqeh7" path="res://UI/Message-Question.png" id="3_f6ddc"]
[ext_resource type="Texture2D" uid="uid://cgr1apo42wg2o" path="res://UI/slimeoosoddysseytitle.png" id="4_up0xh"]
[node name="MenuScreen" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_pvf1f")
[node name="CenterContainer" type="CenterContainer" parent="."]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -272.0
offset_top = 25.0
offset_right = 282.0
offset_bottom = 173.0
grow_horizontal = 2
grow_vertical = 2
[node name="HBoxContainer" type="HBoxContainer" parent="CenterContainer"]
layout_mode = 2
theme_override_constants/separation = 75
alignment = 1
[node name="PlayButton" type="Button" parent="CenterContainer/HBoxContainer"]
process_mode = 3
texture_filter = 1
layout_mode = 2
focus_neighbor_left = NodePath("../CreditsButton")
focus_neighbor_right = NodePath("../CreditsButton")
focus_next = NodePath(".")
text = " "
icon = ExtResource("1_r8ube")
flat = true
icon_alignment = 1
[node name="CreditsButton" type="Button" parent="CenterContainer/HBoxContainer"]
process_mode = 3
texture_filter = 1
layout_mode = 2
focus_neighbor_left = NodePath("../PlayButton")
focus_neighbor_right = NodePath("../PlayButton")
focus_next = NodePath("../PlayButton")
theme_override_constants/outline_size = 1
theme_override_constants/h_separation = 0
theme_override_constants/icon_max_width = 0
text = " "
icon = ExtResource("2_wj8wl")
flat = true
icon_alignment = 1
[node name="ControlsButton" type="Button" parent="CenterContainer/HBoxContainer"]
process_mode = 3
texture_filter = 1
layout_mode = 2
focus_neighbor_left = NodePath("../PlayButton")
focus_neighbor_right = NodePath("../PlayButton")
focus_next = NodePath("../PlayButton")
theme_override_constants/outline_size = 1
theme_override_constants/h_separation = 0
theme_override_constants/icon_max_width = 0
text = " "
icon = ExtResource("3_f6ddc")
flat = true
icon_alignment = 1
[node name="Title" type="Sprite2D" parent="CenterContainer"]
texture_filter = 1
position = Vector2(272, -209)
scale = Vector2(1.07022, 1.71176)
texture = ExtResource("4_up0xh")
[node name="Credits" type="Window" parent="."]
title = "Credits"
initial_position = 1
size = Vector2i(500, 500)
[node name="Controls" type="Window" parent="."]
title = "Credits"
initial_position = 1
size = Vector2i(500, 500)
visible = false
[connection signal="pressed" from="CenterContainer/HBoxContainer/PlayButton" to="." method="_on_play_button_pressed"]
[connection signal="pressed" from="CenterContainer/HBoxContainer/CreditsButton" to="." method="_on_credits_button_pressed"]
[connection signal="pressed" from="CenterContainer/HBoxContainer/ControlsButton" to="." method="_on_controls_button_pressed"]

36
godot/UI/MenuScreen.gd Normal file
View File

@ -0,0 +1,36 @@
extends Control
@onready var play_button = $CenterContainer/HBoxContainer/PlayButton
@onready var credits_button = $CenterContainer/HBoxContainer/CreditsButton
@onready var controls_button = $CenterContainer/HBoxContainer/ControlsButton
@onready var music = $"../Music"
@onready var credits = $Credits
@onready var about = $About
# Called when the node enters the scene tree for the first time.
func _ready():
play_button.grab_focus()
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta):
pass
func _on_play_button_pressed():
get_tree().change_scene_to_file("res://Level/Island.tscn")
func _on_credits_button_pressed():
if not credits.visible:
credits.show()
else:
credits.hide()
func _on_controls_button_pressed():
if not about.visible:
about.show()
else:
about.hide()

163
godot/UI/MenuScreen.tscn Normal file
View File

@ -0,0 +1,163 @@
[gd_scene load_steps=10 format=3 uid="uid://ctginaw0hfnwu"]
[ext_resource type="Script" path="res://UI/MenuScreen.gd" id="1_pvf1f"]
[ext_resource type="Texture2D" uid="uid://dxxd258q3uomg" path="res://UI/Play.png" id="1_r8ube"]
[ext_resource type="Texture2D" uid="uid://brtraq11vg3ss" path="res://UI/People.png" id="2_wj8wl"]
[ext_resource type="Texture2D" uid="uid://do15srmaxqmf1" path="res://UI/Question-Mark.png" id="4_8vqpy"]
[ext_resource type="Texture2D" uid="uid://cgr1apo42wg2o" path="res://UI/slimeoosoddysseytitle.png" id="4_up0xh"]
[ext_resource type="Texture2D" uid="uid://hq03cymvfxmf" path="res://UI/Message.png" id="6_50s2p"]
[ext_resource type="FontFile" uid="uid://wm2ggo0ajyms" path="res://UI/m5x7.ttf" id="7_gcmr4"]
[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_wvvfv"]
texture = ExtResource("6_50s2p")
[sub_resource type="Theme" id="Theme_v4igf"]
Panel/styles/panel = SubResource("StyleBoxTexture_wvvfv")
[node name="MenuScreen" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_pvf1f")
[node name="CenterContainer" type="CenterContainer" parent="."]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -272.0
offset_top = 25.0
offset_right = 282.0
offset_bottom = 173.0
grow_horizontal = 2
grow_vertical = 2
[node name="HBoxContainer" type="HBoxContainer" parent="CenterContainer"]
layout_mode = 2
theme_override_constants/separation = 75
alignment = 1
[node name="CreditsButton" type="Button" parent="CenterContainer/HBoxContainer"]
process_mode = 3
texture_filter = 1
layout_mode = 2
focus_neighbor_left = NodePath("../ControlsButton")
focus_neighbor_right = NodePath("../PlayButton")
focus_next = NodePath("../PlayButton")
theme_override_constants/outline_size = 1
theme_override_constants/h_separation = 0
theme_override_constants/icon_max_width = 0
text = " "
icon = ExtResource("2_wj8wl")
flat = true
icon_alignment = 1
[node name="PlayButton" type="Button" parent="CenterContainer/HBoxContainer"]
process_mode = 3
texture_filter = 1
layout_mode = 2
focus_neighbor_left = NodePath("../CreditsButton")
focus_neighbor_right = NodePath("../ControlsButton")
focus_next = NodePath("../ControlsButton")
text = " "
icon = ExtResource("1_r8ube")
flat = true
icon_alignment = 1
[node name="ControlsButton" type="Button" parent="CenterContainer/HBoxContainer"]
process_mode = 3
texture_filter = 1
layout_mode = 2
focus_neighbor_left = NodePath("../PlayButton")
focus_neighbor_right = NodePath("../CreditsButton")
focus_next = NodePath("../CreditsButton")
theme_override_constants/outline_size = 1
theme_override_constants/h_separation = 0
theme_override_constants/icon_max_width = 0
text = " "
icon = ExtResource("4_8vqpy")
flat = true
icon_alignment = 1
[node name="Title" type="Sprite2D" parent="CenterContainer"]
texture_filter = 1
position = Vector2(272, -209)
scale = Vector2(1.07022, 1.71176)
texture = ExtResource("4_up0xh")
[node name="Credits" type="Panel" parent="."]
visible = false
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -224.0
offset_top = -104.0
offset_right = -24.0
offset_bottom = 96.0
grow_horizontal = 2
grow_vertical = 2
scale = Vector2(0.75, 0.75)
theme = SubResource("Theme_v4igf")
[node name="RichTextLabel" type="RichTextLabel" parent="Credits"]
texture_filter = 1
custom_minimum_size = Vector2(200, 200)
layout_mode = 0
offset_left = 8.0
offset_top = 24.0
offset_right = 208.0
offset_bottom = 224.0
theme_override_colors/default_color = Color(0, 0, 0, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
theme_override_fonts/normal_font = ExtResource("7_gcmr4")
theme_override_font_sizes/normal_font_size = 32
text = "Created by dukegoobler, Noodle1234, and km__k"
scroll_active = false
autowrap_mode = 2
[node name="About" type="Panel" parent="."]
visible = false
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = 136.0
offset_top = -104.0
offset_right = 436.0
offset_bottom = 96.0
grow_horizontal = 2
grow_vertical = 2
scale = Vector2(0.75, 0.75)
theme = SubResource("Theme_v4igf")
[node name="RichTextLabel" type="RichTextLabel" parent="About"]
texture_filter = 1
custom_minimum_size = Vector2(300, 200)
layout_mode = 0
offset_left = 10.6667
offset_top = 32.0
offset_right = 310.667
offset_bottom = 232.0
theme_override_colors/default_color = Color(0, 0, 0, 1)
theme_override_colors/font_outline_color = Color(0, 0, 0, 1)
theme_override_fonts/normal_font = ExtResource("7_gcmr4")
theme_override_font_sizes/normal_font_size = 32
text = "> Walk with WASD
> Mouse to look around
> Space to pick up slimes
> E or 1 to make sounds "
autowrap_mode = 1
[connection signal="pressed" from="CenterContainer/HBoxContainer/CreditsButton" to="." method="_on_credits_button_pressed"]
[connection signal="pressed" from="CenterContainer/HBoxContainer/PlayButton" to="." method="_on_play_button_pressed"]
[connection signal="pressed" from="CenterContainer/HBoxContainer/ControlsButton" to="." method="_on_controls_button_pressed"]

BIN
godot/UI/Message-Question.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://6ujjdpbmqeh7"
path="res://.godot/imported/Message-Question.png-0b2c6b93f3338edf4c52bae65d6a880b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/Message-Question.png"
dest_files=["res://.godot/imported/Message-Question.png-0b2c6b93f3338edf4c52bae65d6a880b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

BIN
godot/UI/Message.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://hq03cymvfxmf"
path="res://.godot/imported/Message.png-91ae7b6af67e24426afd6ff1277e916b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/Message.png"
dest_files=["res://.godot/imported/Message.png-91ae7b6af67e24426afd6ff1277e916b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

BIN
godot/UI/Pause.png (Stored with Git LFS) Normal file

Binary file not shown.

34
godot/UI/Pause.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dw7ewvfwyxcq"
path="res://.godot/imported/Pause.png-90c47ed988bd7d26b746eb81a6aaeedf.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/Pause.png"
dest_files=["res://.godot/imported/Pause.png-90c47ed988bd7d26b746eb81a6aaeedf.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

40
godot/UI/PauseMenu.gd Normal file
View File

@ -0,0 +1,40 @@
extends Control
@onready var resume_button = $CenterContainer/HBoxContainer/ResumeButton
@onready var quit_button = $CenterContainer/HBoxContainer/QuitButton
func _input(event):
if Input.is_action_just_pressed("Pause"):
toggle()
func toggle():
if self.visible:
unpause()
else:
pause()
func unpause():
self.hide()
get_tree().paused = false
Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED)
func pause():
self.show()
resume_button.grab_focus()
get_tree().paused = true
Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE)
func quit():
get_tree().quit()
func _on_kill_pressed():
Global.cheating = true
toggle()
func _on_restart_pressed():
toggle()
get_tree().reload_current_scene()

84
godot/UI/PauseMenu.tscn Normal file
View File

@ -0,0 +1,84 @@
[gd_scene load_steps=6 format=3 uid="uid://cbca7q18ae42h"]
[ext_resource type="Script" path="res://UI/PauseMenu.gd" id="1_3puj1"]
[ext_resource type="Texture2D" uid="uid://dxxd258q3uomg" path="res://UI/Play.png" id="1_c4do0"]
[ext_resource type="Texture2D" uid="uid://hgb2ifbdpp3" path="res://UI/Exit.png" id="3_djmuk"]
[ext_resource type="Texture2D" uid="uid://b5l5hur0x6nx0" path="res://Textures/redo.png" id="3_wl7bl"]
[ext_resource type="Texture2D" uid="uid://cali86gqly7e3" path="res://Textures/kill.png" id="4_cr4ot"]
[node name="PauseMenu" type="Control"]
process_mode = 3
z_index = 3
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_3puj1")
[node name="Background" type="ColorRect" parent="."]
z_index = -1
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
color = Color(0.12549, 0.458824, 0.317647, 0.356863)
[node name="CenterContainer" type="CenterContainer" parent="."]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -124.0
offset_top = -74.0
offset_right = 124.0
offset_bottom = 74.0
grow_horizontal = 2
grow_vertical = 2
[node name="HBoxContainer" type="HBoxContainer" parent="CenterContainer"]
layout_mode = 2
theme_override_constants/separation = 75
alignment = 1
[node name="ResumeButton" type="Button" parent="CenterContainer/HBoxContainer"]
process_mode = 3
texture_filter = 1
layout_mode = 2
text = " "
icon = ExtResource("1_c4do0")
flat = true
icon_alignment = 1
[node name="Restart" type="Button" parent="CenterContainer/HBoxContainer"]
layout_mode = 2
icon = ExtResource("3_wl7bl")
flat = true
[node name="Kill" type="Button" parent="CenterContainer/HBoxContainer"]
layout_mode = 2
icon = ExtResource("4_cr4ot")
flat = true
[node name="QuitButton" type="Button" parent="CenterContainer/HBoxContainer"]
process_mode = 3
texture_filter = 1
layout_mode = 2
theme_override_constants/outline_size = 1
theme_override_constants/h_separation = 0
theme_override_constants/icon_max_width = 0
text = " "
icon = ExtResource("3_djmuk")
flat = true
icon_alignment = 1
[connection signal="pressed" from="CenterContainer/HBoxContainer/ResumeButton" to="." method="unpause"]
[connection signal="pressed" from="CenterContainer/HBoxContainer/Restart" to="." method="_on_restart_pressed"]
[connection signal="pressed" from="CenterContainer/HBoxContainer/Kill" to="." method="_on_kill_pressed"]
[connection signal="pressed" from="CenterContainer/HBoxContainer/QuitButton" to="." method="quit"]

BIN
godot/UI/People.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://brtraq11vg3ss"
path="res://.godot/imported/People.png-368831bad97ddb6ee959f97423dc0c53.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/People.png"
dest_files=["res://.godot/imported/People.png-368831bad97ddb6ee959f97423dc0c53.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

BIN
godot/UI/Play.png (Stored with Git LFS) Normal file

Binary file not shown.

34
godot/UI/Play.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dxxd258q3uomg"
path="res://.godot/imported/Play.png-eec0d54380d32c59b84e7db5fa226d5e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/Play.png"
dest_files=["res://.godot/imported/Play.png-eec0d54380d32c59b84e7db5fa226d5e.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

BIN
godot/UI/Question-Mark.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://do15srmaxqmf1"
path="res://.godot/imported/Question-Mark.png-6e5531b3ba54338074d0c2952c8650f7.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/Question-Mark.png"
dest_files=["res://.godot/imported/Question-Mark.png-6e5531b3ba54338074d0c2952c8650f7.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

396
godot/UI/TitleScreen.tscn Normal file
View File

@ -0,0 +1,396 @@
[gd_scene load_steps=28 format=3 uid="uid://c28il3uk7tfrf"]
[ext_resource type="PackedScene" uid="uid://d2d4uv7o5gx5p" path="res://Level/World/screen_shader.tscn" id="1_xqpgu"]
[ext_resource type="PackedScene" uid="uid://difi2tur2j4dg" path="res://Models/island.tscn" id="2_d5313"]
[ext_resource type="PackedScene" uid="uid://ctbyl0qbks4k6" path="res://Models/ocean.tscn" id="3_2sqc0"]
[ext_resource type="PackedScene" uid="uid://d3ccrfjpg4hbv" path="res://Models/palm_curved.tscn" id="4_3xswa"]
[ext_resource type="PackedScene" uid="uid://c1n2lfcn4rkx7" path="res://Models/palm_default.tscn" id="5_lsdpk"]
[ext_resource type="PackedScene" uid="uid://hg1yr5rnxd47" path="res://Models/palm_young.tscn" id="6_akh0r"]
[ext_resource type="PackedScene" uid="uid://g8vvg7c5ddkr" path="res://Models/rocks/rock_1.tscn" id="7_ts6ny"]
[ext_resource type="PackedScene" uid="uid://bjafsu0utvm0g" path="res://Models/rocks/rock_2.tscn" id="8_6hc0k"]
[ext_resource type="PackedScene" uid="uid://bf6bbqbaeh21y" path="res://Models/rocks/rock_3.tscn" id="9_ro8nl"]
[ext_resource type="PackedScene" uid="uid://ce7jbp7f55cro" path="res://Models/buildings/building_1.tscn" id="10_ubjwb"]
[ext_resource type="PackedScene" uid="uid://cx44bjuxlhq06" path="res://Models/buildings/building_2.tscn" id="11_wkvwd"]
[ext_resource type="PackedScene" uid="uid://bm65tvb4irjqw" path="res://Models/buildings/building_3.tscn" id="12_w2pdy"]
[ext_resource type="PackedScene" uid="uid://tky3cco2k7v7" path="res://Models/buildings/building_4.tscn" id="13_p1gk0"]
[ext_resource type="PackedScene" uid="uid://dhrnbubumgi5h" path="res://Models/buildings/buildingruined.tscn" id="14_ftwxe"]
[ext_resource type="PackedScene" uid="uid://bj8le45u845v3" path="res://Models/beach_decor/floatie.tscn" id="15_p0hyy"]
[ext_resource type="PackedScene" uid="uid://dvpank15vkvtv" path="res://Models/beach_decor/parsol.tscn" id="16_vi1hx"]
[ext_resource type="PackedScene" uid="uid://b3aus2kigf8xt" path="res://Models/beach_decor/cooler.tscn" id="17_fobx6"]
[ext_resource type="PackedScene" uid="uid://bw3k2c75qavce" path="res://Models/beach_decor/bucket.tscn" id="18_il2af"]
[ext_resource type="PackedScene" uid="uid://g4gmc0pwlak1" path="res://Models/buildings/fence.tscn" id="19_f7rt2"]
[ext_resource type="Script" path="res://UI/CameraPivot.gd" id="20_3o1qn"]
[ext_resource type="PackedScene" uid="uid://6ycop5t3nra5" path="res://Level/World/DayNightEnvironment.tscn" id="21_jtve5"]
[ext_resource type="PackedScene" uid="uid://c4s6y758n77lw" path="res://villager_shared.tscn" id="22_5lli5"]
[ext_resource type="PackedScene" path="res://color_cube.tscn" id="23_knnwt"]
[ext_resource type="PackedScene" uid="uid://cft26nug7kyqb" path="res://ambient_light_1.tscn" id="24_c8rh7"]
[ext_resource type="AudioStream" uid="uid://mvyk5xpf0f55" path="res://Sounds/beachquiet.ogg" id="25_wol8t"]
[ext_resource type="Script" path="res://Level/Music.gd" id="26_dtjny"]
[ext_resource type="PackedScene" uid="uid://ctginaw0hfnwu" path="res://UI/MenuScreen.tscn" id="27_me1j8"]
[node name="World" type="Node3D"]
[node name="ScreenShader" parent="." instance=ExtResource("1_xqpgu")]
[node name="island" parent="." instance=ExtResource("2_d5313")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0)
[node name="ocean" parent="." instance=ExtResource("3_2sqc0")]
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("4_3xswa")]
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("4_3xswa")]
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("4_3xswa")]
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("5_lsdpk")]
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("5_lsdpk")]
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("4_3xswa")]
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("5_lsdpk")]
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("5_lsdpk")]
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("6_akh0r")]
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("6_akh0r")]
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("6_akh0r")]
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("5_lsdpk")]
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("6_akh0r")]
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("6_akh0r")]
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("5_lsdpk")]
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("6_akh0r")]
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("6_akh0r")]
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("7_ts6ny")]
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("8_6hc0k")]
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("8_6hc0k")]
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("9_ro8nl")]
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("9_ro8nl")]
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("10_ubjwb")]
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("10_ubjwb")]
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("10_ubjwb")]
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("10_ubjwb")]
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("10_ubjwb")]
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("10_ubjwb")]
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("10_ubjwb")]
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("11_wkvwd")]
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("11_wkvwd")]
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("10_ubjwb")]
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("10_ubjwb")]
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("11_wkvwd")]
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("11_wkvwd")]
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("11_wkvwd")]
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("11_wkvwd")]
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("12_w2pdy")]
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("12_w2pdy")]
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("12_w2pdy")]
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("13_p1gk0")]
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("13_p1gk0")]
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("11_wkvwd")]
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("11_wkvwd")]
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("13_p1gk0")]
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("13_p1gk0")]
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("13_p1gk0")]
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("13_p1gk0")]
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("14_ftwxe")]
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("15_p0hyy")]
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("15_p0hyy")]
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("15_p0hyy")]
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("15_p0hyy")]
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("16_vi1hx")]
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("16_vi1hx")]
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("16_vi1hx")]
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("16_vi1hx")]
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("16_vi1hx")]
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("17_fobx6")]
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("17_fobx6")]
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("17_fobx6")]
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("18_il2af")]
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("19_f7rt2")]
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("19_f7rt2")]
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("19_f7rt2")]
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("19_f7rt2")]
transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 0, 1.40507, -2.10425)
[node name="CameraPivot" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.38941, -1.81479)
script = ExtResource("20_3o1qn")
[node name="Camera3D" type="Camera3D" parent="CameraPivot"]
transform = Transform3D(1, 0, 0, 0, 0.75591, 0.654675, 0, -0.654675, 0.75591, 0, 1.8939, 4.94935)
[node name="DayNightEnvironment" parent="." instance=ExtResource("21_jtve5")]
[node name="villager" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.32051, 2.42874, -0.151928)
[node name="villager2" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.344183, 2.49657, 0.497255)
[node name="villager3" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.1756, 2.30817, -0.040845)
[node name="villager4" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.13518, 2.24888, -4.00956)
[node name="villager5" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.124053, 2.37507, -4.54257)
[node name="villager6" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0673849, 3.01779, -4.0846)
[node name="MeshInstance3D" parent="." instance=ExtResource("23_knnwt")]
transform = Transform3D(0.00734817, 0, -0.0494571, 0, 0.05, 0, 0.0494571, 0, 0.00734817, -1.23595, 2.41994, -1.22155)
[node name="MeshInstance3D5" parent="." instance=ExtResource("23_knnwt")]
transform = Transform3D(0.00734817, 0, -0.0494571, 0, 0.05, 0, 0.0494571, 0, 0.00734817, -2.01716, 2.35204, -3.86729)
[node name="MeshInstance3D4" parent="." instance=ExtResource("23_knnwt")]
transform = Transform3D(0.0499974, 0, 0.000513115, 0, 0.05, 0, -0.000513115, 0, 0.0499974, 0.454694, 2.38629, -0.394798)
[node name="MeshInstance3D2" parent="." instance=ExtResource("23_knnwt")]
transform = Transform3D(0.607958, 0, -0.793969, 0, 1, 0, 0.793969, 0, 0.607958, 9.95052, 2.51, 0.423212)
[node name="MeshInstance3D3" parent="." instance=ExtResource("23_knnwt")]
transform = Transform3D(1, 0, 0, 0, 0.93516, 0.354226, 0, -0.354226, 0.93516, -1.96412, 2.47836, -3.94085)
[node name="villager7" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.33509, 2.39757, -4.24071)
[node name="villager8" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.31916, 2.22662, -3.08429)
[node name="villager9" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.57973, 2.33972, -3.67175)
[node name="villager10" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.91611, 2.37549, -1.0799)
[node name="villager11" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.643094, 2.19164, 1.15459)
[node name="villager12" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.982957, 2.26155, 0.763667)
[node name="villager13" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.33971, 2.12543, 0.623835)
[node name="villager14" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.11141, 2.26718, 0.608947)
[node name="villager15" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.01736, 2.38815, -1.81019)
[node name="villager16" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.89617, 2.21949, -3.20033)
[node name="villager17" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.20015, 2.4323, -3.35734)
[node name="villager18" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.54584, 2.33609, -4.4881)
[node name="villager19" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.709331, 2.50856, -1.84133)
[node name="villager20" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.75547, 2.33257, -1.63179)
[node name="villager21" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.43468, 2.35865, -0.0161896)
[node name="villager22" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.348403, 2.35328, -0.838555)
[node name="villager23" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.743449, 2.39485, -1.09457)
[node name="villager24" parent="." instance=ExtResource("22_5lli5")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 3.11439, 2.14828, -1.28646)
[node name="OmniLight3D" parent="." instance=ExtResource("24_c8rh7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.13746, 2.69992, -0.435097)
light_energy = 0.1
[node name="OmniLight3D2" parent="." instance=ExtResource("24_c8rh7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -2.22669, 2.84986, -2.06954)
light_energy = 0.1
[node name="OmniLight3D3" parent="." instance=ExtResource("24_c8rh7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.76529, 2.60448, -0.160995)
light_energy = 0.1
[node name="OmniLight3D4" parent="." instance=ExtResource("24_c8rh7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.57077, 2.69259, -2.05053)
light_energy = 0.1
[node name="OmniLight3D5" parent="." instance=ExtResource("24_c8rh7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.41671, 2.76416, -1.32509)
light_energy = 0.1
[node name="OmniLight3D6" parent="." instance=ExtResource("24_c8rh7")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.19657, 2.76902, -1.46035)
light_energy = 0.1
[node name="Ambiance" type="AudioStreamPlayer" parent="."]
process_mode = 3
stream = ExtResource("25_wol8t")
volume_db = 7.0
autoplay = true
[node name="Music" type="AudioStreamPlayer" parent="."]
process_mode = 3
volume_db = -5.0
script = ExtResource("26_dtjny")
[node name="Transition" type="Timer" parent="Music"]
one_shot = true
[node name="Tween" type="Timer" parent="Music"]
one_shot = true
[node name="MenuScreen" parent="." instance=ExtResource("27_me1j8")]
offset_top = 62.0
offset_bottom = 62.0
size_flags_horizontal = 4
size_flags_vertical = 4
[connection signal="finished" from="Music" to="Music" method="_on_finished"]
[connection signal="timeout" from="Music/Transition" to="Music" method="_on_transition_timer_timeout"]
[connection signal="timeout" from="Music/Tween" to="Music" method="_on_tween_timer_timeout"]

BIN
godot/UI/m5x7.ttf Normal file

Binary file not shown.

33
godot/UI/m5x7.ttf.import Normal file
View File

@ -0,0 +1,33 @@
[remap]
importer="font_data_dynamic"
type="FontFile"
uid="uid://wm2ggo0ajyms"
path="res://.godot/imported/m5x7.ttf-c98fcfe7ec20d81260091e5b9b8cacb7.fontdata"
[deps]
source_file="res://UI/m5x7.ttf"
dest_files=["res://.godot/imported/m5x7.ttf-c98fcfe7ec20d81260091e5b9b8cacb7.fontdata"]
[params]
Rendering=null
antialiasing=1
generate_mipmaps=false
multichannel_signed_distance_field=false
msdf_pixel_range=8
msdf_size=48
allow_system_fallback=true
force_autohinter=false
hinting=1
subpixel_positioning=1
oversampling=0.0
Fallbacks=null
fallbacks=[]
Compress=null
compress=true
preload=[]
language_support={}
script_support={}
opentype_features={}

BIN
godot/UI/slimeoosoddysseytitle.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cgr1apo42wg2o"
path="res://.godot/imported/slimeoosoddysseytitle.png-521edb48a2e310164fa2d0f22a00df7e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://UI/slimeoosoddysseytitle.png"
dest_files=["res://.godot/imported/slimeoosoddysseytitle.png-521edb48a2e310164fa2d0f22a00df7e.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

View File

@ -1,92 +1,80 @@
class_name Villager
extends SharedSlime extends SharedSlime
var rng = RandomNumberGenerator.new()
@onready var target_location_xz = transform.origin * Vector3(1, 0, 1)
@onready var location_xz = transform.origin * Vector3(1, 0, 1)
@onready var target_direction_xz = (transform.basis * Vector3(1, 0, 1)).normalized()
@onready var direction_xz = (transform.basis * Vector3(1, 0, 1)).normalized()
var task = "idle"
# Percentage chances of the character performing certain actions while idle. var color_changes = true
@export var walk_chance = 0.1
@export var spin_chance = 0.2
@export var walk_speed = 0.5 var is_villager = true
# Rate at which character corrects their direction after going off course (percentage). var hp = 100
@export var dir_correction_rate = 0.95 var aggressor
# 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.
func _ready(): func _ready():
pass super._ready()
$SoundTimer.wait_time = rng.randi_range(15, 240)
$SoundTimer.start()
func _process(delta):
super._process(delta)
# Called every frame. 'delta' is the elapsed time since the previous frame. if task == "become_corrupted":
func _process(_delta): become_corrupted()
location_xz = transform.origin * Vector3(1, 0, 1)
direction_xz = (transform.basis * Vector3(1, 0, 1)).normalized()
match task: func become_corrupted():
"idle": if location_xz.distance_to(aggressor.location_xz) <= 1:
idle() print("becoming corrupted")
task = rng.randf_range(0, 100) print(hp)
# Spin for effect and lose hp.
# 3% chance to walk somewhere. rotate_y(deg_to_rad(-15))
if task <= walk_chance: hp -= 0.5
task = "walk"
target_location_xz = transform.origin * Vector3(1, 0, 1) + (direction_xz * 4)
# 6% chance to rotate.
elif task > walk_chance and task <= (walk_chance + spin_chance):
task = "spin"
var rotation_angle = rng.randf_range(-2*PI, 2*PI)
var rotation_vector = Vector3(cos(rotation_angle), 0, sin(rotation_angle))
target_direction_xz = direction_xz + rotation_vector
# 90% chance to idle.
elif task > (spin_chance + walk_chance):
task = "idle"
"walk":
walk()
# 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) * dir_correction_rate)
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":
# 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) * dir_correction_rate)
else: else:
hp = 100
task = "idle" task = "idle"
print("cultist left")
# Create a new cultist and then destroy self.
if hp <= 0:
# Disable hitbox
$slime_collision.disabled = true
$CollisionDetection/slime_collision.disabled = true
# Load and instantiate a new cultist.
var cultist = load("res://cultist.tscn")
cultist = cultist.instantiate()
get_parent_node_3d().add_child(cultist)
cultist.set_global_position(get_global_position())
# Destroy self.
queue_free()
func get_color_idx() -> int:
return $slime.color_idx
func get_color():
return $slime.get_color()
func _on_area_3d_body_entered(body):
if "color_changes" not in body:
return
var other = body.get_color_idx()
var mine = get_color_idx()
if other == mine:
return
var delta = abs(other - mine)
if delta % 2 == 0:
if mine < other:
$slime.change_color(other)
elif mine > other:
$slime.change_color(other)
func _on_collision_detection_body_entered(body):
if "is_cultist" in body:
aggressor = body as Cultist
task = "become_corrupted"
func _physics_process(delta):
# Add the gravity.
if not is_on_floor():
velocity.y -= gravity * delta
# Walk to target location. func _on_sound_timer_timeout():
if (location_xz.distance_to(target_location_xz) > walk_speed) and task == "walk": $happyslime.play()
velocity.x = direction_xz.x * walk_speed $SoundTimer.wait_time = rng.randi_range(60, 240)
velocity.z = direction_xz.z * walk_speed $SoundTimer.start()
else:
velocity.x = 0
velocity.z = 0
move_and_slide()

View File

@ -1,3 +1,4 @@
[gd_scene format=3 uid="uid://cft26nug7kyqb"] [gd_scene format=3 uid="uid://cft26nug7kyqb"]
[node name="OmniLight3D" type="OmniLight3D"] [node name="OmniLight3D" type="OmniLight3D"]
light_energy = 0.2

11
godot/color_cube.gd Normal file
View File

@ -0,0 +1,11 @@
extends Node3D
var done = false
func _on_area_3d_body_entered(body):
if done or "color_changes" not in body:
return
done = true
var mat = $ring/Torus.get_active_material(0).duplicate()
mat.albedo_color = body.get_color()
$ring/Torus.set_surface_override_material(0, mat)

21
godot/color_cube.tscn Normal file
View File

@ -0,0 +1,21 @@
[gd_scene load_steps=4 format=3 uid="uid://ukful430mmkn"]
[ext_resource type="PackedScene" uid="uid://bcq7y48pnfq18" path="res://Models/ring.tscn" id="1_4st4o"]
[ext_resource type="Script" path="res://color_cube.gd" id="1_72txy"]
[sub_resource type="SphereShape3D" id="SphereShape3D_e0lnu"]
radius = 13.5124
[node name="Node3D" type="Node3D"]
script = ExtResource("1_72txy")
[node name="ring" parent="." instance=ExtResource("1_4st4o")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.18403, 2.58068, -1.28894)
[node name="Area3D" type="Area3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.18403, 2.58068, -1.28894)
[node name="CollisionShape3D" type="CollisionShape3D" parent="Area3D"]
shape = SubResource("SphereShape3D_e0lnu")
[connection signal="body_entered" from="Area3D" to="." method="_on_area_3d_body_entered"]

24
godot/crate.tscn Normal file
View File

@ -0,0 +1,24 @@
[gd_scene load_steps=6 format=3 uid="uid://ckbba1bs71tl"]
[ext_resource type="Script" path="res://Crate.gd" id="1_alhhi"]
[ext_resource type="Texture2D" uid="uid://cuc1p8nq2vs6p" path="res://Textures/ball.png" id="2_raef5"]
[ext_resource type="ArrayMesh" uid="uid://dpgqjgkd2kx4b" path="res://Models/ball.obj" id="3_78csp"]
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_si821"]
albedo_texture = ExtResource("2_raef5")
[sub_resource type="SphereShape3D" id="SphereShape3D_i5qy0"]
radius = 0.05
[node name="Crate" type="RigidBody3D"]
gravity_scale = 0.1
angular_damp = 10.0
script = ExtResource("1_alhhi")
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
transform = Transform3D(0.3, 0, 0, 0, 0.3, 0, 0, 0, 0.3, 0, 0, 0)
material_override = SubResource("StandardMaterial3D_si821")
mesh = ExtResource("3_78csp")
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
shape = SubResource("SphereShape3D_i5qy0")

38
godot/cultist.gd Normal file
View File

@ -0,0 +1,38 @@
class_name Cultist
extends SharedSlime
var victim
var is_cultist = true
func _process(delta):
super._process(delta)
if task == "corrupt":
corrupt()
func corrupt():
# Make sure the victim is still next to the cultist.
if location_xz.distance_to(victim.location_xz) <= 0.5 and victim != null:
print("corrupting")
rotate_y(deg_to_rad(15))
if victim.hp <= 0:
$evilslime.play()
task = "idle"
else:
print("target lost")
task = "idle"
# For corruption detection range.
func _on_target_radius_body_entered(body):
if "is_villager" in body:
print("target found")
victim = body as Villager
target_location_xz = victim.location_xz
task = "walk"
# For collision with other slimes.
func _on_collision_detection_body_entered(body):
if "is_villager" in body:
task = "corrupt"

View File

@ -1,21 +1,54 @@
[gd_scene load_steps=5 format=3 uid="uid://e0s4phx2jiit"] [gd_scene load_steps=10 format=3 uid="uid://e0s4phx2jiit"]
[ext_resource type="Texture2D" uid="uid://df0xror4t3gbc" path="res://Default Purple.png" id="1_x8j7f"] [ext_resource type="Script" path="res://cultist.gd" id="1_k6djk"]
[ext_resource type="PackedScene" uid="uid://c3q6fva1c1baa" path="res://Models/slime.tscn" id="2_004fn"]
[ext_resource type="AudioStream" uid="uid://cxadu5w3jwv0b" path="res://Sounds/evilslime.ogg" id="3_novm4"]
[ext_resource type="Script" path="res://MeshInstance3D.gd" id="4_trs5a"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_y0hcm"] [sub_resource type="SphereShape3D" id="SphereShape3D_rypky"]
radius = 2.5
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_vxnad"] [sub_resource type="SphereShape3D" id="SphereShape3D_pa038"]
albedo_texture = ExtResource("1_x8j7f") radius = 0.055
[sub_resource type="CapsuleMesh" id="CapsuleMesh_17ljq"] [sub_resource type="SphereShape3D" id="SphereShape3D_bmc5i"]
material = SubResource("StandardMaterial3D_vxnad") radius = 0.05
[node name="Node3D" type="Node3D"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_y5n1c"]
albedo_color = Color(1, 0, 1, 1)
[node name="RigidBody3D" type="RigidBody3D" parent="."] [sub_resource type="SphereMesh" id="SphereMesh_75ex5"]
[node name="CollisionShape3D" type="CollisionShape3D" parent="RigidBody3D"] [node name="Cultist" type="CharacterBody3D"]
shape = SubResource("CapsuleShape3D_y0hcm") script = ExtResource("1_k6djk")
[node name="MeshInstance3D" type="MeshInstance3D" parent="RigidBody3D/CollisionShape3D"] [node name="TargetRadius" type="Area3D" parent="."]
mesh = SubResource("CapsuleMesh_17ljq")
[node name="CollisionShape3D" type="CollisionShape3D" parent="TargetRadius"]
shape = SubResource("SphereShape3D_rypky")
[node name="slime" parent="." instance=ExtResource("2_004fn")]
transform = Transform3D(0.035, 0, 0, 0, 0.035, 0, 0, 0, 0.035, 0, 0, 0)
[node name="CollisionDetection" type="Area3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.03, 0)
[node name="collision_ range" type="CollisionShape3D" parent="CollisionDetection"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.013, 0)
shape = SubResource("SphereShape3D_pa038")
[node name="cultist_collision" type="CollisionShape3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0429018, 0)
shape = SubResource("SphereShape3D_bmc5i")
[node name="evilslime" type="AudioStreamPlayer3D" parent="."]
stream = ExtResource("3_novm4")
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
transform = Transform3D(0.05, 0, 0, 0, 0.05, 0, 0, 0, 0.05, 0, 0.181789, 0)
material_override = SubResource("StandardMaterial3D_y5n1c")
mesh = SubResource("SphereMesh_75ex5")
script = ExtResource("4_trs5a")
[connection signal="body_entered" from="TargetRadius" to="." method="_on_target_radius_body_entered"]
[connection signal="body_entered" from="CollisionDetection" to="." method="_on_collision_detection_body_entered"]

99
godot/export_presets.cfg Normal file
View File

@ -0,0 +1,99 @@
[preset.0]
name="Windows Desktop"
platform="Windows Desktop"
runnable=true
dedicated_server=false
custom_features=""
export_filter="all_resources"
include_filter=""
exclude_filter=""
export_path="../../../SlimeooWindows/Slimeoo.exe"
encryption_include_filters=""
encryption_exclude_filters=""
encrypt_pck=false
encrypt_directory=false
[preset.0.options]
custom_template/debug=""
custom_template/release=""
debug/export_console_wrapper=1
binary_format/embed_pck=false
texture_format/bptc=true
texture_format/s3tc=true
texture_format/etc=false
texture_format/etc2=false
binary_format/architecture="x86_64"
codesign/enable=false
codesign/timestamp=true
codesign/timestamp_server_url=""
codesign/digest_algorithm=1
codesign/description=""
codesign/custom_options=PackedStringArray()
application/modify_resources=true
application/icon=""
application/console_wrapper_icon=""
application/icon_interpolation=4
application/file_version=""
application/product_version=""
application/company_name=""
application/product_name=""
application/file_description=""
application/copyright=""
application/trademarks=""
ssh_remote_deploy/enabled=false
ssh_remote_deploy/host="user@host_ip"
ssh_remote_deploy/port="22"
ssh_remote_deploy/extra_args_ssh=""
ssh_remote_deploy/extra_args_scp=""
ssh_remote_deploy/run_script="Expand-Archive -LiteralPath '{temp_dir}\\{archive_name}' -DestinationPath '{temp_dir}'
$action = New-ScheduledTaskAction -Execute '{temp_dir}\\{exe_name}' -Argument '{cmd_args}'
$trigger = New-ScheduledTaskTrigger -Once -At 00:00
$settings = New-ScheduledTaskSettingsSet
$task = New-ScheduledTask -Action $action -Trigger $trigger -Settings $settings
Register-ScheduledTask godot_remote_debug -InputObject $task -Force:$true
Start-ScheduledTask -TaskName godot_remote_debug
while (Get-ScheduledTask -TaskName godot_remote_debug | ? State -eq running) { Start-Sleep -Milliseconds 100 }
Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue"
ssh_remote_deploy/cleanup_script="Stop-ScheduledTask -TaskName godot_remote_debug -ErrorAction:SilentlyContinue
Unregister-ScheduledTask -TaskName godot_remote_debug -Confirm:$false -ErrorAction:SilentlyContinue
Remove-Item -Recurse -Force '{temp_dir}'"
[preset.1]
name="Web"
platform="Web"
runnable=true
dedicated_server=false
custom_features=""
export_filter="all_resources"
include_filter=""
exclude_filter=""
export_path="../../../SlimeooWeb/index.html"
encryption_include_filters=""
encryption_exclude_filters=""
encrypt_pck=false
encrypt_directory=false
[preset.1.options]
custom_template/debug=""
custom_template/release=""
variant/extensions_support=false
vram_texture_compression/for_desktop=true
vram_texture_compression/for_mobile=false
html/export_icon=true
html/custom_html_shell=""
html/head_include=""
html/canvas_resize_policy=2
html/focus_canvas_on_start=true
html/experimental_virtual_keyboard=false
progressive_web_app/enabled=false
progressive_web_app/offline_page=""
progressive_web_app/display=1
progressive_web_app/orientation=0
progressive_web_app/icon_144x144=""
progressive_web_app/icon_180x180=""
progressive_web_app/icon_512x512=""
progressive_web_app/background_color=Color(0, 0, 0, 1)

3
godot/global.gd Normal file
View File

@ -0,0 +1,3 @@
extends Node
var cheating = false

BIN
godot/icon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

BIN
godot/icon.png (Stored with Git LFS) Normal file

Binary file not shown.

34
godot/icon.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cw6ps127bpbum"
path="res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icon.png"
dest_files=["res://.godot/imported/icon.png-487276ed1e3a0c39cad0279d744ee560.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
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=1

Some files were not shown because too many files have changed in this diff Show More