Avatar
Matt
295805886e7d8c40e3d3d68bdf228014a0a72ca522aca31316c1228ebde774e8
Just a primate trying to find new tools

[gd_scene load_steps=49 format=3 uid="uid://d1vs1x1ndf5pl"]

[sub_resource type="GDScript" id="GDScript_kyr8n"]

script/source = "extends Node3D

@export var opening_light: SpotLight3D

@export var omni_light: OmniLight3D

@export var door: MeshInstance3D

@export var back_door: MeshInstance3D

@export var door_label: Label3D

@export var title_label: Label3D

@export var highlight_color: Color

@export var closed_door: bool

@export var door_display_text: String

@export var front_door_threshold: Area3D

@export var back_door_threshold: Area3D

@export var door_shape: CollisionShape3D

@export var viewport: SubViewport

@export var door_mesh: MeshInstance3D

@export var portal_camera: Camera3D

@export var weighted_percentage: float

#var image_sprites : Array[Sprite3D]

@onready var my_node = get_node(\"/root/CamShuffle/MyCharacter\") as Node3D

func _ready() -> void:

#var image_gallery = get_node(\"MyEntrance/ImageGallery\") as Node3D

#image_sprites = image_gallery.get(\"image_sprites\")

var destination := -210.0

closed_door = get_weighted_random_bool(weighted_percentage) # .7 would be 70% chance of true, 30% chance of false

if closed_door:

front_door_threshold.monitoring = false

door_shape.disabled = false

# destination = -20.0

else:

if get_weighted_random_bool(0.2):

title_label.show();

opening_light.light_energy = 100.0

opening_light.light_color = highlight_color

var tween = create_tween().set_parallel()

if not closed_door:

tween.tween_property(opening_light, \"light_energy\",8.0, 1.5)

#setup_portal()

tween.tween_property(opening_light, \"position:z\", destination, 1.5)

if closed_door:

door.visible = true

if !door_display_text.is_empty():

door_label.text = door_display_text

func get_weighted_random_bool(probability_true: float) -> bool:

return randf() < probability_true

func move_through_door(event_position: Vector3, clicked_object: Area3D):

#var distance_xz := Vector2(event_position.x, event_position.z).length()

#var rounded = floor(distance_xz)

var my_node = get_node(\"/root/CamShuffle/MyCharacter\") as Node3D

var forward1 = my_node.global_transform.basis.z.normalized()

var forward2 = clicked_object.global_transform.basis.z.normalized()

var dot_product = forward1.dot(forward2)

var target_quat = clicked_object.global_transform.basis.get_rotation_quaternion()

if dot_product < 0:

var flip_quat = Quaternion(Vector3.UP, PI)

target_quat = clicked_object.global_transform.basis.get_rotation_quaternion() * flip_quat

if clicked_object.name == \"FrontDoorThreshold\":

move_to_center(my_node, target_quat)

return

var tween = create_tween().set_parallel()

tween.tween_property(my_node, \"position\", clicked_object.global_position, 1.5).set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_QUAD)

tween.tween_property(my_node, \"quaternion\", target_quat, 1.5).set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_QUAD)

func move_to_center(my_node: Node3D, target_quat: Quaternion):

var tween = create_tween().set_parallel()

tween.tween_property(my_node, \"global_position\", Vector3.ZERO, 2.0).set_trans(Tween.TRANS_SINE).set_ease(Tween.EASE_IN_OUT)

tween.tween_property(my_node, \"quaternion\", target_quat, 2.0).set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_QUAD)

func _on_threshold_input_event(camera: Node, event: InputEvent, event_position: Vector3, normal: Vector3, shape_idx: int) -> void:

if event is InputEventMouseButton and event.pressed:

if event.button_index == MOUSE_BUTTON_LEFT:

await move_through_door(event_position, front_door_threshold)

func _on_back_threshold_input_event(camera: Node, event: InputEvent, event_position: Vector3, normal: Vector3, shape_idx: int) -> void:

if event is InputEventMouseButton and event.pressed:

if event.button_index == MOUSE_BUTTON_LEFT:

move_through_door(event_position, back_door_threshold)

func _on_front_door_threshold_body_entered(body: Node3D) -> void:

var tween = create_tween().set_parallel()

omni_light.reparent(body)

tween.tween_property(omni_light, \"position\", Vector3(0, 0, 0), 2).set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_QUAD)

tween.tween_property(omni_light, \"light_energy\", 0.9, 1)

var material := back_door.get_active_material(0)

if material:

material = material.duplicate()

back_door.set_surface_override_material(0, material)

tween.tween_property(material, \"albedo_color:a\", 0.0, 3).set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_QUAD)

func setup_portal():

var material := StandardMaterial3D.new()

material.albedo_texture = viewport.get_texture()

material.shading_mode = BaseMaterial3D.SHADING_MODE_UNSHADED

door_mesh.material_override = material

#func _process(delta):

#_update_portal_camera()

func _update_portal_camera():

#var my_node = get_node(\"/root/CamShuffle/MyCharacter\") as Node3D

var door_transform = door_mesh.global_transform

var player_relative_position = door_transform.affine_inverse() * my_node.global_transform

portal_camera.global_transform = door_transform * player_relative_position

"

[sub_resource type="BoxShape3D" id="BoxShape3D_id6ej"]

size = Vector3(11.59, 21.005, 1)

[sub_resource type="BoxShape3D" id="BoxShape3D_hq3cb"]

size = Vector3(11.59, 21.005, 1)

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_anr3d"]

shading_mode = 0

albedo_color = Color(0, 0, 0, 1)

[sub_resource type="BoxMesh" id="BoxMesh_t0fqw"]

material = SubResource("StandardMaterial3D_anr3d")

size = Vector3(38.5, 4.975, 200)

[sub_resource type="BoxShape3D" id="BoxShape3D_fjtao"]

size = Vector3(1, 4.975, 199.9)

[sub_resource type="BoxShape3D" id="BoxShape3D_fbeqc"]

size = Vector3(38.5, 4.975, 199.9)

[sub_resource type="BoxMesh" id="BoxMesh_anffd"]

material = SubResource("StandardMaterial3D_anr3d")

size = Vector3(4.175, 55, 200)

[sub_resource type="BoxShape3D" id="BoxShape3D_dyv1j"]

size = Vector3(4.175, 55, 199.9)

[sub_resource type="BoxShape3D" id="BoxShape3D_dvol2"]

size = Vector3(4.175, 55, 199.9)

[sub_resource type="GDScript" id="GDScript_kltct"]

resource_name = "ImageGallery"

script/source = "extends Node3D

@export var image_sprites: Array[Sprite3D] = []

"

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_kltct"]

metallic_specular = 0.0

[sub_resource type="BoxMesh" id="BoxMesh_x6o2v"]

material = SubResource("StandardMaterial3D_kltct")

size = Vector3(87, 24.09, 0.05)

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_hq1gk"]

albedo_color = Color(0.180005, 0.180005, 0.180005, 1)

metallic_specular = 0.0

[sub_resource type="BoxMesh" id="BoxMesh_j7p8a"]

material = SubResource("StandardMaterial3D_hq1gk")

size = Vector3(87, 13.07, 0.05)

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_x6o2v"]

albedo_color = Color(0.145868, 0.145868, 0.145868, 1)

metallic_specular = 0.0

[sub_resource type="BoxMesh" id="BoxMesh_x2pi8"]

material = SubResource("StandardMaterial3D_x6o2v")

size = Vector3(87, 13.07, 0.05)

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_j7p8a"]

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_wehnm"]

albedo_color = Color(0.614616, 0.672432, 0.390414, 1)

metallic = 0.7

roughness = 0.9

emission_enabled = true

emission = Color(0.906599, 0.919676, 0.823926, 1)

emission_energy_multiplier = 0.55

[sub_resource type="PlaneMesh" id="PlaneMesh_xaibh"]

material = SubResource("StandardMaterial3D_wehnm")

size = Vector2(30, 200)

[sub_resource type="PlaneMesh" id="PlaneMesh_p3dbx"]

material = SubResource("StandardMaterial3D_wehnm")

size = Vector2(200, 55)

orientation = 0

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_76lxx"]

resource_local_to_scene = true

transparency = 1

albedo_color = Color(1, 1, 1, 0.843137)

[sub_resource type="QuadMesh" id="QuadMesh_55gtr"]

material = SubResource("StandardMaterial3D_76lxx")

size = Vector2(37.875, 64.58)

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ie7lb"]

albedo_color = Color(0.0923972, 0.092397, 0.0923971, 1)

[sub_resource type="BoxMesh" id="BoxMesh_s4kmb"]

material = SubResource("StandardMaterial3D_ie7lb")

size = Vector3(1.3, 2.4, 0.1)

[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_xs8pl"]

[sub_resource type="GDScript" id="GDScript_l6jse"]

script/source = "extends StaticBody3D

func _on_input_event(camera: Node, event: InputEvent, event_position: Vector3, normal: Vector3, shape_idx: int) -> void:

if event is InputEventMouseButton and event.pressed:

if event.button_index == MOUSE_BUTTON_LEFT:

await move_to_door(event_position)

func move_to_door(event_position: Vector3):

#var distance_xz := Vector2(event_position.x, event_position.z).length()

#var rounded = floor(distance_xz)

var my_node = get_node(\"/root/CamShuffle/MyCharacter\") as Node3D

var forward1 = my_node.global_transform.basis.z.normalized()

var forward2 = global_transform.basis.z.normalized()

var dot_product = forward1.dot(forward2)

var target_quat = global_transform.basis.get_rotation_quaternion()

if dot_product < 0:

var flip_quat = Quaternion(Vector3.UP, PI)

target_quat = global_transform.basis.get_rotation_quaternion() * flip_quat

var tween = create_tween().set_parallel()

tween.tween_property(my_node, \"position\", global_position, 1.5).set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_QUAD)

tween.tween_property(my_node, \"quaternion\", target_quat, 1.5).set_ease(Tween.EASE_IN_OUT).set_trans(Tween.TRANS_QUAD)

"

[sub_resource type="BoxShape3D" id="BoxShape3D_ovv6e"]

size = Vector3(1.571, 2.443, 0.5)

[sub_resource type="GDScript" id="GDScript_rfg41"]

resource_name = "Keypad"

script/source = "extends Node3D

@export var front_door: MeshInstance3D

var expected_pin = \"2323\"

func process_pin() -> void:

if $KeypadDisplay.text == expected_pin:

print(\"Correct pin entered\")

open_door()

else:

print(\"Incorrect pin entered\")

reject_pin()

func clear_pin() -> void:

$KeypadDisplay.text = \"\"

func open_door() -> void:

var tween = create_tween()

var down_pos = front_door.position.y - 200

tween.tween_property(front_door, \"position:y\", down_pos, 3).set_trans(Tween.TRANS_SINE).set_ease(Tween.EASE_IN)

func reject_pin() -> void:

var tween = create_tween()

var door_material := front_door.get_active_material(0) as StandardMaterial3D

front_door.set_surface_override_material(0, door_material.duplicate())

door_material = front_door.get_active_material(0) as StandardMaterial3D

var door_color = door_material.albedo_color

tween.tween_property(door_material, \"albedo_color\", Color.RED, 0.6).set_trans(Tween.TRANS_SINE).set_ease(Tween.EASE_IN)

tween.tween_property(door_material, \"albedo_color\", door_color, 1).set_trans(Tween.TRANS_SINE).set_ease(Tween.EASE_OUT)

func _on_enter_button_input_event(camera: Node, event: InputEvent, event_position: Vector3, normal: Vector3, shape_idx: int) -> void:

if event is InputEventMouseButton and event.pressed:

if event.button_index == MOUSE_BUTTON_LEFT:

button_press_animation($EnterButton)

process_pin()

func _on_clear_button_input_event(camera: Node, event: InputEvent, event_position: Vector3, normal: Vector3, shape_idx: int) -> void:

if event is InputEventMouseButton and event.pressed:

if event.button_index == MOUSE_BUTTON_LEFT:

button_press_animation($ClearButton)

clear_pin()

func button_press_animation(button: Area3D) -> void:

var tween = create_tween()

var back_pos = button.position.z - 0.03

tween.tween_property(button, \"position:z\", back_pos, 0.2).set_trans(Tween.TRANS_SINE).set_ease(Tween.EASE_OUT)

tween.tween_property(button, \"position:z\", 0, 0.2).set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_QUAD)

"

[sub_resource type="SystemFont" id="SystemFont_rfg41"]

subpixel_positioning = 0

[sub_resource type="CylinderShape3D" id="CylinderShape3D_l6jse"]

height = 0.1

radius = 0.1

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_rfg41"]

albedo_color = Color(0.0208137, 0.0870269, 0.194345, 1)

metallic = 0.5

metallic_specular = 0.2

roughness = 0.3

[sub_resource type="CylinderMesh" id="CylinderMesh_exikh"]

material = SubResource("StandardMaterial3D_rfg41")

top_radius = 0.1

bottom_radius = 0.1

height = 0.1

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_exikh"]

[sub_resource type="QuadMesh" id="QuadMesh_kwy3y"]

material = SubResource("StandardMaterial3D_exikh")

size = Vector2(0.08, 0.03)

orientation = 1

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_wpg4g"]

[sub_resource type="QuadMesh" id="QuadMesh_b8vt8"]

material = SubResource("StandardMaterial3D_wpg4g")

size = Vector2(0.13, 0.03)

orientation = 1

[sub_resource type="SystemFont" id="SystemFont_exikh"]

subpixel_positioning = 0

[sub_resource type="GDScript" id="GDScript_qv5o2"]

resource_name = "KeypadButton"

script/source = "extends Area3D

@export var key_display: Label3D

var button_number

func _ready() -> void:

var button_text = $Number.text

button_number = int(button_text)

func _on_input_event(camera: Node, event: InputEvent, event_position: Vector3, normal: Vector3, shape_idx: int) -> void:

if event is InputEventMouseButton and event.pressed:

if event.button_index == MOUSE_BUTTON_LEFT:

button_pressed()

func button_pressed() -> void:

var tween = create_tween()

var back_pos = position.z - 0.03

tween.tween_property(self, \"position:z\", back_pos, 0.2).set_trans(Tween.TRANS_SINE).set_ease(Tween.EASE_OUT)

tween.tween_property(self, \"position:z\", 0, 0.2).set_ease(Tween.EASE_OUT).set_trans(Tween.TRANS_QUAD)

if key_display.text.length() < 4:

key_display.text += str(button_number)

"

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_gynk8"]

albedo_color = Color(0.633105, 0.111818, 0.115498, 1)

metallic = 1.0

roughness = 0.5

[sub_resource type="BoxMesh" id="BoxMesh_7736v"]

material = SubResource("StandardMaterial3D_gynk8")

size = Vector3(1.375, 0.22, 0.1)

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_8ppdt"]

albedo_color = Color(0.79545, 0.254746, 0.0960204, 1)

metallic = 1.0

metallic_specular = 1.0

roughness = 0.5

[sub_resource type="BoxMesh" id="BoxMesh_t65o2"]

material = SubResource("StandardMaterial3D_8ppdt")

size = Vector3(0.15, 2.375, 0.1)

[sub_resource type="GDScript" id="GDScript_1n630"]

resource_name = "Atom"

script/source = "extends Node3D

var moving_forward = true

func _process(delta):

rotate_y(PI * 0.1 * delta)

rotate_x(PI * 0.5 * delta)

rotate_z(PI * 0.25 * delta)

# Continuously move the atom forward and backward

if position.z > -60:

moving_forward = false

elif position.z <= -120:

moving_forward = true

move_atom()

func move_atom():

if moving_forward:

position.z += 0.05

else:

position.z -= 0.05

"

[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_t8nlf"]

albedo_color = Color(0.838897, 0.838897, 0.838897, 1)

metallic = 0.55

metallic_specular = 1.0

roughness = 0.35

[sub_resource type="TorusMesh" id="TorusMesh_47y2g"]

material = SubResource("StandardMaterial3D_t8nlf")

inner_radius = 0.875

outer_radius = 1.005

[sub_resource type="SphereMesh" id="SphereMesh_6ctdm"]

is_hemisphere = true

[sub_resource type="Curve3D" id="Curve3D_vski2"]

bake_interval = 5.0

_data = {

"points": PackedVector3Array(0, 0, 0, 0, 0, 7.85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70),

"tilts": PackedFloat32Array(0, 0)

}

point_count = 2

[node name="WorldBuildTesting" type="Node3D" node_paths=PackedStringArray("opening_light", "omni_light", "door", "back_door", "door_label", "title_label", "front_door_threshold", "back_door_threshold", "door_shape")]

script = SubResource("GDScript_kyr8n")

opening_light = NodePath("MyEntrance/SpotLight3D")

omni_light = NodePath("MyEntrance/OmniLight3D")

door = NodePath("MyEntrance/FrontDoor")

back_door = NodePath("MyEntrance/Backdoor")

door_label = NodePath("MyEntrance/FrontDoor/WelcomeMessage")

title_label = NodePath("MyEntrance/WorldTitle")

highlight_color = Color(0.980392, 0.960784, 0.733333, 1)

closed_door = true

front_door_threshold = NodePath("FrontDoorThreshold")

back_door_threshold = NodePath("BackDoorThreshold")

door_shape = NodePath("MyEntrance/FrontDoor/ClosedDoor/ClosedDoorShape")

weighted_percentage = 0.3

[node name="FrontDoorThreshold" type="Area3D" parent="."]

[node name="DoorCollisionShape" type="CollisionShape3D" parent="FrontDoorThreshold"]

shape = SubResource("BoxShape3D_id6ej")

[node name="BackDoorThreshold" type="Area3D" parent="."]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 70)

[node name="DoorCollisionShape" type="CollisionShape3D" parent="BackDoorThreshold"]

shape = SubResource("BoxShape3D_hq3cb")

[node name="MyEntrance" type="Node3D" parent="."]

transform = Transform3D(-0.35, 0, -3.0598e-08, 0, 0.35, 0, 3.0598e-08, 0, -0.35, 0, 0, 0)

[node name="ExteriorHallway" type="Node3D" parent="MyEntrance"]

[node name="HallwayRoof" type="MeshInstance3D" parent="MyEntrance/ExteriorHallway"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 30, -100)

mesh = SubResource("BoxMesh_t0fqw")

skeleton = NodePath("../..")

[node name="StaticBody3D" type="StaticBody3D" parent="MyEntrance/ExteriorHallway/HallwayRoof"]

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/ExteriorHallway/HallwayRoof/StaticBody3D"]

shape = SubResource("BoxShape3D_fjtao")

[node name="HallwayFloor" type="MeshInstance3D" parent="MyEntrance/ExteriorHallway"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -30, -100)

mesh = SubResource("BoxMesh_t0fqw")

skeleton = NodePath("../..")

[node name="StaticBody3D" type="StaticBody3D" parent="MyEntrance/ExteriorHallway/HallwayFloor"]

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/ExteriorHallway/HallwayFloor/StaticBody3D"]

shape = SubResource("BoxShape3D_fbeqc")

[node name="LeftWall" type="MeshInstance3D" parent="MyEntrance/ExteriorHallway"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -17.175, 0, -100)

mesh = SubResource("BoxMesh_anffd")

skeleton = NodePath("../..")

[node name="StaticBody3D" type="StaticBody3D" parent="MyEntrance/ExteriorHallway/LeftWall"]

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/ExteriorHallway/LeftWall/StaticBody3D"]

shape = SubResource("BoxShape3D_dyv1j")

[node name="RightWall" type="MeshInstance3D" parent="MyEntrance/ExteriorHallway"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 17.175, 0, -100)

mesh = SubResource("BoxMesh_anffd")

skeleton = NodePath("../..")

[node name="StaticBody3D" type="StaticBody3D" parent="MyEntrance/ExteriorHallway/RightWall"]

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/ExteriorHallway/RightWall/StaticBody3D"]

shape = SubResource("BoxShape3D_dvol2")

[node name="ImageGallery" type="Node3D" parent="MyEntrance" node_paths=PackedStringArray("image_sprites")]

script = SubResource("GDScript_kltct")

image_sprites = [NodePath("Walls/LeftWall/Image1"), NodePath("Walls/LeftWall/Image2"), NodePath("Walls/RightWall/Image3"), NodePath("Walls/RightWall/Image4")]

[node name="Walls" type="Node3D" parent="MyEntrance/ImageGallery"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -69.5922)

[node name="LeftWall" type="MeshInstance3D" parent="MyEntrance/ImageGallery/Walls"]

transform = Transform3D(-1.00099e-07, 0, 2.29, 0, 2.29, 0, -2.29, 0, -1.00099e-07, -14.975, 0, -30.2)

mesh = SubResource("BoxMesh_x6o2v")

skeleton = NodePath("../..")

[node name="Image1" type="Sprite3D" parent="MyEntrance/ImageGallery/Walls/LeftWall"]

transform = Transform3D(1.82, 0, 0, 0, 1.82, 0, 0, 0, 1.82, -32.3107, 0, 0.083)

metadata/url = ""

[node name="Image2" type="Sprite3D" parent="MyEntrance/ImageGallery/Walls/LeftWall"]

transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, -1.22307, 0, 0.0833785)

metadata/url = ""

[node name="RightWall" type="MeshInstance3D" parent="MyEntrance/ImageGallery/Walls"]

transform = Transform3D(-1.00099e-07, 0, -2.29, 0, 2.29, 0, 2.29, 0, -1.00099e-07, 14.975, 0, -30.231)

mesh = SubResource("BoxMesh_x6o2v")

skeleton = NodePath("../..")

[node name="Image3" type="Sprite3D" parent="MyEntrance/ImageGallery/Walls/RightWall"]

transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, 19.9692, 0, 0.0276109)

metadata/url = ""

[node name="Image4" type="Sprite3D" parent="MyEntrance/ImageGallery/Walls/RightWall"]

transform = Transform3D(1.5, 0, 0, 0, 1.5, 0, 0, 0, 1.5, -17.6374, 0, 0.0254677)

metadata/url = ""

[node name="Cieling" type="MeshInstance3D" parent="MyEntrance/ImageGallery/Walls"]

transform = Transform3D(-1.00099e-07, -2.29, 1.00099e-07, 0, -1.00099e-07, -2.29, 2.29, -1.00099e-07, 4.37547e-15, 1.55764e-06, 27.471, -30.8147)

mesh = SubResource("BoxMesh_j7p8a")

skeleton = NodePath("../..")

[node name="Floor" type="MeshInstance3D" parent="MyEntrance/ImageGallery/Walls"]

transform = Transform3D(3.00297e-07, 2.29, -1.00099e-07, 8.75094e-15, 1.00099e-07, 2.29, 2.29, -3.00297e-07, 4.37547e-15, 1.53638e-06, -27.471, -30.3283)

mesh = SubResource("BoxMesh_x2pi8")

skeleton = NodePath("../..")

[node name="CSGCylinder3D" type="CSGCylinder3D" parent="MyEntrance/ImageGallery"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -283.626)

visible = false

radius = 85.87

height = 103.14

sides = 47

material = SubResource("StandardMaterial3D_j7p8a")

[node name="CSGCylinder3D2" type="CSGCylinder3D" parent="MyEntrance/ImageGallery/CSGCylinder3D"]

operation = 2

radius = 83.28

height = 92.65

sides = 47

material = SubResource("StandardMaterial3D_j7p8a")

[node name="CSGBox3D" type="CSGBox3D" parent="MyEntrance/ImageGallery/CSGCylinder3D"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 87.472)

operation = 2

size = Vector3(30, 53.96, 13.694)

[node name="InteriorHallway" type="Node3D" parent="MyEntrance"]

[node name="FloorPanel" type="MeshInstance3D" parent="MyEntrance/InteriorHallway"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -27.5, -100)

mesh = SubResource("PlaneMesh_xaibh")

skeleton = NodePath("../..")

[node name="CielingPanel" type="MeshInstance3D" parent="MyEntrance/InteriorHallway"]

transform = Transform3D(-1, 8.74228e-08, 0, -8.74228e-08, -1, 0, 0, 0, 1, 0, 27.5, -100)

mesh = SubResource("PlaneMesh_xaibh")

skeleton = NodePath("../..")

[node name="LeftWallPanel" type="MeshInstance3D" parent="MyEntrance/InteriorHallway"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -15, 0, -100)

mesh = SubResource("PlaneMesh_p3dbx")

skeleton = NodePath("../..")

[node name="RightWallPanel" type="MeshInstance3D" parent="MyEntrance/InteriorHallway"]

transform = Transform3D(-1, 8.74228e-08, 0, -8.74228e-08, -1, 0, 0, 0, 1, 15, 0, -100)

mesh = SubResource("PlaneMesh_p3dbx")

skeleton = NodePath("../..")

[node name="Backdoor" type="MeshInstance3D" parent="MyEntrance"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 8.72373e-06, 0, -199.788)

mesh = SubResource("QuadMesh_55gtr")

skeleton = NodePath("")

[node name="FrontDoor" type="MeshInstance3D" parent="MyEntrance"]

transform = Transform3D(24.48, 0, -2.27374e-13, 0, 24.48, 0, 2.27374e-13, 0, 24.48, -8.66707e-06, 0, -0.860356)

visible = false

mesh = SubResource("BoxMesh_s4kmb")

skeleton = NodePath("")

[node name="WelcomeMessage" type="Label3D" parent="MyEntrance/FrontDoor"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -4.6125e-09, 0.158023, 0.0527609)

visible = false

pixel_size = 0.001

modulate = Color(0.0495607, 0.202516, 0.37157, 1)

outline_modulate = Color(0.0509804, 0.203922, 0.372549, 1)

text = "Under Construction"

font_size = 174

outline_size = 5

autowrap_mode = 3

width = 1500.0

[node name="ClosedDoor" type="StaticBody3D" parent="MyEntrance/FrontDoor"]

physics_material_override = SubResource("PhysicsMaterial_xs8pl")

script = SubResource("GDScript_l6jse")

[node name="ClosedDoorShape" type="CollisionShape3D" parent="MyEntrance/FrontDoor/ClosedDoor"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.01, 0, -0.126412)

shape = SubResource("BoxShape3D_ovv6e")

disabled = true

[node name="Keypad" type="Node3D" parent="MyEntrance/FrontDoor" node_paths=PackedStringArray("front_door")]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.0883661)

visible = false

script = SubResource("GDScript_rfg41")

front_door = NodePath("..")

[node name="KeypadDisplay" type="Label3D" parent="MyEntrance/FrontDoor/Keypad"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, -0.0317948)

pixel_size = 0.001

modulate = Color(0, 0.0720567, 0.188963, 1)

outline_modulate = Color(0, 0.0705882, 0.188235, 1)

font = SubResource("SystemFont_rfg41")

font_size = 164

outline_size = 3

[node name="EnterButton" type="Area3D" parent="MyEntrance/FrontDoor/Keypad"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, -0.5, 0)

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/EnterButton"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/EnterButton"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="Check" type="Node3D" parent="MyEntrance/FrontDoor/Keypad/EnterButton/MeshInstance3D"]

transform = Transform3D(0.89, 0, 0, 0, 0.89, 0, 0, 0, 0.89, -0.00922831, 0.00378875, -0.00830848)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/EnterButton/MeshInstance3D/Check"]

transform = Transform3D(0.747694, 0, -0.664044, 0, 1, -7.10543e-15, 0.664044, 0, 0.747694, -0.0230886, 0.0524547, 0.0259971)

mesh = SubResource("QuadMesh_kwy3y")

skeleton = NodePath("../..")

[node name="MeshInstance3D2" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/EnterButton/MeshInstance3D/Check"]

transform = Transform3D(0.677274, 0, 0.735731, 1.77636e-15, 1, 0, -0.735731, 0, 0.677274, 0.0318219, 0.0524547, 0.0080502)

mesh = SubResource("QuadMesh_b8vt8")

skeleton = NodePath("../..")

[node name="ClearButton" type="Area3D" parent="MyEntrance/FrontDoor/Keypad"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.25, -0.5, 0)

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/ClearButton"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/ClearButton"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="Label3D" type="Label3D" parent="MyEntrance/FrontDoor/Keypad/ClearButton"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0.06)

pixel_size = 0.0001

outline_modulate = Color(1, 1, 1, 1)

text = "X"

font = SubResource("SystemFont_exikh")

font_size = 1412

outline_size = 87

[node name="KeypadButton" type="Area3D" parent="MyEntrance/FrontDoor/Keypad" node_paths=PackedStringArray("key_display")]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.25, 0.25, 0)

script = SubResource("GDScript_qv5o2")

key_display = NodePath("../KeypadDisplay")

[node name="Number" type="Label3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton"]

transform = Transform3D(1, 2.89998e-22, 0, 0, 1, 3.31719e-15, 0, -3.31719e-15, 1, -1.49012e-08, 0, 0.0546058)

pixel_size = 0.001

outline_modulate = Color(0, 0, 0, 0)

text = "1"

font_size = 145

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="KeypadButton2" type="Area3D" parent="MyEntrance/FrontDoor/Keypad" node_paths=PackedStringArray("key_display")]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.25, 0)

script = SubResource("GDScript_qv5o2")

key_display = NodePath("../KeypadDisplay")

[node name="Number" type="Label3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton2"]

transform = Transform3D(1, 2.89998e-22, 0, 0, 1, 3.31719e-15, 0, -3.31719e-15, 1, -1.49012e-08, 0, 0.0546058)

pixel_size = 0.001

outline_modulate = Color(0, 0, 0, 0)

text = "2"

font_size = 145

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton2"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton2"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="KeypadButton3" type="Area3D" parent="MyEntrance/FrontDoor/Keypad" node_paths=PackedStringArray("key_display")]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 0.25, 0)

script = SubResource("GDScript_qv5o2")

key_display = NodePath("../KeypadDisplay")

[node name="Number" type="Label3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton3"]

transform = Transform3D(1, 2.89998e-22, 0, 0, 1, 3.31719e-15, 0, -3.31719e-15, 1, -1.49012e-08, 0, 0.0546058)

pixel_size = 0.001

outline_modulate = Color(0, 0, 0, 0)

text = "3"

font_size = 145

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton3"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton3"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="KeypadButton4" type="Area3D" parent="MyEntrance/FrontDoor/Keypad" node_paths=PackedStringArray("key_display")]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.25, 0, 0)

script = SubResource("GDScript_qv5o2")

key_display = NodePath("../KeypadDisplay")

[node name="Number" type="Label3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton4"]

transform = Transform3D(1, 2.89998e-22, 0, 0, 1, 3.31719e-15, 0, -3.31719e-15, 1, -1.49012e-08, 0, 0.0546058)

pixel_size = 0.001

outline_modulate = Color(0, 0, 0, 0)

text = "4"

font_size = 145

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton4"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton4"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="KeypadButton5" type="Area3D" parent="MyEntrance/FrontDoor/Keypad" node_paths=PackedStringArray("key_display")]

script = SubResource("GDScript_qv5o2")

key_display = NodePath("../KeypadDisplay")

[node name="Number" type="Label3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton5"]

transform = Transform3D(1, 2.89998e-22, 0, 0, 1, 3.31719e-15, 0, -3.31719e-15, 1, -1.49012e-08, 0, 0.0546058)

pixel_size = 0.001

outline_modulate = Color(0, 0, 0, 0)

text = "5

"

font_size = 145

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton5"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton5"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="KeypadButton6" type="Area3D" parent="MyEntrance/FrontDoor/Keypad" node_paths=PackedStringArray("key_display")]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, 0, 0)

script = SubResource("GDScript_qv5o2")

key_display = NodePath("../KeypadDisplay")

[node name="Number" type="Label3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton6"]

transform = Transform3D(1, 2.89998e-22, 0, 0, 1, 3.31719e-15, 0, -3.31719e-15, 1, -1.49012e-08, 0, 0.0546058)

pixel_size = 0.001

outline_modulate = Color(0, 0, 0, 0)

text = "6

"

font_size = 145

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton6"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton6"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="KeypadButton7" type="Area3D" parent="MyEntrance/FrontDoor/Keypad" node_paths=PackedStringArray("key_display")]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.25, -0.25, 0)

script = SubResource("GDScript_qv5o2")

key_display = NodePath("../KeypadDisplay")

[node name="Number" type="Label3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton7"]

transform = Transform3D(1, 2.89998e-22, 0, 0, 1, 3.31719e-15, 0, -3.31719e-15, 1, -1.49012e-08, 0, 0.0546058)

pixel_size = 0.001

outline_modulate = Color(0, 0, 0, 0)

text = "7"

font_size = 145

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton7"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton7"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="KeypadButton8" type="Area3D" parent="MyEntrance/FrontDoor/Keypad" node_paths=PackedStringArray("key_display")]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.25, 0)

script = SubResource("GDScript_qv5o2")

key_display = NodePath("../KeypadDisplay")

[node name="Number" type="Label3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton8"]

transform = Transform3D(1, 2.89998e-22, 0, 0, 1, 3.31719e-15, 0, -3.31719e-15, 1, -1.49012e-08, 0, 0.0546058)

pixel_size = 0.001

outline_modulate = Color(0, 0, 0, 0)

text = "8

"

font_size = 145

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton8"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton8"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="KeypadButton9" type="Area3D" parent="MyEntrance/FrontDoor/Keypad" node_paths=PackedStringArray("key_display")]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.25, -0.25, 0)

script = SubResource("GDScript_qv5o2")

key_display = NodePath("../KeypadDisplay")

[node name="Number" type="Label3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton9"]

transform = Transform3D(1, 2.89998e-22, 0, 0, 1, 3.31719e-15, 0, -3.31719e-15, 1, -1.49012e-08, 0, 0.0546058)

pixel_size = 0.001

outline_modulate = Color(0, 0, 0, 0)

text = "9"

font_size = 145

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton9"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton9"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="KeypadButton0" type="Area3D" parent="MyEntrance/FrontDoor/Keypad" node_paths=PackedStringArray("key_display")]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0)

script = SubResource("GDScript_qv5o2")

key_display = NodePath("../KeypadDisplay")

[node name="Number" type="Label3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton0"]

transform = Transform3D(1, 2.89998e-22, 0, 0, 1, 3.31719e-15, 0, -3.31719e-15, 1, -1.49012e-08, 0, 0.0546058)

pixel_size = 0.001

outline_modulate = Color(0, 0, 0, 0)

text = "0"

font_size = 145

[node name="CollisionShape3D" type="CollisionShape3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton0"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

shape = SubResource("CylinderShape3D_l6jse")

debug_color = Color(0, 0.231373, 0.27451, 0.960784)

[node name="MeshInstance3D" type="MeshInstance3D" parent="MyEntrance/FrontDoor/Keypad/KeypadButton0"]

transform = Transform3D(1, 0, 0, 0, -4.37114e-08, -1, 0, 1, -4.37114e-08, 0, 0, 0)

mesh = SubResource("CylinderMesh_exikh")

[node name="DoorFrame" type="Node3D" parent="MyEntrance"]

transform = Transform3D(136, 0, -8.18545e-12, 0, 136, 0, 8.18545e-12, 0, 136, -8.66707e-06, 0, -0.860356)

visible = false

[node name="TopFrame" type="MeshInstance3D" parent="MyEntrance/DoorFrame"]

transform = Transform3D(0.19, 0, -1.77636e-15, 0, 0.19, 0, 1.77636e-15, 0, 0.19, 0, 0.213363, 0.01)

mesh = SubResource("BoxMesh_7736v")

skeleton = NodePath("")

[node name="LeftFrame" type="MeshInstance3D" parent="MyEntrance/DoorFrame"]

transform = Transform3D(0.17, 0, 8.88178e-16, 0, 0.17, 0, -8.88178e-16, 0, 0.17, -0.109915, 0, 0.01)

mesh = SubResource("BoxMesh_t65o2")

skeleton = NodePath("")

[node name="RightFrame" type="MeshInstance3D" parent="MyEntrance/DoorFrame"]

transform = Transform3D(0.17, 0, 2.66454e-15, 0, 0.17, 0, -2.66454e-15, 0, 0.17, 0.0980672, 0, 0.01)

mesh = SubResource("BoxMesh_t65o2")

skeleton = NodePath("")

[node name="BottomFrame" type="MeshInstance3D" parent="MyEntrance/DoorFrame"]

transform = Transform3D(0.19, 0, -1.77636e-15, 0, 0.19, 0, 1.77636e-15, 0, 0.19, 0, -0.215227, 0.01)

visible = false

mesh = SubResource("BoxMesh_7736v")

skeleton = NodePath("")

[node name="Atom" type="Node3D" parent="MyEntrance"]

transform = Transform3D(60, 0, -3.63798e-13, 0, 60, 0, 3.63798e-13, 0, 60, 0, 0, -120)

visible = false

script = SubResource("GDScript_1n630")

[node name="Ring0" type="MeshInstance3D" parent="MyEntrance/Atom"]

transform = Transform3D(0.25, 0, 0, 0, 0.25, 0, 0, 0, 0.25, 0, 0, 0)

mesh = SubResource("TorusMesh_47y2g")

skeleton = NodePath("../../..")

[node name="Ring1" type="MeshInstance3D" parent="MyEntrance/Atom"]

transform = Transform3D(-1.09278e-08, -0.25, 0, 0.25, -1.09278e-08, 0, 0, 0, 0.25, 0, 0, 0)

mesh = SubResource("TorusMesh_47y2g")

skeleton = NodePath("../../..")

[node name="Ring2" type="MeshInstance3D" parent="MyEntrance/Atom"]

transform = Transform3D(0.176777, -0.176777, 0, 0.176777, 0.176777, 0, 0, 0, 0.25, 0, 0, 0)

mesh = SubResource("TorusMesh_47y2g")

skeleton = NodePath("../../..")

[node name="Ring3" type="MeshInstance3D" parent="MyEntrance/Atom"]

transform = Transform3D(0.176777, 0.176777, 0, -0.176777, 0.176777, 0, 0, 0, 0.25, 0, 0, 0)

mesh = SubResource("TorusMesh_47y2g")

skeleton = NodePath("../../..")

[node name="SpotLight3D" type="SpotLight3D" parent="MyEntrance"]

physics_interpolation_mode = 2

transform = Transform3D(-0.08, 0, -1.20797e-08, 0, 0.08, 0, 1.20797e-08, 0, -0.08, -3.47934e-06, -15, -28.0426)

light_color = Color(0.980046, 0.960221, 0.732743, 1)

light_energy = 8.0

light_indirect_energy = 12.375

light_volumetric_fog_energy = 3.0

light_specular = 1.79

spot_range = 800.0

spot_angle = 66.3

spot_angle_attenuation = 0.466518

[node name="OmniLight3D" type="OmniLight3D" parent="MyEntrance"]

transform = Transform3D(2.85714, 0, 0, 0, 2.85714, 0, 0, 0, 2.85714, 2.55627e-06, -16.495, -191.418)

light_color = Color(0.975263, 0.943029, 0.656867, 1)

light_energy = 2.33

light_indirect_energy = 2.385

light_volumetric_fog_energy = 0.0

light_size = 4.335

light_specular = 1.6

omni_range = 60.0

omni_attenuation = 0.14

[node name="SphereBackground" type="MeshInstance3D" parent="MyEntrance"]

transform = Transform3D(37.745, -6.82121e-12, -2.71051e-20, 0, -2.24371e-06, 63.805, 4.54747e-13, -51.33, -2.78901e-06, 1.62252e-06, 0, -172.26)

visible = false

mesh = SubResource("SphereMesh_6ctdm")

skeleton = NodePath("../..")

[node name="WorldTitle" type="Label3D" parent="MyEntrance"]

transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 29.8712, 0.421156)

visible = false

pixel_size = 0.1

outline_modulate = Color(1, 1, 1, 1)

text = "Severed Floor"

outline_size = 0

[node name="Path3D" type="Path3D" parent="."]

curve = SubResource("Curve3D_vski2")

[node name="PathFollow3D" type="PathFollow3D" parent="Path3D"]

transform = Transform3D(1, 0, -1.50996e-07, 0, 1, 0, 1.50996e-07, 0, 1, 0, 0, 0)

use_model_front = true

[connection signal="body_entered" from="FrontDoorThreshold" to="." method="_on_front_door_threshold_body_entered"]

[connection signal="input_event" from="FrontDoorThreshold" to="." method="_on_threshold_input_event"]

[connection signal="input_event" from="BackDoorThreshold" to="." method="_on_back_threshold_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/ClosedDoor" to="MyEntrance/FrontDoor/ClosedDoor" method="_on_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/EnterButton" to="MyEntrance/FrontDoor/Keypad" method="_on_enter_button_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/ClearButton" to="MyEntrance/FrontDoor/Keypad" method="_on_clear_button_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/KeypadButton" to="MyEntrance/FrontDoor/Keypad/KeypadButton" method="_on_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/KeypadButton2" to="MyEntrance/FrontDoor/Keypad/KeypadButton2" method="_on_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/KeypadButton3" to="MyEntrance/FrontDoor/Keypad/KeypadButton3" method="_on_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/KeypadButton4" to="MyEntrance/FrontDoor/Keypad/KeypadButton4" method="_on_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/KeypadButton5" to="MyEntrance/FrontDoor/Keypad/KeypadButton5" method="_on_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/KeypadButton6" to="MyEntrance/FrontDoor/Keypad/KeypadButton6" method="_on_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/KeypadButton7" to="MyEntrance/FrontDoor/Keypad/KeypadButton7" method="_on_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/KeypadButton8" to="MyEntrance/FrontDoor/Keypad/KeypadButton8" method="_on_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/KeypadButton9" to="MyEntrance/FrontDoor/Keypad/KeypadButton9" method="_on_input_event"]

[connection signal="input_event" from="MyEntrance/FrontDoor/Keypad/KeypadButton0" to="MyEntrance/FrontDoor/Keypad/KeypadButton0" method="_on_input_event"]

I’ve been thinking for a while that these activities should be closely related, if not entirely mashed together. Some kind of value should be on the line to take an action, whether in the form of storage space on your relay, sats, proof of work, whatever you’re willing to dedicate to the note to “boost” it. nostr:npub1arkn0xxxll4llgy9qxkrncn3vc4l69s0dz8ef3zadykcwe7ax3dqrrh43w has been helping put this into perspective for me.

Hollywood did, yes. The Boy and the Heron is the only good new movie I’ve seen in… years, maybe.

I can say, I’ve been working on a nostr app that’s meant to be desktop/AR friendly, and the headset I’m most excited about is the Vision Pro, but I seriously doubt I’ll be able to make my app work on there without jumping through tons of frustrating, unnecessary hoops.

nostr:npub1arkn0xxxll4llgy9qxkrncn3vc4l69s0dz8ef3zadykcwe7ax3dqrrh43w are we not in cyberspace?

Replying to Avatar Lyn Alden

For any nostriches that happen to be in the PA/NJ/NY/CT region, I'll be doing a talk at Princeton on Feb 6th 2024 about Broken Money.

https://gceps.princeton.edu/events/

I'll then potentially be discussing/debating with some of their economics professors, and a former central banker from Canada will be involved as well. Fun stuff.

Shit, I’d have been first in line if I wasn’t leaving Princeton. I’ll be moving (back) to Cali at the end of the year, now even less thrilled about it.

How’d this work out? 😁

I’m (too slowly) trying to build something. What are the main things you find broken?

You’ll get there one day, just keep at it 😉

Can you explain why you'd use a label over a hashtag? My thinking is, events should mostly be tagged by others anyway, which would be a label according to NIP-32, if I'm not mistaken. If so, this makes sense to me. I also like the idea of tying NIP-51 pin lists to action, like if I pin something, it means I'm keeping a copy of it/requesting that relays do the same. These feel like the most "meaningful" interactions to encourage, outside comments/zaps, at least that's guiding my approach.

Why did I wait so long to switch to umbrel? 😍

AI image generation went out of style real quick, but I still like this one - Muir Wood City

https://void.cat/d/WVi4ZCdsfXbGAWgVKLzHiC.webp