added building mode for cart
This commit is contained in:
33
Scripts/cart.gd
Normal file
33
Scripts/cart.gd
Normal file
@@ -0,0 +1,33 @@
|
||||
extends Node3D
|
||||
|
||||
@onready var beds = preload("res://Scenes/Prefabs/DoubleBeds.tscn")
|
||||
|
||||
@export var cartTop: MeshInstance3D
|
||||
@export var mainCamera: Camera3D
|
||||
|
||||
var build_mode = false
|
||||
var previewObject
|
||||
var targetPos
|
||||
|
||||
func _input(event: InputEvent) -> void:
|
||||
if event.is_action_pressed("hide_top"):
|
||||
cartTop.visible = !cartTop.visible
|
||||
if event.is_action_pressed("enter_build_mode"):
|
||||
build_mode = !build_mode
|
||||
add_preview()
|
||||
|
||||
func _process(_delta: float) -> void:
|
||||
if build_mode:
|
||||
targetPos = mainCamera.getGlobalRayTargetObject()
|
||||
mainCamera.debugLabel.text = targetPos.collider.name
|
||||
if targetPos.collider.has_meta("is_building_area"):
|
||||
#if targetPos.collider.is_building_area == true:
|
||||
previewObject.visible = true
|
||||
previewObject.global_position = targetPos.position
|
||||
else:
|
||||
previewObject.visible = false
|
||||
|
||||
|
||||
func add_preview():
|
||||
previewObject = beds.instantiate()
|
||||
get_tree().root.get_child(0).add_child(previewObject)
|
||||
Reference in New Issue
Block a user