Compare commits

...

12 commits

Author SHA1 Message Date
69115437fe Unfunaversary 2024-09-27 11:31:20 -07:00
f5d435734c result 2024-09-26 13:06:33 -07:00
1eb98a23cd typo fix 2024-09-26 11:44:48 -07:00
2061695212 savesystem 2024-09-26 11:42:29 -07:00
672a09d32e setings 2024-09-25 17:43:45 -07:00
b1e1a6202e quest 2024-09-25 04:35:43 -07:00
a7b9199d38 quest 2024-09-23 17:27:17 -07:00
449afceb0d aero 2024-09-23 11:15:07 -07:00
02a5a73656 cutscenes 2024-09-20 11:28:17 -07:00
0d29a9a48f music 2024-09-16 16:29:41 -07:00
cde2f56c3a download mirror 2024-09-09 14:04:39 -07:00
bca603a57b download mirror 2024-09-09 14:03:14 -07:00
153 changed files with 2037 additions and 637 deletions

View file

@ -14,10 +14,7 @@ func _ready():
if Global.sk: if Global.sk:
_sk() _sk()
else: else:
if Global.firstrun: welcometext = "Welcome "+playername
welcometext = "Welcome to your first session "+playername
else:
welcometext = "Welcome back "+playername
if housefreedom: if housefreedom:
welcometext = welcometext+"\nValve corporation promotes enviromental pollution" welcometext = welcometext+"\nValve corporation promotes enviromental pollution"
if OS.get_environment("MANGOHUD").contains("1"): if OS.get_environment("MANGOHUD").contains("1"):

View file

