Compare commits
No commits in common. "main" and "Shark" have entirely different histories.
4
.editorconfig
Normal file
4
.editorconfig
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
root = true
|
||||
|
||||
[*]
|
||||
charset = utf-8
|
||||
2
.gitattributes
vendored
Normal file
2
.gitattributes
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
# Auto detect text files and perform LF normalization
|
||||
* text=auto
|
||||
11
.gitignore
vendored
11
.gitignore
vendored
|
|
@ -1,11 +1,11 @@
|
|||
# ---> Godot
|
||||
# Godot 4+ specific ignores
|
||||
.godot/
|
||||
.nomedia
|
||||
|
||||
# Godot-specific ignores
|
||||
.import/
|
||||
export.cfg
|
||||
export_presets.cfg
|
||||
export_credentials.cfg
|
||||
|
||||
# Imported translations (automatically generated from CSV files)
|
||||
*.translation
|
||||
|
|
@ -14,4 +14,9 @@ export_presets.cfg
|
|||
.mono/
|
||||
data_*/
|
||||
mono_crash.*.json
|
||||
|
||||
*.import
|
||||
*.import
|
||||
models/guitar.glb.import
|
||||
models/horse.glb.import
|
||||
models/shark.glb.import
|
||||
icon.svg.import
|
||||
|
|
|
|||
5
GlobalVariables.gd
Normal file
5
GlobalVariables.gd
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
extends Node
|
||||
|
||||
var money:int
|
||||
var player:Player
|
||||
var selectedObject
|
||||
1
GlobalVariables.gd.uid
Normal file
1
GlobalVariables.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://d1mciek5v8ur4
|
||||
79
Main.tscn
Normal file
79
Main.tscn
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
[gd_scene load_steps=11 format=3 uid="uid://bt5a8babn8gyn"]
|
||||
|
||||
[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://g5m48diqvglc" path="res://Surfaces/Floor.tscn" id="6_lgr22"]
|
||||
[ext_resource type="PackedScene" uid="uid://ch6blfiqhtt67" path="res://objects/Animals/raccoon.tscn" id="7_lgr22"]
|
||||
[ext_resource type="PackedScene" uid="uid://c2qnrd7mneksy" path="res://UI/MainUI.tscn" id="8_trn2v"]
|
||||
|
||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_glv2v"]
|
||||
albedo_color = Color(0.356863, 1, 1, 1)
|
||||
|
||||
[sub_resource type="PlaneMesh" id="PlaneMesh_uu6xs"]
|
||||
material = SubResource("StandardMaterial3D_glv2v")
|
||||
size = Vector2(30, 30)
|
||||
|
||||
[sub_resource type="CylinderShape3D" id="CylinderShape3D_glv2v"]
|
||||
height = 1.0
|
||||
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, -42.1941, -0.933056, -2.90973)
|
||||
|
||||
[node name="Camera3D" type="Camera3D" parent="."]
|
||||
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="StaticBody3D" type="StaticBody3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -167.225, 0)
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="StaticBody3D"]
|
||||
mesh = SubResource("PlaneMesh_uu6xs")
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.494415, 0)
|
||||
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="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="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="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="Rotatable11" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.69489, 0.00558501, -46.7001)
|
||||
|
||||
[node name="Rotatable12" parent="." instance=ExtResource("5_fos0i")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -18.0831, 0.00558501, 47.6165)
|
||||
|
||||
[node name="HauntedMansion" parent="." instance=ExtResource("6_3dxm6")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -149.584, -0.689379, -1.69503)
|
||||
|
||||
[node name="Floor" parent="." instance=ExtResource("6_lgr22")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.0488815, -0.757728, -1.82727)
|
||||
|
||||
[node name="Raccoon" parent="." instance=ExtResource("7_lgr22")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -55.0482, 0.242264, 11.5166)
|
||||
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
|
||||
37
Player/Player.gd
Normal file
37
Player/Player.gd
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
extends Node3D
|
||||
class_name Player
|
||||
|
||||
var playerObject
|
||||
|
||||
var monies = 0
|
||||
|
||||
func _ready() -> void:
|
||||
GlobalVariables.player = self
|
||||
playerObject = $Horse
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
if playerObject.global_position.y <= -100:
|
||||
playerObject.global_position = Vector3(0, 5, 0)
|
||||
|
||||
var rotationDif = playerObject.angular_velocity
|
||||
|
||||
monies += (rotationDif.length() * delta)/6.2
|
||||
|
||||
if monies >= 1:
|
||||
monies -= 1
|
||||
GlobalVariables.money += 1
|
||||
|
||||
func get_object_position():
|
||||
return playerObject.global_position
|
||||
|
||||
func change_object(object):
|
||||
var objectPosition = playerObject.position
|
||||
var objectRotation = playerObject.rotation
|
||||
var objectVelocity = playerObject.linear_velocity
|
||||
remove_child(playerObject)
|
||||
|
||||
add_child(object)
|
||||
object.position = objectPosition + Vector3(0, 2, 0)
|
||||
object.rotation = objectRotation
|
||||
object.linear_velocity = objectVelocity
|
||||
playerObject = object
|
||||
1
Player/Player.gd.uid
Normal file
1
Player/Player.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://cayn4psbfrpj1
|
||||
9
Player/Player.tscn
Normal file
9
Player/Player.tscn
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
[gd_scene load_steps=3 format=3 uid="uid://bubyfj3d0t4wr"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cayn4psbfrpj1" path="res://Player/Player.gd" id="1_q3lat"]
|
||||
[ext_resource type="PackedScene" uid="uid://dxnty4qdey1la" path="res://objects/horse.tscn" id="2_tok1r"]
|
||||
|
||||
[node name="Player" type="Node3D"]
|
||||
script = ExtResource("1_q3lat")
|
||||
|
||||
[node name="Horse" parent="." instance=ExtResource("2_tok1r")]
|
||||
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"]
|
||||
4
UI/MOney.gd
Normal file
4
UI/MOney.gd
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
extends Label
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
text = "Money: " + str(GlobalVariables.money)
|
||||
1
UI/MOney.gd.uid
Normal file
1
UI/MOney.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://ckv3v1nabgbb3
|
||||
7
UI/MainUI.gd
Normal file
7
UI/MainUI.gd
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
extends CanvasLayer
|
||||
|
||||
func _ready() -> void:
|
||||
$ShapeSelect.visible = false
|
||||
|
||||
func _on_shape_button_pressed() -> void:
|
||||
$ShapeSelect.visible = true
|
||||
1
UI/MainUI.gd.uid
Normal file
1
UI/MainUI.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://dhy3kcnievdpq
|
||||
48
UI/MainUI.tscn
Normal file
48
UI/MainUI.tscn
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
[gd_scene load_steps=4 format=3 uid="uid://c2qnrd7mneksy"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dhy3kcnievdpq" path="res://UI/MainUI.gd" id="1_xv1u1"]
|
||||
[ext_resource type="Script" uid="uid://14odr4cov1sm" path="res://UI/ShapeSelectUI.gd" id="2_wwh41"]
|
||||
[ext_resource type="Script" uid="uid://ckv3v1nabgbb3" path="res://UI/MOney.gd" id="3_wa2eh"]
|
||||
|
||||
[node name="MainUi" type="CanvasLayer"]
|
||||
script = ExtResource("1_xv1u1")
|
||||
|
||||
[node name="ShapeButton" type="Button" parent="."]
|
||||
offset_left = 869.0
|
||||
offset_top = 533.0
|
||||
offset_right = 1101.0
|
||||
offset_bottom = 616.0
|
||||
text = "Shape"
|
||||
|
||||
[node name="ShapeSelect" type="PanelContainer" parent="."]
|
||||
offset_left = 169.0
|
||||
offset_top = 52.0
|
||||
offset_right = 896.0
|
||||
offset_bottom = 516.0
|
||||
script = ExtResource("2_wwh41")
|
||||
|
||||
[node name="ScrollContainer" type="ScrollContainer" parent="ShapeSelect"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="ShapeButtons" type="HFlowContainer" parent="ShapeSelect/ScrollContainer"]
|
||||
unique_name_in_owner = true
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 3
|
||||
theme_override_constants/h_separation = 100
|
||||
|
||||
[node name="Label" type="Label" parent="."]
|
||||
offset_left = 8.0
|
||||
offset_top = 6.0
|
||||
offset_right = 228.0
|
||||
offset_bottom = 77.0
|
||||
theme_override_colors/font_color = Color(0.778638, 0.426824, 0.518148, 1)
|
||||
theme_override_colors/font_shadow_color = Color(0.611765, 0.788235, 0, 1)
|
||||
theme_override_colors/font_outline_color = Color(1, 0.705882, 0, 1)
|
||||
theme_override_constants/outline_size = 8
|
||||
theme_override_constants/shadow_outline_size = 13
|
||||
theme_override_font_sizes/font_size = 50
|
||||
text = "Money: 0"
|
||||
script = ExtResource("3_wa2eh")
|
||||
|
||||
[connection signal="pressed" from="ShapeButton" to="." method="_on_shape_button_pressed"]
|
||||
29
UI/SelectableShape/2dViewObject.tscn
Normal file
29
UI/SelectableShape/2dViewObject.tscn
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
[gd_scene load_steps=3 format=3 uid="uid://b3brrwp5525q2"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://djppmw257tqac" path="res://models/horse.glb" id="1_ercyr"]
|
||||
[ext_resource type="Script" uid="uid://ck5f4x6jx82bk" path="res://UI/SelectableShape/2d_view_object.gd" id="1_t7wwi"]
|
||||
|
||||
[node name="2dViewObject" type="Node3D"]
|
||||
script = ExtResource("1_t7wwi")
|
||||
|
||||
[node name="horse" parent="." instance=ExtResource("1_ercyr")]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.1146, 0)
|
||||
|
||||
[node name="CharacterBody3D" type="CharacterBody3D" parent="."]
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="CharacterBody3D"]
|
||||
|
||||
[node name="OmniLight3D" type="OmniLight3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5.0143, 0)
|
||||
|
||||
[node name="OmniLight3D2" type="OmniLight3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.7226, -1.49836)
|
||||
|
||||
[node name="OmniLight3D3" type="OmniLight3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 4.39693, 1.80697)
|
||||
|
||||
[node name="Camera3D" type="Camera3D" parent="."]
|
||||
transform = Transform3D(-0.99875, -0.0266758, 0.0422761, -0.0149347, 0.966319, 0.256915, -0.0477056, 0.255962, -0.965509, 0.0691954, 3.33261, -8.46037)
|
||||
fov = 43.6717
|
||||
|
||||
[editable path="horse"]
|
||||
12
UI/SelectableShape/2d_view_object.gd
Normal file
12
UI/SelectableShape/2d_view_object.gd
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
extends Node3D
|
||||
|
||||
var object
|
||||
|
||||
func _ready() -> void:
|
||||
object = $horse
|
||||
|
||||
func change_object(newObject):
|
||||
remove_child(object)
|
||||
object.queue_free()
|
||||
add_child(newObject)
|
||||
object = newObject
|
||||
1
UI/SelectableShape/2d_view_object.gd.uid
Normal file
1
UI/SelectableShape/2d_view_object.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://ck5f4x6jx82bk
|
||||
31
UI/SelectableShape/ShapeButton.gd
Normal file
31
UI/SelectableShape/ShapeButton.gd
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
extends Button
|
||||
|
||||
var rotationAmount
|
||||
var rotationTimer = 0
|
||||
|
||||
func _ready() -> void:
|
||||
set_rotation_amount()
|
||||
|
||||
func set_info(info:String):
|
||||
$Info.text = info
|
||||
|
||||
func set_location_offset(offset):
|
||||
%ViewObject.global_position = offset
|
||||
|
||||
func change_object(object):
|
||||
%ViewObject.change_object(object)
|
||||
|
||||
func _process(delta):
|
||||
var texture = $SubViewport.get_texture()
|
||||
$TextureRect.texture = texture
|
||||
|
||||
rotationTimer -= delta
|
||||
if rotationTimer <= 0:
|
||||
if randi_range(0, 1) == 0:
|
||||
set_rotation_amount()
|
||||
rotationTimer = randf_range(0, 6)
|
||||
|
||||
%ViewObject.object.rotation += rotationAmount * delta
|
||||
|
||||
func set_rotation_amount():
|
||||
rotationAmount = Vector3(randf_range(0, 3), randf_range(0, 3), randf_range(0, 3))
|
||||
1
UI/SelectableShape/ShapeButton.gd.uid
Normal file
1
UI/SelectableShape/ShapeButton.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://ctan4kigqf4m4
|
||||
42
UI/SelectableShape/ShapeButton.tscn
Normal file
42
UI/SelectableShape/ShapeButton.tscn
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
[gd_scene load_steps=3 format=3 uid="uid://bx2ydrg7xfp3f"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://ctan4kigqf4m4" path="res://UI/SelectableShape/ShapeButton.gd" id="1_itppa"]
|
||||
[ext_resource type="PackedScene" uid="uid://b3brrwp5525q2" path="res://UI/SelectableShape/2dViewObject.tscn" id="1_tvnn6"]
|
||||
|
||||
[node name="ShapeButton" type="Button"]
|
||||
custom_minimum_size = Vector2(200, 200)
|
||||
offset_left = 395.0
|
||||
offset_top = 205.0
|
||||
offset_right = 642.0
|
||||
offset_bottom = 405.0
|
||||
script = ExtResource("1_itppa")
|
||||
|
||||
[node name="SubViewport" type="SubViewport" parent="."]
|
||||
|
||||
[node name="ViewObject" parent="SubViewport" instance=ExtResource("1_tvnn6")]
|
||||
unique_name_in_owner = true
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="."]
|
||||
layout_mode = 0
|
||||
offset_right = 246.0
|
||||
offset_bottom = 200.0
|
||||
expand_mode = 1
|
||||
|
||||
[node name="Info" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 2.0
|
||||
offset_top = 201.0
|
||||
offset_right = 248.0
|
||||
offset_bottom = 240.0
|
||||
theme_override_colors/font_color = Color(1, 0, 0, 1)
|
||||
theme_override_colors/font_shadow_color = Color(0, 0.882353, 0, 1)
|
||||
theme_override_colors/font_outline_color = Color(0, 0, 1, 1)
|
||||
theme_override_constants/outline_size = 8
|
||||
theme_override_constants/shadow_outline_size = 14
|
||||
theme_override_font_sizes/font_size = 28
|
||||
text = "Horse - 5 dollars"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[editable path="SubViewport/ViewObject"]
|
||||
[editable path="SubViewport/ViewObject/horse"]
|
||||
46
UI/ShapeSelectUI.gd
Normal file
46
UI/ShapeSelectUI.gd
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
extends PanelContainer
|
||||
|
||||
var shapeButtonScene = preload("res://UI/SelectableShape/ShapeButton.tscn")
|
||||
|
||||
var shapes = [
|
||||
{
|
||||
"object": preload("res://models/horse.glb"),
|
||||
"name": "horse",
|
||||
"cost": 0,
|
||||
"scene": preload("res://objects/horse.tscn")
|
||||
},
|
||||
{
|
||||
"object": preload("res://models/shark.glb"),
|
||||
"name": "shark",
|
||||
"cost": 5,
|
||||
"scene": preload("res://objects/shark.tscn")
|
||||
},
|
||||
]
|
||||
|
||||
var offset = Vector3(0, 10000, 10000)
|
||||
|
||||
func _ready() -> void:
|
||||
setup_buttons()
|
||||
|
||||
func close():
|
||||
visible = false
|
||||
|
||||
func button_clicked(index):
|
||||
if GlobalVariables.money >= shapes[index].cost:
|
||||
GlobalVariables.money -= shapes[index].cost
|
||||
GlobalVariables.player.change_object(shapes[index].scene.instantiate())
|
||||
close()
|
||||
|
||||
func setup_buttons():
|
||||
var index = 0
|
||||
for shape in shapes:
|
||||
var newButton = shapeButtonScene.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.set_info(shape.name + " - " + str(shape.cost) + " dollars")
|
||||
newButton.pressed.connect(button_clicked.bind(index))
|
||||
index += 1
|
||||
1
UI/ShapeSelectUI.gd.uid
Normal file
1
UI/ShapeSelectUI.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://14odr4cov1sm
|
||||
1
icon.svg
Normal file
1
icon.svg
Normal file
|
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128"><rect width="124" height="124" x="2" y="2" fill="#363d52" stroke="#212532" stroke-width="4" rx="14"/><g fill="#fff" transform="translate(12.322 12.322)scale(.101)"><path d="M105 673v33q407 354 814 0v-33z"/><path fill="#478cbf" d="m105 673 152 14q12 1 15 14l4 67 132 10 8-61q2-11 15-15h162q13 4 15 15l8 61 132-10 4-67q3-13 15-14l152-14V427q30-39 56-81-35-59-83-108-43 20-82 47-40-37-88-64 7-51 8-102-59-28-123-42-26 43-46 89-49-7-98 0-20-46-46-89-64 14-123 42 1 51 8 102-48 27-88 64-39-27-82-47-48 49-83 108 26 42 56 81zm0 33v39c0 276 813 276 814 0v-39l-134 12-5 69q-2 10-14 13l-162 11q-12 0-16-11l-10-65H446l-10 65q-4 11-16 11l-162-11q-12-3-14-13l-5-69z"/><path d="M483 600c0 34 58 34 58 0v-86c0-34-58-34-58 0z"/><circle cx="725" cy="526" r="90"/><circle cx="299" cy="526" r="90"/></g><g fill="#414042" transform="translate(12.322 12.322)scale(.101)"><circle cx="307" cy="532" r="60"/><circle cx="717" cy="532" r="60"/></g></svg>
|
||||
|
After Width: | Height: | Size: 994 B |
37
icon.svg.import
Normal file
37
icon.svg.import
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b4232ihw25waq"
|
||||
path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://icon.svg"
|
||||
dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.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
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=false
|
||||
editor/convert_colors_with_editor_theme=false
|
||||
42
locations/HauntedMansion.tscn
Normal file
42
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.
BIN
locations/stage.glb
Normal file
BIN
locations/stage.glb
Normal file
Binary file not shown.
BIN
models/bear.glb
Normal file
BIN
models/bear.glb
Normal file
Binary file not shown.
BIN
models/catglb.glb
Normal file
BIN
models/catglb.glb
Normal file
Binary file not shown.
BIN
models/dog.glb
Normal file
BIN
models/dog.glb
Normal file
Binary file not shown.
BIN
models/elephant.glb
Normal file
BIN
models/elephant.glb
Normal file
Binary file not shown.
BIN
models/giraffe.glb
Normal file
BIN
models/giraffe.glb
Normal file
Binary file not shown.
BIN
models/guitar.glb
Normal file
BIN
models/guitar.glb
Normal file
Binary file not shown.
37
models/guitar.glb.import
Normal file
37
models/guitar.glb.import
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://y30drmuq4l0n"
|
||||
path="res://.godot/imported/guitar.glb-7d0a07b79e823975fa7fa24a23636f96.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://models/guitar.glb"
|
||||
dest_files=["res://.godot/imported/guitar.glb-7d0a07b79e823975fa7fa24a23636f96.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type=""
|
||||
nodes/root_name=""
|
||||
nodes/apply_root_scale=true
|
||||
nodes/root_scale=1.0
|
||||
nodes/import_as_skeleton_bones=false
|
||||
nodes/use_node_type_suffixes=true
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=1
|
||||
meshes/lightmap_texel_size=0.2
|
||||
meshes/force_disable_compression=false
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/fps=30
|
||||
animation/trimming=false
|
||||
animation/remove_immutable_tracks=true
|
||||
animation/import_rest_as_RESET=false
|
||||
import_script/path=""
|
||||
_subresources={}
|
||||
gltf/naming_version=1
|
||||
gltf/embedded_image_handling=1
|
||||
BIN
models/horse.glb
Normal file
BIN
models/horse.glb
Normal file
Binary file not shown.
37
models/horse.glb.import
Normal file
37
models/horse.glb.import
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://djppmw257tqac"
|
||||
path="res://.godot/imported/horse.glb-43692f818ba2a3d8b061139c4d8cf5c8.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://models/horse.glb"
|
||||
dest_files=["res://.godot/imported/horse.glb-43692f818ba2a3d8b061139c4d8cf5c8.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type=""
|
||||
nodes/root_name=""
|
||||
nodes/apply_root_scale=true
|
||||
nodes/root_scale=1.0
|
||||
nodes/import_as_skeleton_bones=false
|
||||
nodes/use_node_type_suffixes=true
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=1
|
||||
meshes/lightmap_texel_size=0.2
|
||||
meshes/force_disable_compression=false
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/fps=30
|
||||
animation/trimming=false
|
||||
animation/remove_immutable_tracks=true
|
||||
animation/import_rest_as_RESET=false
|
||||
import_script/path=""
|
||||
_subresources={}
|
||||
gltf/naming_version=1
|
||||
gltf/embedded_image_handling=1
|
||||
BIN
models/pig.glb
Normal file
BIN
models/pig.glb
Normal file
Binary file not shown.
BIN
models/platypus.glb
Normal file
BIN
models/platypus.glb
Normal file
Binary file not shown.
BIN
models/raccoon.glb
Normal file
BIN
models/raccoon.glb
Normal file
Binary file not shown.
BIN
models/shark.glb
Normal file
BIN
models/shark.glb
Normal file
Binary file not shown.
37
models/shark.glb.import
Normal file
37
models/shark.glb.import
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://4xn3j7i2njxp"
|
||||
path="res://.godot/imported/shark.glb-4087c768ca5ed9bea0a7dbe21c534941.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://models/shark.glb"
|
||||
dest_files=["res://.godot/imported/shark.glb-4087c768ca5ed9bea0a7dbe21c534941.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type=""
|
||||
nodes/root_name=""
|
||||
nodes/apply_root_scale=true
|
||||
nodes/root_scale=1.0
|
||||
nodes/import_as_skeleton_bones=false
|
||||
nodes/use_node_type_suffixes=true
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=1
|
||||
meshes/lightmap_texel_size=0.2
|
||||
meshes/force_disable_compression=false
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/fps=30
|
||||
animation/trimming=false
|
||||
animation/remove_immutable_tracks=true
|
||||
animation/import_rest_as_RESET=false
|
||||
import_script/path=""
|
||||
_subresources={}
|
||||
gltf/naming_version=1
|
||||
gltf/embedded_image_handling=1
|
||||
BIN
models/turtle.glb
Normal file
BIN
models/turtle.glb
Normal file
Binary file not shown.
25
objects/Animals/raccoon.tscn
Normal file
25
objects/Animals/raccoon.tscn
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
[gd_scene load_steps=4 format=3 uid="uid://ch6blfiqhtt67"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://du8lkrvnc16gl" path="res://objects/Rotatable.tscn" id="1_gc7wg"]
|
||||
[ext_resource type="PackedScene" uid="uid://dxuanctss76sr" path="res://models/raccoon.glb" id="2_8psji"]
|
||||
|
||||
[sub_resource type="ConvexPolygonShape3D" id="ConvexPolygonShape3D_ko0kv"]
|
||||
points = PackedVector3Array(-0.459304, 1.89517, 0.993917, 0.0405142, 1.88634, 0.993917, 0.0387483, 1.78145, -1.06475, -0.46107, 1.78973, -1.06475, -1.17459, 0.910333, -1.06475, -1.17459, 0.910333, 0.993917, -2.30787, -3.44803, 1.42434, 0.523849, 0.881627, 0.993917, 3.6929, -2.21753, 0.249951, 3.6929, -2.21753, -0.250211, -1.7845, -3.32051, 1.3811, 0.523849, 0.881627, -1.06475, -2.20661, -3.44361, -1.42544, -2.25547, -1.5468, -1.02542, -1.73387, -0.106526, -0.500153, -1.73387, -0.106526, 0.499892, -2.05354, -1.44522, 0.952911, -2.22427, -1.76154, 0.685117, -2.23546, -1.88796, 0.685117, -2.29492, -1.90452, -0.671151, -2.32141, -3.73399, 1.42434, -1.79333, -3.7257, 1.3811, 0.489115, -1.17031, 0.999775, 2.22464, -3.22832, 0.249951, 0.480873, -1.67046, 0.999775, 0.4638, -2.6702, 0.999775, 0.454969, -3.1698, 0.999775, 0.201822, -3.69866, 0.999775, 0.497945, -0.657463, -1.06475, 2.22464, -3.22832, -0.250211, 0.201822, -3.69866, -1.00004, 0.454969, -3.1698, -1.00004, -1.78509, -3.25095, -1.3836, -1.79274, -3.70086, -1.3836, -2.21426, -3.69755, -1.42544, -2.25547, -1.5468, -0.883154, -2.32141, -3.73399, 1.0737, -0.810178, -3.74447, 0.499892, 0.457324, -3.70307, 0.796976, 0.457324, -3.70307, -0.797237, -0.810178, -3.74447, -0.500153)
|
||||
|
||||
[node name="Raccoon" instance=ExtResource("1_gc7wg")]
|
||||
yTorqueMult = 800.0
|
||||
zTorqueMult = 800.0
|
||||
|
||||
[node name="CollisionShape3D" parent="." index="0"]
|
||||
disabled = true
|
||||
|
||||
[node name="MeshInstance3D" parent="." index="1"]
|
||||
visible = false
|
||||
|
||||
[node name="CollisionShape3D2" type="CollisionShape3D" parent="." index="2"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3.80874, 0)
|
||||
shape = SubResource("ConvexPolygonShape3D_ko0kv")
|
||||
|
||||
[node name="raccoon" parent="." index="3" instance=ExtResource("2_8psji")]
|
||||
|
||||
[editable path="raccoon"]
|
||||
27
objects/Guitar.tscn
Normal file
27
objects/Guitar.tscn
Normal file
File diff suppressed because one or more lines are too long
26
objects/Rotatable.gd
Normal file
26
objects/Rotatable.gd
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
extends RigidBody3D
|
||||
|
||||
@export var initialMass:float = 5
|
||||
@export var yTorqueMult:float = 200
|
||||
@export var zTorqueMult:float = 200
|
||||
|
||||
var prev_mouse_position
|
||||
var next_mouse_position
|
||||
|
||||
func _ready() -> void:
|
||||
mass = initialMass
|
||||
|
||||
func _process(delta):
|
||||
if GlobalVariables.selectedObject == self:
|
||||
next_mouse_position = get_viewport().get_mouse_position()
|
||||
var torque = Vector3()
|
||||
torque.y = (next_mouse_position.x - prev_mouse_position.x) * yTorqueMult * delta
|
||||
torque.z = (next_mouse_position.y - prev_mouse_position.y) * zTorqueMult * delta
|
||||
prev_mouse_position = next_mouse_position
|
||||
|
||||
apply_torque(torque)
|
||||
|
||||
func _on_input_event(camera: Node, event: InputEvent, event_position: Vector3, normal: Vector3, shape_idx: int) -> void:
|
||||
if event is InputEventMouseButton and event.button_index == MOUSE_BUTTON_LEFT:
|
||||
prev_mouse_position = get_viewport().get_mouse_position()
|
||||
GlobalVariables.selectedObject = self
|
||||
1
objects/Rotatable.gd.uid
Normal file
1
objects/Rotatable.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://cvqlceaui3krb
|
||||
25
objects/Rotatable.tscn
Normal file
25
objects/Rotatable.tscn
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
[gd_scene load_steps=5 format=3 uid="uid://du8lkrvnc16gl"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cvqlceaui3krb" path="res://objects/Rotatable.gd" id="1_vn420"]
|
||||
|
||||
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_vn420"]
|
||||
friction = 0.26
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_vn420"]
|
||||
size = Vector3(1, 1.22449, 1.01085)
|
||||
|
||||
[sub_resource type="BoxMesh" id="BoxMesh_gxu5i"]
|
||||
|
||||
[node name="Rotatable" type="RigidBody3D"]
|
||||
physics_material_override = SubResource("PhysicsMaterial_vn420")
|
||||
script = ExtResource("1_vn420")
|
||||
|
||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.66452, 0.0126419)
|
||||
shape = SubResource("BoxShape3D_vn420")
|
||||
|
||||
[node name="MeshInstance3D" type="MeshInstance3D" parent="."]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.676347, 0)
|
||||
mesh = SubResource("BoxMesh_gxu5i")
|
||||
|
||||
[connection signal="input_event" from="." to="." method="_on_input_event"]
|
||||
24
objects/horse.tscn
Normal file
24
objects/horse.tscn
Normal file
File diff suppressed because one or more lines are too long
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, 41.5552)
|
||||
|
||||
[node name="Rotatable" instance=ExtResource("1_21koh")]
|
||||
initialMass = 50.0
|
||||
yTorqueMult = 30000.0
|
||||
|
||||
[node name="CollisionShape3D" parent="." index="0"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.0103455, 0.66452, 0.0677242)
|
||||
shape = SubResource("BoxShape3D_6b465")
|
||||
|
||||
[node name="MeshInstance3D" parent="." index="1"]
|
||||
transform = Transform3D(1.65606, 0, 0, 0, 1.1989, 0, 0, 0, 41.5417, 0, 0.676347, 0)
|
||||
18
objects/rotatableLong.tscn
Normal file
18
objects/rotatableLong.tscn
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
[gd_scene load_steps=3 format=3 uid="uid://dqu5h8wloab26"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://du8lkrvnc16gl" path="res://objects/Rotatable.tscn" id="1_6b465"]
|
||||
|
||||
[sub_resource type="BoxShape3D" id="BoxShape3D_6b465"]
|
||||
size = Vector3(1, 1, 5.99051)
|
||||
|
||||
[node name="Rotatable" instance=ExtResource("1_6b465")]
|
||||
initialMass = 6.0
|
||||
yTorqueMult = 200.0
|
||||
zTorqueMult = 80.0
|
||||
|
||||
[node name="CollisionShape3D" parent="." index="0"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.66452, -0.00264168)
|
||||
shape = SubResource("BoxShape3D_6b465")
|
||||
|
||||
[node name="MeshInstance3D" parent="." index="1"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 5.96618, 0, 0.676347, 0)
|
||||
17
objects/rotatableSphere.tscn
Normal file
17
objects/rotatableSphere.tscn
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
[gd_scene load_steps=4 format=3 uid="uid://cbl4jcbilihv"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://du8lkrvnc16gl" path="res://objects/Rotatable.tscn" id="1_w404d"]
|
||||
|
||||
[sub_resource type="SphereShape3D" id="SphereShape3D_5yy8w"]
|
||||
|
||||
[sub_resource type="SphereMesh" id="SphereMesh_rq261"]
|
||||
|
||||
[node name="Rotatable" instance=ExtResource("1_w404d")]
|
||||
yTorqueMult = 20.0
|
||||
zTorqueMult = 20.0
|
||||
|
||||
[node name="CollisionShape3D" parent="." index="0"]
|
||||
shape = SubResource("SphereShape3D_5yy8w")
|
||||
|
||||
[node name="MeshInstance3D" parent="." index="1"]
|
||||
mesh = SubResource("SphereMesh_rq261")
|
||||
24
objects/shark.tscn
Normal file
24
objects/shark.tscn
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
[gd_scene load_steps=4 format=3 uid="uid://bggp3whsy8eji"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://du8lkrvnc16gl" path="res://objects/Rotatable.tscn" id="1_d5pdq"]
|
||||
[ext_resource type="PackedScene" uid="uid://4xn3j7i2njxp" path="res://models/shark.glb" id="2_d5pdq"]
|
||||
|
||||
[sub_resource type="ConvexPolygonShape3D" id="ConvexPolygonShape3D_nq7gm"]
|
||||
points = PackedVector3Array(-0.133125, -1.72987, 0.749627, 0.132929, -1.72987, 0.749627, -1, -1.00017, 2.81724, -1, -1.17326, 0.749627, -1, -1.00017, -1.00042, -0.696554, -0.364853, -4.35659, 1, -1.17326, 0.749627, 1, -1.00017, 2.81724, 0.696359, -0.364853, -4.35659, 1, -1.00017, -1.00042, -0.686766, -0.563619, 3.42268, -1, 0.999828, 2.81724, -1, 0.999828, -1.00042, -0.696554, 0.364511, -4.35659, 1, 0.999828, 2.81724, 0.68657, -0.563619, 3.42268, 0.696359, 0.364511, -4.35659, 1, 0.999828, -1.00042, -0.686766, 0.563277, 3.42268, -0.5, 1.67717, 0.900414, -0.5, 1.67717, 0.598839, 0.5, 1.67717, 0.900414, 0.68657, 0.563277, 3.42268, 0.5, 1.67717, 0.598839)
|
||||
|
||||
[node name="Horse" instance=ExtResource("1_d5pdq")]
|
||||
|
||||
[node name="CollisionShape3D" parent="." index="0"]
|
||||
disabled = true
|
||||
|
||||
[node name="MeshInstance3D" parent="." index="1"]
|
||||
visible = false
|
||||
|
||||
[node name="CollisionShape3D3" type="CollisionShape3D" parent="." index="2"]
|
||||
transform = Transform3D(0.946571, 0, -0.322497, 0, 1, 0, 0.322497, 0, 0.946571, -0.709573, 1.54197, -2.37729)
|
||||
shape = SubResource("ConvexPolygonShape3D_nq7gm")
|
||||
|
||||
[node name="shark" parent="." index="3" instance=ExtResource("2_d5pdq")]
|
||||
transform = Transform3D(0.946571, 0, -0.322497, 0, 1, 0, 0.322497, 0, 0.946571, -0.709573, 1.54197, -2.37729)
|
||||
|
||||
[editable path="shark"]
|
||||
43
project.godot
Normal file
43
project.godot
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
; Engine configuration file.
|
||||
; It's best edited using the editor UI and not directly,
|
||||
; since the parameters that go here are not all obvious.
|
||||
;
|
||||
; Format:
|
||||
; [section] ; section goes between []
|
||||
; param=value ; assign values to parameters
|
||||
|
||||
config_version=5
|
||||
|
||||
[application]
|
||||
|
||||
config/name="ShapeEscape"
|
||||
run/main_scene="uid://bt5a8babn8gyn"
|
||||
config/features=PackedStringArray("4.4", "GL Compatibility")
|
||||
config/icon="res://icon.svg"
|
||||
|
||||
[autoload]
|
||||
|
||||
GlobalVariables="*res://GlobalVariables.gd"
|
||||
|
||||
[input]
|
||||
|
||||
LMB={
|
||||
"deadzone": 0.2,
|
||||
"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]
|
||||
|
||||
renderer/rendering_method="gl_compatibility"
|
||||
renderer/rendering_method.mobile="gl_compatibility"
|
||||
Loading…
Reference in a new issue