revo-jailbreak/game.gd
2022-12-31 21:47:38 -05:00

86 lines
2.7 KiB
GDScript

extends Node
var resolution = Vector2(256,192)
onready var viewport = get_parent().get_node("Main/Control/ViewportContainer/Viewport")
var current_sector = Vector2(0,0)
var fullscreen = false
#Onreadys
onready var viewport_container = get_parent().get_node("Main/Control/ViewportContainer")
#Collectibles
var golds = 0
var stars = [false,false,false,false,false]
var shards = 0
var arrows = 0
var score = 0
var high_score = 0
var lives = 2
#Audio Channels
onready var ac_jump = $JumpSound
onready var ac_collectible = $CollecitbleSound
onready var ac_climb = $ClimbSound
onready var ac_die = $DieSound
onready var ac_music = $Music
#Sounds
onready var a_gold = preload("res://audio/sounds/snd_coin.ogg")
onready var a_arrow = preload("res://audio/sounds/a_egg_collect.ogg")
onready var a_jump = preload("res://audio/sounds/jump.ogg")
onready var a_star = preload("res://audio/sounds/a_jinjo.ogg")
onready var a_shard = preload("res://audio/sounds/tempjingle.wav")
onready var a_climb_up = preload("res://audio/sounds/a_climb.ogg")
onready var a_climb_down = preload("res://audio/sounds/a_bmilc.ogg")
onready var a_sword = preload("res://audio/sounds/sword.ogg")
onready var a_doublejump = preload("res://audio/sounds/a_bree.wav")
onready var a_shoot = preload("res://audio/sounds/a_egg_shoot.ogg")
onready var a_die = preload("res://audio/sounds/a_hurt.ogg")
#Objects
onready var block_text = preload("res://objects/hud/blocktext.tscn")
#Respawn point
var respawn_point = Vector2(32,166)
#Instances a node
func instance_node(node:PackedScene,x:float,y:float,parent):
var Instance = node.instance()
Instance.global_position = Vector2(x,y)
parent.add_child(Instance)
#Plays a sound
func play_sound(snd,player):
player.set_stream(snd)
player._set_playing(true)
#Get position in sectors
func get_sector(pos):
return (pos / resolution).floor()
#Return the current Map
func get_map():
return viewport.get_children()[0]
#Go to new map
func change_map(map):
get_map().queue_free()
instance_node(map,0,0,viewport)
func _process(delta):
#CRT FILTER
if Input.is_action_just_pressed("crt"):
viewport_container.material.set_shader_param("enabled",!viewport_container.material.get_shader_param("enabled"))
#Restart scene
if Input.is_action_just_pressed("debug_restart"):
if Game.score > Game.high_score: Game.high_score = Game.score
Game.score = 0
Game.golds = 0
Game.stars = [false,false,false,false,false]
Game.shards = 0
Game.arrows = 0
Game.lives = 2
Game.ac_climb.stop()
get_tree().reload_current_scene()
#Fullscreen
if Input.is_action_just_pressed("fullscreen"):
print(fullscreen)
fullscreen = !fullscreen
if fullscreen:
OS.set_window_fullscreen(true)
else:
OS.set_window_fullscreen(false)