@ -3,10 +3,10 @@
<img src=https://git.asgardius.company/asgardius/midori-school/raw/branch/main/icon.png> <img src=https://git.asgardius.company/asgardius/midori-school/raw/branch/main/icon.png>
An Action Role Playing Game inspired by Alundra, Touhou Project, Megaman X, among others. The only Open Source Genshin Killer and the only game at the moment that offers official bittorrent downloads. This game is made using Godot Engine An Action Role Playing Game inspired by Alundra, Touhou Project, Megaman X, among others. The only Open Source Genshin Killer and the only game at the moment that offers official bittorrent downloads. This game is made using Godot Engine
At the moment this game is in alpha development stage. If you want to help send me an email to asgardius@asgardius.company At the moment this game is in beta development stage. If you want to help send me an email to asgardius@asgardius.company
You can find game documentation at https://cloud.asgardius.company/s/3tPKHsMznzMjzEc?path=%2Fgame%20documentation%2FMidori%20in%20the%20Magic%20School You can find game documentation at https://cloud.asgardius.company/s/3tPKHsMznzMjzEc?path=%2Fgame%20documentation%2FMidori%20in%20the%20Magic%20School
A beta build will be released at september 28 2024 (unfunaversary build) and First stable release is scheduled near Half Life 3 release First stable release is scheduled near Half Life 3 release (or maybe an Unfunaversary Day)
Official video channel https://video.asgardius.company/c/asgardius_virtualx Official video channel https://video.asgardius.company/c/asgardius_virtualx
@ -14,13 +14,17 @@ Join community matrix channel at https://matrix.to/#/!gRTRfIdWGKLyCVEusd:asgardi
If you want to help in game development ask at https://matrix.to/#/!bqRfvdEXZATmMsQTSf:asgardius.company?via=asgardius.company If you want to help in game development ask at https://matrix.to/#/!bqRfvdEXZATmMsQTSf:asgardius.company?via=asgardius.company
Download links https://elda.asgardius.company/virtualxrpg-dl/
Bittorrent downloads https://elda.asgardius.company/virtualxrpg-torrent/
# Plot # Plot
Ceres is a dwarf planet at the Asteroid Belt which has intelligent life since much before than Earth. Most Asteroid Belt natives have pointy ears. There are also animal-based humanoids. All humans from the universe lives here since their planet was destroyed by the Alcohol Discs, but very few of them remains. You are Midori Asgardius, a 15 years old elf girl also know as "The Walking Explosive". You are a student at Kaizo Magic School. Your best friends are Diana Asgardius "The Tuna" and Rikka Grub "The Chuunibyou Cat". 10+ playable characters are awaiting for you (optional gacha machine sold separately). Deal Kung Fu Troublemakers, fight against bullet hell themed bosses, solve exciting puzzles, dig inside trashcans, find beautiful Multi Vector Submarines, defeat martians and Discover the truth of this universe from an unique point of view. If you are maniac try our super hardcore mode. Be kind and have a happy unfunaversary this year. If you have any doubt about this game ask to your father and Kaizo's principal: Page Asgardius. Will you be able to find the secret behind Midori's explosive personality? Ceres is a dwarf planet at the Asteroid Belt which has intelligent life since much before than Earth. Most Asteroid Belt natives have pointy ears. There are also animal-based humanoids. All humans from the universe lives here since their planet was destroyed by the Alcohol Discs, but very few of them remains. You are Midori Asgardius, a 15 years old elf girl also know as "The Walking Explosive". You are a student at Kaizo Magic School. Your best friends are Diana Asgardius "The Tuna" and Rikka Grub "The Chuunibyou Cat". 10+ playable characters are awaiting for you (optional gacha machine sold separately). Deal Kung Fu Troublemakers, fight against bullet hell themed bosses, solve exciting puzzles, dig inside trashcans, find beautiful Multi Vector Submarines, defeat martians and Discover the truth of this universe from an unique point of view. If you are maniac try our super hardcore mode. Be kind and have a happy unfunaversary this year. If you have any doubt about this game ask to your father and Kaizo's principal: Page Asgardius. Will you be able to find the secret behind Midori's explosive personality?
# What is a Genshin Killer? # What is a Genshin Killer?
From my point of view, a Genshin Killer is an Anime RPG which include elves among its playable Characters. This term is used since Genshin Impact gained popularity. Midori in the Magic School is a Genshin Killer because most of its playable characters are elves. Genshin Impact has 3 playable characters that look like elves. Honkai Impact 3rd has a playable elf (Elysia). Wuthering Waves also has an elf as a playable character (Yinlin, a tribute to Kimberly Arch from Midori in the Magic School). Tower of Fantasy and Honkai Star Rail aren't Genshin Killers because those games haven't playable characters that look like elves. Somebody else might have another point of view about this term, but won't be used here From my point of view, a Genshin Killer is an Anime RPG which include elves among its playable Characters. This term is used since Genshin Impact gained popularity. Midori in the Magic School is a Genshin Killer because most of its playable characters are elves. Genshin Impact has 3 playable characters that look like elves (+1 upcoming one). Honkai Impact 3rd has a playable elf (Elysia). Wuthering Waves also has an elf as a playable character (Yinlin, a tribute to Kimberly Arch from Midori in the Magic School). Honkai: Star Rail has a playable dragon girl that look like an elf (Lingsha). Tower of Fantasy is not a Genshin Killer because that game hasn't playable characters that look like elves. Somebody else might have another point of view about this term, but won't be used here. This is a Genshin Killer, not a Genshin Like
# Why this game doesn't have builds for Microsoft Windows? Most players are using that OS # Why this game doesn't have builds for Microsoft Windows? Most players are using that OS
@ -34,7 +38,11 @@ I don't have experience creating 3d models, but i have experience drawing on pap
Almost nothing. If you want to know game plot, you can read it separately as an ebook Almost nothing. If you want to know game plot, you can read it separately as an ebook
# About Falcighol Setalth Anticheat System # Why your game looks like a Paul Klee Painting?
Because Midori Asgardius loves fireworks. You know, because this is a Genshin Killer
# About Falcighol Stealth Anticheat System
This game is the first to use Falcighol Stealth Anticheat, an anticheat system based on integrity check which is part of game code. Some player actions will trigger an integrity check, if checksum match, you can play without issues. If checksum mismatch, game will crash. You can use memory scanners to check current game data, but you must avoid changing some value, otherwise checksum will fail and this game will crash. Popful Mail for Sega CD has a similar anticheat system, and cheaters must change unchecked variables to cheat without crashing that game (hp meter is only checked value on that game, but you can set infinite ressurrect elixir instead). A 4 player LAN mode is planned. This anticheat system will be used at Asgardius Online MMO (that game may be ready at Half Life 4 release day) This game is the first to use Falcighol Stealth Anticheat, an anticheat system based on integrity check which is part of game code. Some player actions will trigger an integrity check, if checksum match, you can play without issues. If checksum mismatch, game will crash. You can use memory scanners to check current game data, but you must avoid changing some value, otherwise checksum will fail and this game will crash. Popful Mail for Sega CD has a similar anticheat system, and cheaters must change unchecked variables to cheat without crashing that game (hp meter is only checked value on that game, but you can set infinite ressurrect elixir instead). A 4 player LAN mode is planned. This anticheat system will be used at Asgardius Online MMO (that game may be ready at Half Life 4 release day)

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://5w6pjyubryq3"
path="res://.godot/imported/Honker Railway in forest.jpg-0d0f10c35109547a47ce6eebb3f37ffa.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://backgounds/Honker Railway in forest.jpg"
dest_files=["res://.godot/imported/Honker Railway in forest.jpg-0d0f10c35109547a47ce6eebb3f37ffa.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
backgounds/Kaizo Campus.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 387 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bvl47pildpugx"
path="res://.godot/imported/Kaizo Campus.jpg-1b081f77e3fa25bd61a2955a23098661.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://backgounds/Kaizo Campus.jpg"
dest_files=["res://.godot/imported/Kaizo Campus.jpg-1b081f77e3fa25bd61a2955a23098661.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 291 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://brvfc3s2cj76f"
path="res://.godot/imported/Midori Deep Forest.jpg-bb7eb46fe4b795996430082bb183a4cd.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://backgounds/Midori Deep Forest.jpg"
dest_files=["res://.godot/imported/Midori Deep Forest.jpg-bb7eb46fe4b795996430082bb183a4cd.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 257 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://duaxggciofmts"
path="res://.godot/imported/Pamela Hashimoto clasista.jpg-d802144445e54d7c2ea5e245c74ce0bb.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://backgounds/Pamela Hashimoto clasista.jpg"
dest_files=["res://.godot/imported/Pamela Hashimoto clasista.jpg-d802144445e54d7c2ea5e245c74ce0bb.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 291 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://rurrmoxngtek"
path="res://.godot/imported/Pamela Hashimoto fury.jpg-e236a21d80e44a02bb032e77b70ae9d4.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://backgounds/Pamela Hashimoto fury.jpg"
dest_files=["res://.godot/imported/Pamela Hashimoto fury.jpg-e236a21d80e44a02bb032e77b70ae9d4.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 KiB

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dntabv68wlisu"
path="res://.godot/imported/Trashcan girl in forest.jpg-fbf5b97a382b281362137eba2b94a3bd.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://backgounds/Trashcan girl in forest.jpg"
dest_files=["res://.godot/imported/Trashcan girl in forest.jpg-fbf5b97a382b281362137eba2b94a3bd.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View file

@ -1,11 +1,19 @@
extends Node2D extends Node2D
var presscontinue var presscontinue
var result
var rmusic := AudioStreamPlayer.new() var rmusic := AudioStreamPlayer.new()
var wait var wait
# Called when the node enters the scene tree for the first time. # Called when the node enters the scene tree for the first time.
func _ready(): func _ready():
Global.result[1] = Time.get_ticks_msec() - Global.wait
result = $Label
presscontinue = $Label2 presscontinue = $Label2
var previoustime
var min = float(Global.result[1] / 60000)
var sec = (Global.result[1] / 1000) - (min*60)
var msec = Global.result[1] - (sec*1000) - (min*60000)
result.set_text("Defeated enemies: "+str(Global.result[0])+"\nClear time: "+str(min)+":"+str(sec)+":"+str(msec)+"\nCharged skill uses: 0\nDamage received: "+str(Global.result[3])+"\nEarned experience: 0")
Global.result = [0, 0, 0, 0, 0]
updatehud() updatehud()
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN) Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
add_child(rmusic) add_child(rmusic)
@ -34,7 +42,12 @@ func _title():
if Global.debug: if Global.debug:
get_tree().change_scene_to_file("res://levels/ui/scene.tscn") get_tree().change_scene_to_file("res://levels/ui/scene.tscn")
else: else:
if Global.cplace == [1, 1, 17]:
Global.cplace = [0, 0, 0]
get_tree().change_scene_to_file("res://backgounds/wip.tscn") get_tree().change_scene_to_file("res://backgounds/wip.tscn")
else:
Global.cplace = [0, 0, 0]
get_tree().change_scene_to_file("res://levels/ui/gameplay.tscn")
#get_tree().root.add_child(title) #get_tree().root.add_child(title)
#get_tree().root.remove_child(boot) #get_tree().root.remove_child(boot)
#boot.queue_free() #boot.queue_free()

View file

@ -9,7 +9,7 @@ custom_features=""
export_filter="all_resources" export_filter="all_resources"
include_filter="" include_filter=""
exclude_filter="" exclude_filter=""
export_path="./Midori in the Magic School.x86_64" export_path="./Midori in the Magic School"
encryption_include_filters="" encryption_include_filters=""
encryption_exclude_filters="" encryption_exclude_filters=""
encrypt_pck=false encrypt_pck=false

View file

@ -12,7 +12,7 @@ var bossready = false
var playerx var playerx
var playery var playery
var ccutscene = null var ccutscene = null
const cutscenes = [["res://levels/Cutscenes/opening/aboutkaizo.tscn", "res://levels/Cutscenes/opening/midorihello.tscn", 18, false], ["res://levels/Cutscenes/opening/midorihello.tscn", "res://levels/Cutscenes/opening/fearlessmidori.tscn", 18, false], ["res://levels/Cutscenes/opening/fearlessmidori.tscn", "res://levels/Cutscenes/opening/midoriwaterfall.tscn", 0, false], ["res://levels/Cutscenes/opening/midoriwaterfall.tscn", "res://levels/Cutscenes/opening/midorireading.tscn", 0, false], ["res://levels/Cutscenes/opening/midorireading.tscn", "res://levels/Cutscenes/opening/boomboomtorofi.tscn", 0, false], ["res://levels/Cutscenes/opening/boomboomtorofi.tscn", "res://levels/ui/gameplay.tscn", 0, true], ["res://levels/Cutscenes/unfunaversary/punishment.tscn", "res://levels/Cutscenes/unfunaversary/sadness.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/sadness.tscn", "res://levels/Cutscenes/unfunaversary/r3.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/r3.tscn", "res://levels/Cutscenes/unfunaversary/firstclass.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/firstclass.tscn", "res://backgounds/result.tscn", 5, true]] const cutscenes = [["res://levels/Cutscenes/opening/aboutkaizo.tscn", "res://levels/Cutscenes/opening/midorihello.tscn", 18, false], ["res://levels/Cutscenes/opening/midorihello.tscn", "res://levels/Cutscenes/opening/fearlessmidori.tscn", 18, false], ["res://levels/Cutscenes/opening/fearlessmidori.tscn", "res://levels/Cutscenes/opening/midoriwaterfall.tscn", 0, false], ["res://levels/Cutscenes/opening/midoriwaterfall.tscn", "res://levels/Cutscenes/opening/midorireading.tscn", 0, false], ["res://levels/Cutscenes/opening/midorireading.tscn", "res://levels/Cutscenes/opening/boomboomtorofi.tscn", 0, false], ["res://levels/Cutscenes/opening/boomboomtorofi.tscn", "res://levels/ui/gameplay.tscn", 0, true], ["res://levels/Cutscenes/unfunaversary/punishment.tscn", "res://levels/Cutscenes/unfunaversary/sadness.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/sadness.tscn", "res://levels/Cutscenes/unfunaversary/r3.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/r3.tscn", "res://levels/Cutscenes/unfunaversary/firstclass.tscn", 1, false], ["res://levels/Cutscenes/unfunaversary/firstclass.tscn", "res://backgounds/result.tscn", 5, true], ["res://levels/Cutscenes/Honker Railway/forest.tscn", "res://levels/Cutscenes/Honker Railway/lordlytrashcan.tscn", 19, false], ["res://levels/Cutscenes/Honker Railway/lordlytrashcan.tscn", "res://levels/Cutscenes/Honker Railway/railway.tscn", 19, false], ["res://levels/Cutscenes/Honker Railway/railway.tscn", "res://levels/ui/gameplay.tscn", 19, true], ["res://levels/Cutscenes/Troublemaker/buildings.tscn", "res://levels/Cutscenes/Troublemaker/pamela.tscn", 18, false], ["res://levels/Cutscenes/Troublemaker/pamela.tscn", "res://levels/Cutscenes/Troublemaker/kungfu.tscn", 18, false], ["res://levels/Cutscenes/Troublemaker/kungfu.tscn", "res://levels/ui/gameplay.tscn", 6, true]]
const pcnames = ["Midori Asgardius", "Diana Asgardius", null, "Kimberly Arch", null, null, null, "Pamela Hashimoto", "Lety Hashimoto", "Natasha Dostoyevsky"] const pcnames = ["Midori Asgardius", "Diana Asgardius", null, "Kimberly Arch", null, null, null, "Pamela Hashimoto", "Lety Hashimoto", "Natasha Dostoyevsky"]
const npcnames = ["Lily", null, null, "Kimberly Arch", null, null, null, null, null, "Natasha Dostoyevsky"] const npcnames = ["Lily", null, null, "Kimberly Arch", null, null, null, null, null, "Natasha Dostoyevsky"]
const pcfaces = [["res://sprites/common/midori/face.png"], ["res://sprites/common/tuna/face.png"], [null], ["res://sprites/common/kimberly/face.png"], [null], [null], [null], ["res://sprites/ceres/pamela/face.png"], ["res://sprites/ceres/lety/face.png"], ["res://sprites/common/natasha/face.png"]] const pcfaces = [["res://sprites/common/midori/face.png"], ["res://sprites/common/tuna/face.png"], [null], ["res://sprites/common/kimberly/face.png"], [null], [null], [null], ["res://sprites/ceres/pamela/face.png"], ["res://sprites/ceres/lety/face.png"], ["res://sprites/common/natasha/face.png"]]
@ -26,7 +26,7 @@ var cdialog = []
const places = [[[["res://levels/Ceres/map.tscn", 5, false], [null, null, false]], [["res://levels/Testrooms/bullethell.tscn", 11, true], ["res://levels/Testrooms/lilytest.tscn", 6, false]], [["res://levels/Testrooms/dialogtest.tscn", 19, false], ["res://levels/Testrooms/testspawn.tscn", 2 ,false]]], [null, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/troublemakers.tscn", 6, true]], null, null, null, null, null, null, [null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/honkerrailway.tscn", 19, false]], null, null, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/L20.tscn", 3, true]]]] const places = [[[["res://levels/Ceres/map.tscn", 5, false], [null, null, false]], [["res://levels/Testrooms/bullethell.tscn", 11, true], ["res://levels/Testrooms/lilytest.tscn", 6, false]], [["res://levels/Testrooms/dialogtest.tscn", 19, false], ["res://levels/Testrooms/testspawn.tscn", 2 ,false]]], [null, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/troublemakers.tscn", 6, true]], null, null, null, null, null, null, [null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/honkerrailway.tscn", 19, false]], null, null, [null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, ["res://levels/Ceres/L20.tscn", 3, true]]]]
var cplace = [0,2,1] var cplace = [0,2,1]
var dplace = [null, null, null] var dplace = [null, null, null]
const pbbullets = ["res://sprites/common/bullet/fireball.tscn", "res://sprites/common/bullet/sword.tscn", null, "res://sprites/common/bullet/arrow.tscn", null, null, null, null, null, "res://sprites/common/bullet/snowflake.tscn"] const pbbullets = ["res://sprites/common/bullet/fireball.tscn", "res://sprites/common/bullet/aero.tscn", null, "res://sprites/common/bullet/arrow.tscn", null, null, null, null, null, "res://sprites/common/bullet/snowflake.tscn"]
const pcspecialities = [1, 2, null, 3, null, null, null, null, null, 0] const pcspecialities = [1, 2, null, 3, null, null, null, null, null, 0]
const pchars = [["res://sprites/common/midori/sprite.png"], ["res://sprites/common/tuna/sprite.png"], [null], ["res://sprites/common/kimberly/sprite.png"], [null], [null], [null], [null], [null], ["res://sprites/common/natasha/sprite.png"]] const pchars = [["res://sprites/common/midori/sprite.png"], ["res://sprites/common/tuna/sprite.png"], [null], ["res://sprites/common/kimberly/sprite.png"], [null], [null], [null], [null], [null], ["res://sprites/common/natasha/sprite.png"]]
const npchars = ["res://sprites/common/midori/sprite.png", null, null, null, null, null, null, null, null, "res://sprites/common/natasha/sprite.png"] const npchars = ["res://sprites/common/midori/sprite.png", null, null, null, null, null, null, null, null, "res://sprites/common/natasha/sprite.png"]
@ -38,21 +38,19 @@ var dparty = [[0,0], [1,0], [3,0], [9,0]]
var level = [1,1,1,1,1,1,1,1,1,1] var level = [1,1,1,1,1,1,1,1,1,1]
var dlevel = [1,1,1,1,1,1,1,1,1,1] var dlevel = [1,1,1,1,1,1,1,1,1,1]
var cpchar = 0 var cpchar = 0
var result = [0, 0, 0, 0, 0]
var dificulty = 0 var dificulty = 0
var dcpchar = 0 var dcpchar = 0
var mangohud = false var mangohud = false
var cspawnarea = [null, null] var cspawnarea = [null, null]
var owlocation = [[null, null], [null, null]] var owlocation = [[null, null], [null, null]]
var hiscoresfile = "user://hiscores.save" const musictracks = ["res://music/midorinoyume.ogg", "res://music/seahorse.ogg", "res://music/chinesegoat.ogg", "res://music/doyoufeelold.ogg", "res://music/doyiuneedahealer.ogg", "res://music/adayatceres.ogg", "res://music/twintroublemakers.ogg", "res://music/easyquiz.ogg", "res://music/neowave.ogg", "res://music/multivectorsubmarines.ogg", "res://music/halfgeniegirls.ogg", "res://music/rusianmaverickfairy.ogg", "res://music/blacksmithofdestruction.ogg", "res://music/shininglikefireworks.ogg", "res://music/sadtrashcan.ogg", "res://music/akikoletter.ogg", "res://music/asadcat.ogg", "res://music/lilydesire.ogg", "res://music/scholartrip.ogg", "res://music/quantumice.ogg", "res://music/unreeeal.ogg", "res://music/alsa.ogg", "res://music/silverblue.ogg"]
var gamelevel
var levelmax
var firstrun
const musictracks = ["res://music/midorinoakuma.wav", "res://music/seahorse.wav", "res://music/chinesegoat.wav", "res://music/doyoufeelold.wav", "res://music/doyiuneedahealer.wav", "res://music/adayatceres.wav", "res://music/twintroublemakers.wav", "res://music/easyquiz.wav", "res://music/neowave.wav", "res://music/multivectorsubmarines.wav", "res://music/halfgeniegirls.wav", "res://music/rusianmaverickfairy.wav", "res://music/blacksmithofdestruction.wav", "res://music/shininglikefireworks.wav", "res://music/sadtrashcan.wav", "res://music/akikoletter.wav", "res://music/asadcat.wav", "res://music/lilydesire.wav", "res://music/scholartrip.wav", "res://music/quantumice.wav", "res://music/unreeeal.wav", "res://music/alsa.wav", "res://music/silverblue.wav"]
const sfxtracks = ["res://sfx/braindamage.wav", "res://sfx/gaugefill.wav", "res://sfx/boomboombakudan.wav"] const sfxtracks = ["res://sfx/braindamage.wav", "res://sfx/gaugefill.wav", "res://sfx/boomboombakudan.wav"]
var debug = false var debug = false
const release = "R0.1.11-alpha" const release = "R0.2.0-beta"
var sk = false var sk = false
var gamepad = 0 var gamepad = 0
var quest = [0, 0, 0, 0, 0, 0]
# Called when the node enters the scene tree for the first time. # Called when the node enters the scene tree for the first time.
func _ready(): func _ready():
pass # Replace with function body. pass # Replace with function body.

View file

@ -10,6 +10,8 @@ func _ready():
Global.cdialog = [[tr("DIALOG_CERES_L20_0"), true, 0, 0], [tr("DIALOG_CERES_L20_1"), false, 3], [tr("DIALOG_CERES_L20_2"), true, 0, 0]] Global.cdialog = [[tr("DIALOG_CERES_L20_0"), true, 0, 0], [tr("DIALOG_CERES_L20_1"), false, 3], [tr("DIALOG_CERES_L20_2"), true, 0, 0]]
Global.live = 0 Global.live = 0
get_tree().root.add_child.call(talk) get_tree().root.add_child.call(talk)
if !Global.debug:
Global.quest[0] = 1
# Called every frame. 'delta' is the elapsed time since the previous frame. # Called every frame. 'delta' is the elapsed time since the previous frame.
@ -30,6 +32,8 @@ func _input(event):
Global.cdialog = [] Global.cdialog = []
func _winner(): func _winner():
Global.quest[0] = 3
Global.quest[1] = 1
Global.cdialog = [[tr("DIALOG_CERES_L20_3"), true, 0, 0], [tr("DIALOG_CERES_L20_4"), false, 3], [tr("DIALOG_CERES_L20_5"), true, 0, 0]] Global.cdialog = [[tr("DIALOG_CERES_L20_3"), true, 0, 0], [tr("DIALOG_CERES_L20_4"), false, 3], [tr("DIALOG_CERES_L20_5"), true, 0, 0]]
Global.live = 3 Global.live = 3
Global.ccutscene = 6 Global.ccutscene = 6

View file

@ -6,6 +6,8 @@ func _ready():
if !Global.debug: if !Global.debug:
_statrebase() _statrebase()
Global.live = 1 Global.live = 1
Global.quest[1] = 3
Global.quest[2] = 1
#pass # Replace with function body. #pass # Replace with function body.

View file

@ -11,6 +11,10 @@ func _ready():
if !Global.debug: if !Global.debug:
_statrebase() _statrebase()
Global.live = 1 Global.live = 1
if Global.quest[1] == 0:
hkr.queue_free()
if Global.quest[2] == 0:
troublemaker.queue_free()
#pass # Replace with function body. #pass # Replace with function body.
@ -20,11 +24,14 @@ func _process(delta):
func _input(event): func _input(event):
if Input.is_action_just_pressed("ui_accept") && travel != null: if Input.is_action_just_pressed("ui_accept") && travel != null:
if Global.ccutscene == null:
if Global.debug: if Global.debug:
Global.dplace = travel Global.dplace = travel
else: else:
Global.cplace = travel Global.cplace = travel
Global.live = 5 Global.live = 5
else:
Global.live = 8
func _statrebase(): func _statrebase():
for i in 4: for i in 4:
@ -34,6 +41,7 @@ func _statrebase():
func _on_railwaygirl_body_entered(body: Node2D) -> void: func _on_railwaygirl_body_entered(body: Node2D) -> void:
Global.ccutscene = 10
travel = [1, 8, 11] travel = [1, 8, 11]
@ -42,6 +50,7 @@ func _on_railwaygirl_body_exited(body: Node2D) -> void:
func _on_pamela_body_entered(body: Node2D) -> void: func _on_pamela_body_entered(body: Node2D) -> void:
Global.ccutscene = 13
travel = [1, 1, 17] travel = [1, 1, 17]

View file

@ -27,6 +27,8 @@ func _input(event):
Global.cdialog = [] Global.cdialog = []
func _winner(): func _winner():
Global.result[0] = 1
Global.quest[2] = 3
Global.cdialog = [[tr("DIALOG_TROUBLEMAKER_3"), true, 0, 0], [tr("DIALOG_TROUBLEMAKER_4"), true, 7, 0], [tr("DIALOG_TROUBLEMAKER_5"), true, 0, 0]] Global.cdialog = [[tr("DIALOG_TROUBLEMAKER_3"), true, 0, 0], [tr("DIALOG_TROUBLEMAKER_4"), true, 7, 0], [tr("DIALOG_TROUBLEMAKER_5"), true, 0, 0]]
Global.live = 3 Global.live = 3
#Global.ccutscene = 6 #Global.ccutscene = 6

View file

@ -0,0 +1,22 @@
[gd_scene load_steps=3 format=3 uid="uid://cqevagcsx77jk"]
[ext_resource type="Texture2D" uid="uid://brvfc3s2cj76f" path="res://backgounds/Midori Deep Forest.jpg" id="1_5c5di"]
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="2_a6w8j"]
[node name="Forest" type="Node2D"]
[node name="TextureRect" type="TextureRect" parent="."]
offset_right = 1278.0
offset_bottom = 600.0
texture = ExtResource("1_5c5di")
[node name="Text" type="Label" parent="."]
offset_left = 52.0
offset_top = 606.0
offset_right = 1224.0
offset_bottom = 714.0
theme_override_font_sizes/font_size = 40
text = "CUTSCENE_2_0"
horizontal_alignment = 1
[node name="Bottomhud" parent="." instance=ExtResource("2_a6w8j")]

View file

@ -0,0 +1,22 @@
[gd_scene load_steps=3 format=3 uid="uid://bchg066ikmnxc"]
[ext_resource type="Texture2D" uid="uid://dntabv68wlisu" path="res://backgounds/Trashcan girl in forest.jpg" id="1_kkvvb"]
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="2_1o4m2"]
[node name="Lordlytrashcan" type="Node2D"]
[node name="TextureRect" type="TextureRect" parent="."]
offset_right = 1278.0
offset_bottom = 600.0
texture = ExtResource("1_kkvvb")
[node name="Text" type="Label" parent="."]
offset_left = 52.0
offset_top = 606.0
offset_right = 1224.0
offset_bottom = 714.0
theme_override_font_sizes/font_size = 40
text = "CUTSCENE_2_1"
horizontal_alignment = 1
[node name="Bottomhud" parent="." instance=ExtResource("2_1o4m2")]

View file

@ -0,0 +1,12 @@
extends Node2D
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
if !Global.debug:
Global.cplace = [1, 8, 11]
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass

View file

@ -0,0 +1,24 @@
[gd_scene load_steps=4 format=3 uid="uid://c0f8yoj6q7l6w"]
[ext_resource type="Script" path="res://levels/Cutscenes/Honker Railway/railway.gd" id="1_0hhdb"]
[ext_resource type="Texture2D" uid="uid://5w6pjyubryq3" path="res://backgounds/Honker Railway in forest.jpg" id="1_10hv6"]
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="2_4m46s"]
[node name="Railway" type="Node2D"]
script = ExtResource("1_0hhdb")
[node name="TextureRect" type="TextureRect" parent="."]
offset_right = 1278.0
offset_bottom = 600.0
texture = ExtResource("1_10hv6")
[node name="Text" type="Label" parent="."]
offset_left = 52.0
offset_top = 606.0
offset_right = 1224.0
offset_bottom = 714.0
theme_override_font_sizes/font_size = 40
text = "CUTSCENE_2_2"
horizontal_alignment = 1
[node name="Bottomhud" parent="." instance=ExtResource("2_4m46s")]

View file

@ -0,0 +1,22 @@
[gd_scene load_steps=3 format=3 uid="uid://sjmpoah3xpkv"]
[ext_resource type="Texture2D" uid="uid://bvl47pildpugx" path="res://backgounds/Kaizo Campus.jpg" id="1_md8cp"]
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="2_jjk5t"]
[node name="Buildings" type="Node2D"]
[node name="TextureRect" type="TextureRect" parent="."]
offset_right = 1278.0
offset_bottom = 600.0
texture = ExtResource("1_md8cp")
[node name="Text" type="Label" parent="."]
offset_left = 52.0
offset_top = 606.0
offset_right = 1224.0
offset_bottom = 714.0
theme_override_font_sizes/font_size = 40
text = "CUTSCENE_3_0"
horizontal_alignment = 1
[node name="Bottomhud" parent="." instance=ExtResource("2_jjk5t")]

View file

@ -0,0 +1,12 @@
extends Node2D
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
if !Global.debug:
Global.cplace = [1, 1, 17]
# Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void:
pass

View file

@ -0,0 +1,25 @@
[gd_scene load_steps=4 format=3 uid="uid://bgndmlvrvfetr"]
[ext_resource type="Script" path="res://levels/Cutscenes/Troublemaker/kungfu.gd" id="1_dab6h"]
[ext_resource type="Texture2D" uid="uid://rurrmoxngtek" path="res://backgounds/Pamela Hashimoto fury.jpg" id="1_rcce4"]
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="2_4y4yi"]
[node name="Kungfu" type="Node2D"]
script = ExtResource("1_dab6h")
[node name="TextureRect" type="TextureRect" parent="."]
offset_right = 1278.0
offset_bottom = 600.0
texture = ExtResource("1_rcce4")
[node name="Text" type="Label" parent="."]
offset_left = 52.0
offset_top = 606.0
offset_right = 1224.0
offset_bottom = 714.0
theme_override_colors/font_color = Color(0, 0, 0, 1)
theme_override_font_sizes/font_size = 40
text = "CUTSCENE_3_2"
horizontal_alignment = 1
[node name="Bottomhud" parent="." instance=ExtResource("2_4y4yi")]

