extends Node3D var exits: Array = [false, false, false, false] func _ready() -> void: pass #exits = [ #randi() % 2 == 0, #randi() % 2 == 0, #randi() % 2 == 0, #randi() % 2 == 0, #] #update() func update() -> void: var i = 0 for exit in exits: if not exit: i += 1 continue if i == 0: #n $n.position.y = 1 var vertices = PackedVector3Array() vertices.push_back(Vector3(-5, 0.5, -50)) vertices.push_back(Vector3(5, 0.5, -50)) vertices.push_back(Vector3(-5, 0.5, 0)) vertices.push_back(Vector3(5, 0.5, -50)) vertices.push_back(Vector3(5, 0.5, 0)) vertices.push_back(Vector3(-5, 0.5, 0)) # Initialize the ArrayMesh. var arr_mesh = ArrayMesh.new() var arrays = [] arrays.resize(Mesh.ARRAY_MAX) arrays[Mesh.ARRAY_VERTEX] = vertices # Create the Mesh. arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays) var m = MeshInstance3D.new() m.mesh = arr_mesh add_child(m) if i == 1: #s $s.position.y = 1 var vertices = PackedVector3Array() vertices.push_back(Vector3(-5, 0.5, 0)) vertices.push_back(Vector3(5, 0.5, 0)) vertices.push_back(Vector3(-5, 0.5, 50)) vertices.push_back(Vector3(5, 0.5, 0)) vertices.push_back(Vector3(5, 0.5, 50)) vertices.push_back(Vector3(-5, 0.5, 50)) # Initialize the ArrayMesh. var arr_mesh = ArrayMesh.new() var arrays = [] arrays.resize(Mesh.ARRAY_MAX) arrays[Mesh.ARRAY_VERTEX] = vertices # Create the Mesh. arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays) var m = MeshInstance3D.new() m.mesh = arr_mesh add_child(m) if i == 2: #w $w.position.y = 1 var vertices = PackedVector3Array() vertices.push_back(Vector3(-50, 0.5, -5)) vertices.push_back(Vector3(0, 0.5, -5)) vertices.push_back(Vector3(-50, 0.5, 5)) vertices.push_back(Vector3(0, 0.5, -5)) vertices.push_back(Vector3(0, 0.5, 5)) vertices.push_back(Vector3(-50, 0.5, 5)) # Initialize the ArrayMesh. var arr_mesh = ArrayMesh.new() var arrays = [] arrays.resize(Mesh.ARRAY_MAX) arrays[Mesh.ARRAY_VERTEX] = vertices # Create the Mesh. arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays) var m = MeshInstance3D.new() m.mesh = arr_mesh add_child(m) if i == 3: #e $e.position.y = 1 var vertices = PackedVector3Array() vertices.push_back(Vector3(0, 0.5, -5)) vertices.push_back(Vector3(50, 0.5, -5)) vertices.push_back(Vector3(0, 0.5, 5)) vertices.push_back(Vector3(50, 0.5, -5)) vertices.push_back(Vector3(50, 0.5, 5)) vertices.push_back(Vector3(0, 0.5, 5)) # Initialize the ArrayMesh. var arr_mesh = ArrayMesh.new() var arrays = [] arrays.resize(Mesh.ARRAY_MAX) arrays[Mesh.ARRAY_VERTEX] = vertices # Create the Mesh. arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays) var m = MeshInstance3D.new() m.mesh = arr_mesh add_child(m) i += 1