pir-serious-game-ethics/mini-game/scenes/decor/ForegroundSprite.gd

45 lines
820 B
GDScript

extends Sprite
export var scroll_speed = 9
export(Array, Texture) var textures := []
var speed_offset : float = 0
var moving = false
var game_version := 0 setget set_game_version
signal viewport_entered(object)
signal viewport_exited(object)
func start():
moving = true
func stop():
moving = false
func _physics_process(delta):
if moving:
move()
func move():
position.x -= scroll_speed + speed_offset
func set_game_version(new_value: int):
game_version = new_value
if game_version < textures.size():
texture = textures[game_version]
else:
texture = textures[0]
func _on_VisibilityNotifier2D_viewport_entered(viewport: Viewport) -> void:
emit_signal("viewport_entered", self)
func _on_VisibilityNotifier2D_viewport_exited(viewport: Viewport) -> void:
emit_signal("viewport_exited", self)