View file

@ -0,0 +1,22 @@
[gd_scene load_steps=3 format=3 uid="uid://hn7pvoe3ygux"]
[ext_resource type="Texture2D" uid="uid://duaxggciofmts" path="res://backgounds/Pamela Hashimoto clasista.jpg" id="1_e1eqv"]
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="2_kv77b"]
[node name="Pamela" type="Node2D"]
[node name="TextureRect" type="TextureRect" parent="."]
offset_right = 1278.0
offset_bottom = 600.0
texture = ExtResource("1_e1eqv")
[node name="Text" type="Label" parent="."]
offset_left = 52.0
offset_top = 606.0
offset_right = 1224.0
offset_bottom = 714.0
theme_override_font_sizes/font_size = 40
text = "CUTSCENE_3_1"
horizontal_alignment = 1
[node name="Bottomhud" parent="." instance=ExtResource("2_kv77b")]

View file

@ -59,7 +59,8 @@ func _on_wip_pressed():
func _on_results_pressed(): func _on_results_pressed():
#get_tree().change_scene_to_file("res://backgounds/result.tscn") #get_tree().change_scene_to_file("res://backgounds/result.tscn")
pass Global.ccutscene = 13
get_tree().change_scene_to_file("res://levels/ui/Cutscenes.tscn")
func _on_disclaimer_pressed(): func _on_disclaimer_pressed():
@ -76,4 +77,5 @@ func _on_testrooms_pressed():
func _on_ceres_pressed(): func _on_ceres_pressed():
#get_tree().change_scene_to_file("res://levels/ui/ceres.tscn") #get_tree().change_scene_to_file("res://levels/ui/ceres.tscn")
pass Global.ccutscene = 10
get_tree().change_scene_to_file("res://levels/ui/Cutscenes.tscn")

