X-Git-Url: http://git.purplebirdman.com/lightcycles.git/blobdiff_plain/d9c42b6592d56cd8bf20cae59b2bf1d32219f9e0..50bbcd345ad197834435d5a7aa375d8f41b3e8e8:/map/world.gd diff --git a/map/world.gd b/map/world.gd index bd73e20..6429a3c 100644 --- a/map/world.gd +++ b/map/world.gd @@ -1,12 +1,34 @@ extends Node3D +@onready var _screen: SplitScreenContainer = $SplitScreenContainer + var _player_wall_tscn = preload("res://player/player_wall.tscn") var _player_wall_map = {} - +var _player_color_map = {} + +var _input_map = [ + { + "left": "player1_left", + "right": "player1_right", + "restart": "player1_restart" + }, + { + "left": "player2_left", + "right": "player2_right", + "restart": "player2_restart" + } +] func _ready() -> void: - _player_add_wall($player) + var players: Array[Player] = [$Player1, $Player2] + + _screen.set_splitscreen(players) + + for player in players: + player.set_input_map(_input_map.pop_front()) + _player_color_map[player] = player.color + _player_add_wall(player) func _input(event: InputEvent) -> void: @@ -25,6 +47,7 @@ func _player_add_wall(player: Player) -> void: # start new wall from origin position add_child(wall) + wall.set_color(_player_color_map[player]) wall.global_position = player.global_position wall.global_rotation = player.global_rotation