making level
This commit is contained in:
parent
d2e2276d43
commit
4ab01fe0dc
|
|
@ -1,4 +1,4 @@
|
|||
extends Node
|
||||
|
||||
var player
|
||||
var player:Player
|
||||
var selectedObject
|
||||
|
|
|
|||
87
Main.tscn
87
Main.tscn
|
|
@ -1,11 +1,9 @@
|
|||
[gd_scene load_steps=12 format=3 uid="uid://bt5a8babn8gyn"]
|
||||
[gd_scene load_steps=10 format=3 uid="uid://bt5a8babn8gyn"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://du8lkrvnc16gl" path="res://objects/Rotatable.tscn" id="1_glv2v"]
|
||||
[ext_resource type="PackedScene" uid="uid://cbl4jcbilihv" path="res://objects/rotatableSphere.tscn" id="2_uu6xs"]
|
||||
[ext_resource type="PackedScene" uid="uid://dqu5h8wloab26" path="res://objects/rotatableLong.tscn" id="3_r0du0"]
|
||||
[ext_resource type="PackedScene" uid="uid://coowoxprnd50y" path="res://objects/Guitar.tscn" id="4_cm0pq"]
|
||||
[ext_resource type="PackedScene" uid="uid://dxnty4qdey1la" path="res://objects/horse.tscn" id="5_fos0i"]
|
||||
[ext_resource type="PackedScene" uid="uid://bggp3whsy8eji" path="res://objects/shark.tscn" id="6_3dxm6"]
|
||||
[ext_resource type="PackedScene" uid="uid://bubyfj3d0t4wr" path="res://Player/Player.tscn" id="1_03owx"]
|
||||
[ext_resource type="Script" uid="uid://caucan7ubuwya" path="res://MainCamera.gd" id="2_wkp8b"]
|
||||
[ext_resource type="PackedScene" uid="uid://tv34yqlttubv" path="res://objects/rotatableLarge.tscn" id="5_fos0i"]
|
||||
[ext_resource type="PackedScene" uid="uid://deqhu8psa7fyn" path="res://locations/HauntedMansion.tscn" id="6_3dxm6"]
|
||||
[ext_resource type="PackedScene" uid="uid://bqyeo1mq0f35e" path="res://locations/stage.glb" id="7_lgr22"]
|
||||
[ext_resource type="PackedScene" uid="uid://c2qnrd7mneksy" path="res://UI/MainUI.tscn" id="8_trn2v"]
|
||||
|
||||
|
|
@ -22,17 +20,15 @@ radius = 200.0
|
|||
|
||||
[node name="Main" type="Node3D"]
|
||||
|
||||
[node name="Player" parent="." instance=ExtResource("1_03owx")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -46.9503, -0.933056, 6.49124)
|
||||
|
||||
[node name="Camera3D" type="Camera3D" parent="."]
|
||||
transform = Transform3D(-0.000329031, -0.999888, -0.0149358, 0.0220218, -0.0149394, 0.999646, -0.999757, 1.63032e-09, 0.0220243, -0.213372, 102.096, 0)
|
||||
transform = Transform3D(-4.37114e-08, -0.972775, 0.231748, 0, 0.231748, 0.972776, -1, 4.25214e-08, -1.013e-08, -0.213372, 102.096, 0)
|
||||
script = ExtResource("2_wkp8b")
|
||||
|
||||
[node name="RayCast3D" type="RayCast3D" parent="Camera3D"]
|
||||
|
||||
[node name="RigidBody3D" parent="." instance=ExtResource("1_glv2v")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.822342, 0)
|
||||
|
||||
[node name="RigidBody3D2" parent="." instance=ExtResource("1_glv2v")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -3.70702, 1.18342, 2.50972)
|
||||
|
||||
[node name="StaticBody3D" type="StaticBody3D" parent="."]
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="StaticBody3D"]
|
||||
|
|
@ -45,34 +41,43 @@ shape = SubResource("CylinderShape3D_glv2v")
|
|||
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="."]
|
||||
transform = Transform3D(0.177645, -0.645417, 0.742886, -0.293885, 0.685651, 0.665968, -0.939188, -0.336629, -0.067876, 15.6558, 10.5503, -0.157694)
|
||||
|
||||
[node name="Rotatable" parent="." instance=ExtResource("2_uu6xs")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 2.40892, 0.593454, -0.355954)
|
||||
physics_material_override = null
|
||||
yTorqueMult = 100.0
|
||||
zTorqueMult = 100.0
|
||||
|
||||
[node name="Rotatable2" parent="." instance=ExtResource("2_uu6xs")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -5.89273, 0.00558472, 0.652737)
|
||||
physics_material_override = null
|
||||
yTorqueMult = 100.0
|
||||
zTorqueMult = 100.0
|
||||
|
||||
[node name="Rotatable3" parent="." instance=ExtResource("3_r0du0")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 4.16635, 1.11456, -2.11353)
|
||||
mass = 5.0
|
||||
physics_material_override = null
|
||||
|
||||
[node name="Guitar" parent="." instance=ExtResource("4_cm0pq")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -1.11599, 0.997873, 3.88009)
|
||||
physics_material_override = null
|
||||
|
||||
[node name="Horse" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(0.146601, 0, 0.989196, 0, 1, 0, -0.989196, 0, 0.146601, -0.288846, 0.43723, -4.17931)
|
||||
|
||||
[node name="Horse2" parent="." instance=ExtResource("6_3dxm6")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 1.81449, -0.38006, 9.13093)
|
||||
|
||||
[node name="stage" parent="." instance=ExtResource("7_lgr22")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0488815, -0.757728, -1.82727)
|
||||
|
||||
[node name="MainUi" parent="." instance=ExtResource("8_trn2v")]
|
||||
|
||||
[node name="Rotatable" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.534588, 0.00558501, -0.902103)
|
||||
|
||||
[node name="Rotatable2" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -48.2561, 0.00558501, 41.8306)
|
||||
|
||||
[node name="Rotatable3" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -48.2561, 0.00558501, -48.0989)
|
||||
|
||||
[node name="Rotatable4" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -120.509, 0.00558501, -48.0989)
|
||||
|
||||
[node name="Rotatable5" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -85.67, 0.00558501, 4.14013)
|
||||
|
||||
[node name="Rotatable10" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -35.4848, 0.00558501, -0.586246)
|
||||
|
||||
[node name="Rotatable11" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -122.158, 0.00558501, -0.586246)
|
||||
|
||||
[node name="Rotatable6" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -118.206, 0.00558501, 43.295)
|
||||
|
||||
[node name="Rotatable7" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -154.557, 0.00558501, 2.93675)
|
||||
|
||||
[node name="Rotatable8" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 44.3335, 0.00558501, 43.1111)
|
||||
|
||||
[node name="Rotatable9" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 44.3335, 0.00558501, -46.7001)
|
||||
|
||||
[node name="HauntedMansion" parent="." instance=ExtResource("6_3dxm6")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -149.584, -0.168726, -1.23758)
|
||||
|
|
|
|||
12
MainCamera.gd
Normal file
12
MainCamera.gd
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
extends Camera3D
|
||||
|
||||
var offset = Vector3 (5, 25, 0)
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
if Input.is_action_pressed("Zoom"):
|
||||
offset = Vector3 (5, 50, 0)
|
||||
elif Input.is_action_pressed("ZoomIn"):
|
||||
offset = Vector3 (2, 8, 0)
|
||||
else:
|
||||
offset = Vector3 (5, 25, 0)
|
||||
global_position = GlobalVariables.player.get_object_position() + offset
|
||||
1
MainCamera.gd.uid
Normal file
1
MainCamera.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://caucan7ubuwya
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
extends Node3D
|
||||
class_name Player
|
||||
|
||||
var playerObject
|
||||
|
||||
|
|
@ -6,12 +7,17 @@ func _ready() -> void:
|
|||
GlobalVariables.player = self
|
||||
playerObject = $Horse
|
||||
|
||||
func get_object_position():
|
||||
return playerObject.global_position
|
||||
|
||||
func change_object(object):
|
||||
var objectPosition = playerObject.position
|
||||
var objectRotation = playerObject.objectRotation
|
||||
var objectRotation = playerObject.rotation
|
||||
var objectVelocity = playerObject.linear_velocity
|
||||
remove_child(playerObject)
|
||||
|
||||
add_child(object)
|
||||
object.position = objectPosition
|
||||
object.position = objectPosition + Vector3(0, 2, 0)
|
||||
object.rotation = objectRotation
|
||||
object.linear_velocity = objectVelocity
|
||||
playerObject = object
|
||||
|
|
|
|||
18
Surfaces/Floor.tscn
Normal file
18
Surfaces/Floor.tscn
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
[gd_scene load_steps=3 format=3 uid="uid://g5m48diqvglc"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://bqyeo1mq0f35e" path="res://locations/stage.glb" id="1_y6dek"]
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_jm8jd"]
|
||||
size = Vector3(152.307, 2, 151.213)
|
||||
|
||||
[node name="Floor" type="Node3D"]
|
||||
|
||||
[node name="StaticBody3D" type="StaticBody3D" parent="."]
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.265808, 0, 0.487366)
|
||||
shape = SubResource("BoxShape3D_jm8jd")
|
||||
|
||||
[node name="stage" parent="." instance=ExtResource("1_y6dek")]
|
||||
|
||||
[editable path="stage"]
|
||||
|
|
@ -2,9 +2,17 @@ extends PanelContainer
|
|||
|
||||
var shapeButtonScene = preload("res://UI/SelectableShape/ShapeButton.tscn")
|
||||
|
||||
var initialShapes = [
|
||||
preload("res://models/horse.glb"),
|
||||
preload("res://models/shark.glb")
|
||||
var shapes = [
|
||||
{
|
||||
"object": preload("res://models/horse.glb"),
|
||||
"name": "horse",
|
||||
"scene": preload("res://objects/horse.tscn")
|
||||
},
|
||||
{
|
||||
"object": preload("res://models/shark.glb"),
|
||||
"name": "shark",
|
||||
"scene": preload("res://objects/shark.tscn")
|
||||
},
|
||||
]
|
||||
|
||||
var offset = Vector3(0, 10000, 10000)
|
||||
|
|
@ -12,11 +20,22 @@ var offset = Vector3(0, 10000, 10000)
|
|||
func _ready() -> void:
|
||||
setup_buttons()
|
||||
|
||||
func close():
|
||||
visible = false
|
||||
|
||||
func button_clicked(index):
|
||||
GlobalVariables.player.change_object(shapes[index].scene.instantiate())
|
||||
close()
|
||||
|
||||
func setup_buttons():
|
||||
for shape in initialShapes:
|
||||
var index = 0
|
||||
for shape in shapes:
|
||||
var newButton = shapeButtonScene.instantiate()
|
||||
var buttonObject = shape.instantiate()
|
||||
var buttonObject = shape.object.instantiate()
|
||||
%ShapeButtons.add_child(newButton)
|
||||
newButton.set_location_offset(offset)
|
||||
offset += Vector3(0, 10000, 10000)
|
||||
newButton.change_object(buttonObject)
|
||||
|
||||
newButton.pressed.connect(button_clicked.bind(index))
|
||||
index += 1
|
||||
|
|
|
|||
26
locations/HauntedMansion.tscn
Normal file
26
locations/HauntedMansion.tscn
Normal file
File diff suppressed because one or more lines are too long
3
locations/SpinnerWorld.tscn
Normal file
3
locations/SpinnerWorld.tscn
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
[gd_scene format=3 uid="uid://6chikm1ta85o"]
|
||||
|
||||
[node name="SpinnerWorld" type="Node3D"]
|
||||
BIN
locations/hauntedhouse.glb
Normal file
BIN
locations/hauntedhouse.glb
Normal file
Binary file not shown.
|
|
@ -1,8 +1,8 @@
|
|||
extends RigidBody3D
|
||||
|
||||
@export var initialMass:float = 3
|
||||
@export var yTorqueMult:float = 100
|
||||
@export var zTorqueMult:float = 100
|
||||
@export var initialMass:float = 5
|
||||
@export var yTorqueMult:float = 200
|
||||
@export var zTorqueMult:float = 200
|
||||
|
||||
var prev_mouse_position
|
||||
var next_mouse_position
|
||||
|
|
|
|||
|
|
@ -13,8 +13,6 @@ size = Vector3(1, 1.22449, 1.01085)
|
|||
[node name="Rotatable" type="RigidBody3D"]
|
||||
physics_material_override = SubResource("PhysicsMaterial_vn420")
|
||||
script = ExtResource("1_vn420")
|
||||
yTorqueMult = 30.0
|
||||
zTorqueMult = 30.0
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.66452, 0.0126419)
|
||||
|
|
|
|||
17
objects/rotatableLarge.tscn
Normal file
17
objects/rotatableLarge.tscn
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
[gd_scene load_steps=3 format=3 uid="uid://tv34yqlttubv"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://du8lkrvnc16gl" path="res://objects/Rotatable.tscn" id="1_21koh"]
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_6b465"]
|
||||
size = Vector3(1.59271, 1, 32.4368)
|
||||
|
||||
[node name="Rotatable" instance=ExtResource("1_21koh")]
|
||||
initialMass = 50.0
|
||||
yTorqueMult = 20000.0
|
||||
|
||||
[node name="CollisionShape3D" parent="." index="0"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0103455, 0.66452, -0.032095)
|
||||
shape = SubResource("BoxShape3D_6b465")
|
||||
|
||||
[node name="MeshInstance3D" parent="." index="1"]
|
||||
transform = Transform3D(1.65606, 0, 0, 0, 1.1989, 0, 0, 0, 32.3694, 0, 0.676347, 0)
|
||||
File diff suppressed because one or more lines are too long
|
|
@ -26,6 +26,16 @@ LMB={
|
|||
"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":0,"position":Vector2(0, 0),"global_position":Vector2(0, 0),"factor":1.0,"button_index":1,"canceled":false,"pressed":false,"double_click":false,"script":null)
|
||||
]
|
||||
}
|
||||
Zoom={
|
||||
"deadzone": 0.2,
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":32,"key_label":0,"unicode":32,"location":0,"echo":false,"script":null)
|
||||
]
|
||||
}
|
||||
ZoomIn={
|
||||
"deadzone": 0.2,
|
||||
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194325,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||
]
|
||||
}
|
||||
|
||||
[rendering]
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue