forked from team-sg/hero-mark-2
break the camera from its chains, and give it competition!
This commit is contained in:
parent
d57194597e
commit
91df8e2e39
3 changed files with 36 additions and 20 deletions
|
@ -1,33 +1,25 @@
|
|||
extends Camera2D
|
||||
|
||||
onready var resolution = Game.resolution
|
||||
onready var player = get_parent().get_node("Player")
|
||||
onready var current_sector = (player.global_position / resolution).floor()
|
||||
onready var last_sector = current_sector
|
||||
onready var last_sector = Game.get_sector(player.position)
|
||||
#Scroll direction
|
||||
export var scroll_h = true
|
||||
export var scroll_v = false
|
||||
export var respawn_h = true
|
||||
|
||||
func _ready():
|
||||
set_as_toplevel(true)
|
||||
Game.current_sector = current_sector
|
||||
Game.current_sector = last_sector
|
||||
|
||||
func _process(delta):
|
||||
#Scroll screen when player is on different sector
|
||||
current_sector = (player.global_position / resolution).floor()
|
||||
var current_sector = Game.get_sector(player.position)
|
||||
if scroll_h && current_sector.x != last_sector.x:
|
||||
Game.respawn_point = player.global_position + Vector2(8,0) # Set respawn point
|
||||
position.x = current_sector.x * resolution.x # Move camera
|
||||
last_sector = current_sector
|
||||
Game.current_sector = current_sector
|
||||
position.x = current_sector.x * Game.resolution.x
|
||||
if respawn_h:
|
||||
var offset = Vector2(8.0 * sign(current_sector.x - last_sector.x), 0.0)
|
||||
Game.respawn_point = player.global_position
|
||||
last_sector.x = current_sector.x
|
||||
if scroll_v && current_sector.y != last_sector.y:
|
||||
Game.respawn_point = player.global_position + Vector2(0,-8) # Set respawn point
|
||||
position.y = current_sector.y * resolution.y # Move camera
|
||||
last_sector = current_sector
|
||||
Game.current_sector = current_sector
|
||||
|
||||
##Delete enemies when offscreen
|
||||
#func _on_CullArea_area_exited(area):
|
||||
# #delete offscreen enemies
|
||||
# if area.is_in_group("enemy"):
|
||||
# area.get_parent().queue_free()
|
||||
position.y = current_sector.y * Game.resolution.y
|
||||
last_sector.y = current_sector.y
|
||||
Game.current_sector = last_sector
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue