From fdbba87b346c6020d7349d0c2cb3793fcdab25f3 Mon Sep 17 00:00:00 2001 From: cel Date: Sat, 16 Jul 2022 22:42:19 +0100 Subject: add menu and switch die code from rust to gdscript --- godot/assets/fonts/format.otf | Bin 0 -> 18820 bytes godot/assets/fonts/format.tres | 7 +++ godot/assets/sounds/Uuhhh.mp3.import | 4 +- godot/assets/theme.tres | 47 +++++++++++++++ godot/project.godot | 12 +++- godot/scenes/Die.gd | 66 +++++++++++++++++++++ godot/scenes/Die.tscn | 42 +++++++++++++ godot/scenes/Game.gd | 31 ++++++++++ godot/scenes/Game.tscn | 56 ++++++++++++++++- godot/scenes/Menu.gd | 25 ++++++++ godot/scenes/Menu.tscn | 42 +++++++++++++ .../test_scene_movement/TestSceneMovement.tscn | 5 +- .../levels/test_scene_uuuhhh/TestSceneUuuhhh.tscn | 2 +- godot/scenes/objects/Player.tscn | 20 ------- godot/scenes/objects/W8.tscn | 31 ---------- godot/scenes/objects/old/Die.tscn | 11 ++++ godot/scenes/scripts/roblox-cube.gd | 22 ------- rust/src/game.rs | 44 -------------- rust/src/lib.rs | 6 -- rust/src/spinning_cube.rs | 58 ------------------ rust/src/test.rs | 58 ------------------ 21 files changed, 341 insertions(+), 248 deletions(-) create mode 100644 godot/assets/fonts/format.otf create mode 100644 godot/assets/fonts/format.tres create mode 100644 godot/assets/theme.tres create mode 100644 godot/scenes/Die.gd create mode 100644 godot/scenes/Die.tscn create mode 100644 godot/scenes/Game.gd create mode 100644 godot/scenes/Menu.gd create mode 100644 godot/scenes/Menu.tscn delete mode 100644 godot/scenes/objects/Player.tscn delete mode 100644 godot/scenes/objects/W8.tscn create mode 100644 godot/scenes/objects/old/Die.tscn delete mode 100644 godot/scenes/scripts/roblox-cube.gd delete mode 100644 rust/src/game.rs delete mode 100644 rust/src/spinning_cube.rs delete mode 100644 rust/src/test.rs diff --git a/godot/assets/fonts/format.otf b/godot/assets/fonts/format.otf new file mode 100644 index 0000000..129be34 Binary files /dev/null and b/godot/assets/fonts/format.otf differ diff --git a/godot/assets/fonts/format.tres b/godot/assets/fonts/format.tres new file mode 100644 index 0000000..9020d9c --- /dev/null +++ b/godot/assets/fonts/format.tres @@ -0,0 +1,7 @@ +[gd_resource type="DynamicFont" load_steps=2 format=2] + +[ext_resource path="res://assets/fonts/format.otf" type="DynamicFontData" id=1] + +[resource] +size = 50 +font_data = ExtResource( 1 ) diff --git a/godot/assets/sounds/Uuhhh.mp3.import b/godot/assets/sounds/Uuhhh.mp3.import index 4044597..cbe7703 100644 --- a/godot/assets/sounds/Uuhhh.mp3.import +++ b/godot/assets/sounds/Uuhhh.mp3.import @@ -2,13 +2,11 @@ importer="mp3" type="AudioStreamMP3" -path="res://.import/Uuhhh.mp3-1452b4c6d720c509ff34f445446a352e.mp3str" +valid=false [deps] source_file="res://assets/sounds/Uuhhh.mp3" -dest_files=[ "res://.import/Uuhhh.mp3-1452b4c6d720c509ff34f445446a352e.mp3str" ] - [params] loop=true diff --git a/godot/assets/theme.tres b/godot/assets/theme.tres new file mode 100644 index 0000000..1269b54 --- /dev/null +++ b/godot/assets/theme.tres @@ -0,0 +1,47 @@ +[gd_resource type="Theme" load_steps=10 format=2] + +[ext_resource path="res://assets/fonts/format.otf" type="DynamicFontData" id=1] +[ext_resource path="res://assets/fonts/format.tres" type="DynamicFont" id=2] + +[sub_resource type="DynamicFont" id=1] +size = 55 +extra_spacing_bottom = -15 +font_data = ExtResource( 1 ) + +[sub_resource type="StyleBoxFlat" id=2] +content_margin_top = 10.0 +content_margin_bottom = 10.0 +bg_color = Color( 0.4, 0.337255, 0.313726, 0.32549 ) + +[sub_resource type="StyleBoxFlat" id=3] +content_margin_top = 10.0 +content_margin_bottom = 10.0 +bg_color = Color( 0.176471, 0.14902, 0.141176, 1 ) + +[sub_resource type="StyleBoxFlat" id=4] +content_margin_top = 10.0 +content_margin_bottom = 10.0 +bg_color = Color( 0.4, 0.337255, 0.313726, 1 ) + +[sub_resource type="StyleBoxFlat" id=5] +content_margin_top = 20.0 +content_margin_bottom = 20.0 +bg_color = Color( 0.290196, 0.247059, 0.231373, 1 ) + +[sub_resource type="StyleBoxFlat" id=6] +content_margin_top = 10.0 +content_margin_bottom = 10.0 +bg_color = Color( 0.176471, 0.14902, 0.141176, 1 ) + +[sub_resource type="StyleBoxFlat" id=7] +bg_color = Color( 0.160784, 0.133333, 0.133333, 1 ) + +[resource] +Button/fonts/font = SubResource( 1 ) +Button/styles/disabled = SubResource( 2 ) +Button/styles/focus = SubResource( 3 ) +Button/styles/hover = SubResource( 4 ) +Button/styles/normal = SubResource( 5 ) +Button/styles/pressed = SubResource( 6 ) +Label/fonts/font = ExtResource( 2 ) +Panel/styles/panel = SubResource( 7 ) diff --git a/godot/project.godot b/godot/project.godot index 0191f34..e98a5a8 100644 --- a/godot/project.godot +++ b/godot/project.godot @@ -15,9 +15,15 @@ _global_script_class_icons={ [application] config/name="code-with-your-friends2022" -run/main_scene="res://scenes/Game.tscn" +run/main_scene="res://scenes/Menu.tscn" config/icon="res://assets/godot-ferris-32x32.png" +[display] + +window/size/width=1920 +window/size/height=1080 +window/stretch/mode="2d" + [gdnative] singletons=[ ] @@ -29,6 +35,10 @@ mouse_btn_left={ "events": [ Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"button_mask":0,"position":Vector2( 0, 0 ),"global_position":Vector2( 0, 0 ),"factor":1.0,"button_index":1,"pressed":false,"doubleclick":false,"script":null) ] } +esc={ +"deadzone": 0.5, +"events": [ ] +} [rendering] diff --git a/godot/scenes/Die.gd b/godot/scenes/Die.gd new file mode 100644 index 0000000..5e238f1 --- /dev/null +++ b/godot/scenes/Die.gd @@ -0,0 +1,66 @@ +extends Spatial + +var camrot_h = 0 +var camrot_v = 0 +var camrot_v_locked_val = 0 +var cam_v_min = -90 +var cam_v_max = 90 +var sensitivity = 0.5 +var dice_is_moving = false +var last_frame_position = Vector3(1.0,1.0,1.0) +var dragging = false +var mouse_origin = Vector2(0,0) +var dice_launch_force = 0 + +# Called when the node enters the scene tree for the first time. +func _ready(): + Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED) + $CamRoot/Horizontal/Vertical/Camera.add_exception(self) + $CamRoot.set_as_toplevel(true) + + +func _input(event): + if event is InputEventMouseMotion: + camrot_h += -event.relative.x * sensitivity + camrot_v += -event.relative.y * sensitivity + + if dice_is_moving == false: + if event is InputEventMouseMotion and dragging: + # While dragging, move the sprite with the mouse. + dice_launch_force = mouse_origin.distance_to(event.global_position) + camrot_v = camrot_v_locked_val + elif event is InputEventMouseButton and event.button_index == BUTTON_LEFT: + Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE) + mouse_origin = event.global_position + camrot_v_locked_val = camrot_v + if not dragging and event.pressed: + dragging = true + # Stop dragging if the button is released. + elif dragging and not event.pressed: + dragging = false + Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED) + + + + + +func _physics_process(delta): + camrot_v = clamp(camrot_v, cam_v_min, cam_v_max) + + $CamRoot/Horizontal.rotation_degrees.y = camrot_h + $CamRoot/Horizontal/Vertical.rotation_degrees.x = camrot_v + $CamRoot.translation.x = translation.x + $CamRoot.translation.y = translation.y + $CamRoot.translation.z = translation.z + + if last_frame_position != Vector3(translation.x, translation.y, translation.x): + dice_is_moving = true + else: + dice_is_moving = false + + last_frame_position = Vector3(translation.x, translation.y, translation.x) + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +#func _process(delta): +# pass diff --git a/godot/scenes/Die.tscn b/godot/scenes/Die.tscn new file mode 100644 index 0000000..813f7b7 --- /dev/null +++ b/godot/scenes/Die.tscn @@ -0,0 +1,42 @@ +[gd_scene load_steps=5 format=2] + +[ext_resource path="res://scenes/Die.gd" type="Script" id=1] +[ext_resource path="res://assets/game_objects/W8baseColor_Mat.material" type="Material" id=2] + +[sub_resource type="ArrayMesh" id=1] +resource_name = "W8_Cone" +surfaces/0 = { +"aabb": AABB( -0.956074, -0.956074, -0.956074, 1.91215, 1.91215, 1.91215 ), +"array_data": PoolByteArray( 243, 55, 39, 61, 242, 55, 39, 189, 1, 25, 107, 191, 90, 166, 181, 114, 182, 56, 213, 56, 243, 55, 39, 189, 242, 55, 39, 189, 1, 25, 107, 191, 166, 166, 202, 117, 195, 56, 249, 56, 243, 55, 39, 189, 242, 55, 39, 61, 1, 25, 107, 191, 166, 90, 68, 9, 203, 59, 28, 52, 243, 55, 39, 61, 242, 55, 39, 61, 1, 25, 107, 191, 90, 90, 179, 93, 211, 56, 187, 56, 0, 0, 0, 0, 194, 217, 73, 189, 30, 67, 109, 191, 74, 129, 189, 114, 188, 56, 231, 56, 0, 0, 0, 0, 0, 0, 0, 0, 64, 193, 116, 191, 127, 127, 208, 102, 215, 56, 221, 56, 0, 0, 0, 0, 0, 0, 0, 0, 64, 193, 116, 191, 127, 127, 35, 17, 234, 59, 51, 52, 196, 217, 73, 189, 0, 0, 0, 0, 30, 67, 109, 191, 129, 74, 9, 124, 216, 56, 251, 56, 196, 217, 73, 189, 0, 0, 0, 0, 30, 67, 109, 191, 129, 74, 64, 18, 219, 59, 3, 52, 0, 0, 0, 0, 194, 217, 73, 61, 30, 67, 109, 191, 74, 127, 179, 77, 229, 56, 195, 56, 0, 0, 0, 0, 194, 217, 73, 61, 30, 67, 109, 191, 74, 127, 62, 8, 207, 59, 68, 52, 196, 217, 73, 61, 0, 0, 0, 0, 30, 67, 109, 191, 127, 74, 185, 106, 196, 56, 200, 56, 1, 25, 107, 63, 242, 55, 39, 189, 232, 55, 39, 189, 90, 184, 179, 121, 112, 54, 156, 54, 1, 25, 107, 63, 243, 55, 39, 61, 232, 55, 39, 189, 90, 72, 181, 101, 169, 54, 105, 54, 1, 25, 107, 63, 244, 55, 39, 61, 253, 55, 39, 61, 54, 36, 202, 109, 143, 54, 33, 54, 1, 25, 107, 63, 242, 55, 39, 189, 253, 55, 39, 61, 54, 220, 206, 34, 252, 39, 251, 57, 31, 67, 109, 63, 252, 254, 180, 177, 177, 217, 73, 189, 126, 204, 185, 112, 141, 54, 131, 54, 64, 193, 116, 63, 2, 43, 165, 48, 23, 193, 39, 51, 126, 0, 0, 17, 30, 36, 240, 57, 64, 193, 116, 63, 2, 43, 165, 48, 23, 193, 39, 51, 126, 0, 48, 126, 104, 54, 89, 54, 30, 67, 109, 63, 196, 217, 73, 61, 245, 193, 47, 51, 74, 52, 189, 105, 157, 54, 69, 54, 30, 67, 109, 63, 0, 0, 0, 49, 206, 217, 73, 61, 74, 0, 230, 32, 252, 37, 8, 58, 30, 67, 109, 63, 0, 0, 0, 49, 206, 217, 73, 61, 74, 0, 253, 122, 102, 54, 29, 54, 30, 67, 109, 63, 195, 217, 73, 189, 245, 193, 47, 51, 74, 204, 211, 31, 126, 39, 231, 57, 30, 67, 109, 63, 195, 217, 73, 189, 245, 193, 47, 51, 74, 204, 98, 116, 75, 54, 141, 54, 221, 55, 39, 61, 242, 55, 39, 189, 1, 25, 107, 63, 36, 220, 190, 39, 246, 50, 180, 59, 221, 55, 39, 61, 242, 55, 39, 61, 1, 25, 107, 63, 36, 36, 196, 102, 169, 55, 244, 46, 8, 56, 39, 189, 240, 55, 39, 61, 1, 25, 107, 63, 220, 36, 154, 101, 224, 55, 32, 46, 7, 56, 39, 189, 242, 55, 39, 189, 1, 25, 107, 63, 220, 220, 133, 89, 136, 51, 193, 59, 179, 217, 73, 61, 252, 254, 180, 177, 30, 67, 109, 63, 52, 0, 211, 39, 190, 50, 195, 59, 179, 217, 73, 61, 252, 254, 180, 177, 30, 67, 109, 63, 52, 0, 228, 102, 131, 55, 187, 46, 81, 109, 158, 179, 172, 28, 154, 176, 64, 193, 116, 63, 0, 0, 161, 47, 27, 51, 212, 59, 81, 109, 158, 179, 172, 28, 154, 176, 64, 193, 116, 63, 0, 0, 190, 93, 159, 55, 238, 45, 245, 193, 175, 179, 194, 217, 73, 61, 30, 67, 109, 63, 0, 52, 172, 100, 197, 55, 141, 46, 218, 217, 73, 189, 0, 0, 128, 177, 30, 67, 109, 63, 204, 0, 137, 91, 144, 51, 213, 59, 218, 217, 73, 189, 0, 0, 128, 177, 30, 67, 109, 63, 204, 0, 155, 97, 211, 55, 133, 45, 245, 193, 171, 179, 195, 217, 73, 189, 30, 67, 109, 63, 0, 204, 155, 41, 64, 51, 186, 59, 1, 25, 107, 191, 242, 55, 39, 189, 240, 55, 39, 61, 202, 220, 154, 101, 27, 56, 70, 59, 1, 25, 107, 191, 242, 55, 39, 61, 240, 55, 39, 61, 202, 36, 133, 103, 41, 58, 135, 40, 1, 25, 107, 191, 242, 55, 39, 61, 246, 55, 39, 189, 166, 72, 79, 6, 77, 58, 90, 41, 1, 25, 107, 191, 242, 55, 39, 189, 246, 55, 39, 189, 166, 184, 196, 121, 54, 56, 43, 59, 31, 67, 109, 191, 0, 0, 0, 0, 192, 217, 73, 61, 182, 0, 155, 105, 33, 56, 89, 59, 31, 67, 109, 191, 0, 0, 0, 0, 192, 217, 73, 61, 182, 0, 137, 102, 39, 58, 137, 38, 64, 193, 116, 191, 0, 0, 0, 0, 46, 230, 13, 178, 129, 0, 190, 127, 59, 56, 76, 59, 64, 193, 116, 191, 0, 0, 0, 0, 46, 230, 13, 178, 129, 0, 161, 1, 68, 58, 172, 38, 30, 67, 109, 191, 205, 217, 73, 61, 124, 173, 63, 178, 182, 52, 155, 8, 59, 58, 248, 40, 30, 67, 109, 191, 0, 0, 0, 0, 199, 217, 73, 189, 129, 52, 48, 117, 73, 56, 50, 59, 30, 67, 109, 191, 0, 0, 0, 0, 199, 217, 73, 189, 129, 52, 78, 16, 92, 58, 107, 40, 30, 67, 109, 191, 205, 217, 73, 189, 124, 173, 63, 178, 182, 204, 172, 111, 40, 56, 56, 59, 243, 55, 39, 189, 1, 25, 107, 63, 242, 55, 39, 189, 184, 90, 180, 1, 140, 57, 188, 52, 242, 55, 39, 189, 1, 25, 107, 63, 243, 55, 39, 61, 220, 54, 140, 101, 105, 57, 157, 52, 242, 55, 39, 61, 1, 25, 107, 63, 244, 55, 39, 61, 36, 54, 180, 101, 78, 57, 209, 52, 242, 55, 39, 61, 1, 25, 107, 63, 242, 55, 39, 189, 72, 90, 165, 90, 91, 57, 24, 53, 195, 217, 73, 189, 30, 67, 109, 63, 153, 186, 72, 48, 204, 74, 149, 14, 122, 57, 172, 52, 0, 0, 0, 46, 64, 193, 116, 63, 129, 149, 40, 49, 0, 126, 130, 32, 110, 57, 223, 52, 205, 12, 189, 177, 30, 67, 109, 63, 196, 217, 73, 61, 0, 74, 159, 99, 91, 57, 183, 52, 194, 217, 73, 61, 30, 67, 109, 63, 233, 6, 164, 49, 52, 74, 171, 97, 84, 57, 244, 52, 0, 0, 0, 0, 30, 67, 109, 63, 195, 217, 73, 189, 204, 126, 138, 65, 112, 57, 28, 53, 0, 0, 0, 0, 30, 67, 109, 63, 195, 217, 73, 189, 204, 126, 74, 1, 140, 57, 229, 52, 242, 55, 39, 189, 1, 25, 107, 191, 243, 55, 39, 189, 184, 166, 180, 114, 123, 53, 161, 57, 243, 55, 39, 61, 1, 25, 107, 191, 242, 55, 39, 189, 72, 166, 165, 117, 96, 53, 125, 57, 242, 55, 39, 61, 1, 25, 107, 191, 243, 55, 39, 61, 36, 202, 180, 37, 254, 52, 171, 57, 243, 55, 39, 189, 1, 25, 107, 191, 242, 55, 39, 61, 220, 202, 140, 93, 68, 53, 187, 57, 0, 0, 0, 0, 30, 67, 109, 191, 195, 217, 73, 189, 204, 129, 171, 113, 110, 53, 143, 57, 0, 0, 192, 174, 64, 193, 116, 191, 172, 28, 102, 48, 0, 129, 129, 95, 57, 53, 154, 57, 195, 217, 73, 61, 30, 67, 109, 191, 234, 6, 164, 49, 52, 182, 183, 37, 253, 52, 151, 57, 195, 217, 73, 61, 30, 67, 109, 191, 234, 6, 164, 49, 52, 182, 123, 124, 54, 53, 123, 57, 164, 27, 16, 177, 30, 67, 109, 191, 195, 217, 73, 61, 0, 182, 149, 39, 33, 53, 179, 57, 195, 217, 73, 189, 30, 67, 109, 191, 149, 186, 72, 48, 204, 182, 159, 105, 96, 53, 174, 57 ), +"array_index_data": PoolByteArray( 38, 0, 2, 0, 48, 0, 15, 0, 60, 0, 24, 0, 27, 0, 61, 0, 36, 0, 39, 0, 58, 0, 1, 0, 3, 0, 13, 0, 51, 0, 26, 0, 37, 0, 49, 0, 14, 0, 25, 0, 50, 0, 0, 0, 5, 0, 4, 0, 0, 0, 11, 0, 5, 0, 1, 0, 5, 0, 7, 0, 1, 0, 4, 0, 5, 0, 2, 0, 6, 0, 10, 0, 2, 0, 8, 0, 6, 0, 3, 0, 5, 0, 11, 0, 3, 0, 9, 0, 5, 0, 12, 0, 18, 0, 16, 0, 12, 0, 23, 0, 18, 0, 13, 0, 18, 0, 19, 0, 13, 0, 16, 0, 18, 0, 14, 0, 18, 0, 21, 0, 14, 0, 19, 0, 18, 0, 15, 0, 17, 0, 22, 0, 15, 0, 20, 0, 17, 0, 24, 0, 30, 0, 28, 0, 24, 0, 35, 0, 30, 0, 25, 0, 31, 0, 32, 0, 25, 0, 29, 0, 31, 0, 26, 0, 31, 0, 34, 0, 26, 0, 32, 0, 31, 0, 27, 0, 30, 0, 35, 0, 27, 0, 33, 0, 30, 0, 36, 0, 42, 0, 40, 0, 36, 0, 47, 0, 42, 0, 37, 0, 43, 0, 44, 0, 37, 0, 41, 0, 43, 0, 38, 0, 43, 0, 46, 0, 38, 0, 44, 0, 43, 0, 39, 0, 42, 0, 47, 0, 39, 0, 45, 0, 42, 0, 48, 0, 53, 0, 52, 0, 48, 0, 57, 0, 53, 0, 49, 0, 53, 0, 54, 0, 49, 0, 52, 0, 53, 0, 50, 0, 53, 0, 55, 0, 50, 0, 54, 0, 53, 0, 51, 0, 53, 0, 56, 0, 51, 0, 55, 0, 53, 0, 58, 0, 63, 0, 62, 0, 58, 0, 67, 0, 63, 0, 59, 0, 63, 0, 65, 0, 59, 0, 62, 0, 63, 0, 60, 0, 63, 0, 66, 0, 60, 0, 64, 0, 63, 0, 61, 0, 63, 0, 67, 0, 61, 0, 66, 0, 63, 0, 3, 0, 16, 0, 13, 0, 3, 0, 11, 0, 16, 0, 11, 0, 12, 0, 16, 0, 11, 0, 0, 0, 12, 0, 2, 0, 57, 0, 48, 0, 2, 0, 10, 0, 57, 0, 9, 0, 51, 0, 56, 0, 9, 0, 3, 0, 51, 0, 50, 0, 19, 0, 14, 0, 50, 0, 55, 0, 19, 0, 55, 0, 13, 0, 19, 0, 55, 0, 51, 0, 13, 0, 14, 0, 29, 0, 25, 0, 14, 0, 21, 0, 29, 0, 20, 0, 24, 0, 28, 0, 20, 0, 15, 0, 24, 0, 49, 0, 32, 0, 26, 0, 49, 0, 54, 0, 32, 0, 54, 0, 25, 0, 32, 0, 54, 0, 50, 0, 25, 0, 26, 0, 41, 0, 37, 0, 26, 0, 34, 0, 41, 0, 33, 0, 36, 0, 40, 0, 33, 0, 27, 0, 36, 0, 48, 0, 44, 0, 38, 0, 48, 0, 52, 0, 44, 0, 52, 0, 37, 0, 44, 0, 52, 0, 49, 0, 37, 0, 38, 0, 8, 0, 2, 0, 38, 0, 46, 0, 8, 0, 45, 0, 1, 0, 7, 0, 45, 0, 39, 0, 1, 0, 0, 0, 62, 0, 59, 0, 0, 0, 4, 0, 62, 0, 4, 0, 58, 0, 62, 0, 4, 0, 1, 0, 58, 0, 59, 0, 23, 0, 12, 0, 59, 0, 65, 0, 23, 0, 64, 0, 15, 0, 22, 0, 64, 0, 60, 0, 15, 0, 60, 0, 35, 0, 24, 0, 60, 0, 66, 0, 35, 0, 66, 0, 27, 0, 35, 0, 66, 0, 61, 0, 27, 0, 61, 0, 47, 0, 36, 0, 61, 0, 67, 0, 47, 0, 67, 0, 39, 0, 47, 0, 67, 0, 58, 0, 39, 0, 0, 0, 59, 0, 12, 0 ), +"blend_shape_data": [ ], +"format": 2194711, +"index_count": 312, +"material": ExtResource( 2 ), +"primitive": 4, +"skeleton_aabb": [ ], +"vertex_count": 68 +} + +[sub_resource type="ConvexPolygonShape" id=2] +points = PoolVector3Array( -0.0850063, -0.879389, -0.0282584, 0.0288993, 0.929375, 0.0289349, 0.0288993, 0.929375, -0.0289349, 0.929367, -0.0289314, 0.0289314, -0.0289784, -0.0289338, 0.929338, -0.929369, 0.028929, 0.028929, 0.0288993, -0.0289349, -0.929375, 0.0288993, -0.929375, 0.0289349, -0.0850063, 0.0282584, -0.879389, 0.0282247, 0.084959, 0.87945, 0.857489, 0.056933, -0.0855785, -0.879454, -0.0849424, 0.0282549, 0.0570775, -0.885814, -0.0571088, 0.0570775, -0.0571088, 0.885814, -0.0571532, 0.885743, -0.0571043, -0.0571532, 0.885743, 0.0571043, 0.0570775, 0.0571088, -0.885814, -0.885806, -0.057097, -0.057097, 0.879446, 0.0849494, 0.0282572, 0.857335, -0.0571018, -0.0855632, -0.0571532, 0.0571043, 0.885743, -0.0571532, -0.885743, 0.0571043, -0.885806, 0.057097, -0.057097, -0.0571532, -0.0571043, -0.885743, 0.0570775, 0.0571088, 0.885814, -0.0571532, -0.885743, -0.0571043, -0.0571532, 0.0571043, -0.885743, 0.0570775, -0.885814, 0.0571088, 0.0570775, 0.885814, 0.0571088, -0.0571532, -0.0571043, 0.885743, -0.885806, 0.057097, 0.057097, 0.0570775, 0.885814, -0.0571088, 0.0570775, -0.0571088, -0.885814, 0.857335, -0.0571018, 0.0855632, -0.885806, -0.057097, 0.057097, 0.857489, 0.056933, 0.0855785, 0.929425, 0.0287513, -0.0289333, 0.929367, -0.0289314, -0.0289314, -0.0289784, 0.929338, -0.0289338, 0.0288993, 0.0289349, -0.929375, -0.929369, -0.028929, -0.028929, -0.0283039, -0.87942, -0.0849561, 0.084933, 0.0282608, 0.879461, -0.0289784, 0.929338, 0.0289338, -0.0289784, -0.0289338, -0.929338, -0.0289784, 0.0289338, 0.929338, 0.0288993, -0.0289349, 0.929375, 0.0288993, -0.929375, -0.0289349, -0.0289784, -0.929338, 0.0289338, -0.929369, 0.028929, -0.028929, -0.0283039, 0.0849561, -0.87942, -0.879454, -0.0282549, 0.0849424, 0.879512, 0.0280816, 0.0849558, 0.879446, -0.0849494, -0.0282572, -0.0282988, -0.822574, 0.141805, 0.17021, 0.0280745, -0.794261, -0.879454, 0.0849424, -0.0282549, -0.0283039, 0.87942, 0.0849561, 0.0282247, 0.87945, -0.084959, 0.0282247, -0.084959, -0.87945, -0.879454, -0.0282549, -0.0849424, -0.0850063, 0.0282584, 0.879389, -0.0850063, 0.879389, 0.0282584, 0.084933, -0.0282608, 0.879461 ) + +[node name="Die" type="RigidBody"] +script = ExtResource( 1 ) + +[node name="Cone" type="MeshInstance" parent="."] +mesh = SubResource( 1 ) +skeleton = NodePath("../..") +material/0 = null + +[node name="CollisionShape" type="CollisionShape" parent="."] +shape = SubResource( 2 ) + +[node name="CamRoot" type="Spatial" parent="."] + +[node name="Horizontal" type="Spatial" parent="CamRoot"] + +[node name="Vertical" type="Spatial" parent="CamRoot/Horizontal"] + +[node name="Camera" type="ClippedCamera" parent="CamRoot/Horizontal/Vertical"] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 10.1285 ) diff --git a/godot/scenes/Game.gd b/godot/scenes/Game.gd new file mode 100644 index 0000000..31e543d --- /dev/null +++ b/godot/scenes/Game.gd @@ -0,0 +1,31 @@ +extends Spatial + + +# Declare member variables here. Examples: +# var a = 2 +# var b = "text" + + +# Called when the node enters the scene tree for the first time. +func _ready(): + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(delta): + if Input.is_action_just_pressed("ui_cancel"): + get_tree().paused = true + $PausePopup.show() + Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE) + + + + +func _on_QuitButton_pressed(): + get_tree().quit() + + +func _on_ResumeButton_pressed(): + $PausePopup.hide() + get_tree().paused = false + Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED) diff --git a/godot/scenes/Game.tscn b/godot/scenes/Game.tscn index 72fef4e..0896836 100644 --- a/godot/scenes/Game.tscn +++ b/godot/scenes/Game.tscn @@ -1,9 +1,61 @@ -[gd_scene load_steps=3 format=2] +[gd_scene load_steps=5 format=2] -[ext_resource path="res://native/Game.gdns" type="Script" id=1] +[ext_resource path="res://scenes/Game.gd" type="Script" id=1] [ext_resource path="res://scenes/levels/test_scene_movement/TestSceneMovement.tscn" type="PackedScene" id=2] +[ext_resource path="res://assets/theme.tres" type="Theme" id=3] +[ext_resource path="res://assets/fonts/format.tres" type="DynamicFont" id=4] [node name="Game" type="Spatial"] script = ExtResource( 1 ) [node name="TestScene" parent="." instance=ExtResource( 2 )] + +[node name="PausePopup" type="Control" parent="."] +pause_mode = 2 +visible = false +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_right = 40.0 +margin_bottom = 40.0 + +[node name="Panel" type="Panel" parent="PausePopup"] +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_left = 300.0 +margin_top = 200.0 +margin_right = -300.0 +margin_bottom = -200.0 +theme = ExtResource( 3 ) + +[node name="Label" type="Label" parent="PausePopup/Panel"] +anchor_right = 1.0 +anchor_bottom = 0.3 +theme = ExtResource( 3 ) +custom_fonts/font = ExtResource( 4 ) +text = "Game is Paused" +align = 1 +valign = 1 + +[node name="VBoxContainer" type="VBoxContainer" parent="PausePopup/Panel"] +anchor_top = 0.3 +anchor_right = 1.0 +anchor_bottom = 1.0 +margin_left = 500.0 +margin_right = -500.0 +custom_constants/separation = 20 +alignment = 1 + +[node name="ResumeButton" type="Button" parent="PausePopup/Panel/VBoxContainer"] +margin_top = 161.0 +margin_right = 360.0 +margin_bottom = 242.0 +text = "Resume" + +[node name="QuitButton" type="Button" parent="PausePopup/Panel/VBoxContainer"] +margin_top = 262.0 +margin_right = 360.0 +margin_bottom = 343.0 +text = "Quit" + +[connection signal="pressed" from="PausePopup/Panel/VBoxContainer/ResumeButton" to="." method="_on_ResumeButton_pressed"] +[connection signal="pressed" from="PausePopup/Panel/VBoxContainer/QuitButton" to="." method="_on_QuitButton_pressed"] diff --git a/godot/scenes/Menu.gd b/godot/scenes/Menu.gd new file mode 100644 index 0000000..2634e37 --- /dev/null +++ b/godot/scenes/Menu.gd @@ -0,0 +1,25 @@ +extends Control + + +# Declare member variables here. Examples: +# var a = 2 +# var b = "text" + + +# Called when the node enters the scene tree for the first time. +func _ready(): + pass # Replace with function body. + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(delta): + pass + + +func _on_StartButton_pressed(): + get_tree().change_scene("res://scenes/Game.tscn") + + + +func _on_QuitButton_pressed(): + get_tree().quit() diff --git a/godot/scenes/Menu.tscn b/godot/scenes/Menu.tscn new file mode 100644 index 0000000..5529448 --- /dev/null +++ b/godot/scenes/Menu.tscn @@ -0,0 +1,42 @@ +[gd_scene load_steps=3 format=2] + +[ext_resource path="res://assets/theme.tres" type="Theme" id=1] +[ext_resource path="res://scenes/Menu.gd" type="Script" id=2] + +[node name="Menu" type="Control"] +anchor_right = 1.0 +anchor_bottom = 1.0 +script = ExtResource( 2 ) + +[node name="VBoxContainer" type="VBoxContainer" parent="."] +anchor_right = 0.25 +anchor_bottom = 1.0 +margin_left = 40.0 +margin_top = 789.0 +margin_bottom = -40.0 +theme = ExtResource( 1 ) +alignment = 2 + +[node name="StartButton" type="Button" parent="VBoxContainer"] +margin_top = 85.0 +margin_right = 440.0 +margin_bottom = 166.0 +focus_neighbour_top = NodePath("../QuitButton") +text = "Start" + +[node name="LevelButton" type="Button" parent="VBoxContainer"] +visible = false +margin_top = 85.0 +margin_right = 440.0 +margin_bottom = 166.0 +text = "Levels" + +[node name="QuitButton" type="Button" parent="VBoxContainer"] +margin_top = 170.0 +margin_right = 440.0 +margin_bottom = 251.0 +focus_neighbour_bottom = NodePath("../StartButton") +text = "Quit" + +[connection signal="pressed" from="VBoxContainer/StartButton" to="." method="_on_StartButton_pressed"] +[connection signal="pressed" from="VBoxContainer/QuitButton" to="." method="_on_QuitButton_pressed"] diff --git a/godot/scenes/levels/test_scene_movement/TestSceneMovement.tscn b/godot/scenes/levels/test_scene_movement/TestSceneMovement.tscn index d23236b..dc25498 100644 --- a/godot/scenes/levels/test_scene_movement/TestSceneMovement.tscn +++ b/godot/scenes/levels/test_scene_movement/TestSceneMovement.tscn @@ -2,7 +2,7 @@ [ext_resource path="res://scenes/levels/test_scene_uuuhhh/Wall.tscn" type="PackedScene" id=1] [ext_resource path="res://scenes/levels/test_scene_uuuhhh/Floor.tscn" type="PackedScene" id=2] -[ext_resource path="res://scenes/objects/Player.tscn" type="PackedScene" id=3] +[ext_resource path="res://scenes/Die.tscn" type="PackedScene" id=3] [node name="TestScene" type="Spatial"] @@ -27,4 +27,5 @@ transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 40, -1, -20 ) [node name="Wall" parent="." instance=ExtResource( 1 )] transform = Transform( 0.766044, 0, 0.642788, 0, 2, 0, -0.642788, 0, 0.766044, 19.47, 0, -14 ) -[node name="PlayerRoot" parent="." instance=ExtResource( 3 )] +[node name="Die" parent="." instance=ExtResource( 3 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.759363, 4.18965, -3.60846 ) diff --git a/godot/scenes/levels/test_scene_uuuhhh/TestSceneUuuhhh.tscn b/godot/scenes/levels/test_scene_uuuhhh/TestSceneUuuhhh.tscn index a8f9003..0820451 100644 --- a/godot/scenes/levels/test_scene_uuuhhh/TestSceneUuuhhh.tscn +++ b/godot/scenes/levels/test_scene_uuuhhh/TestSceneUuuhhh.tscn @@ -4,7 +4,7 @@ [ext_resource path="res://scenes/levels/test_scene_uuuhhh/Floor.tscn" type="PackedScene" id=2] [ext_resource path="res://scenes/scripts/roblox-cube.gd" type="Script" id=3] [ext_resource path="res://assets/sounds/Uuhhh.mp3" type="AudioStream" id=4] -[ext_resource path="res://scenes/objects/W8.tscn" type="PackedScene" id=5] +[ext_resource path="res://scenes/Die.tscn" type="PackedScene" id=5] [node name="TestScene" type="Spatial"] diff --git a/godot/scenes/objects/Player.tscn b/godot/scenes/objects/Player.tscn deleted file mode 100644 index aeb8f51..0000000 --- a/godot/scenes/objects/Player.tscn +++ /dev/null @@ -1,20 +0,0 @@ -[gd_scene load_steps=4 format=2] - -[ext_resource path="res://scenes/objects/W8.tscn" type="PackedScene" id=1] -[ext_resource path="res://scenes/objects/Camera.tscn" type="PackedScene" id=2] -[ext_resource path="res://native/BasicDie.gdns" type="Script" id=3] - -[node name="PlayerRoot" type="Spatial"] -script = ExtResource( 3 ) -camera/camera_clamp = Vector2( 0, -1.3 ) -shooting/max_force = 30.0 -shooting/up_angle = 0.3 -shooting/stopping_velocity = 0.003 -input/camera_mouse_sensitivity = Vector2( 0.003, 0.002 ) -input/shoot_sensitivity = 0.1 - -[node name="W8" parent="." instance=ExtResource( 1 )] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.1, 0 ) - -[node name="Camera" parent="." instance=ExtResource( 2 )] -transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2, 0 ) diff --git a/godot/scenes/objects/W8.tscn b/godot/scenes/objects/W8.tscn deleted file mode 100644 index 91f58eb..0000000 --- a/godot/scenes/objects/W8.tscn +++ /dev/null @@ -1,31 +0,0 @@ -[gd_scene load_steps=4 format=2] - -[ext_resource path="res://assets/game_objects/W8baseColor_Mat.material" type="Material" id=2] - -[sub_resource type="ArrayMesh" id=1] -resource_name = "W8_Cone" -surfaces/0 = { -"aabb": AABB( -0.956074, -0.956074, -0.956074, 1.91215, 1.91215, 1.91215 ), -"array_data": PoolByteArray( 243, 55, 39, 61, 242, 55, 39, 189, 1, 25, 107, 191, 90, 166, 181, 114, 182, 56, 213, 56, 243, 55, 39, 189, 242, 55, 39, 189, 1, 25, 107, 191, 166, 166, 202, 117, 195, 56, 249, 56, 243, 55, 39, 189, 242, 55, 39, 61, 1, 25, 107, 191, 166, 90, 68, 9, 203, 59, 28, 52, 243, 55, 39, 61, 242, 55, 39, 61, 1, 25, 107, 191, 90, 90, 179, 93, 211, 56, 187, 56, 0, 0, 0, 0, 194, 217, 73, 189, 30, 67, 109, 191, 74, 129, 189, 114, 188, 56, 231, 56, 0, 0, 0, 0, 0, 0, 0, 0, 64, 193, 116, 191, 127, 127, 208, 102, 215, 56, 221, 56, 0, 0, 0, 0, 0, 0, 0, 0, 64, 193, 116, 191, 127, 127, 35, 17, 234, 59, 51, 52, 196, 217, 73, 189, 0, 0, 0, 0, 30, 67, 109, 191, 129, 74, 9, 124, 216, 56, 251, 56, 196, 217, 73, 189, 0, 0, 0, 0, 30, 67, 109, 191, 129, 74, 64, 18, 219, 59, 3, 52, 0, 0, 0, 0, 194, 217, 73, 61, 30, 67, 109, 191, 74, 127, 179, 77, 229, 56, 195, 56, 0, 0, 0, 0, 194, 217, 73, 61, 30, 67, 109, 191, 74, 127, 62, 8, 207, 59, 68, 52, 196, 217, 73, 61, 0, 0, 0, 0, 30, 67, 109, 191, 127, 74, 185, 106, 196, 56, 200, 56, 1, 25, 107, 63, 242, 55, 39, 189, 232, 55, 39, 189, 90, 184, 179, 121, 112, 54, 156, 54, 1, 25, 107, 63, 243, 55, 39, 61, 232, 55, 39, 189, 90, 72, 181, 101, 169, 54, 105, 54, 1, 25, 107, 63, 244, 55, 39, 61, 253, 55, 39, 61, 54, 36, 202, 109, 143, 54, 33, 54, 1, 25, 107, 63, 242, 55, 39, 189, 253, 55, 39, 61, 54, 220, 206, 34, 252, 39, 251, 57, 31, 67, 109, 63, 252, 254, 180, 177, 177, 217, 73, 189, 126, 204, 185, 112, 141, 54, 131, 54, 64, 193, 116, 63, 2, 43, 165, 48, 23, 193, 39, 51, 126, 0, 0, 17, 30, 36, 240, 57, 64, 193, 116, 63, 2, 43, 165, 48, 23, 193, 39, 51, 126, 0, 48, 126, 104, 54, 89, 54, 30, 67, 109, 63, 196, 217, 73, 61, 245, 193, 47, 51, 74, 52, 189, 105, 157, 54, 69, 54, 30, 67, 109, 63, 0, 0, 0, 49, 206, 217, 73, 61, 74, 0, 230, 32, 252, 37, 8, 58, 30, 67, 109, 63, 0, 0, 0, 49, 206, 217, 73, 61, 74, 0, 253, 122, 102, 54, 29, 54, 30, 67, 109, 63, 195, 217, 73, 189, 245, 193, 47, 51, 74, 204, 211, 31, 126, 39, 231, 57, 30, 67, 109, 63, 195, 217, 73, 189, 245, 193, 47, 51, 74, 204, 98, 116, 75, 54, 141, 54, 221, 55, 39, 61, 242, 55, 39, 189, 1, 25, 107, 63, 36, 220, 190, 39, 246, 50, 180, 59, 221, 55, 39, 61, 242, 55, 39, 61, 1, 25, 107, 63, 36, 36, 196, 102, 169, 55, 244, 46, 8, 56, 39, 189, 240, 55, 39, 61, 1, 25, 107, 63, 220, 36, 154, 101, 224, 55, 32, 46, 7, 56, 39, 189, 242, 55, 39, 189, 1, 25, 107, 63, 220, 220, 133, 89, 136, 51, 193, 59, 179, 217, 73, 61, 252, 254, 180, 177, 30, 67, 109, 63, 52, 0, 211, 39, 190, 50, 195, 59, 179, 217, 73, 61, 252, 254, 180, 177, 30, 67, 109, 63, 52, 0, 228, 102, 131, 55, 187, 46, 81, 109, 158, 179, 172, 28, 154, 176, 64, 193, 116, 63, 0, 0, 161, 47, 27, 51, 212, 59, 81, 109, 158, 179, 172, 28, 154, 176, 64, 193, 116, 63, 0, 0, 190, 93, 159, 55, 238, 45, 245, 193, 175, 179, 194, 217, 73, 61, 30, 67, 109, 63, 0, 52, 172, 100, 197, 55, 141, 46, 218, 217, 73, 189, 0, 0, 128, 177, 30, 67, 109, 63, 204, 0, 137, 91, 144, 51, 213, 59, 218, 217, 73, 189, 0, 0, 128, 177, 30, 67, 109, 63, 204, 0, 155, 97, 211, 55, 133, 45, 245, 193, 171, 179, 195, 217, 73, 189, 30, 67, 109, 63, 0, 204, 155, 41, 64, 51, 186, 59, 1, 25, 107, 191, 242, 55, 39, 189, 240, 55, 39, 61, 202, 220, 154, 101, 27, 56, 70, 59, 1, 25, 107, 191, 242, 55, 39, 61, 240, 55, 39, 61, 202, 36, 133, 103, 41, 58, 135, 40, 1, 25, 107, 191, 242, 55, 39, 61, 246, 55, 39, 189, 166, 72, 79, 6, 77, 58, 90, 41, 1, 25, 107, 191, 242, 55, 39, 189, 246, 55, 39, 189, 166, 184, 196, 121, 54, 56, 43, 59, 31, 67, 109, 191, 0, 0, 0, 0, 192, 217, 73, 61, 182, 0, 155, 105, 33, 56, 89, 59, 31, 67, 109, 191, 0, 0, 0, 0, 192, 217, 73, 61, 182, 0, 137, 102, 39, 58, 137, 38, 64, 193, 116, 191, 0, 0, 0, 0, 46, 230, 13, 178, 129, 0, 190, 127, 59, 56, 76, 59, 64, 193, 116, 191, 0, 0, 0, 0, 46, 230, 13, 178, 129, 0, 161, 1, 68, 58, 172, 38, 30, 67, 109, 191, 205, 217, 73, 61, 124, 173, 63, 178, 182, 52, 155, 8, 59, 58, 248, 40, 30, 67, 109, 191, 0, 0, 0, 0, 199, 217, 73, 189, 129, 52, 48, 117, 73, 56, 50, 59, 30, 67, 109, 191, 0, 0, 0, 0, 199, 217, 73, 189, 129, 52, 78, 16, 92, 58, 107, 40, 30, 67, 109, 191, 205, 217, 73, 189, 124, 173, 63, 178, 182, 204, 172, 111, 40, 56, 56, 59, 243, 55, 39, 189, 1, 25, 107, 63, 242, 55, 39, 189, 184, 90, 180, 1, 140, 57, 188, 52, 242, 55, 39, 189, 1, 25, 107, 63, 243, 55, 39, 61, 220, 54, 140, 101, 105, 57, 157, 52, 242, 55, 39, 61, 1, 25, 107, 63, 244, 55, 39, 61, 36, 54, 180, 101, 78, 57, 209, 52, 242, 55, 39, 61, 1, 25, 107, 63, 242, 55, 39, 189, 72, 90, 165, 90, 91, 57, 24, 53, 195, 217, 73, 189, 30, 67, 109, 63, 153, 186, 72, 48, 204, 74, 149, 14, 122, 57, 172, 52, 0, 0, 0, 46, 64, 193, 116, 63, 129, 149, 40, 49, 0, 126, 130, 32, 110, 57, 223, 52, 205, 12, 189, 177, 30, 67, 109, 63, 196, 217, 73, 61, 0, 74, 159, 99, 91, 57, 183, 52, 194, 217, 73, 61, 30, 67, 109, 63, 233, 6, 164, 49, 52, 74, 171, 97, 84, 57, 244, 52, 0, 0, 0, 0, 30, 67, 109, 63, 195, 217, 73, 189, 204, 126, 138, 65, 112, 57, 28, 53, 0, 0, 0, 0, 30, 67, 109, 63, 195, 217, 73, 189, 204, 126, 74, 1, 140, 57, 229, 52, 242, 55, 39, 189, 1, 25, 107, 191, 243, 55, 39, 189, 184, 166, 180, 114, 123, 53, 161, 57, 243, 55, 39, 61, 1, 25, 107, 191, 242, 55, 39, 189, 72, 166, 165, 117, 96, 53, 125, 57, 242, 55, 39, 61, 1, 25, 107, 191, 243, 55, 39, 61, 36, 202, 180, 37, 254, 52, 171, 57, 243, 55, 39, 189, 1, 25, 107, 191, 242, 55, 39, 61, 220, 202, 140, 93, 68, 53, 187, 57, 0, 0, 0, 0, 30, 67, 109, 191, 195, 217, 73, 189, 204, 129, 171, 113, 110, 53, 143, 57, 0, 0, 192, 174, 64, 193, 116, 191, 172, 28, 102, 48, 0, 129, 129, 95, 57, 53, 154, 57, 195, 217, 73, 61, 30, 67, 109, 191, 234, 6, 164, 49, 52, 182, 183, 37, 253, 52, 151, 57, 195, 217, 73, 61, 30, 67, 109, 191, 234, 6, 164, 49, 52, 182, 123, 124, 54, 53, 123, 57, 164, 27, 16, 177, 30, 67, 109, 191, 195, 217, 73, 61, 0, 182, 149, 39, 33, 53, 179, 57, 195, 217, 73, 189, 30, 67, 109, 191, 149, 186, 72, 48, 204, 182, 159, 105, 96, 53, 174, 57 ), -"array_index_data": PoolByteArray( 38, 0, 2, 0, 48, 0, 15, 0, 60, 0, 24, 0, 27, 0, 61, 0, 36, 0, 39, 0, 58, 0, 1, 0, 3, 0, 13, 0, 51, 0, 26, 0, 37, 0, 49, 0, 14, 0, 25, 0, 50, 0, 0, 0, 5, 0, 4, 0, 0, 0, 11, 0, 5, 0, 1, 0, 5, 0, 7, 0, 1, 0, 4, 0, 5, 0, 2, 0, 6, 0, 10, 0, 2, 0, 8, 0, 6, 0, 3, 0, 5, 0, 11, 0, 3, 0, 9, 0, 5, 0, 12, 0, 18, 0, 16, 0, 12, 0, 23, 0, 18, 0, 13, 0, 18, 0, 19, 0, 13, 0, 16, 0, 18, 0, 14, 0, 18, 0, 21, 0, 14, 0, 19, 0, 18, 0, 15, 0, 17, 0, 22, 0, 15, 0, 20, 0, 17, 0, 24, 0, 30, 0, 28, 0, 24, 0, 35, 0, 30, 0, 25, 0, 31, 0, 32, 0, 25, 0, 29, 0, 31, 0, 26, 0, 31, 0, 34, 0, 26, 0, 32, 0, 31, 0, 27, 0, 30, 0, 35, 0, 27, 0, 33, 0, 30, 0, 36, 0, 42, 0, 40, 0, 36, 0, 47, 0, 42, 0, 37, 0, 43, 0, 44, 0, 37, 0, 41, 0, 43, 0, 38, 0, 43, 0, 46, 0, 38, 0, 44, 0, 43, 0, 39, 0, 42, 0, 47, 0, 39, 0, 45, 0, 42, 0, 48, 0, 53, 0, 52, 0, 48, 0, 57, 0, 53, 0, 49, 0, 53, 0, 54, 0, 49, 0, 52, 0, 53, 0, 50, 0, 53, 0, 55, 0, 50, 0, 54, 0, 53, 0, 51, 0, 53, 0, 56, 0, 51, 0, 55, 0, 53, 0, 58, 0, 63, 0, 62, 0, 58, 0, 67, 0, 63, 0, 59, 0, 63, 0, 65, 0, 59, 0, 62, 0, 63, 0, 60, 0, 63, 0, 66, 0, 60, 0, 64, 0, 63, 0, 61, 0, 63, 0, 67, 0, 61, 0, 66, 0, 63, 0, 3, 0, 16, 0, 13, 0, 3, 0, 11, 0, 16, 0, 11, 0, 12, 0, 16, 0, 11, 0, 0, 0, 12, 0, 2, 0, 57, 0, 48, 0, 2, 0, 10, 0, 57, 0, 9, 0, 51, 0, 56, 0, 9, 0, 3, 0, 51, 0, 50, 0, 19, 0, 14, 0, 50, 0, 55, 0, 19, 0, 55, 0, 13, 0, 19, 0, 55, 0, 51, 0, 13, 0, 14, 0, 29, 0, 25, 0, 14, 0, 21, 0, 29, 0, 20, 0, 24, 0, 28, 0, 20, 0, 15, 0, 24, 0, 49, 0, 32, 0, 26, 0, 49, 0, 54, 0, 32, 0, 54, 0, 25, 0, 32, 0, 54, 0, 50, 0, 25, 0, 26, 0, 41, 0, 37, 0, 26, 0, 34, 0, 41, 0, 33, 0, 36, 0, 40, 0, 33, 0, 27, 0, 36, 0, 48, 0, 44, 0, 38, 0, 48, 0, 52, 0, 44, 0, 52, 0, 37, 0, 44, 0, 52, 0, 49, 0, 37, 0, 38, 0, 8, 0, 2, 0, 38, 0, 46, 0, 8, 0, 45, 0, 1, 0, 7, 0, 45, 0, 39, 0, 1, 0, 0, 0, 62, 0, 59, 0, 0, 0, 4, 0, 62, 0, 4, 0, 58, 0, 62, 0, 4, 0, 1, 0, 58, 0, 59, 0, 23, 0, 12, 0, 59, 0, 65, 0, 23, 0, 64, 0, 15, 0, 22, 0, 64, 0, 60, 0, 15, 0, 60, 0, 35, 0, 24, 0, 60, 0, 66, 0, 35, 0, 66, 0, 27, 0, 35, 0, 66, 0, 61, 0, 27, 0, 61, 0, 47, 0, 36, 0, 61, 0, 67, 0, 47, 0, 67, 0, 39, 0, 47, 0, 67, 0, 58, 0, 39, 0, 0, 0, 59, 0, 12, 0 ), -"blend_shape_data": [ ], -"format": 2194711, -"index_count": 312, -"material": ExtResource( 2 ), -"primitive": 4, -"skeleton_aabb": [ ], -"vertex_count": 68 -} - -[sub_resource type="ConvexPolygonShape" id=2] -points = PoolVector3Array( -0.0850063, -0.879389, -0.0282584, 0.0288993, 0.929375, 0.0289349, 0.0288993, 0.929375, -0.0289349, 0.929367, -0.0289314, 0.0289314, -0.0289784, -0.0289338, 0.929338, -0.929369, 0.028929, 0.028929, 0.0288993, -0.0289349, -0.929375, 0.0288993, -0.929375, 0.0289349, -0.0850063, 0.0282584, -0.879389, 0.0282247, 0.084959, 0.87945, 0.857489, 0.056933, -0.0855785, -0.879454, -0.0849424, 0.0282549, 0.0570775, -0.885814, -0.0571088, 0.0570775, -0.0571088, 0.885814, -0.0571532, 0.885743, -0.0571043, -0.0571532, 0.885743, 0.0571043, 0.0570775, 0.0571088, -0.885814, -0.885806, -0.057097, -0.057097, 0.879446, 0.0849494, 0.0282572, 0.857335, -0.0571018, -0.0855632, -0.0571532, 0.0571043, 0.885743, -0.0571532, -0.885743, 0.0571043, -0.885806, 0.057097, -0.057097, -0.0571532, -0.0571043, -0.885743, 0.0570775, 0.0571088, 0.885814, -0.0571532, -0.885743, -0.0571043, -0.0571532, 0.0571043, -0.885743, 0.0570775, -0.885814, 0.0571088, 0.0570775, 0.885814, 0.0571088, -0.0571532, -0.0571043, 0.885743, -0.885806, 0.057097, 0.057097, 0.0570775, 0.885814, -0.0571088, 0.0570775, -0.0571088, -0.885814, 0.857335, -0.0571018, 0.0855632, -0.885806, -0.057097, 0.057097, 0.857489, 0.056933, 0.0855785, 0.929425, 0.0287513, -0.0289333, 0.929367, -0.0289314, -0.0289314, -0.0289784, 0.929338, -0.0289338, 0.0288993, 0.0289349, -0.929375, -0.929369, -0.028929, -0.028929, -0.0283039, -0.87942, -0.0849561, 0.084933, 0.0282608, 0.879461, -0.0289784, 0.929338, 0.0289338, -0.0289784, -0.0289338, -0.929338, -0.0289784, 0.0289338, 0.929338, 0.0288993, -0.0289349, 0.929375, 0.0288993, -0.929375, -0.0289349, -0.0289784, -0.929338, 0.0289338, -0.929369, 0.028929, -0.028929, -0.0283039, 0.0849561, -0.87942, -0.879454, -0.0282549, 0.0849424, 0.879512, 0.0280816, 0.0849558, 0.879446, -0.0849494, -0.0282572, -0.0282988, -0.822574, 0.141805, 0.17021, 0.0280745, -0.794261, -0.879454, 0.0849424, -0.0282549, -0.0283039, 0.87942, 0.0849561, 0.0282247, 0.87945, -0.084959, 0.0282247, -0.084959, -0.87945, -0.879454, -0.0282549, -0.0849424, -0.0850063, 0.0282584, 0.879389, -0.0850063, 0.879389, 0.0282584, 0.084933, -0.0282608, 0.879461 ) - -[node name="RigidBody" type="RigidBody"] - -[node name="Cone" type="MeshInstance" parent="."] -mesh = SubResource( 1 ) -skeleton = NodePath("../..") -material/0 = null - -[node name="CollisionShape" type="CollisionShape" parent="."] -shape = SubResource( 2 ) diff --git a/godot/scenes/objects/old/Die.tscn b/godot/scenes/objects/old/Die.tscn new file mode 100644 index 0000000..cab0d15 --- /dev/null +++ b/godot/scenes/objects/old/Die.tscn @@ -0,0 +1,11 @@ +[gd_scene load_steps=2 format=2] + +[ext_resource path="res://scenes/Die.tscn" type="PackedScene" id=1] + +[node name="Die" type="Spatial"] + +[node name="Die" parent="." instance=ExtResource( 1 )] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.1, 0 ) + +[node name="CamRoot" type="Spatial" parent="Die"] +transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1.1, 0 ) diff --git a/godot/scenes/scripts/roblox-cube.gd b/godot/scenes/scripts/roblox-cube.gd deleted file mode 100644 index 453067b..0000000 --- a/godot/scenes/scripts/roblox-cube.gd +++ /dev/null @@ -1,22 +0,0 @@ -extends Spatial - - -# Declare member variables here. Examples: -# var a = 2 -# var b = "text" -func on_collision(other): - var ap = get_parent().get_node("AudioStreamPlayer") - ap.play() - - -# Called when the node enters the scene tree for the first time. -func _ready(): - var rb = self - rb.apply_impulse(Vector3(), Vector3(40, 1, 10)) - rb.connect("body_entered", self, "on_collision") - - -# Called every frame. 'delta' is the elapsed time since the previous frame. -#func _process(delta): -# pass - diff --git a/rust/src/game.rs b/rust/src/game.rs deleted file mode 100644 index 61b23ed..0000000 --- a/rust/src/game.rs +++ /dev/null @@ -1,44 +0,0 @@ -use gdnative::api::*; -use gdnative::prelude::*; - -/// The Game "class" -#[derive(NativeClass)] -#[inherit(Spatial)] -#[register_with(Self::register_builder)] -pub struct Game { - name: String, -} - -// __One__ `impl` block can have the `#[methods]` attribute, which will generate -// code to automatically bind any exported methods to Godot. -#[methods] -impl Game { - // Register the builder for methods, properties and/or signals. - fn register_builder(_builder: &ClassBuilder) { - godot_print!("Game builder is registered!"); - } - - /// The "constructor" of the class. - fn new(_owner: &Spatial) -> Self { - godot_print!("Game is created!"); - Game { - name: "".to_string(), - } - } - - // In order to make a method known to Godot, the #[export] attribute has to be used. - // In Godot script-classes do not actually inherit the parent class. - // Instead they are "attached" to the parent object, called the "owner". - // The owner is passed to every single exposed method. - #[export] - unsafe fn _ready(&mut self, _owner: &Spatial) { - // The `godot_print!` macro works like `println!` but prints to the Godot-editor - // output tab as well. - self.name = "Game".to_string(); - godot_print!("{} is ready!", self.name); - } - - // This function will be called in every frame - #[export] - unsafe fn _process(&self, _owner: &Spatial, _delta: f64) { } -} diff --git a/rust/src/lib.rs b/rust/src/lib.rs index 30f4f2a..f683d35 100644 --- a/rust/src/lib.rs +++ b/rust/src/lib.rs @@ -1,20 +1,14 @@ -mod game; -mod spinning_cube; mod buff_bounce; mod buff_phase; mod buff_trait; mod buff_ball; mod buff_extra; -mod test; mod basic_die; use gdnative::prelude::{godot_init, InitHandle}; // Function that registers all exposed classes to Godot fn init(handle: InitHandle) { - handle.add_class::(); - handle.add_class::(); - handle.add_class::(); handle.add_class::(); } diff --git a/rust/src/spinning_cube.rs b/rust/src/spinning_cube.rs deleted file mode 100644 index 41b429f..0000000 --- a/rust/src/spinning_cube.rs +++ /dev/null @@ -1,58 +0,0 @@ -use gdnative::api::*; -use gdnative::prelude::*; - -/// The SpinningCube "class" -#[derive(NativeClass)] -#[inherit(MeshInstance)] -#[register_with(Self::register_builder)] -pub struct SpinningCube { - start: Vector3, - time: f32, - #[property(path = "base/rotate_speed")] - rotate_speed: f64, -} - -// __One__ `impl` block can have the `#[methods]` attribute, which will generate -// code to automatically bind any exported methods to Godot. -#[methods] -impl SpinningCube { - // Register the builder for methods, properties and/or signals. - fn register_builder(_builder: &ClassBuilder) { - godot_print!("SpinningCube builder is registered!"); - } - - /// The "constructor" of the class. - fn new(_owner: &MeshInstance) -> Self { - SpinningCube { - start: Vector3::new(0.0, 0.0, 0.0), - time: 0.0, - rotate_speed: 0.05, - } - } - - // In order to make a method known to Godot, the #[export] attribute has to be used. - // In Godot script-classes do not actually inherit the parent class. - // Instead they are "attached" to the parent object, called the "owner". - // The owner is passed to every single exposed method. - #[export] - unsafe fn _ready(&mut self, owner: &MeshInstance) { - owner.set_physics_process(true); - } - - #[export] - unsafe fn _physics_process(&mut self, owner: &MeshInstance, delta: f64) { - use gdnative::api::SpatialMaterial; - - self.time += delta as f32; - owner.rotate_y(self.rotate_speed * delta); - - let offset = Vector3::new(0.0, 1.0, 0.0) * self.time.cos() * 0.5; - owner.set_translation(self.start + offset); - - if let Some(mat) = owner.get_surface_material(0) { - let mat = mat.assume_safe(); - let mat = mat.cast::().expect("Incorrect material"); - mat.set_albedo(Color::from_rgba(self.time.cos().abs(), 0.0, 0.0, 1.0)); - } - } -} diff --git a/rust/src/test.rs b/rust/src/test.rs deleted file mode 100644 index 6c0774f..0000000 --- a/rust/src/test.rs +++ /dev/null @@ -1,58 +0,0 @@ -use gdnative::api::*; -use gdnative::prelude::*; - -/// The SpinningCube "class" -#[derive(NativeClass)] -#[inherit(MeshInstance)] -#[register_with(Self::register_builder)] -pub struct SpinningCubeReverse { - start: Vector3, - time: f32, - #[property(path = "base/rotate_speed")] - rotate_speed: f64, -} - -// __One__ `impl` block can have the `#[methods]` attribute, which will generate -// code to automatically bind any exported methods to Godot. -#[methods] -impl SpinningCubeReverse { - // Register the builder for methods, properties and/or signals. - fn register_builder(_builder: &ClassBuilder) { - godot_print!("SpinningCube builder is registered!"); - } - - /// The "constructor" of the class. - fn new(_owner: &MeshInstance) -> Self { - SpinningCubeReverse { - start: Vector3::new(0.0, 0.0, 0.0), - time: 0.0, - rotate_speed: 0.05, - } - } - - // In order to make a method known to Godot, the #[export] attribute has to be used. - // In Godot script-classes do not actually inherit the parent class. - // Instead they are "attached" to the parent object, called the "owner". - // The owner is passed to every single exposed method. - #[export] - unsafe fn _ready(&mut self, owner: &MeshInstance) { - owner.set_physics_process(true); - } - - #[export] - unsafe fn _physics_process(&mut self, owner: &MeshInstance, delta: f64) { - use gdnative::api::SpatialMaterial; - - self.time += delta as f32; - owner.rotate_y(self.rotate_speed * delta * -1.0); - - let offset = Vector3::new(0.0, 1.0, 0.0) * self.time.cos() * 0.5; - owner.set_translation(self.start + offset); - - if let Some(mat) = owner.get_surface_material(0) { - let mat = mat.assume_safe(); - let mat = mat.cast::().expect("Incorrect material"); - mat.set_albedo(Color::from_rgba(self.time.cos().abs(), 0.0, 0.0, 1.0)); - } - } -} -- cgit