Initial commit
This commit is contained in:
Binary file not shown.
@@ -0,0 +1 @@
|
||||
uid://biujgdpsjonmi
|
||||
Binary file not shown.
@@ -0,0 +1,41 @@
|
||||
extends Node3D
|
||||
class_name MapLogic
|
||||
|
||||
signal onCollision
|
||||
|
||||
signal missionLost
|
||||
|
||||
@export var debugObj: PackedScene
|
||||
@export var pathPivot: Node3D
|
||||
@export var drawDebugCubesPathfinding:= false
|
||||
|
||||
@export var pathfindingGridLoader: PathfindingGridLoader
|
||||
var astar : AStar2D
|
||||
|
||||
@export var playerStartPos: Vector3 = Vector3(0,0,0)
|
||||
|
||||
func _ready() -> void:
|
||||
if pathfindingGridLoader: pathfindingGridLoader.loadGrid()
|
||||
|
||||
func looseMission() -> void:
|
||||
missionLost.emit()
|
||||
|
||||
|
||||
func finishAstarSetup() -> void: ##Run this in process or physics process of the child map class
|
||||
if pathfindingGridLoader:
|
||||
if pathfindingGridLoader.loading_done:
|
||||
astar = pathfindingGridLoader.astar
|
||||
print(astar.get_point_count())
|
||||
pathfindingGridLoader.queue_free()
|
||||
|
||||
if drawDebugCubesPathfinding: #Only for debugging
|
||||
for point in astar.get_point_ids():
|
||||
var point_position: Vector2 = astar.get_point_position(point)
|
||||
addObject(debugObj,pathPivot,Vector3(point_position.x,0.2,point_position.y))
|
||||
|
||||
func addObject(AddedObject:PackedScene, Parent: Node, Position: Vector3, Rotation: Vector3= Vector3(0,0,0)):
|
||||
var obj = AddedObject.instantiate()
|
||||
Parent.add_child(obj)
|
||||
obj.position = Position
|
||||
obj.rotation = Rotation
|
||||
return obj
|
||||
Reference in New Issue
Block a user