Extensive work done on basically everything. Attacks prototyped, animations prototyped, pawnbody split out, all traps but pitfall implemented, UI hooked up more.
This commit is contained in:
@@ -4,6 +4,7 @@ const player_controller = preload("res://templates/singleplayer_pc.tscn")
|
||||
const trap_template = preload("res://templates/trap.tscn")
|
||||
|
||||
@onready var floor_layer : GridMap = %Floor
|
||||
@onready var ramp_layer : GridMap = %Ramps
|
||||
@onready var marker_layer : GridMap = %Markers
|
||||
|
||||
@export var difficulty : int = 1
|
||||
@@ -14,12 +15,14 @@ func _ready() -> void:
|
||||
Game.level = self
|
||||
var player = player_controller.instantiate()
|
||||
var traps : Array[PlayerData.TrapData] = [
|
||||
PlayerData.TrapData.new(Trap.Type.FORCE_PANEL, 3, 3),
|
||||
PlayerData.TrapData.new(Trap.Type.BOMB, 3, 3),
|
||||
PlayerData.TrapData.new(Trap.Type.SWITCH, 3, 3),
|
||||
PlayerData.TrapData.new(Trap.Type.MINE, 3, 3)
|
||||
PlayerData.TrapData.new(Trap.Type.MINE, 3, 3),
|
||||
PlayerData.TrapData.new(Trap.Type.GAS, 3, 3)
|
||||
]
|
||||
add_child(player)
|
||||
generate_trap(Trap.Type.MINE, Vector3i(5,0,2))
|
||||
generate_trap(Trap.Type.FORCE_PANEL, Vector3(-1, 0, 0), Vector3i(5,0,2))
|
||||
player.setup(traps)
|
||||
|
||||
func is_square_detected(crd) -> bool:
|
||||
@@ -44,7 +47,12 @@ func add_trap(trap : Trap, crd : Vector3i) -> void:
|
||||
traps[crd] = trap
|
||||
trap.global_position = Vector3(crd) + Vector3(.5, 0, .5)
|
||||
add_child(trap)
|
||||
pass
|
||||
|
||||
func add_projectile(shot : Projectile) -> void:
|
||||
add_child(shot)
|
||||
|
||||
func remove_trap_square(crd : Vector3i) -> void:
|
||||
traps.erase(crd)
|
||||
|
||||
func get_square_trap(crd : Vector3i) -> Trap:
|
||||
if traps.has(crd):
|
||||
@@ -52,6 +60,8 @@ func get_square_trap(crd : Vector3i) -> Trap:
|
||||
else:
|
||||
return null
|
||||
|
||||
|
||||
|
||||
func is_valid_trap_square(crd : Vector3i) -> bool:
|
||||
if floor_layer.get_cell_item(crd + Vector3i(0,-1,0)) == GridMap.INVALID_CELL_ITEM:
|
||||
return false
|
||||
@@ -68,9 +78,9 @@ func activate_trap(crd : Vector3i) -> void:
|
||||
#if trap:
|
||||
|
||||
|
||||
func generate_trap(type : Trap.Type, square : Vector3i):
|
||||
func generate_trap(type : Trap.Type, dir : Vector3, square : Vector3i):
|
||||
var trap = trap_template.instantiate()
|
||||
trap.setup(type, -1)
|
||||
trap.setup(type, dir, -1)
|
||||
add_trap(trap, square)
|
||||
|
||||
func disarm_trap(crd : Vector3i) -> void:
|
||||
|
||||
Reference in New Issue
Block a user