From c643782985a67bd0308a7fc3ee65f173da24c029 Mon Sep 17 00:00:00 2001 From: "Squishy (C6H12O6+NaCl+H2O)" <106439598+SweetSea-ButImNotSweet@users.noreply.github.com> Date: Sat, 20 Apr 2024 21:29:06 +0700 Subject: [PATCH] Update loading screen --- load.lua | 90 +++++++++++++++++++++++++++---------------------------- main.lua | 37 ++++++++++++++++++----- scene.lua | 2 +- 3 files changed, 76 insertions(+), 53 deletions(-) diff --git a/load.lua b/load.lua index 52b5bfc..67e0c70 100644 --- a/load.lua +++ b/load.lua @@ -2,45 +2,43 @@ bigint = require "libs.bigint.bigint" number_names = require "libs.bigint.named-powers-of-ten" --- Fonts -FONT_tromi = love.graphics.newFont('res/fonts/monofonto rg.otf', 28) -FONT_big = love.graphics.newFont('res/fonts/monofonto rg.otf', 56) - --- GRAPHICS +-- Graphics +ShowLoadingText('backgrounds') +local gc_newImage, gc_newVideo = love.graphics.newImage, love.graphics.newVideo BACKGROUNDS = { - [0] = love.graphics.newVideo("res/backgrounds/green_waterfall.ogv", {audio=false}), - love.graphics.newVideo("res/backgrounds/water.ogv", {audio=false}), - love.graphics.newVideo("res/backgrounds/green_streams.ogv", {audio=false}), - love.graphics.newVideo("res/backgrounds/streams.ogv", {audio=false}), - love.graphics.newVideo("res/backgrounds/red_forest_waterfall.ogv", {audio=false}), - love.graphics.newVideo("res/backgrounds/flowers_rain.ogv", {audio=false}), - love.graphics.newVideo("res/backgrounds/moonlight_tree.ogv", {audio=false}), - love.graphics.newVideo("res/backgrounds/lisa_frank.ogv", {audio=false}), - love.graphics.newVideo("res/backgrounds/snowy_trees.ogv", {audio=false}), - love.graphics.newVideo("res/backgrounds/snowy_cabin.ogv", {audio=false}), + [0] = gc_newVideo("res/backgrounds/green_waterfall.ogv", {audio=false}), + gc_newVideo("res/backgrounds/water.ogv", {audio=false}), + gc_newVideo("res/backgrounds/green_streams.ogv", {audio=false}), + gc_newVideo("res/backgrounds/streams.ogv", {audio=false}), + gc_newVideo("res/backgrounds/red_forest_waterfall.ogv", {audio=false}), + gc_newVideo("res/backgrounds/flowers_rain.ogv", {audio=false}), + gc_newVideo("res/backgrounds/moonlight_tree.ogv", {audio=false}), + gc_newVideo("res/backgrounds/lisa_frank.ogv", {audio=false}), + gc_newVideo("res/backgrounds/snowy_trees.ogv", {audio=false}), + gc_newVideo("res/backgrounds/snowy_cabin.ogv", {audio=false}), } - +ShowLoadingText('blocks') BLOCKS = { ["2tie"] = { - R = love.graphics.newImage("res/img/r.png"), - O = love.graphics.newImage("res/img/o.png"), - Y = love.graphics.newImage("res/img/y.png"), - G = love.graphics.newImage("res/img/g.png"), - C = love.graphics.newImage("res/img/b.png"), - B = love.graphics.newImage("res/img/i.png"), - M = love.graphics.newImage("res/img/v.png"), - F = love.graphics.newImage("res/img/bl.png"), - A = love.graphics.newImage("res/img/bl.png"), - X = love.graphics.newImage("res/img/t.png"), - W = love.graphics.newImage("res/img/w.png"), - R_d = love.graphics.newImage("res/img/r_d.png"), - O_d = love.graphics.newImage("res/img/o_d.png"), - Y_d = love.graphics.newImage("res/img/y_d.png"), - G_d = love.graphics.newImage("res/img/g_d.png"), - C_d = love.graphics.newImage("res/img/b_d.png"), - B_d = love.graphics.newImage("res/img/i_d.png"), - M_d = love.graphics.newImage("res/img/v_d.png"), + R = gc_newImage("res/img/r.png"), + O = gc_newImage("res/img/o.png"), + Y = gc_newImage("res/img/y.png"), + G = gc_newImage("res/img/g.png"), + C = gc_newImage("res/img/b.png"), + B = gc_newImage("res/img/i.png"), + M = gc_newImage("res/img/v.png"), + F = gc_newImage("res/img/bl.png"), + A = gc_newImage("res/img/bl.png"), + X = gc_newImage("res/img/t.png"), + W = gc_newImage("res/img/w.png"), + R_d = gc_newImage("res/img/r_d.png"), + O_d = gc_newImage("res/img/o_d.png"), + Y_d = gc_newImage("res/img/y_d.png"), + G_d = gc_newImage("res/img/g_d.png"), + C_d = gc_newImage("res/img/b_d.png"), + B_d = gc_newImage("res/img/i_d.png"), + M_d = gc_newImage("res/img/v_d.png"), } } @@ -57,18 +55,20 @@ COLOUR_SCHEMES = { } -- BGMs and SFXs +ShowLoadingText('BGMs & SFXs') +local audio_newSource = love.audio.newSource SOUNDS = { - bottom = love.audio.newSource("res/se/bottom.wav", "static"), - lock = love.audio.newSource("res/se/lock.wav", "static"), - erase = love.audio.newSource("res/se/erase.wav", "static"), - fall = love.audio.newSource("res/se/fall.wav", "static"), - ready = love.audio.newSource("res/se/ready.wav", "static"), - promote = love.audio.newSource("res/se/promote.wav", "static"), - demote = love.audio.newSource("res/se/demote.wav", "static"), - autopromote = love.audio.newSource("res/se/autopromote.wav", "static"), - bgm_firsthalf = love.audio.newSource("res/bgm/firsthalf.flac", "static"), - bgm_secondhalf = love.audio.newSource("res/bgm/secondhalf.flac", "static"), - bgm_title = love.audio.newSource("res/bgm/title.flac", "static") + bottom = audio_newSource("res/se/bottom.wav", "static"), + lock = audio_newSource("res/se/lock.wav", "static"), + erase = audio_newSource("res/se/erase.wav", "static"), + fall = audio_newSource("res/se/fall.wav", "static"), + ready = audio_newSource("res/se/ready.wav", "static"), + promote = audio_newSource("res/se/promote.wav", "static"), + demote = audio_newSource("res/se/demote.wav", "static"), + autopromote = audio_newSource("res/se/autopromote.wav", "static"), + bgm_firsthalf = audio_newSource("res/bgm/firsthalf.flac", "static"), + bgm_secondhalf = audio_newSource("res/bgm/secondhalf.flac", "static"), + bgm_title = audio_newSource("res/bgm/title.flac", "static") } function PlaySE(sound, subsound) diff --git a/main.lua b/main.lua index 354e9f3..2ee96df 100644 --- a/main.lua +++ b/main.lua @@ -22,21 +22,44 @@ HIscoreFILE = 'hiscores.sav' function love.load() math.randomseed(os.time()) require "settings" - + + -- Loading font first + FONT_tromi = love.graphics.newFont('res/fonts/monofonto rg.otf', 28) + FONT_big = love.graphics.newFont('res/fonts/monofonto rg.otf', 56) + + -- Window stuffs love.mouse.setVisible(false) love.window.setMode(love.graphics.getWidth(), love.graphics.getHeight(), {resizable = true}); love.window.setFullscreen(SETTINGS["fullscreen"]) + -- Make a new transformer GLOBAL_TRANSFORM = love.math.newTransform() love.resize(love.graphics.getWidth(), love.graphics.getHeight()) -- Text "LOADING..." - love.graphics.setFont(love.graphics.newFont(20)) - love.graphics.replaceTransform(GLOBAL_TRANSFORM) - love.graphics.clear() - love.graphics.print("Tromi is loading...\nPlease wait, don't touch anywhere or press any key!",10,0) - love.graphics.flushBatch() - love.graphics.present() + local loaded = {} + local loadedCounter = 0 + --- Show the loading text while we are loading resources
+ --- **WARNING**: should only be used while loading the game! + function ShowLoadingText(thing) + table.insert(loaded, thing) + loadedCounter = loadedCounter + 1 + + love.graphics.replaceTransform(GLOBAL_TRANSFORM) + love.graphics.setFont(love.graphics.newFont(20)) + love.graphics.clear() + + drawText( + "Loading Tromi... ["..loadedCounter.." / 3]\nPlease wait, don't touch anywhere or press any key!\n\nLoading: "..thing, + 10,0,1e99,"left" + ) + for i, t in pairs(loaded) do + drawText("Loaded "..t,10,80+20*i,1e99,"left") + end + + love.graphics.flushBatch() + love.graphics.present() + end -- Now it's real time to load all stuffs! highscores = {} diff --git a/scene.lua b/scene.lua index f2eeae2..ed4272e 100644 --- a/scene.lua +++ b/scene.lua @@ -18,4 +18,4 @@ ReplaySelectScene = require "scene.replay" FullscreenScene = require "scene.fullscreen" MusicToggleScene = require "scene.music_toggle" TrainingScene = require "scene.training" -TitleScene = require "scene.title" +TitleScene = require "scene.title" \ No newline at end of file