View file

@ -67,13 +67,13 @@ text = "CUTSCENE_1_NAME"
layout_mode = 2 layout_mode = 2
theme_override_font_sizes/font_size = 32 theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs") theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "BUTTON_PLACEHOLDER" text = "Honker Railway"
[node name="Results" type="Button" parent="VBoxContainer"] [node name="Results" type="Button" parent="VBoxContainer"]
layout_mode = 2 layout_mode = 2
theme_override_font_sizes/font_size = 32 theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs") theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "BUTTON_PLACEHOLDER" text = "TWIN_TROUBLEMAKERS"
[node name="Credits" type="Button" parent="VBoxContainer"] [node name="Credits" type="Button" parent="VBoxContainer"]
layout_mode = 2 layout_mode = 2

View file

@ -53,7 +53,7 @@ func _on_sound_test_pressed():
func _on_back_pressed(): func _on_back_pressed():
Global.debug = false Global.debug = false
get_tree().change_scene_to_file("res://levels/ui/tmenu.tscn") get_tree().change_scene_to_file("res://levels/ui/settings.tscn")
func _on_gamepad_test_pressed(): func _on_gamepad_test_pressed():

100
levels/ui/erase.gd Normal file
View file

@ -0,0 +1,100 @@
extends Control
const gamepadtest = preload("res://gamepad.gd")
const savegame = preload("res://save.gd")
func _ready():
#Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
$VBoxContainer/Ram.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):
gamepadtest.new(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/savefile.tscn")
func _on_ram_pressed() -> void:
Global.dificulty = 0
Global.quest = [0, 0, 0, 0, 0, 0]
Global.cplace = [1, 11, 19]
Global.live = 0
Global.cpchar = 0
Global.party = [[0,0], [null,null], [null,null], [null,null]]
Global.ccutscene = 0
_on_back_pressed()
func _on_slot_1_pressed() -> void:
savegame.new(1, true)
_on_back_pressed()
func _on_slot_2_pressed() -> void:
savegame.new(2, true)
_on_back_pressed()
func _on_slot_3_pressed() -> void:
savegame.new(3, true)
_on_back_pressed()
func _on_slot_4_pressed() -> void:
savegame.new(4, true)
_on_back_pressed()
func _on_slot_5_pressed() -> void:
savegame.new(5, true)
_on_back_pressed()
func _on_slot_6_pressed() -> void:
savegame.new(6, true)
_on_back_pressed()
func _on_slot_7_pressed() -> void:
savegame.new(7, true)
_on_back_pressed()
func _on_slot_8_pressed() -> void:
savegame.new(8, true)
_on_back_pressed()

123
levels/ui/erase.tscn Normal file
View file

@ -0,0 +1,123 @@
[gd_scene load_steps=6 format=3 uid="uid://dbdi41u4i0yy4"]
[ext_resource type="Script" path="res://levels/ui/erase.gd" id="1_csqu8"]
[ext_resource type="Texture2D" uid="uid://bxa27c7gnivwx" path="res://backgounds/night-sky-at-ceres.jpg" id="2_6n1ip"]
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="3_72nl0"]
[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="Erase" 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_csqu8")
[node name="Night Sky" type="TextureRect" parent="."]
layout_mode = 0
offset_right = 1280.0
offset_bottom = 720.0
texture = ExtResource("2_6n1ip")
[node name="Game name" type="Label" parent="."]
layout_mode = 0
offset_left = 35.0
offset_top = 3.0
offset_right = 1235.0
offset_bottom = 73.0
theme_override_font_sizes/font_size = 40
text = "BUTTON_ERASE"
horizontal_alignment = 1
[node name="Bottomhud" parent="." instance=ExtResource("3_72nl0")]
layout_mode = 1
[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 = -139.0
offset_top = -395.0
offset_right = 139.0
grow_horizontal = 2
grow_vertical = 0
[node name="Ram" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "Game Data in RAM"
[node name="Slot1" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "Slot 1"
[node name="Slot2" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "Slot 2"
[node name="Slot3" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "Slot 3"
[node name="Slot4" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "Slot 4"
[node name="Slot5" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "Slot 5"
[node name="Slot6" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "Slot 6"
[node name="Slot7" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "Slot 7"
[node name="Slot8" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "Slot 8"
[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 = "BUTTON_RETURN"
[connection signal="pressed" from="VBoxContainer/Ram" to="." method="_on_ram_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot1" to="." method="_on_slot_1_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot2" to="." method="_on_slot_2_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot3" to="." method="_on_slot_3_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot4" to="." method="_on_slot_4_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot5" to="." method="_on_slot_5_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot6" to="." method="_on_slot_6_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot7" to="." method="_on_slot_7_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot8" to="." method="_on_slot_8_pressed"]
[connection signal="pressed" from="VBoxContainer/Back" to="." method="_on_back_pressed"]

View file

@ -46,6 +46,7 @@ func _ready():
bgsound.mix_target = 1 bgsound.mix_target = 1
sfx1.mix_target = 1 sfx1.mix_target = 1
sfx1.bus = &"SFX1" sfx1.bus = &"SFX1"
Global.wait = Time.get_ticks_msec()
if !Global.isboss: if !Global.isboss:
bgsound.play(0) bgsound.play(0)
@ -141,19 +142,20 @@ func _exit():
#get_tree().root.remove_child(player) #get_tree().root.remove_child(player)
get_tree().root.remove_child(level) get_tree().root.remove_child(level)
if Global.live == 7: if Global.live == 7:
if !Global.debug:
Global.cplace = [0, 0, 0]
get_tree().change_scene_to_file("res://backgounds/result.tscn") get_tree().change_scene_to_file("res://backgounds/result.tscn")
elif Global.live == 8: elif Global.live == 8:
get_tree().change_scene_to_file("res://levels/ui/Cutscenes.tscn") get_tree().change_scene_to_file("res://levels/ui/Cutscenes.tscn")
elif Global.live == 5: elif Global.live == 5:
Global.result = [0, 0, 0, 0, 0]
_statrebase() _statrebase()
get_tree().change_scene_to_file("res://backgounds/warp.tscn") get_tree().change_scene_to_file("res://backgounds/warp.tscn")
elif Global.live == 2: elif Global.live == 2:
Global.result = [0, 0, 0, 0, 0]
_statrebase() _statrebase()
get_tree().root.remove_child(thud) get_tree().root.remove_child(thud)
get_tree().change_scene_to_file("res://backgounds/gameover.tscn") get_tree().change_scene_to_file("res://backgounds/gameover.tscn")
elif Global.live == 6: elif Global.live == 6:
Global.result = [0, 0, 0, 0, 0]
if Global.debug: if Global.debug:
Global.live = 0 Global.live = 0
get_tree().change_scene_to_file("res://levels/ui/scene.tscn") get_tree().change_scene_to_file("res://levels/ui/scene.tscn")

89
levels/ui/load.gd Normal file
View file

@ -0,0 +1,89 @@
extends Control
const gamepadtest = preload("res://gamepad.gd")
const loadgame = preload("res://load.gd")
func _ready():
#Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
$VBoxContainer/Slot1.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):
gamepadtest.new(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/savefile.tscn")
func _on_slot_1_pressed() -> void:
loadgame.new(1)
_on_back_pressed()
func _on_slot_2_pressed() -> void:
loadgame.new(2)
_on_back_pressed()
func _on_slot_3_pressed() -> void:
loadgame.new(3)
_on_back_pressed()
func _on_slot_4_pressed() -> void:
loadgame.new(4)
_on_back_pressed()
func _on_slot_5_pressed() -> void:
loadgame.new(5)
_on_back_pressed()
func _on_slot_6_pressed() -> void:
loadgame.new(6)
_on_back_pressed()
func _on_slot_7_pressed() -> void:
loadgame.new(7)
_on_back_pressed()
func _on_slot_8_pressed() -> void:
loadgame.new(8)
_on_back_pressed()

116
levels/ui/load.tscn Normal file
View file

@ -0,0 +1,116 @@
[gd_scene load_steps=6 format=3 uid="uid://d0snuhuxkpvba"]
[ext_resource type="Script" path="res://levels/ui/load.gd" id="1_jemxw"]
[ext_resource type="Texture2D" uid="uid://bxa27c7gnivwx" path="res://backgounds/night-sky-at-ceres.jpg" id="2_y0r7s"]
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="3_ldlpj"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_anfrg"]
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="Load" 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_jemxw")
[node name="Night Sky" type="TextureRect" parent="."]
layout_mode = 0
offset_right = 1280.0
offset_bottom = 720.0
texture = ExtResource("2_y0r7s")
[node name="Game name" type="Label" parent="."]
layout_mode = 0
offset_left = 35.0
offset_top = 3.0
offset_right = 1235.0
offset_bottom = 73.0
theme_override_font_sizes/font_size = 40
text = "BUTTON_LOAD"
horizontal_alignment = 1
[node name="Bottomhud" parent="." instance=ExtResource("3_ldlpj")]
layout_mode = 1
[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 = -139.0
offset_top = -395.0
offset_right = 139.0
grow_horizontal = 2
grow_vertical = 0
[node name="Slot1" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_anfrg")
text = "Slot 1"
[node name="Slot2" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_anfrg")
text = "Slot 2"
[node name="Slot3" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_anfrg")
text = "Slot 3"
[node name="Slot4" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_anfrg")
text = "Slot 4"
[node name="Slot5" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_anfrg")
text = "Slot 5"
[node name="Slot6" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_anfrg")
text = "Slot 6"
[node name="Slot7" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_anfrg")
text = "Slot 7"
[node name="Slot8" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_anfrg")
text = "Slot 8"
[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 = "BUTTON_RETURN"
[connection signal="pressed" from="VBoxContainer/Slot1" to="." method="_on_slot_1_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot2" to="." method="_on_slot_2_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot3" to="." method="_on_slot_3_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot4" to="." method="_on_slot_4_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot5" to="." method="_on_slot_5_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot6" to="." method="_on_slot_6_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot7" to="." method="_on_slot_7_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot8" to="." method="_on_slot_8_pressed"]
[connection signal="pressed" from="VBoxContainer/Back" to="." method="_on_back_pressed"]

View file

@ -8,22 +8,6 @@ func _ready():
func _process(delta): func _process(delta):
pass 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/wip.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): func _input(event):
gamepadtest.new(event) gamepadtest.new(event)
if Input.is_action_just_pressed("ui_cancel"): if Input.is_action_just_pressed("ui_cancel"):
@ -50,11 +34,7 @@ func _on_exit_pressed():
func _on_noob_pressed(): func _on_noob_pressed():
_statrebase() _statrebase()
Global.dificulty = 1 Global.dificulty = 1
Global.cplace = [1, 11, 19] _reset()
Global.live = 1
Global.cpchar = 0
Global.party = [[0,0], [null,null], [null,null], [null,null]]
Global.ccutscene = 0
get_tree().change_scene_to_file("res://levels/ui/Cutscenes.tscn") get_tree().change_scene_to_file("res://levels/ui/Cutscenes.tscn")
#pass # Replace with function body. #pass # Replace with function body.
@ -62,11 +42,7 @@ func _on_noob_pressed():
func _on_thisfirst_pressed(): func _on_thisfirst_pressed():
_statrebase() _statrebase()
Global.dificulty = 2 Global.dificulty = 2
Global.cplace = [1, 11, 19] _reset()
Global.live = 1
Global.cpchar = 0
Global.party = [[0,0], [null,null], [null,null], [null,null]]
Global.ccutscene = 0
get_tree().change_scene_to_file("res://levels/ui/Cutscenes.tscn") get_tree().change_scene_to_file("res://levels/ui/Cutscenes.tscn")
#pass # Replace with function body. #pass # Replace with function body.
@ -85,3 +61,11 @@ func _statrebase():
if Global.party[i][0] != null: if Global.party[i][0] != null:
for j in 7: for j in 7:
Global.cstats[Global.party[i][0]][j] = Global.basestats[Global.party[i][0]][j] * Global.level[Global.dparty[i][0]] Global.cstats[Global.party[i][0]][j] = Global.basestats[Global.party[i][0]][j] * Global.level[Global.dparty[i][0]]
func _reset():
Global.quest = [0, 0, 0, 0, 0, 0]
Global.cplace = [1, 11, 19]
Global.live = 1
Global.cpchar = 0
Global.party = [[0,0], [null,null], [null,null], [null,null]]
Global.ccutscene = 0

89
levels/ui/save.gd Normal file
View file

@ -0,0 +1,89 @@
extends Control
const gamepadtest = preload("res://gamepad.gd")
const savegame = preload("res://save.gd")
func _ready():
#Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
$VBoxContainer/Slot1.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):
gamepadtest.new(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/savefile.tscn")
func _on_slot_1_pressed() -> void:
savegame.new(1, false)
_on_back_pressed()
func _on_slot_2_pressed() -> void:
savegame.new(2, false)
_on_back_pressed()
func _on_slot_3_pressed() -> void:
savegame.new(3, false)
_on_back_pressed()
func _on_slot_4_pressed() -> void:
savegame.new(4, false)
_on_back_pressed()
func _on_slot_5_pressed() -> void:
savegame.new(5, false)
_on_back_pressed()
func _on_slot_6_pressed() -> void:
savegame.new(6, false)
_on_back_pressed()
func _on_slot_7_pressed() -> void:
savegame.new(7, false)
_on_back_pressed()
func _on_slot_8_pressed() -> void:
savegame.new(8, false)
_on_back_pressed()

116
levels/ui/save.tscn Normal file
View file

@ -0,0 +1,116 @@
[gd_scene load_steps=6 format=3 uid="uid://bbohrt1bhjiac"]
[ext_resource type="Script" path="res://levels/ui/save.gd" id="1_qm2cb"]
[ext_resource type="Texture2D" uid="uid://bxa27c7gnivwx" path="res://backgounds/night-sky-at-ceres.jpg" id="2_r4a1h"]
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="3_waqiq"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_lcmit"]
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="Save" 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_qm2cb")
[node name="Night Sky" type="TextureRect" parent="."]
layout_mode = 0
offset_right = 1280.0
offset_bottom = 720.0
texture = ExtResource("2_r4a1h")
[node name="Game name" type="Label" parent="."]
layout_mode = 0
offset_left = 35.0
offset_top = 3.0
offset_right = 1235.0
offset_bottom = 73.0
theme_override_font_sizes/font_size = 40
text = "BUTTON_SAVE"
horizontal_alignment = 1
[node name="Bottomhud" parent="." instance=ExtResource("3_waqiq")]
layout_mode = 1
[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 = -139.0
offset_top = -395.0
offset_right = 139.0
grow_horizontal = 2
grow_vertical = 0
[node name="Slot1" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_lcmit")
text = "Slot 1"
[node name="Slot2" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_lcmit")
text = "Slot 2"
[node name="Slot3" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_lcmit")
text = "Slot 3"
[node name="Slot4" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_lcmit")
text = "Slot 4"
[node name="Slot5" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_lcmit")
text = "Slot 5"
[node name="Slot6" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_lcmit")
text = "Slot 6"
[node name="Slot7" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_lcmit")
text = "Slot 7"
[node name="Slot8" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_lcmit")
text = "Slot 8"
[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 = "BUTTON_RETURN"
[connection signal="pressed" from="VBoxContainer/Slot1" to="." method="_on_slot_1_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot2" to="." method="_on_slot_2_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot3" to="." method="_on_slot_3_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot4" to="." method="_on_slot_4_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot5" to="." method="_on_slot_5_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot6" to="." method="_on_slot_6_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot7" to="." method="_on_slot_7_pressed"]
[connection signal="pressed" from="VBoxContainer/Slot8" to="." method="_on_slot_8_pressed"]
[connection signal="pressed" from="VBoxContainer/Back" to="." method="_on_back_pressed"]

60
levels/ui/savefile.gd Normal file
View file

@ -0,0 +1,60 @@
extends Control
const gamepadtest = preload("res://gamepad.gd")
var startbutton
func _ready():
startbutton = $VBoxContainer/Start
#Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
$VBoxContainer/Load.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/wip.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):
gamepadtest.new(event)
if Input.is_action_just_pressed("ui_cancel"):
_on_back_pressed()
# 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_load_pressed() -> void:
get_tree().change_scene_to_file("res://levels/ui/load.tscn")
func _on_save_pressed() -> void:
get_tree().change_scene_to_file("res://levels/ui/save.tscn")
func _on_erase_pressed() -> void:
get_tree().change_scene_to_file("res://levels/ui/erase.tscn")
func _on_back_pressed() -> void:
get_tree().change_scene_to_file("res://levels/ui/settings.tscn")

84
levels/ui/savefile.tscn Normal file
View file

@ -0,0 +1,84 @@
[gd_scene load_steps=7 format=3 uid="uid://dxegyw736dnig"]
[ext_resource type="Script" path="res://levels/ui/savefile.gd" id="1_6r0p0"]
[ext_resource type="Texture2D" uid="uid://bxa27c7gnivwx" path="res://backgounds/night-sky-at-ceres.jpg" id="2_nirgk"]
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="3_bpp6x"]
[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="Savefile" 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_6r0p0")
[node name="Night Sky" type="TextureRect" parent="."]
layout_mode = 0
offset_right = 1280.0
offset_bottom = 720.0
texture = ExtResource("2_nirgk")
[node name="Game name" type="Label" parent="."]
layout_mode = 0
offset_left = 31.0
offset_top = 77.0
offset_right = 1237.0
offset_bottom = 207.0
theme_override_font_sizes/font_size = 95
text = "BUTTON_PERSISTENCE"
horizontal_alignment = 1
[node name="Bottomhud" parent="." instance=ExtResource("3_bpp6x")]
layout_mode = 1
[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 = -322.0
offset_top = -362.0
offset_right = 322.0
grow_horizontal = 2
grow_vertical = 0
[node name="Load" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 80
theme_override_styles/focus = SubResource("StyleBoxFlat_821nm")
text = "BUTTON_LOAD"
[node name="Save" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 80
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "BUTTON_SAVE"
[node name="Erase" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 80
theme_override_styles/focus = SubResource("StyleBoxFlat_r2qrn")
text = "BUTTON_ERASE"
[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 = "BUTTON_RETURN"
[connection signal="pressed" from="VBoxContainer/Load" to="." method="_on_load_pressed"]
[connection signal="pressed" from="VBoxContainer/Save" to="." method="_on_save_pressed"]
[connection signal="pressed" from="VBoxContainer/Erase" to="." method="_on_erase_pressed"]
[connection signal="pressed" from="VBoxContainer/Back" to="." method="_on_back_pressed"]

91
levels/ui/settings.gd Normal file
View file

@ -0,0 +1,91 @@
extends Control
const gamepadtest = preload("res://gamepad.gd")
var vsync
var fullscreen
var xw
var gldrv
func _ready():
vsync = $VBoxContainer/L20
fullscreen = $VBoxContainer/Lilytest
xw = $VBoxContainer/Dialogtest
gldrv = $VBoxContainer/Bullethell
#Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
$VBoxContainer/L20.grab_focus()
if DisplayServer.window_get_vsync_mode() == 1:
vsync.set_text(tr("SETTING_VSYNCT"))
else:
vsync.set_text(tr("SETTING_VSYNCF"))
if DisplayServer.window_get_mode() == 3:
fullscreen.set_text(tr("SETTING_FULLSCREEN"))
else:
fullscreen.set_text(tr("SETTING_WINDOWED"))
# 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):
gamepadtest.new(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_l_20_pressed():
if DisplayServer.window_get_vsync_mode() == 1:
DisplayServer.window_set_vsync_mode(0)
vsync.set_text(tr("SETTING_VSYNCF"))
else:
DisplayServer.window_set_vsync_mode(1)
vsync.set_text(tr("SETTING_VSYNCT"))
func _on_lilytest_pressed() -> void:
if DisplayServer.window_get_mode() == 3:
DisplayServer.window_set_mode(0)
fullscreen.set_text(tr("SETTING_WINDOWED"))
else:
DisplayServer.window_set_mode(3)
fullscreen.set_text(tr("SETTING_FULLSCREEN"))
func _on_dialogtest_pressed() -> void:
get_tree().change_scene_to_file("res://levels/ui/debug.tscn")
func _on_bullethell_pressed() -> void:
get_tree().change_scene_to_file("res://levels/ui/savefile.tscn")

100
levels/ui/settings.tscn Normal file
View file

@ -0,0 +1,100 @@
[gd_scene load_steps=6 format=3 uid="uid://c30jrya5fjras"]
[ext_resource type="Script" path="res://levels/ui/settings.gd" id="1_7pd0a"]
[ext_resource type="Texture2D" uid="uid://bxa27c7gnivwx" path="res://backgounds/night-sky-at-ceres.jpg" id="2_pw0o8"]
[ext_resource type="PackedScene" uid="uid://d31udhuuwrajn" path="res://levels/bottomhud.tscn" id="3_4donf"]
[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="Settings" 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_7pd0a")
[node name="Night Sky" type="TextureRect" parent="."]
layout_mode = 0
offset_right = 1280.0
offset_bottom = 720.0
texture = ExtResource("2_pw0o8")
[node name="Game name" type="Label" parent="."]
layout_mode = 0
offset_left = 35.0
offset_top = 3.0
offset_right = 1235.0
offset_bottom = 73.0
theme_override_font_sizes/font_size = 40
text = "BUTTON_SETTINGS"
horizontal_alignment = 1
[node name="Bottomhud" parent="." instance=ExtResource("3_4donf")]
layout_mode = 1
[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 = -139.0
offset_top = -395.0
offset_right = 139.0
grow_horizontal = 2
grow_vertical = 0
[node name="L20" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "CERES_L20_DESC"
[node name="Lilytest" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "MENU_MAP"
[node name="Dialogtest" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "BUTTON_DEBUG"
[node name="Bullethell" type="Button" parent="VBoxContainer"]
layout_mode = 2
theme_override_font_sizes/font_size = 32
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "BUTTON_PERSISTENCE"
[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 = "BUTTON_PLACEHOLDER"
[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 = "BUTTON_PLACEHOLDER"
[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 = "BUTTON_RETURN"
[connection signal="pressed" from="VBoxContainer/L20" to="." method="_on_l_20_pressed"]
[connection signal="pressed" from="VBoxContainer/Lilytest" to="." method="_on_lilytest_pressed"]
[connection signal="pressed" from="VBoxContainer/Dialogtest" to="." method="_on_dialogtest_pressed"]
[connection signal="pressed" from="VBoxContainer/Bullethell" to="." method="_on_bullethell_pressed"]
[connection signal="pressed" from="VBoxContainer/Back" to="." method="_on_back_pressed"]

View file

@ -34,7 +34,7 @@ func _input(event):
func _on_back_pressed(): func _on_back_pressed():
get_tree().change_scene_to_file("res://levels/ui/tmenu.tscn") get_tree().change_scene_to_file("res://levels/ui/debug.tscn")

View file

@ -1,8 +1,12 @@
extends Control extends Control
const gamepadtest = preload("res://gamepad.gd") const gamepadtest = preload("res://gamepad.gd")
var startbutton
func _ready(): func _ready():
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN) startbutton = $VBoxContainer/Start
#Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
$VBoxContainer/Start.grab_focus() $VBoxContainer/Start.grab_focus()
if Global.dificulty != 0:
startbutton.set_text(tr("BUTTON_CONTINUE"))
# Called every frame. 'delta' is the elapsed time since the previous frame. # Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta): func _process(delta):
@ -42,15 +46,19 @@ func _input(event):
func _on_start_pressed(): func _on_start_pressed():
if Global.dificulty == 0:
get_tree().change_scene_to_file("res://levels/ui/newgame.tscn") get_tree().change_scene_to_file("res://levels/ui/newgame.tscn")
else:
Global.live = 1
get_tree().change_scene_to_file("res://levels/ui/gameplay.tscn")
#_level() #_level()
#pass # Replace with function body. #pass # Replace with function body.
func _on_debug_pressed(): func _on_debug_pressed():
get_tree().change_scene_to_file("res://levels/ui/debug.tscn") get_tree().change_scene_to_file("res://levels/ui/settings.tscn")
func _on_exit_pressed(): func _on_exit_pressed():
get_tree().quit() get_tree().quit()
#pass # Replace with function body. #pass # Replace with functio

View file

@ -64,7 +64,7 @@ text = "BUTTON_START"
layout_mode = 2 layout_mode = 2
theme_override_font_sizes/font_size = 80 theme_override_font_sizes/font_size = 80
theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs") theme_override_styles/focus = SubResource("StyleBoxFlat_6u0xs")
text = "BUTTON_DEBUG" text = "BUTTON_SETTINGS"
[node name="Exit" type="Button" parent="VBoxContainer"] [node name="Exit" type="Button" parent="VBoxContainer"]
layout_mode = 2 layout_mode = 2

110
load.gd
View file

@ -1,10 +1,79 @@
extends Node extends Node
var file var file
func _init(): var fileslot
if FileAccess.file_exists(Global.hiscoresfile): func _init(slot):
Global.firstrun = false if FileAccess.file_exists("user://userprefs"):
file = FileAccess.open(Global.hiscoresfile, FileAccess.READ)
Global.levelmax = file.get_as_text().rsplit(",", true, 7)
file = FileAccess.open("user://userprefs", FileAccess.READ)
var savefile = file.get_as_text().rsplit(",", true, 7)
file.close()
DisplayServer.window_set_vsync_mode(int(savefile[1]))
DisplayServer.window_set_mode(int(savefile[2]))
if slot == 0:
fileslot = int(savefile[0])
else:
fileslot = slot
if fileslot == 1:
file = FileAccess.open("user://slot1", FileAccess.READ)
savefile = file.get_as_text().rsplit("\n", true, 7)
file.close()
elif fileslot == 2:
file = FileAccess.open("user://slot2", FileAccess.READ)
savefile = file.get_as_text().rsplit("\n", true, 7)
file.close()
elif fileslot == 3:
file = FileAccess.open("user://slot3", FileAccess.READ)
savefile = file.get_as_text().rsplit("\n", true, 7)
file.close()
elif fileslot == 4:
file = FileAccess.open("user://slot4", FileAccess.READ)
savefile = file.get_as_text().rsplit("\n", true, 7)
file.close()
elif fileslot == 5:
file = FileAccess.open("user://slot5", FileAccess.READ)
savefile = file.get_as_text().rsplit("\n", true, 7)
file.close()
elif fileslot == 6:
file = FileAccess.open("user://slot6", FileAccess.READ)
savefile = file.get_as_text().rsplit("\n", true, 7)
file.close()
elif fileslot == 7:
file = FileAccess.open("user://slot7", FileAccess.READ)
savefile = file.get_as_text().rsplit("\n", true, 7)
file.close()
elif fileslot == 8:
file = FileAccess.open("user://slot8", FileAccess.READ)
savefile = file.get_as_text().rsplit("\n", true, 7)
file.close()
if fileslot != 0:
Global.dificulty = int(savefile[2])
var quest = savefile[4].rsplit(",", true, 7)
Global.quest = [int(quest[0]), int(quest[1]), int(quest[2]), int(quest[3]), int(quest[4]), int(quest[5])]
quest = savefile[3].rsplit(",", true, 7)
Global.cplace = [int(quest[0]), int(quest[1]), int(quest[2])]
Global.cpchar = int(savefile[1])
quest = savefile[0].rsplit(",", true, 9)
Global.party[0][0] = int(quest[0])
Global.party[0][1] = int(quest[1])
if quest[2].is_valid_int():
Global.party[1][0] = int(quest[2])
Global.party[1][1] = int(quest[3])
else:
Global.party[1][0] = null
Global.party[1][1] = null
if quest[4].is_valid_int():
Global.party[2][0] = int(quest[4])
Global.party[2][1] = int(quest[5])
else:
Global.party[2][0] = null
Global.party[2][1] = null
if quest[6].is_valid_int():
Global.party[3][0] = int(quest[6])
Global.party[3][1] = int(quest[7])
else:
Global.party[3][0] = null
Global.party[3][1] = null
# We need to revert the game state so we're not cloning objects # We need to revert the game state so we're not cloning objects
# during loading. This will vary wildly depending on the needs of a # during loading. This will vary wildly depending on the needs of a
# project, so take care with this step. # project, so take care with this step.
@ -17,7 +86,32 @@ func _init():
# the object it represents. # the object it represents.
else: else:
#Global.firstrun = true #Global.firstrun = true
var saveinit = "9999999,9999999,9999999,9999999,9999999,9999999,9999999" var saveinit = "0,1,3"
var file = FileAccess.open(Global.hiscoresfile, FileAccess.WRITE) var file = FileAccess.open("user://userprefs", FileAccess.WRITE)
file.store_string(saveinit) file.store_string(saveinit)
Global.levelmax = saveinit.rsplit(",", true, 7) file.close()
saveinit = "0,0,<null>,<null>,<null>,<null>,<null>,<null>\n0\n0\n1,11,19\n0,0,0,0,0,0"
file = FileAccess.open("user://slot1", FileAccess.WRITE)
file.store_string(saveinit)
file.close()
file = FileAccess.open("user://slot2", FileAccess.WRITE)
file.store_string(saveinit)
file.close()
file = FileAccess.open("user://slot3", FileAccess.WRITE)
file.store_string(saveinit)
file.close()
file = FileAccess.open("user://slot4", FileAccess.WRITE)
file.store_string(saveinit)
file.close()
file = FileAccess.open("user://slot5", FileAccess.WRITE)
file.store_string(saveinit)
file.close()
file = FileAccess.open("user://slot6", FileAccess.WRITE)
file.store_string(saveinit)
file.close()
file = FileAccess.open("user://slot7", FileAccess.WRITE)
file.store_string(saveinit)
file.close()
file = FileAccess.open("user://slot8", FileAccess.WRITE)
file.store_string(saveinit)
file.close()

View file

@ -12,7 +12,7 @@ func _ready():
updatehud() updatehud()
Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN) Input.set_mouse_mode(Input.MOUSE_MODE_HIDDEN)
#OS.get_data_dir().rsplit("/", true, 7)[2] #OS.get_data_dir().rsplit("/", true, 7)[2]
#loadgame.new() loadgame.new(0)
#print(OS.get_processor_name()) #print(OS.get_processor_name())
#pass # Replace with function body. #pass # Replace with function body.
#add_child(title) #add_child(title)

BIN
music/adayatceres.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://chfvfekjfcnov"
path="res://.godot/imported/adayatceres.ogg-20ac84b7b3f4aa32e22571cc54f6f688.oggvorbisstr"
[deps]
source_file="res://music/adayatceres.ogg"
dest_files=["res://.godot/imported/adayatceres.ogg-20ac84b7b3f4aa32e22571cc54f6f688.oggvorbisstr"]
[params]
loop=true
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://60ftsplg7o6a"
path="res://.godot/imported/adayatceres.wav-0794b80014f15fec6d7904450f55b8f7.sample"
[deps]
source_file="res://music/adayatceres.wav"
dest_files=["res://.godot/imported/adayatceres.wav-0794b80014f15fec6d7904450f55b8f7.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
music/akikoletter.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://sugu8nerll36"
path="res://.godot/imported/akikoletter.ogg-65f29c2474e3ff39d71f94a391cc992f.oggvorbisstr"
[deps]
source_file="res://music/akikoletter.ogg"
dest_files=["res://.godot/imported/akikoletter.ogg-65f29c2474e3ff39d71f94a391cc992f.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://0ahlhvx8kvtq"
path="res://.godot/imported/akikoletter.wav-dcd1e099a549dbde87748a4fe998aeb9.sample"
[deps]
source_file="res://music/akikoletter.wav"
dest_files=["res://.godot/imported/akikoletter.wav-dcd1e099a549dbde87748a4fe998aeb9.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=22050
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
music/alsa.ogg Normal file

Binary file not shown.

19
music/alsa.ogg.import Normal file
View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://bs2bq3e04korb"
path="res://.godot/imported/alsa.ogg-f3f4d9877ee536eddd614e8ce63cad30.oggvorbisstr"
[deps]
source_file="res://music/alsa.ogg"
dest_files=["res://.godot/imported/alsa.ogg-f3f4d9877ee536eddd614e8ce63cad30.oggvorbisstr"]
[params]
loop=true
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://bgbk1ullw0ss0"
path="res://.godot/imported/alsa.wav-4620708ae8d13f9c6c586543d1799e47.sample"
[deps]
source_file="res://music/alsa.wav"
dest_files=["res://.godot/imported/alsa.wav-4620708ae8d13f9c6c586543d1799e47.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
music/asadcat.ogg Normal file

Binary file not shown.

19
music/asadcat.ogg.import Normal file
View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://b7mee3yotwys3"
path="res://.godot/imported/asadcat.ogg-08b65fe0a713b731cd7c7abdc552d276.oggvorbisstr"
[deps]
source_file="res://music/asadcat.ogg"
dest_files=["res://.godot/imported/asadcat.ogg-08b65fe0a713b731cd7c7abdc552d276.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://cguy1a1msdxul"
path="res://.godot/imported/asadcat.wav-f5e001597dcbc4241a87a0e5a48f082a.sample"
[deps]
source_file="res://music/asadcat.wav"
dest_files=["res://.godot/imported/asadcat.wav-f5e001597dcbc4241a87a0e5a48f082a.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=22050
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

Binary file not shown.

View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://d0d5xn018p56l"
path="res://.godot/imported/blacksmithofdestruction.ogg-4c80faea3d55689e6c592dfaf3f6a9bf.oggvorbisstr"
[deps]
source_file="res://music/blacksmithofdestruction.ogg"
dest_files=["res://.godot/imported/blacksmithofdestruction.ogg-4c80faea3d55689e6c592dfaf3f6a9bf.oggvorbisstr"]
[params]
loop=true
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dfoy0j52bw0oo"
path="res://.godot/imported/blacksmithofdestruction.wav-7476ee0369748adc3be10eb1669cd52c.sample"
[deps]
source_file="res://music/blacksmithofdestruction.wav"
dest_files=["res://.godot/imported/blacksmithofdestruction.wav-7476ee0369748adc3be10eb1669cd52c.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
music/chinesegoat.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://f5f2qmgfw14b"
path="res://.godot/imported/chinesegoat.ogg-a97991dd62924488a0cc29fdc0fc90bd.oggvorbisstr"
[deps]
source_file="res://music/chinesegoat.ogg"
dest_files=["res://.godot/imported/chinesegoat.ogg-a97991dd62924488a0cc29fdc0fc90bd.oggvorbisstr"]
[params]
loop=true
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://heuh4letqmua"
path="res://.godot/imported/chinesegoat.wav-6a86ef6ed56ebfdf9ffe93cbfa3071c5.sample"
[deps]
source_file="res://music/chinesegoat.wav"
dest_files=["res://.godot/imported/chinesegoat.wav-6a86ef6ed56ebfdf9ffe93cbfa3071c5.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=22050
edit/trim=false
edit/normalize=false
edit/loop_mode=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
music/doyiuneedahealer.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://djetsbrrd68nj"
path="res://.godot/imported/doyiuneedahealer.ogg-31bf7c324e5053fefc29ef60a5c5188b.oggvorbisstr"
[deps]
source_file="res://music/doyiuneedahealer.ogg"
dest_files=["res://.godot/imported/doyiuneedahealer.ogg-31bf7c324e5053fefc29ef60a5c5188b.oggvorbisstr"]
[params]
loop=true
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://ung5yu0mo5lp"
path="res://.godot/imported/doyiuneedahealer.wav-7408ebf98fc8865dd6b40ccbccf7d385.sample"
[deps]
source_file="res://music/doyiuneedahealer.wav"
dest_files=["res://.godot/imported/doyiuneedahealer.wav-7408ebf98fc8865dd6b40ccbccf7d385.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
music/doyoufeelold.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://c00w6uwe1synn"
path="res://.godot/imported/doyoufeelold.ogg-5f272d8841138f5d1b33c9bcaf37d864.oggvorbisstr"
[deps]
source_file="res://music/doyoufeelold.ogg"
dest_files=["res://.godot/imported/doyoufeelold.ogg-5f272d8841138f5d1b33c9bcaf37d864.oggvorbisstr"]
[params]
loop=true
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dkkwx2elo0jxk"
path="res://.godot/imported/doyoufeelold.wav-4f6ca27415918d0a8a36c8fdf2582a10.sample"
[deps]
source_file="res://music/doyoufeelold.wav"
dest_files=["res://.godot/imported/doyoufeelold.wav-4f6ca27415918d0a8a36c8fdf2582a10.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=22050
edit/trim=false
edit/normalize=false
edit/loop_mode=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
music/easyquiz.ogg Normal file

Binary file not shown.

19
music/easyquiz.ogg.import Normal file
View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://ctbqww1nf8bja"
path="res://.godot/imported/easyquiz.ogg-e21ddfac3ee2fa58e31bafccce79df8f.oggvorbisstr"
[deps]
source_file="res://music/easyquiz.ogg"
dest_files=["res://.godot/imported/easyquiz.ogg-e21ddfac3ee2fa58e31bafccce79df8f.oggvorbisstr"]
[params]
loop=true
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://d355ec8l0niu7"
path="res://.godot/imported/easyquiz.wav-6213d850b9decf0892ed8d4149d07e2f.sample"
[deps]
source_file="res://music/easyquiz.wav"
dest_files=["res://.godot/imported/easyquiz.wav-6213d850b9decf0892ed8d4149d07e2f.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
music/halfgeniegirls.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://bwogdl7hs86hj"
path="res://.godot/imported/halfgeniegirls.ogg-77aa8ae87ec1d44e859c0925b39ef5a7.oggvorbisstr"
[deps]
source_file="res://music/halfgeniegirls.ogg"
dest_files=["res://.godot/imported/halfgeniegirls.ogg-77aa8ae87ec1d44e859c0925b39ef5a7.oggvorbisstr"]
[params]
loop=true
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://mkt1vt7odlew"
path="res://.godot/imported/halfgeniegirls.wav-ad075c12f0c45b58300f88003fabe7bf.sample"
[deps]
source_file="res://music/halfgeniegirls.wav"
dest_files=["res://.godot/imported/halfgeniegirls.wav-ad075c12f0c45b58300f88003fabe7bf.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
music/lilydesire.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://de2aupp1dld73"
path="res://.godot/imported/lilydesire.ogg-7d2b8f707e64f21157883f51505ea734.oggvorbisstr"
[deps]
source_file="res://music/lilydesire.ogg"
dest_files=["res://.godot/imported/lilydesire.ogg-7d2b8f707e64f21157883f51505ea734.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dm8yye02hk7dj"
path="res://.godot/imported/lilydesire.wav-53d7bb6bf0d21eb2dc46d1b911c8805a.sample"
[deps]
source_file="res://music/lilydesire.wav"
dest_files=["res://.godot/imported/lilydesire.wav-53d7bb6bf0d21eb2dc46d1b911c8805a.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=22050
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

Binary file not shown.

View file

@ -1,24 +0,0 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dxr5osnvkyygn"
path="res://.godot/imported/midorinoakuma.wav-5119e2d359f9169e04760cabcee22f29.sample"
[deps]
source_file="res://music/midorinoakuma.wav"
dest_files=["res://.godot/imported/midorinoakuma.wav-5119e2d359f9169e04760cabcee22f29.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=22050
edit/trim=false
edit/normalize=false
edit/loop_mode=2
edit/loop_begin=0
edit/loop_end=-1
compress/mode=0

BIN
music/midorinoyume.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://dswbf2kjdimt1"
path="res://.godot/imported/midorinoyume.ogg-a3816890ecbbf9416ca598ae1363c4e2.oggvorbisstr"
[deps]
source_file="res://music/midorinoyume.ogg"
dest_files=["res://.godot/imported/midorinoyume.ogg-a3816890ecbbf9416ca598ae1363c4e2.oggvorbisstr"]
[params]
loop=true
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View file

@ -0,0 +1,19 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://c40y5hvfjwwdo"
path="res://.godot/imported/multivectorsubmarines.ogg-147bc6d131c276564142e7a28ae9079d.oggvorbisstr"
[deps]
source_file="res://music/multivectorsubmarines.ogg"
dest_files=["res://.godot/imported/multivectorsubmarines.ogg-147bc6d131c276564142e7a28ae9079d.oggvorbisstr"]
[params]
loop=true
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show more