test rooms
This commit is contained in:
parent
9fb4170b51
commit
f4dbc0249b
31 changed files with 338 additions and 42 deletions
59
levels/ui/credits.gd
Normal file
59
levels/ui/credits.gd
Normal file
|
@ -0,0 +1,59 @@
|
|||
extends Node2D
|
||||
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
var bgsound := AudioStreamPlayer.new()
|
||||
var song1 = load(Global.musictracks[15])
|
||||
var song2 = load(Global.musictracks[16])
|
||||
var song3 = load(Global.musictracks[17])
|
||||
var playstart = false
|
||||
var playindex = 0
|
||||
|
||||
func _ready():
|
||||
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
|
||||
add_child(bgsound)
|
||||
bgsound.stream = song1
|
||||
bgsound.play(0)
|
||||
#pass # Replace with function body.
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
var bgtime = bgsound.get_playback_position() + AudioServer.get_time_since_last_mix()
|
||||
# Compensate for output latency.
|
||||
bgtime -= AudioServer.get_output_latency()
|
||||
#print("Time is: ", bgtime)
|
||||
if bgtime < 0:
|
||||
if playstart:
|
||||
if playindex == 0:
|
||||
playindex = 1
|
||||
playstart = false
|
||||
bgsound.stream = song2
|
||||
bgsound.play(0)
|
||||
elif playindex == 1:
|
||||
playindex = 2
|
||||
playstart = false
|
||||
bgsound.stream = song3
|
||||
bgsound.play(0)
|
||||
else:
|
||||
_complete()
|
||||
elif bgsound.get_playback_position() > 10:
|
||||
playstart = true
|
||||
#pass
|
||||
|
||||
func _complete():
|
||||
# This is like autoloading the scene, only
|
||||
# it happens after already loading the main scene.
|
||||
if Global.debug:
|
||||
get_tree().change_scene_to_file("res://levels/ui/scene.tscn")
|
||||
else:
|
||||
get_tree().change_scene_to_file("res://backgounds/result.tscn")
|
||||
#get_tree().root.add_child(title)
|
||||
#get_tree().root.remove_child(boot)
|
||||
#boot.queue_free()
|
||||
|
||||
func _input(event):
|
||||
# Mouse in viewport coordinates.
|
||||
if Input.is_action_just_pressed("ui_accept"):
|
||||
#print("Mouse Click/Unclick at: ", event.position)
|
||||
_complete()
|
475
levels/ui/credits.tscn
Normal file
475
levels/ui/credits.tscn
Normal file
|
@ -0,0 +1,475 @@
|
|||
[gd_scene load_steps=6 format=3 uid="uid://g8ajwoud48us"]
|
||||
|
||||
[ext_resource type="Script" path="res://levels/ui/credits.gd" id="1_y6orl"]
|
||||
[ext_resource type="VideoStream" path="res://backgounds/nebula_-_6044 (720p).ogv" id="2_0cref"]
|
||||
[ext_resource type="Script" path="res://nebula.gd" id="3_ffw0g"]
|
||||
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="5_yvope"]
|
||||
[ext_resource type="Script" path="res://levels/ui/roll.gd" id="6_3q8sp"]
|
||||
|
||||
[node name="credits" type="Node2D"]
|
||||
script = ExtResource("1_y6orl")
|
||||
|
||||
[node name="nebula" type="VideoStreamPlayer" parent="."]
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
scale = Vector2(2, 1.96)
|
||||
stream = ExtResource("2_0cref")
|
||||
autoplay = true
|
||||
script = ExtResource("3_ffw0g")
|
||||
|
||||
[node name="roll" type="Label" parent="."]
|
||||
offset_top = 720.0
|
||||
offset_right = 1280.0
|
||||
offset_bottom = 12504.0
|
||||
text = "Midori in the Magic School
|
||||
|
||||
Programming
|
||||
Page Asgardius
|
||||
|
||||
Made with Godot Engine
|
||||
|
||||
Testing
|
||||
|
||||
Asus VivoBook X1500EA
|
||||
Arch Linux Rolling
|
||||
Development started with this device
|
||||
Provided as a replacement for a HP 14 laptop that died while running Genshin Impact
|
||||
|
||||
Steam Deck
|
||||
Arch Linux Rolling
|
||||
Provided by Evelyn Freeman
|
||||
|
||||
Feedback
|
||||
Sakura Nakayama
|
||||
Tood
|
||||
|
||||
Creative Staff
|
||||
Page Asgardius
|
||||
Beachkid
|
||||
Sakura Nakayama
|
||||
|
||||
Music
|
||||
|
||||
Soundtrack provided by archive.org
|
||||
|
||||
Title screen
|
||||
RELOADED Theme
|
||||
RELOADED
|
||||
|
||||
Disclaimer, Settings, Stores
|
||||
Jellies in the Sea
|
||||
vince kaichan
|
||||
|
||||
Testrooms
|
||||
Get A Brain Morans
|
||||
Fearofdark
|
||||
|
||||
Friendly challenge
|
||||
Oskars Skarmslackare
|
||||
MrGamer
|
||||
|
||||
School nursery
|
||||
Extra Life
|
||||
JosSs
|
||||
|
||||
Overworld (Ceres)
|
||||
Layers
|
||||
Ceekayed
|
||||
|
||||
Boss fight (Ceres)
|
||||
Caramel Condition
|
||||
Ko0x
|
||||
|
||||
Overworld (Earth)
|
||||
Shakeshack Galaxy
|
||||
Vince Kaichan
|
||||
|
||||
The Zubmarine Zone
|
||||
The Zubmarine Zone
|
||||
Vince Kaichan
|
||||
|
||||
Radioactive Desert
|
||||
crammin jammin
|
||||
Vince Kaichan
|
||||
|
||||
Boss Fight (Earth)
|
||||
The Func
|
||||
Vince Kaichan
|
||||
|
||||
Dungeon of Destruction
|
||||
untitled (known as Kaveh Theme on official soundtrack)
|
||||
xerxes
|
||||
|
||||
Final Boss Fight
|
||||
zenon
|
||||
ko0x
|
||||
|
||||
Ending Theme
|
||||
Milky Way
|
||||
Vince Kaichan
|
||||
|
||||
Dungeon Result screen
|
||||
Xs EdzesSs
|
||||
JosSs
|
||||
|
||||
Credit roll 1
|
||||
artificial sweetener
|
||||
Funky Fish and raina
|
||||
|
||||
Credit roll 2
|
||||
too old
|
||||
tj technoiZ
|
||||
|
||||
Credit roll 3
|
||||
portello
|
||||
motherchip
|
||||
|
||||
Encoders
|
||||
|
||||
Main records
|
||||
|
||||
FLAC encoder
|
||||
xiph.org
|
||||
|
||||
X264
|
||||
Videolan
|
||||
|
||||
Game assets
|
||||
|
||||
Libtheora
|
||||
xiph.org
|
||||
|
||||
Libvorbis
|
||||
xiph.org
|
||||
|
||||
PCM
|
||||
Public Domain
|
||||
|
||||
Engine development
|
||||
|
||||
Project Founders
|
||||
Juan Linietsky (reduz)
|
||||
Ariel Manzur (punto-)
|
||||
|
||||
Lead Developer
|
||||
Juan Linietsky (reduz)
|
||||
|
||||
Project Manager
|
||||
Rémi Verschelde (akien-mga)
|
||||
|
||||
Developers
|
||||
|
||||
Aaron Franke (aaronfranke)
|
||||
Aaron Record (LightningAA)
|
||||
Adam Scott (adamscott)
|
||||
Alexander Holland (AlexHolly)
|
||||
Alexey Khoroshavin (allkhor)
|
||||
Alfred Reinold Baudisch (alfredbaudisch)
|
||||
Alket Rexhepi (alketii)
|
||||
Andrea Catania (AndreaCatania)
|
||||
Andrii Doroshenko (Xrayez)
|
||||
Andy Maloney (asmaloney)
|
||||
Andy Moss (MillionOstrich)
|
||||
Angad Kambli (angad-k)
|
||||
Anilforextra (AnilBK)
|
||||
Anish Bhobe (KidRigger)
|
||||
Anton Yabchinskiy (a12n)
|
||||
Anutrix
|
||||
Aren Villanueva (kurikaesu)
|
||||
Ariel Manzur (punto-)
|
||||
AThousandShips
|
||||
Bartłomiej T. Listwon (Listwon)
|
||||
Bastiaan Olij (BastiaanOlij)
|
||||
Ben Brookshire (sheepandshepherd)
|
||||
Benjamin Larsson (Nallebeorn)
|
||||
Bernhard Liebl (poke1024)
|
||||
Bhuvan Vemula (Bhu1-V)
|
||||
bitsawer
|
||||
Błażej Szczygieł (zaps166)
|
||||
Bojidar Marinov (bojidar-bg)
|
||||
Brian Semrau (briansemrau)
|
||||
Bruno Lourenço (MadEqua)
|
||||
Cameron Reikes (creikey)
|
||||
Camille Mohr-Daurat (pouleyKetchoupp)
|
||||
Caner Demirer (cdemirer)
|
||||
Carl Olsson (not-surt)
|
||||
Carter Anderson (cart)
|
||||
Chris Bradfield (cbscribe)
|
||||
Clay John (clayjohn)
|
||||
ConteZero
|
||||
Dana Olson (adolson)
|
||||
Daniel J. Ramirez (djrm)
|
||||
Daniel Rakos (aqnuep)
|
||||
Daniel Zilberleyb (dzil123)
|
||||
Danil Alexeev (dalexeev)
|
||||
dankan1890
|
||||
David Cambré (Gallilus)
|
||||
David Sichma (DavidSichma)
|
||||
David Snopek (dsnopek)
|
||||
Dharkael (lupoDharkael)
|
||||
Dmitry Koteroff (Krakean)
|
||||
Dmitry Maganov (vonagam)
|
||||
Dominik Jasiński (dreamsComeTrue)
|
||||
Douglas Leão (DeeJayLSP)
|
||||
DualMatrix
|
||||
Ellen Poe (ellenhp)
|
||||
Emmanuel Barroga (codecustard)
|
||||
Emmanuel Leblond (touilleMan)
|
||||
Eoin O'Neill (Eoin-ONeill-Yokai)
|
||||
Eric Lasota (elasota)
|
||||
Eric M (EricEzaM)
|
||||
Eric Rybicki (ericrybick)
|
||||
Erik Selecký (rxlecky)
|
||||
est31
|
||||
Eveline Jarosz (Marqin)
|
||||
Fabian Mathews (supagu)
|
||||
Fabio Alessandrelli (Faless)
|
||||
Fabrice Cipolla (fabriceci)
|
||||
Ferenc Arn (tagcup)
|
||||
FireForge (fire-forge)
|
||||
follower
|
||||
foxydevloper
|
||||
François Belair (Razoric480)
|
||||
Franklin Sobrinho (TheHX)
|
||||
Fredia Huya-Kouadio (m4gr3d)
|
||||
Geequlim
|
||||
George Marques (vnen)
|
||||
Gerrit Großkopf (Grosskopf)
|
||||
Gilles Roudiere (groud)
|
||||
Gordon MacPherson (RevoluPowered)
|
||||
Guilherme Felipe de C. G. da Silva (guilhermefelipecgs)
|
||||
Hakim Rouatbi (hakro)
|
||||
Hanif Bin Ariffin (hbina)
|
||||
Haoyu Qiu (timothyqiu)
|
||||
HP van Braam (hpvb)
|
||||
Hendrik Brucker (Geometror)
|
||||
hilfazer
|
||||
Hiroshi Ogawa (hi-ogawa)
|
||||
homer666
|
||||
hoontee
|
||||
Hugo Locurcio (Calinou)
|
||||
Ian Bishop (ianb96)
|
||||
Ibrahn Sahir (ibrahn)
|
||||
Ignacio Etcheverry (neikeq)
|
||||
Igor Kordiukiewicz (IgorKordiukiewicz)
|
||||
Ilaria Cislaghi (QbieShay)
|
||||
Indah Sylvia (ISylvox)
|
||||
J08nY
|
||||
Jake Young (Duroxxigar)
|
||||
Jakub Grzesik (kubecz3k)
|
||||
James Buck (jbuck3)
|
||||
Jan Haller (Bromeon)
|
||||
Jason Knight (jasonwinterpixel)
|
||||
Jean-Michel Bernard (jmb462)
|
||||
Jérôme Gully (Nutriz)
|
||||
Jia Jun Chai (SkyLucilfer)
|
||||
Joan Fons Sanchez (JFonS)
|
||||
Johan Manuel (29jm)
|
||||
Johannes Witt (HaSa1002)
|
||||
Jonathan Nicholl (jtnicholl)
|
||||
Jordan Schidlowsky (winterpixelgames)
|
||||
Josh Jones (DarkKilauea)
|
||||
Joshua Grams (JoshuaGrams)
|
||||
Juan Linietsky (reduz)
|
||||
Julian Murgia (StraToN)
|
||||
Julien Nguyen (Blackiris)
|
||||
Jummit
|
||||
Justo Delgado (mrcdk)
|
||||
karroffel
|
||||
Kelly Thomas (KellyThomas)
|
||||
kleonc
|
||||
Kongfa Waroros (gongpha)
|
||||
Kostadin Damyanov (Max-Might)
|
||||
K. S. Ernest (iFire) Lee (fire)
|
||||
lawnjelly
|
||||
Leon Krause (leonkrause)
|
||||
Liz Haas (27thLiz)
|
||||
Lucien Menassol (Kanabenki)
|
||||
Lyuma
|
||||
Maganty Rushyendra (mrushyendra)
|
||||
Manuele Finocchiaro (m4nu3lf)
|
||||
Marcel Admiraal (madmiraal)
|
||||
Marcelo Fernandez (marcelofg55)
|
||||
Marc Gilleron (Zylann)
|
||||
Marcin Zawiejski (dragmz)
|
||||
Marcus Brummer (mbrlabs)
|
||||
Marcus Elg (MCrafterzz)
|
||||
Mariano Javier Suligoy (MarianoGnu)
|
||||
Mario Schlack (hurikhan)
|
||||
Marios Staikopoulos (marstaik)
|
||||
Marius Hanl (Maran23)
|
||||
Mark Riedesel (klowner)
|
||||
Markus Sauermann (Sauermann)
|
||||
Martin Capitanio (capnm)
|
||||
Martin Liška (marxin)
|
||||
Martin Sjursen (binbitten)
|
||||
marynate
|
||||
Masoud BH (masoudbh3)
|
||||
Mateo Kuruk Miccino (kuruk-mm)
|
||||
Matthew (skyace65)
|
||||
Matthias Hölzl (hoelzl)
|
||||
Max Hilbrunner (mhilbrunner)
|
||||
merumelu
|
||||
Meru Patel (Janglee123)
|
||||
MewPurPur
|
||||
Michael Alexsander (YeldhamDev)
|
||||
Michał Iwańczuk (iwek7)
|
||||
MichiRecRoom (LikeLakers2)
|
||||
Micky (Mickeon)
|
||||
Mikael Hermansson (mihe)
|
||||
MinusKube
|
||||
Morris \"Tabor\" Arroad (mortarroad)
|
||||
mrezai
|
||||
Muhammad Huri (CakHuri)
|
||||
muiroc
|
||||
Nathan Franke (nathanfranke)
|
||||
Nathan Lovato (NathanLovato)
|
||||
Nathan Warden (NathanWarden)
|
||||
Nicholas Huelin (SirQuartz)
|
||||
Nikita Lita (nikitalita)
|
||||
Nils André-Chang (NilsIrl)
|
||||
Noah Beard (TwistedTwigleg)
|
||||
Nông Văn Tình (nongvantinh)
|
||||
Nuno Donato (nunodonato)
|
||||
ocean (they/them) (anvilfolk)
|
||||
Omar El Sheikh (The-O-King)
|
||||
Ovnuniarchos
|
||||
Pascal Richter (ShyRed)
|
||||
Patrick (firefly2442)
|
||||
Paul Batty (Paulb23)
|
||||
Paul Joannon (paulloz)
|
||||
Paul Trojahn (ptrojahn)
|
||||
Pāvels Nadtočajevs (bruvzg)
|
||||
Paweł Fertyk (pfertyk)
|
||||
Pawel Kowal (pkowal1982)
|
||||
Pawel Lampe (Scony)
|
||||
Pedro J. Estébanez (RandomShaper)
|
||||
Pieter-Jan Briers (PJB3005)
|
||||
Poommetee Ketson (Noshyaar)
|
||||
Przemysław Gołąb (n-pigeon)
|
||||
Rafael M. G. (rafallus)
|
||||
Rafał Mikrut (qarmin)
|
||||
Ralf Hölzemer (rollenrolm)
|
||||
Ramesh Ravone (RameshRavone)
|
||||
Raphael2048
|
||||
Raul Santos (raulsntos)
|
||||
Ray Koopa (RayKoopa)
|
||||
RedMser
|
||||
RedworkDE
|
||||
Rémi Verschelde (akien-mga)
|
||||
Rhody Lugo (rraallvv)
|
||||
Ricardo Buring (rburing)
|
||||
Ricardo Subtil (Ev1lbl0w)
|
||||
Riteo Siuga (Riteo)
|
||||
Roberto F. Arroyo (robfram)
|
||||
Robin Hübner (profan)
|
||||
romulox-x
|
||||
Rune Smith (rune-scape)
|
||||
Ruslan Mustakov (endragor)
|
||||
Ryan Roden-Corrent (rrcore)
|
||||
Saniko (sanikoyes)
|
||||
santouits
|
||||
SaracenOne
|
||||
Sergey Minakov (naithar)
|
||||
sersoong
|
||||
Shiqing (kawa-yoiko)
|
||||
Silc 'Tokage' Renew (TokageItLab)
|
||||
Simon Wenner (swenner)
|
||||
smix8
|
||||
snailrhymer
|
||||
Stijn Hinlopen (hinlopen)
|
||||
Swarnim Arun (minraws)
|
||||
TC (floppyhammer)
|
||||
TechnoPorg
|
||||
Thakee Nathees (ThakeeNathees)
|
||||
thebestnom
|
||||
Theo Hallenius (TheoXD)
|
||||
Timo Schwarzer (timoschwarzer)
|
||||
Timothé Bonhoure (ajreckof)
|
||||
Timo (toger5)
|
||||
Tomasz Chabora (KoBeWi)
|
||||
trollodel
|
||||
Twarit Waikar (IronicallySerious)
|
||||
Umang Kalra (theoway)
|
||||
Vinzenz Feenstra (vinzenz)
|
||||
Vitika Soni (Vitika9)
|
||||
박한얼 (volzhs)
|
||||
V. Vamsi Krishna (vkbsb)
|
||||
Wilhem Barbier (nounoursheureux)
|
||||
William Deurwaarder (williamd67)
|
||||
Will Nations (willnationsdev)
|
||||
Wilson E. Alvarez (Rubonnek)
|
||||
Xavier Cho (mysticfall)
|
||||
yg2f (SuperUserNameMan)
|
||||
Yuri Rubinsky (Chaosus)
|
||||
Yuri Sizov (YuriSizov)
|
||||
Zae Chao (zaevi)
|
||||
Zak Stam (zaksnet)
|
||||
Zher Huei Lee (leezh)
|
||||
ZuBsPaCe
|
||||
风青山 (Rindbee)
|
||||
|
||||
Asgardius Virtualx Project contributors
|
||||
Evelyn Debian
|
||||
Kimberly Arch
|
||||
Sarahi Syslinux
|
||||
Eric Asgardius
|
||||
Beachkid
|
||||
Sakura Nakayama
|
||||
Goldfish
|
||||
|
||||
Midori in the Magic School is an upcoming game from Asgardius Virtualx project
|
||||
|
||||
Visit Asgardius Virtualx homepage at https://virtualx.asgardius.company/
|
||||
|
||||
Project website
|
||||
Hosting provided by Scaleway Dedibox
|
||||
|
||||
Source code hosted at https://git.asgardius.company/asgardius/midori-school
|
||||
|
||||
You can listen my radio station at https://asteroid.asgardius.company/public/r3
|
||||
|
||||
Special thanks
|
||||
|
||||
Unity Technologies
|
||||
For make me choosing Godot
|
||||
Godot does what Unitydnt
|
||||
|
||||
CAPCOM
|
||||
For making great games in the past
|
||||
|
||||
ZUN
|
||||
For let me know that a single person can create a great game
|
||||
|
||||
Hoyoverse
|
||||
For let me know that fireworks can make a fun game
|
||||
|
||||
SNK
|
||||
For let me know that a Heavy Machine Gun can be turned into a good stage boss
|
||||
|
||||
OMOCAT
|
||||
For let me know that sketch graphics can give good results
|
||||
|
||||
Contact info
|
||||
|
||||
Email
|
||||
asgardius@asgardius.company
|
||||
|
||||
Activitypub
|
||||
@asgardius@social.asgardius.company
|
||||
|
||||
Matrix Chat
|
||||
|
||||
@asgardius:asgardius.company
|
||||
|
||||
You are free to distribute this game and make modifications, but remember sharing your modifications with source code
|
||||
|
||||
You are free to create guides, but i suggest avoiding cheat codes
|
||||
|
||||
You can reuse assets for non-commercial purposes only"
|
||||
horizontal_alignment = 1
|
||||
script = ExtResource("6_3q8sp")
|
||||
|
||||
[node name="Bottomhud" parent="." instance=ExtResource("5_yvope")]
|
||||
|
||||
[connection signal="finished" from="nebula" to="nebula" method="_on_finished"]
|
53
levels/ui/debug.gd
Normal file
53
levels/ui/debug.gd
Normal file
|
@ -0,0 +1,53 @@
|
|||
extends Control
|
||||
func _ready():
|
||||
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
|
||||
Global.debug = true
|
||||
$"VBoxContainer/Scene Selector".grab_focus()
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
func _level():
|
||||
# This is like autoloading the scene, only
|
||||
# it happens after already loading the main scene.
|
||||
get_tree().change_scene_to_file("res://backgounds/disclaimer.tscn")
|
||||
#Global.live = 1
|
||||
#Global.gamelevel = randi() % 3
|
||||
#if Global.gamelevel == 0:
|
||||
# get_tree().change_scene_to_file("res://backgounds/galaxy.tscn")
|
||||
#elif Global.gamelevel == 1:
|
||||
# get_tree().change_scene_to_file("res://backgounds/wormhole.tscn")
|
||||
#else:
|
||||
# get_tree().change_scene_to_file("res://backgounds/abstract.tscn")
|
||||
#get_tree().root.add_child(title)
|
||||
#get_tree().root.remove_child(boot)
|
||||
#boot.queue_free()
|
||||
|
||||
func _input(event):
|
||||
# Mouse in viewport coordinates.
|
||||
if Input.is_action_just_pressed("ui_cancel"):
|
||||
_on_back_pressed()
|
||||
#print("Mouse Click/Unclick at: ", event.position)
|
||||
# if highlighted == 1:
|
||||
# _on_debug_pressed()
|
||||
# if highlighted == 2:
|
||||
# _on_exit_pressed()
|
||||
# else:
|
||||
# _on_start_pressed()
|
||||
# elif Input.is_action_pressed("ui_up"):
|
||||
# focus_next
|
||||
|
||||
|
||||
|
||||
func _on_scene_selector_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/scene.tscn")
|
||||
|
||||
|
||||
func _on_sound_test_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/soundtest.tscn")
|
||||
|
||||
|
||||
func _on_back_pressed():
|
||||
Global.debug = false
|
||||
get_tree().change_scene_to_file("res://levels/ui/tmenu.tscn")
|
81
levels/ui/debug.tscn
Normal file
81
levels/ui/debug.tscn
Normal file
|
@ -0,0 +1,81 @@
|
|||
[gd_scene load_steps=8 format=3 uid="uid://brrta1s63r2q2"]
|
||||
|
||||
[ext_resource type="Script" path="res://levels/ui/debug.gd" id="1_gm5qw"]
|
||||
[ext_resource type="VideoStream" path="res://backgounds/nebula_-_6044 (720p).ogv" id="2_l51wy"]
|
||||
[ext_resource type="Script" path="res://nebula.gd" id="3_0jyxj"]
|
||||
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="4_ogmre"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_821nm"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_6u0xs"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_r2qrn"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[node name="Debug" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_gm5qw")
|
||||
|
||||
[node name="nebula" type="VideoStreamPlayer" parent="."]
|
||||
layout_mode = 0
|
||||
offset_right = 640.0
|
||||
offset_bottom = 368.0
|
||||
scale = Vector2(2, 1.96)
|
||||
stream = ExtResource("2_l51wy")
|
||||
autoplay = true
|
||||
script = ExtResource("3_0jyxj")
|
||||
|
||||
[node name="Game name" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 339.0
|
||||
offset_top = 61.0
|
||||
offset_right = 991.0
|
||||
offset_bottom = 207.0
|
||||
theme_override_font_sizes/font_size = 106
|
||||
text = "Debug Menu"
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -129.5
|
||||
offset_top = -362.0
|
||||
offset_right = 129.5
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
|
||||
[node name="Scene Selector" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 80
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_821nm")
|
||||
text = "Scene Selector"
|
||||
|
||||
[node name="Sound Test" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 80
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
|
||||
text = "Sound Test"
|
||||
|
||||
[node name="Back" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 80
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_r2qrn")
|
||||
text = "Back"
|
||||
|
||||
[node name="Bottomhud" parent="." instance=ExtResource("4_ogmre")]
|
||||
layout_mode = 1
|
||||
|
||||
[connection signal="finished" from="nebula" to="nebula" method="_on_finished"]
|
||||
[connection signal="pressed" from="VBoxContainer/Scene Selector" to="." method="_on_scene_selector_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Sound Test" to="." method="_on_sound_test_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Back" to="." method="_on_back_pressed"]
|
50
levels/ui/gameplay.gd
Normal file
50
levels/ui/gameplay.gd
Normal file
|
@ -0,0 +1,50 @@
|
|||
extends Node2D
|
||||
var level
|
||||
var player
|
||||
var music
|
||||
var bgsound := AudioStreamPlayer.new()
|
||||
var musictrack
|
||||
var isboss
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready():
|
||||
add_child(bgsound)
|
||||
if Global.debug:
|
||||
level = load(Global.places[Global.dplace[0]][Global.dplace[1]][Global.dplace[2]][0]).instantiate()
|
||||
player = load(Global.pchars[Global.dcpchar]).instantiate()
|
||||
musictrack = Global.musictracks[Global.places[Global.dplace[0]][Global.dplace[1]][Global.dplace[2]][3]]
|
||||
isboss = Global.places[Global.dplace[0]][Global.dplace[1]][Global.dplace[2]][4]
|
||||
else:
|
||||
level = load(Global.places[Global.cplace[0]][Global.cplace[1]][Global.cplace[2]][0]).instantiate()
|
||||
player = load(Global.pchars[Global.cpchar]).instantiate()
|
||||
musictrack = Global.musictracks[Global.places[Global.cplace[0]][Global.cplace[1]][Global.cplace[2]][3]]
|
||||
isboss = Global.places[Global.cplace[0]][Global.cplace[1]][Global.cplace[2]][4]
|
||||
if Global.cspawnarea[0] != null && Global.cspawnarea[0] != null:
|
||||
player.position.x = Global.cspawnarea[0]
|
||||
player.position.y = Global.cspawnarea[1]
|
||||
elif Global.debug:
|
||||
player.position.x = Global.places[Global.dplace[0]][Global.dplace[1]][Global.dplace[2]][1]
|
||||
player.position.y = Global.places[Global.dplace[0]][Global.dplace[1]][Global.dplace[2]][2]
|
||||
else:
|
||||
player.position.x = Global.places[Global.cplace[0]][Global.cplace[1]][Global.cplace[2]][1]
|
||||
player.position.y = Global.places[Global.cplace[0]][Global.cplace[1]][Global.cplace[2]][2]
|
||||
music = load(musictrack)
|
||||
get_tree().root.add_child.call_deferred(level)
|
||||
get_tree().root.add_child.call_deferred(player)
|
||||
bgsound.stream = music
|
||||
if !isboss:
|
||||
bgsound.play(0)
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
func _input(event):
|
||||
if Input.is_key_pressed(KEY_ESCAPE) || Input.is_joy_button_pressed(0,JOY_BUTTON_BACK):
|
||||
get_tree().root.remove_child(player)
|
||||
get_tree().root.remove_child(level)
|
||||
if Global.debug:
|
||||
get_tree().change_scene_to_file("res://levels/ui/scene.tscn")
|
||||
else:
|
||||
get_tree().change_scene_to_file("res://title.tscn")
|
6
levels/ui/gameplay.tscn
Normal file
6
levels/ui/gameplay.tscn
Normal file
|
@ -0,0 +1,6 @@
|
|||
[gd_scene load_steps=2 format=3 uid="uid://o4fdhf0tco2h"]
|
||||
|
||||
[ext_resource type="Script" path="res://levels/ui/gameplay.gd" id="1_swekd"]
|
||||
|
||||
[node name="Gameplay" type="Node2D"]
|
||||
script = ExtResource("1_swekd")
|
158
levels/ui/musictest.gd
Normal file
158
levels/ui/musictest.gd
Normal file
|
@ -0,0 +1,158 @@
|
|||
extends Control
|
||||
|
||||
var player := AudioStreamPlayer.new()
|
||||
|
||||
func _ready():
|
||||
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
|
||||
add_child(player)
|
||||
$"BoxContainer/VBoxContainer/Title Screen".grab_focus()
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
|
||||
func _level():
|
||||
# This is like autoloading the scene, only
|
||||
# it happens after already loading the main scene.
|
||||
get_tree().change_scene_to_file("res://backgounds/disclaimer.tscn")
|
||||
#Global.live = 1
|
||||
#Global.gamelevel = randi() % 3
|
||||
#if Global.gamelevel == 0:
|
||||
# get_tree().change_scene_to_file("res://backgounds/galaxy.tscn")
|
||||
#elif Global.gamelevel == 1:
|
||||
# get_tree().change_scene_to_file("res://backgounds/wormhole.tscn")
|
||||
#else:
|
||||
# get_tree().change_scene_to_file("res://backgounds/abstract.tscn")
|
||||
#get_tree().root.add_child(title)
|
||||
#get_tree().root.remove_child(boot)
|
||||
#boot.queue_free()
|
||||
|
||||
func _input(event):
|
||||
# Mouse in viewport coordinates.
|
||||
if Input.is_action_just_pressed("ui_cancel"):
|
||||
_on_back_pressed()
|
||||
if Input.is_key_pressed(KEY_X) || Input.is_joy_button_pressed(0,JOY_BUTTON_X):
|
||||
player.stop()
|
||||
#print("Mouse Click/Unclick at: ", event.position)
|
||||
# if highlighted == 1:
|
||||
# _on_debug_pressed()
|
||||
# if highlighted == 2:
|
||||
# _on_exit_pressed()
|
||||
# else:
|
||||
# _on_start_pressed()
|
||||
# elif Input.is_action_pressed("ui_up"):
|
||||
# focus_next
|
||||
|
||||
|
||||
|
||||
|
||||
func _on_back_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/soundtest.tscn")
|
||||
|
||||
|
||||
func _on_title_screen_pressed():
|
||||
player.stream = load(Global.musictracks[0])
|
||||
player.play(0)
|
||||
|
||||
func _on_disclaimer_settings_stores_pressed():
|
||||
player.stream = load(Global.musictracks[1])
|
||||
player.play(0)
|
||||
|
||||
|
||||
|
||||
|
||||
func _on_testrooms_pressed():
|
||||
player.stream = load(Global.musictracks[2])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_friendly_challenge_pressed():
|
||||
player.stream = load(Global.musictracks[3])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_school_nursery_pressed():
|
||||
player.stream = load(Global.musictracks[4])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_overworld_ceres_pressed():
|
||||
player.stream = load(Global.musictracks[5])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_boss_fight_ceres_pressed():
|
||||
player.stream = load(Global.musictracks[6])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_result_pressed():
|
||||
player.stream = load(Global.musictracks[7])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_overworld_earth_pressed():
|
||||
player.stream = load(Global.musictracks[8])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_the_zubmarine_zone_pressed():
|
||||
player.stream = load(Global.musictracks[9])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_radioactive_desert_pressed():
|
||||
player.stream = load(Global.musictracks[10])
|
||||
player.play(0)
|
||||
|
||||
func _on_natashas_theme_pressed():
|
||||
player.stream = load(Global.musictracks[11])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_dungeon_of_destruction_pressed():
|
||||
player.stream = load(Global.musictracks[12])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_final_boss_fight_pressed():
|
||||
player.stream = load(Global.musictracks[13])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_ending_theme_pressed():
|
||||
player.stream = load(Global.musictracks[14])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_credits_1_pressed():
|
||||
player.stream = load(Global.musictracks[15])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_credits_2_pressed():
|
||||
player.stream = load(Global.musictracks[16])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_credits_3_pressed():
|
||||
player.stream = load(Global.musictracks[17])
|
||||
player.play(0)
|
||||
|
||||
|
||||
|
||||
|
||||
func _on_the_magic_school_pressed():
|
||||
player.stream = load(Global.musictracks[18])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_deep_forest_pressed():
|
||||
player.stream = load(Global.musictracks[19])
|
||||
player.play(0)
|
||||
|
||||
|
||||
func _on_boss_fight_earth_pressed():
|
||||
player.stream = load(Global.musictracks[20])
|
||||
player.play(0)
|
233
levels/ui/musictest.tscn
Normal file
233
levels/ui/musictest.tscn
Normal file
|
@ -0,0 +1,233 @@
|
|||
[gd_scene load_steps=8 format=3 uid="uid://v2cnmd1atfw1"]
|
||||
|
||||
[ext_resource type="Script" path="res://levels/ui/musictest.gd" id="1_mulrj"]
|
||||
[ext_resource type="VideoStream" path="res://backgounds/nebula_-_6044 (720p).ogv" id="2_hc5pw"]
|
||||
[ext_resource type="Script" path="res://nebula.gd" id="3_4oqoj"]
|
||||
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="4_a1ux8"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_cprm3"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_alctd"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_0dqsq"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[node name="Musictest" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_mulrj")
|
||||
|
||||
[node name="nebula" type="VideoStreamPlayer" parent="."]
|
||||
layout_mode = 0
|
||||
offset_right = 640.0
|
||||
offset_bottom = 368.0
|
||||
scale = Vector2(2, 1.96)
|
||||
stream = ExtResource("2_hc5pw")
|
||||
autoplay = true
|
||||
script = ExtResource("3_4oqoj")
|
||||
|
||||
[node name="Label" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 23.0
|
||||
|
||||
[node name="Game name" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 496.0
|
||||
offset_top = 3.0
|
||||
offset_right = 790.0
|
||||
offset_bottom = 73.0
|
||||
theme_override_font_sizes/font_size = 40
|
||||
text = "Music Test"
|
||||
|
||||
[node name="Stop" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 5.0
|
||||
offset_top = 672.0
|
||||
offset_right = 444.0
|
||||
offset_bottom = 708.0
|
||||
theme_override_font_sizes/font_size = 22
|
||||
text = "Press X to stop playback"
|
||||
|
||||
[node name="BoxContainer" type="BoxContainer" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 3
|
||||
anchor_left = 1.0
|
||||
anchor_top = 1.0
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -640.0
|
||||
offset_top = -419.0
|
||||
grow_horizontal = 0
|
||||
grow_vertical = 0
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="BoxContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Title Screen" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_cprm3")
|
||||
text = "Title Screen"
|
||||
|
||||
[node name="Disclaimer, Settings, Stores" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_cprm3")
|
||||
text = "Disclaimer, Settings, Stores"
|
||||
|
||||
[node name="Testrooms" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Testrooms"
|
||||
|
||||
[node name="Friendly challenge" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Friendly challenge"
|
||||
|
||||
[node name="School nursery" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "School nursery"
|
||||
|
||||
[node name="Overworld (Ceres)" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Overworld (Ceres)"
|
||||
|
||||
[node name="Boss fight (Ceres)" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Boss fight (Ceres)"
|
||||
|
||||
[node name="Result" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Result Screen"
|
||||
|
||||
[node name="Overworld (Earth)" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Overworld (Earth)"
|
||||
|
||||
[node name="The Zubmarine Zone" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "The Zubmarine Zone"
|
||||
|
||||
[node name="Radioactive Desert" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Radioactive Desert"
|
||||
|
||||
[node name="VBoxContainer2" type="VBoxContainer" parent="BoxContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Natasha’s Theme" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Natasha’s Theme"
|
||||
|
||||
[node name="Dungeon of Destruction" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Dungeon of Destruction"
|
||||
|
||||
[node name="Final Boss Fight" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Final Boss Fight"
|
||||
|
||||
[node name="Ending Theme" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Ending Theme"
|
||||
|
||||
[node name="Credits 1" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Credits 1"
|
||||
|
||||
[node name="Credits 2" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Credits 2"
|
||||
|
||||
[node name="Credits 3" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Credits 3"
|
||||
|
||||
[node name="The Magic School" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "The Magic School"
|
||||
|
||||
[node name="Deep Forest" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Deep Forest"
|
||||
|
||||
[node name="Boss Fight (Earth)" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Boss Fight (Earth)"
|
||||
|
||||
[node name="Back" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_0dqsq")
|
||||
text = "Back"
|
||||
|
||||
[node name="Bottomhud" parent="." instance=ExtResource("4_a1ux8")]
|
||||
layout_mode = 1
|
||||
|
||||
[connection signal="finished" from="nebula" to="nebula" method="_on_finished"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer/Title Screen" to="." method="_on_title_screen_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer/Disclaimer, Settings, Stores" to="." method="_on_disclaimer_settings_stores_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer/Testrooms" to="." method="_on_testrooms_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer/Friendly challenge" to="." method="_on_friendly_challenge_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer/School nursery" to="." method="_on_school_nursery_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer/Overworld (Ceres)" to="." method="_on_overworld_ceres_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer/Boss fight (Ceres)" to="." method="_on_boss_fight_ceres_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer/Result" to="." method="_on_result_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer/Overworld (Earth)" to="." method="_on_overworld_earth_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer/The Zubmarine Zone" to="." method="_on_the_zubmarine_zone_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer/Radioactive Desert" to="." method="_on_radioactive_desert_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer2/Natasha’s Theme" to="." method="_on_natashas_theme_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer2/Dungeon of Destruction" to="." method="_on_dungeon_of_destruction_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer2/Final Boss Fight" to="." method="_on_final_boss_fight_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer2/Ending Theme" to="." method="_on_ending_theme_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer2/Credits 1" to="." method="_on_credits_1_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer2/Credits 2" to="." method="_on_credits_2_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer2/Credits 3" to="." method="_on_credits_3_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer2/The Magic School" to="." method="_on_the_magic_school_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer2/Deep Forest" to="." method="_on_deep_forest_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer2/Boss Fight (Earth)" to="." method="_on_boss_fight_earth_pressed"]
|
||||
[connection signal="pressed" from="BoxContainer/VBoxContainer2/Back" to="." method="_on_back_pressed"]
|
11
levels/ui/roll.gd
Normal file
11
levels/ui/roll.gd
Normal file
|
@ -0,0 +1,11 @@
|
|||
extends Label
|
||||
|
||||
func _process(delta):
|
||||
#453 lines
|
||||
#623 seconds credit roll
|
||||
#633 seconds music
|
||||
#20 Delta base
|
||||
#20*623/633=19.6840442338
|
||||
#Roll velocity calculator
|
||||
#(14.0866856839 * music duration (seconds)) / Line count
|
||||
position.y -= delta * 12
|
65
levels/ui/scene.gd
Normal file
65
levels/ui/scene.gd
Normal file
|
@ -0,0 +1,65 @@
|
|||
extends Control
|
||||
func _ready():
|
||||
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
|
||||
$"VBoxContainer/Disclaimer".grab_focus()
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
func _level():
|
||||
# This is like autoloading the scene, only
|
||||
# it happens after already loading the main scene.
|
||||
get_tree().change_scene_to_file("res://backgounds/disclaimer.tscn")
|
||||
#Global.live = 1
|
||||
#Global.gamelevel = randi() % 3
|
||||
#if Global.gamelevel == 0:
|
||||
# get_tree().change_scene_to_file("res://backgounds/galaxy.tscn")
|
||||
#elif Global.gamelevel == 1:
|
||||
# get_tree().change_scene_to_file("res://backgounds/wormhole.tscn")
|
||||
#else:
|
||||
# get_tree().change_scene_to_file("res://backgounds/abstract.tscn")
|
||||
#get_tree().root.add_child(title)
|
||||
#get_tree().root.remove_child(boot)
|
||||
#boot.queue_free()
|
||||
|
||||
func _input(event):
|
||||
# Mouse in viewport coordinates.
|
||||
if Input.is_action_just_pressed("ui_cancel"):
|
||||
_on_back_pressed()
|
||||
#print("Mouse Click/Unclick at: ", event.position)
|
||||
# if highlighted == 1:
|
||||
# _on_debug_pressed()
|
||||
# if highlighted == 2:
|
||||
# _on_exit_pressed()
|
||||
# else:
|
||||
# _on_start_pressed()
|
||||
# elif Input.is_action_pressed("ui_up"):
|
||||
# focus_next
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
func _on_back_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/debug.tscn")
|
||||
|
||||
func _on_credits_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/credits.tscn")
|
||||
|
||||
|
||||
func _on_wip_pressed():
|
||||
get_tree().change_scene_to_file("res://backgounds/wip.tscn")
|
||||
|
||||
|
||||
func _on_results_pressed():
|
||||
get_tree().change_scene_to_file("res://backgounds/result.tscn")
|
||||
|
||||
|
||||
func _on_disclaimer_pressed():
|
||||
get_tree().change_scene_to_file("res://backgounds/disclaimer.tscn")
|
||||
|
||||
|
||||
func _on_testrooms_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/testrooms.tscn")
|
99
levels/ui/scene.tscn
Normal file
99
levels/ui/scene.tscn
Normal file
|
@ -0,0 +1,99 @@
|
|||
[gd_scene load_steps=7 format=3 uid="uid://duyxejhnys1l4"]
|
||||
|
||||
[ext_resource type="Script" path="res://levels/ui/scene.gd" id="1_hxcrn"]
|
||||
[ext_resource type="VideoStream" path="res://backgounds/nebula_-_6044 (720p).ogv" id="2_nvftm"]
|
||||
[ext_resource type="Script" path="res://nebula.gd" id="3_6sds4"]
|
||||
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="4_2y7h7"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_6u0xs"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_r2qrn"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[node name="Scene" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_hxcrn")
|
||||
|
||||
[node name="nebula" type="VideoStreamPlayer" parent="."]
|
||||
layout_mode = 0
|
||||
offset_right = 640.0
|
||||
offset_bottom = 368.0
|
||||
scale = Vector2(2, 1.96)
|
||||
stream = ExtResource("2_nvftm")
|
||||
autoplay = true
|
||||
script = ExtResource("3_6sds4")
|
||||
|
||||
[node name="Game name" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 496.0
|
||||
offset_top = 3.0
|
||||
offset_right = 790.0
|
||||
offset_bottom = 73.0
|
||||
theme_override_font_sizes/font_size = 40
|
||||
text = "Scene selector"
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -129.5
|
||||
offset_top = -362.0
|
||||
offset_right = 129.5
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
|
||||
[node name="Disclaimer" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
|
||||
text = "Disclaimer"
|
||||
|
||||
[node name="Testrooms" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
|
||||
text = "Test Rooms"
|
||||
|
||||
[node name="Results" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
|
||||
text = "Result Screen"
|
||||
|
||||
[node name="Credits" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
|
||||
text = "Credits"
|
||||
|
||||
[node name="WIP" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
|
||||
text = "Work in Progress"
|
||||
|
||||
[node name="Back" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_r2qrn")
|
||||
text = "Back"
|
||||
|
||||
[node name="Bottomhud" parent="." instance=ExtResource("4_2y7h7")]
|
||||
layout_mode = 1
|
||||
|
||||
[connection signal="finished" from="nebula" to="nebula" method="_on_finished"]
|
||||
[connection signal="pressed" from="VBoxContainer/Disclaimer" to="." method="_on_disclaimer_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Testrooms" to="." method="_on_testrooms_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Results" to="." method="_on_results_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Credits" to="." method="_on_credits_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/WIP" to="." method="_on_wip_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Back" to="." method="_on_back_pressed"]
|
52
levels/ui/sfxtest.gd
Normal file
52
levels/ui/sfxtest.gd
Normal file
|
@ -0,0 +1,52 @@
|
|||
extends Control
|
||||
|
||||
var player := AudioStreamPlayer.new()
|
||||
|
||||
func _ready():
|
||||
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
|
||||
add_child(player)
|
||||
$"BoxContainer/VBoxContainer/Title Screen".grab_focus()
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
|
||||
func _level():
|
||||
# This is like autoloading the scene, only
|
||||
# it happens after already loading the main scene.
|
||||
get_tree().change_scene_to_file("res://backgounds/disclaimer.tscn")
|
||||
#Global.live = 1
|
||||
#Global.gamelevel = randi() % 3
|
||||
#if Global.gamelevel == 0:
|
||||
# get_tree().change_scene_to_file("res://backgounds/galaxy.tscn")
|
||||
#elif Global.gamelevel == 1:
|
||||
# get_tree().change_scene_to_file("res://backgounds/wormhole.tscn")
|
||||
#else:
|
||||
# get_tree().change_scene_to_file("res://backgounds/abstract.tscn")
|
||||
#get_tree().root.add_child(title)
|
||||
#get_tree().root.remove_child(boot)
|
||||
#boot.queue_free()
|
||||
|
||||
func _input(event):
|
||||
# Mouse in viewport coordinates.
|
||||
if Input.is_action_just_pressed("ui_cancel"):
|
||||
_on_back_pressed()
|
||||
if Input.is_key_pressed(KEY_X) || Input.is_joy_button_pressed(0,JOY_BUTTON_X):
|
||||
player.stop()
|
||||
#print("Mouse Click/Unclick at: ", event.position)
|
||||
# if highlighted == 1:
|
||||
# _on_debug_pressed()
|
||||
# if highlighted == 2:
|
||||
# _on_exit_pressed()
|
||||
# else:
|
||||
# _on_start_pressed()
|
||||
# elif Input.is_action_pressed("ui_up"):
|
||||
# focus_next
|
||||
|
||||
|
||||
|
||||
|
||||
func _on_back_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/soundtest.tscn")
|
||||
|
182
levels/ui/sfxtest.tscn
Normal file
182
levels/ui/sfxtest.tscn
Normal file
|
@ -0,0 +1,182 @@
|
|||
[gd_scene load_steps=8 format=3 uid="uid://cv2a37xetkkse"]
|
||||
|
||||
[ext_resource type="Script" path="res://levels/ui/sfxtest.gd" id="1_l1lbb"]
|
||||
[ext_resource type="VideoStream" path="res://backgounds/nebula_-_6044 (720p).ogv" id="2_c55jp"]
|
||||
[ext_resource type="Script" path="res://nebula.gd" id="3_yeu3h"]
|
||||
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="4_xxv3m"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_cprm3"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_alctd"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_0dqsq"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[node name="Sfxtest" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_l1lbb")
|
||||
|
||||
[node name="nebula" type="VideoStreamPlayer" parent="."]
|
||||
layout_mode = 0
|
||||
offset_right = 640.0
|
||||
offset_bottom = 368.0
|
||||
scale = Vector2(2, 1.96)
|
||||
stream = ExtResource("2_c55jp")
|
||||
autoplay = true
|
||||
script = ExtResource("3_yeu3h")
|
||||
|
||||
[node name="Game name" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 496.0
|
||||
offset_top = 3.0
|
||||
offset_right = 790.0
|
||||
offset_bottom = 73.0
|
||||
theme_override_font_sizes/font_size = 40
|
||||
text = "Sound Effect Test"
|
||||
|
||||
[node name="Stop" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 5.0
|
||||
offset_top = 672.0
|
||||
offset_right = 444.0
|
||||
offset_bottom = 708.0
|
||||
theme_override_font_sizes/font_size = 22
|
||||
text = "Press X to stop playback"
|
||||
|
||||
[node name="BoxContainer" type="BoxContainer" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 3
|
||||
anchor_left = 1.0
|
||||
anchor_top = 1.0
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -640.0
|
||||
offset_top = -419.0
|
||||
grow_horizontal = 0
|
||||
grow_vertical = 0
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="BoxContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Title Screen" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_cprm3")
|
||||
text = "Title Screen"
|
||||
|
||||
[node name="Disclaimer, Settings, Stores" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_cprm3")
|
||||
text = "Disclaimer, Settings, Stores"
|
||||
|
||||
[node name="Testrooms" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Testrooms"
|
||||
|
||||
[node name="Friendly challenge" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Friendly challenge"
|
||||
|
||||
[node name="School nursery" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "School nursery"
|
||||
|
||||
[node name="Overworld (Ceres)" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Overworld (Ceres)"
|
||||
|
||||
[node name="Boss fight (Ceres)" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Boss fight (Ceres)"
|
||||
|
||||
[node name="Overworld (Earth)" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Overworld (Earth)"
|
||||
|
||||
[node name="The Zubmarine Zone" type="Button" parent="BoxContainer/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "The Zubmarine Zone"
|
||||
|
||||
[node name="VBoxContainer2" type="VBoxContainer" parent="BoxContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="Radioactive Desert" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Radioactive Desert"
|
||||
|
||||
[node name="Boss Fight (Earth)" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Boss Fight (Earth)"
|
||||
|
||||
[node name="Dungeon of Destruction" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Dungeon of Destruction"
|
||||
|
||||
[node name="Final Boss Fight" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Final Boss Fight"
|
||||
|
||||
[node name="Ending Theme" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Ending Theme"
|
||||
|
||||
[node name="Credits 1" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Credits 1"
|
||||
|
||||
[node name="Credits 2" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Credits 2"
|
||||
|
||||
[node name="Credits 3" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_alctd")
|
||||
text = "Credits 3"
|
||||
|
||||
[node name="Back" type="Button" parent="BoxContainer/VBoxContainer2"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 25
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_0dqsq")
|
||||
text = "Back"
|
||||
|
||||
[node name="Bottomhud" parent="." instance=ExtResource("4_xxv3m")]
|
||||
layout_mode = 1
|
||||
|
||||
[connection signal="finished" from="nebula" to="nebula" method="_on_finished"]
|
40
levels/ui/soundtest.gd
Normal file
40
levels/ui/soundtest.gd
Normal file
|
@ -0,0 +1,40 @@
|
|||
extends Control
|
||||
func _ready():
|
||||
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
|
||||
$"VBoxContainer/Music".grab_focus()
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
|
||||
func _input(event):
|
||||
# Mouse in viewport coordinates.
|
||||
if Input.is_action_just_pressed("ui_cancel"):
|
||||
_on_back_pressed()
|
||||
#print("Mouse Click/Unclick at: ", event.position)
|
||||
# if highlighted == 1:
|
||||
# _on_debug_pressed()
|
||||
# if highlighted == 2:
|
||||
# _on_exit_pressed()
|
||||
# else:
|
||||
# _on_start_pressed()
|
||||
# elif Input.is_action_pressed("ui_up"):
|
||||
# focus_next
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
func _on_back_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/tmenu.tscn")
|
||||
|
||||
|
||||
|
||||
func _on_music_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/musictest.tscn")
|
||||
|
||||
|
||||
func _on_sfx_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/sfxtest.tscn")
|
81
levels/ui/soundtest.tscn
Normal file
81
levels/ui/soundtest.tscn
Normal file
|
@ -0,0 +1,81 @@
|
|||
[gd_scene load_steps=8 format=3 uid="uid://chg6qe1fijkh3"]
|
||||
|
||||
[ext_resource type="Script" path="res://levels/ui/soundtest.gd" id="1_3bg6p"]
|
||||
[ext_resource type="VideoStream" path="res://backgounds/nebula_-_6044 (720p).ogv" id="2_abtft"]
|
||||
[ext_resource type="Script" path="res://nebula.gd" id="3_c33nl"]
|
||||
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="4_2a53a"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_wtbgt"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_4arqn"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_wro6j"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[node name="Soundtest" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_3bg6p")
|
||||
|
||||
[node name="nebula" type="VideoStreamPlayer" parent="."]
|
||||
layout_mode = 0
|
||||
offset_right = 640.0
|
||||
offset_bottom = 368.0
|
||||
scale = Vector2(2, 1.96)
|
||||
stream = ExtResource("2_abtft")
|
||||
autoplay = true
|
||||
script = ExtResource("3_c33nl")
|
||||
|
||||
[node name="Game name" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 496.0
|
||||
offset_top = 3.0
|
||||
offset_right = 790.0
|
||||
offset_bottom = 73.0
|
||||
theme_override_font_sizes/font_size = 40
|
||||
text = "Sound Test"
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -129.5
|
||||
offset_top = -362.0
|
||||
offset_right = 129.5
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
|
||||
[node name="Music" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 80
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_wtbgt")
|
||||
text = "Music"
|
||||
|
||||
[node name="Sfx" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 80
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_4arqn")
|
||||
text = "Sound Effects"
|
||||
|
||||
[node name="Back" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 80
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_wro6j")
|
||||
text = "Back"
|
||||
|
||||
[node name="Bottomhud" parent="." instance=ExtResource("4_2a53a")]
|
||||
layout_mode = 1
|
||||
|
||||
[connection signal="finished" from="nebula" to="nebula" method="_on_finished"]
|
||||
[connection signal="pressed" from="VBoxContainer/Music" to="." method="_on_music_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Sfx" to="." method="_on_sfx_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Back" to="." method="_on_back_pressed"]
|
39
levels/ui/talk.tscn
Normal file
39
levels/ui/talk.tscn
Normal file
|
@ -0,0 +1,39 @@
|
|||
[gd_scene load_steps=2 format=3 uid="uid://cd8hd11usuhbu"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://bb4sw2rhdbjbf" path="res://sprites/common/placeholder/face.png" id="1_4l8il"]
|
||||
|
||||
[node name="Talk" type="Node2D"]
|
||||
|
||||
[node name="Playerface" type="TextureRect" parent="."]
|
||||
offset_left = 511.0
|
||||
offset_top = 35.0
|
||||
offset_right = 767.0
|
||||
offset_bottom = 291.0
|
||||
texture = ExtResource("1_4l8il")
|
||||
|
||||
[node name="Textbox" type="ColorRect" parent="."]
|
||||
offset_left = 41.0
|
||||
offset_top = 319.0
|
||||
offset_right = 1243.0
|
||||
offset_bottom = 681.0
|
||||
color = Color(0.254902, 0.254902, 0.254902, 1)
|
||||
|
||||
[node name="Label" type="Label" parent="."]
|
||||
offset_left = 41.0
|
||||
offset_top = 319.0
|
||||
offset_right = 1243.0
|
||||
offset_bottom = 412.0
|
||||
theme_override_font_sizes/font_size = 68
|
||||
text = "Character name goes here"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Dialog" type="Label" parent="."]
|
||||
offset_left = 41.0
|
||||
offset_top = 414.0
|
||||
offset_right = 1243.0
|
||||
offset_bottom = 681.0
|
||||
theme_override_font_sizes/font_size = 68
|
||||
text = "Your dialog goes here"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
56
levels/ui/testrooms.gd
Normal file
56
levels/ui/testrooms.gd
Normal file
|
@ -0,0 +1,56 @@
|
|||
extends Control
|
||||
func _ready():
|
||||
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
|
||||
$"VBoxContainer/Testspawn".grab_focus()
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
func _level():
|
||||
# This is like autoloading the scene, only
|
||||
# it happens after already loading the main scene.
|
||||
get_tree().change_scene_to_file("res://backgounds/disclaimer.tscn")
|
||||
#Global.live = 1
|
||||
#Global.gamelevel = randi() % 3
|
||||
#if Global.gamelevel == 0:
|
||||
# get_tree().change_scene_to_file("res://backgounds/galaxy.tscn")
|
||||
#elif Global.gamelevel == 1:
|
||||
# get_tree().change_scene_to_file("res://backgounds/wormhole.tscn")
|
||||
#else:
|
||||
# get_tree().change_scene_to_file("res://backgounds/abstract.tscn")
|
||||
#get_tree().root.add_child(title)
|
||||
#get_tree().root.remove_child(boot)
|
||||
#boot.queue_free()
|
||||
|
||||
func _input(event):
|
||||
# Mouse in viewport coordinates.
|
||||
if Input.is_action_just_pressed("ui_cancel"):
|
||||
_on_back_pressed()
|
||||
#print("Mouse Click/Unclick at: ", event.position)
|
||||
# if highlighted == 1:
|
||||
# _on_debug_pressed()
|
||||
# if highlighted == 2:
|
||||
# _on_exit_pressed()
|
||||
# else:
|
||||
# _on_start_pressed()
|
||||
# elif Input.is_action_pressed("ui_up"):
|
||||
# focus_next
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
func _on_back_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/scene.tscn")
|
||||
|
||||
|
||||
func _on_testspawn_pressed():
|
||||
Global.dplace = [0, 2, 1]
|
||||
get_tree().change_scene_to_file("res://levels/ui/gameplay.tscn")
|
||||
|
||||
|
||||
func _on_testboss_pressed():
|
||||
Global.dplace = [0, 1, 1]
|
||||
get_tree().change_scene_to_file("res://levels/ui/gameplay.tscn")
|
91
levels/ui/testrooms.tscn
Normal file
91
levels/ui/testrooms.tscn
Normal file
|
@ -0,0 +1,91 @@
|
|||
[gd_scene load_steps=7 format=3 uid="uid://b0pgk6d871bor"]
|
||||
|
||||
[ext_resource type="Script" path="res://levels/ui/testrooms.gd" id="1_p5nnr"]
|
||||
[ext_resource type="VideoStream" path="res://backgounds/nebula_-_6044 (720p).ogv" id="2_wyg0k"]
|
||||
[ext_resource type="Script" path="res://nebula.gd" id="3_co5y6"]
|
||||
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="4_jvl8w"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_6u0xs"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_r2qrn"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[node name="Testrooms" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_p5nnr")
|
||||
|
||||
[node name="nebula" type="VideoStreamPlayer" parent="."]
|
||||
layout_mode = 0
|
||||
offset_right = 640.0
|
||||
offset_bottom = 368.0
|
||||
scale = Vector2(2, 1.96)
|
||||
stream = ExtResource("2_wyg0k")
|
||||
autoplay = true
|
||||
script = ExtResource("3_co5y6")
|
||||
|
||||
[node name="Game name" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 496.0
|
||||
offset_top = 3.0
|
||||
offset_right = 790.0
|
||||
offset_bottom = 73.0
|
||||
theme_override_font_sizes/font_size = 40
|
||||
text = "Test Rooms"
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -129.5
|
||||
offset_top = -362.0
|
||||
offset_right = 129.5
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
|
||||
[node name="Testspawn" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
|
||||
text = "Test Spawn"
|
||||
|
||||
[node name="Testboss" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
|
||||
text = "Test Boss
|
||||
"
|
||||
|
||||
[node name="Credits" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
|
||||
text = "Unused"
|
||||
|
||||
[node name="WIP" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
|
||||
text = "Unused"
|
||||
|
||||
[node name="Back" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 32
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_r2qrn")
|
||||
text = "Back"
|
||||
|
||||
[node name="Bottomhud" parent="." instance=ExtResource("4_jvl8w")]
|
||||
layout_mode = 1
|
||||
|
||||
[connection signal="finished" from="nebula" to="nebula" method="_on_finished"]
|
||||
[connection signal="pressed" from="VBoxContainer/Testspawn" to="." method="_on_testspawn_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Testboss" to="." method="_on_testboss_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Back" to="." method="_on_back_pressed"]
|
51
levels/ui/tmenu.gd
Normal file
51
levels/ui/tmenu.gd
Normal file
|
@ -0,0 +1,51 @@
|
|||
extends Control
|
||||
func _ready():
|
||||
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
|
||||
$VBoxContainer/Start.grab_focus()
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
func _level():
|
||||
# This is like autoloading the scene, only
|
||||
# it happens after already loading the main scene.
|
||||
get_tree().change_scene_to_file("res://backgounds/disclaimer.tscn")
|
||||
#Global.live = 1
|
||||
#Global.gamelevel = randi() % 3
|
||||
#if Global.gamelevel == 0:
|
||||
# get_tree().change_scene_to_file("res://backgounds/galaxy.tscn")
|
||||
#elif Global.gamelevel == 1:
|
||||
# get_tree().change_scene_to_file("res://backgounds/wormhole.tscn")
|
||||
#else:
|
||||
# get_tree().change_scene_to_file("res://backgounds/abstract.tscn")
|
||||
#get_tree().root.add_child(title)
|
||||
#get_tree().root.remove_child(boot)
|
||||
#boot.queue_free()
|
||||
|
||||
#func _input(event):
|
||||
# Mouse in viewport coordinates.
|
||||
# if Input.is_key_pressed(KEY_ENTER) || Input.is_joy_button_pressed(0,JOY_BUTTON_B):
|
||||
#print("Mouse Click/Unclick at: ", event.position)
|
||||
# if highlighted == 1:
|
||||
# _on_debug_pressed()
|
||||
# if highlighted == 2:
|
||||
# _on_exit_pressed()
|
||||
# else:
|
||||
# _on_start_pressed()
|
||||
# elif Input.is_action_pressed("ui_up"):
|
||||
# focus_next
|
||||
|
||||
|
||||
func _on_start_pressed():
|
||||
_level()
|
||||
#pass # Replace with function body.
|
||||
|
||||
|
||||
func _on_debug_pressed():
|
||||
get_tree().change_scene_to_file("res://levels/ui/debug.tscn")
|
||||
|
||||
|
||||
func _on_exit_pressed():
|
||||
get_tree().quit()
|
||||
#pass # Replace with function body.
|
81
levels/ui/tmenu.tscn
Normal file
81
levels/ui/tmenu.tscn
Normal file
|
@ -0,0 +1,81 @@
|
|||
[gd_scene load_steps=8 format=3 uid="uid://s8ttuboef06k"]
|
||||
|
||||
[ext_resource type="VideoStream" path="res://backgounds/nebula_-_6044 (720p).ogv" id="1_33b4o"]
|
||||
[ext_resource type="Script" path="res://levels/ui/tmenu.gd" id="1_w3aym"]
|
||||
[ext_resource type="Script" path="res://nebula.gd" id="2_x35ws"]
|
||||
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="4_0qcfw"]
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_821nm"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_6u0xs"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_r2qrn"]
|
||||
bg_color = Color(0, 0.8, 0, 1)
|
||||
|
||||
[node name="Tmenu" type="Control"]
|
||||
layout_mode = 3
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
script = ExtResource("1_w3aym")
|
||||
|
||||
[node name="nebula" type="VideoStreamPlayer" parent="."]
|
||||
layout_mode = 0
|
||||
offset_right = 640.0
|
||||
offset_bottom = 368.0
|
||||
scale = Vector2(2, 1.96)
|
||||
stream = ExtResource("1_33b4o")
|
||||
autoplay = true
|
||||
script = ExtResource("2_x35ws")
|
||||
|
||||
[node name="Game name" type="Label" parent="."]
|
||||
layout_mode = 0
|
||||
offset_left = 31.0
|
||||
offset_top = 113.0
|
||||
offset_right = 1237.0
|
||||
offset_bottom = 243.0
|
||||
theme_override_font_sizes/font_size = 95
|
||||
text = "Midori in the Magic School"
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="."]
|
||||
layout_mode = 1
|
||||
anchors_preset = 7
|
||||
anchor_left = 0.5
|
||||
anchor_top = 1.0
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 1.0
|
||||
offset_left = -129.5
|
||||
offset_top = -362.0
|
||||
offset_right = 129.5
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 0
|
||||
|
||||
[node name="Start" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 80
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_821nm")
|
||||
text = "Start"
|
||||
|
||||
[node name="Debug" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 80
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
|
||||
text = "Debug"
|
||||
|
||||
[node name="Exit" type="Button" parent="VBoxContainer"]
|
||||
layout_mode = 2
|
||||
theme_override_font_sizes/font_size = 80
|
||||
theme_override_styles/focus = SubResource("StyleBoxFlat_r2qrn")
|
||||
text = "Exit"
|
||||
|
||||
[node name="Bottomhud" parent="." instance=ExtResource("4_0qcfw")]
|
||||
layout_mode = 1
|
||||
|
||||
[connection signal="finished" from="nebula" to="nebula" method="_on_finished"]
|
||||
[connection signal="pressed" from="VBoxContainer/Start" to="." method="_on_start_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Debug" to="." method="_on_debug_pressed"]
|
||||
[connection signal="pressed" from="VBoxContainer/Exit" to="." method="_on_exit_pressed"]
|
Loading…
Add table
Add a link
Reference in a new issue