diff options
author | Lucas Fryzek <lucas.fryzek@fryzekconcepts.com> | 2023-09-25 18:22:55 -0400 |
---|---|---|
committer | Lucas Fryzek <lucas.fryzek@fryzekconcepts.com> | 2023-09-25 18:22:55 -0400 |
commit | 73cbbef3d165519f7d76304049e0037ecaa29f85 (patch) | |
tree | 668dba8380699aa576355a9d1a2390496b34c059 | |
parent | 185de137decb12cc05c58436151456ef43ebd84e (diff) |
Add seed object and ability to pickup
-rw-r--r-- | prefab/player.tscn | 4 | ||||
-rw-r--r-- | prefab/seed.tscn | 18 | ||||
-rw-r--r-- | scenes/main.tscn | 6 | ||||
-rw-r--r-- | scripts/player.gd | 6 |
4 files changed, 30 insertions, 4 deletions
diff --git a/prefab/player.tscn b/prefab/player.tscn index a514664..e4f28aa 100644 --- a/prefab/player.tscn +++ b/prefab/player.tscn @@ -28,8 +28,8 @@ distance_from_pivot = 5.0 pivot_offset = Vector2(0, 1) [node name="Picker" type="Area3D" parent="."] -collision_layer = 2 -collision_mask = 2 +collision_layer = 10 +collision_mask = 10 [node name="PickerBox" type="CollisionShape3D" parent="Picker"] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, -1) diff --git a/prefab/seed.tscn b/prefab/seed.tscn new file mode 100644 index 0000000..dde0836 --- /dev/null +++ b/prefab/seed.tscn @@ -0,0 +1,18 @@ +[gd_scene load_steps=3 format=3 uid="uid://cy44cmw1wn862"] + +[sub_resource type="SphereShape3D" id="SphereShape3D_sgcyu"] + +[sub_resource type="PlaceholderTexture2D" id="PlaceholderTexture2D_agt7u"] +size = Vector2(32, 32) + +[node name="Seed" type="StaticBody3D"] +collision_layer = 8 +collision_mask = 8 + +[node name="CollisionShape3D" type="CollisionShape3D" parent="."] +shape = SubResource("SphereShape3D_sgcyu") + +[node name="Sprite3D" type="Sprite3D" parent="."] +pixel_size = 0.0313 +billboard = 1 +texture = SubResource("PlaceholderTexture2D_agt7u") diff --git a/scenes/main.tscn b/scenes/main.tscn index c1339d1..4b38245 100644 --- a/scenes/main.tscn +++ b/scenes/main.tscn @@ -1,9 +1,10 @@ -[gd_scene load_steps=11 format=3 uid="uid://bb55ocpenupao"] +[gd_scene load_steps=12 format=3 uid="uid://bb55ocpenupao"] [ext_resource type="Script" path="res://scripts/level_gen.gd" id="1_sfx65"] [ext_resource type="PackedScene" uid="uid://dsq68sqy2ldjm" path="res://prefab/player.tscn" id="3_8dect"] [ext_resource type="Material" uid="uid://uiwp0gpofjrx" path="res://materials/terrain.tres" id="3_nsy4g"] [ext_resource type="PackedScene" uid="uid://2a3fyuye46hm" path="res://prefab/rock.tscn" id="3_so64k"] +[ext_resource type="PackedScene" uid="uid://cy44cmw1wn862" path="res://prefab/seed.tscn" id="5_sfjwf"] [sub_resource type="BoxMesh" id="BoxMesh_2l1xl"] material = ExtResource("3_nsy4g") @@ -88,3 +89,6 @@ offset_right = 88.0 offset_bottom = 42.0 text = "0" text_direction = 2 + +[node name="Seed" parent="." instance=ExtResource("5_sfjwf")] +transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 21.0312, 0.5, -2.87852) diff --git a/scripts/player.gd b/scripts/player.gd index 7c6079b..95737ce 100644 --- a/scripts/player.gd +++ b/scripts/player.gd @@ -25,6 +25,7 @@ var last_wall_direction: Vector3 = Vector3() func got_body(body: Node3D): if current_node == null: + print("Got body ", body) current_node = body func leave_body(body: Node3D): @@ -32,7 +33,10 @@ func leave_body(body: Node3D): current_node = null func pickup(): - if holding == null: + if current_node.collision_layer & 0b1000: + num_seeds += 1 + current_node.get_parent().remove_child(current_node) + elif holding == null: holding = current_node current_node.get_parent().remove_child(current_node) holding.position = Vector3.ZERO |