From 9d14391df27e61dec846e26befcfb667e55b063e Mon Sep 17 00:00:00 2001 From: GuglioIsStupid Date: Sun, 1 Sep 2024 15:46:47 -0400 Subject: [PATCH] rework some thingies --- src/love/.vscode/settings.json | 4 +- src/love/data/characters/BaseCharacter.lua | 2 + src/love/data/weeks/weekData.lua | 12 + src/love/data/weeks/weekDescriptions.lua | 11 + src/love/data/weeks/weekMeta.lua | 80 +++++++ src/love/main.lua | 156 ++----------- src/love/modules/Icon.lua | 3 + src/love/modules/xml/Sprite.lua | 1 + ...hristmas-erect.ogg => Voices-bf-erect.ogg} | Bin ...s-bf-car-erect.ogg => Voices-bf-erect.ogg} | Bin ...mom-car-erect.ogg => Voices-mom-erect.ogg} | Bin ...bf-pixel-erect.ogg => Voices-bf-erect.ogg} | Bin ...ngry-erect.ogg => Voices-senpai-erect.ogg} | Bin ...s-bf-car-erect.ogg => Voices-bf-erect.ogg} | Bin ...mom-car-erect.ogg => Voices-mom-erect.ogg} | Bin ...bf-pixel-erect.ogg => Voices-bf-erect.ogg} | Bin ...bf-pixel-erect.ogg => Voices-bf-erect.ogg} | Bin src/love/stages/streets.lua | 1 + src/love/states/menu/menuFreeplay.lua | 58 +++-- src/love/states/menu/menuWeek.lua | 24 +- src/love/states/weeks.lua | 4 +- src/love/substates/options/graphics.lua | 2 +- src/love/weeks/tutorial.lua | 12 +- src/love/weeks/week1.lua | 28 +-- src/love/weeks/week2.lua | 28 +-- src/love/weeks/week3.lua | 28 +-- src/love/weeks/week4.lua | 28 +-- src/love/weeks/week5.lua | 26 +-- src/love/weeks/week6.lua | 28 +-- src/love/weeks/week7.lua | 30 +-- src/love/weeks/weekend1.lua | 209 +++++++++--------- 31 files changed, 399 insertions(+), 376 deletions(-) create mode 100644 src/love/data/weeks/weekData.lua create mode 100644 src/love/data/weeks/weekDescriptions.lua create mode 100644 src/love/data/weeks/weekMeta.lua rename src/love/songs/eggnog/{Voices-bf-christmas-erect.ogg => Voices-bf-erect.ogg} (100%) rename src/love/songs/high/{Voices-bf-car-erect.ogg => Voices-bf-erect.ogg} (100%) rename src/love/songs/high/{Voices-mom-car-erect.ogg => Voices-mom-erect.ogg} (100%) rename src/love/songs/roses/{Voices-bf-pixel-erect.ogg => Voices-bf-erect.ogg} (100%) rename src/love/songs/roses/{Voices-senpai-angry-erect.ogg => Voices-senpai-erect.ogg} (100%) rename src/love/songs/satin-panties/{Voices-bf-car-erect.ogg => Voices-bf-erect.ogg} (100%) rename src/love/songs/satin-panties/{Voices-mom-car-erect.ogg => Voices-mom-erect.ogg} (100%) rename src/love/songs/senpai/{Voices-bf-pixel-erect.ogg => Voices-bf-erect.ogg} (100%) rename src/love/songs/thorns/{Voices-bf-pixel-erect.ogg => Voices-bf-erect.ogg} (100%) diff --git a/src/love/.vscode/settings.json b/src/love/.vscode/settings.json index 5a1fcc13..c6c7c7c1 100644 --- a/src/love/.vscode/settings.json +++ b/src/love/.vscode/settings.json @@ -4,7 +4,9 @@ ], "Lua.diagnostics.disable": [ "redundant-parameter", - "missing-parameter" + "missing-parameter", + "lowercase-global", + "assign-type-mismatch" ], "Lua.runtime.version": "LuaJIT", "Lua.runtime.special": [], diff --git a/src/love/data/characters/BaseCharacter.lua b/src/love/data/characters/BaseCharacter.lua index 742fde52..80f18287 100644 --- a/src/love/data/characters/BaseCharacter.lua +++ b/src/love/data/characters/BaseCharacter.lua @@ -9,6 +9,7 @@ function Character:new(luaPath) self.shearX, self.shearY = 0, 0 self.optionsTable = self.spr.optionsTable self.icon = self.optionsTable.icon + self.flipX, self.flipY = false, false self.holdTimer = 0 self.maxHoldTimer = self.spr.maxHoldTimer @@ -23,6 +24,7 @@ function Character:update(dt) self.spr.sizeX, self.spr.sizeY = self.sizeX, self.sizeY self.spr.offsetX, self.spr.offsetY = self.spr.offsetX, self.spr.offsetY self.spr.shearX, self.spr.shearY = self.shearX, self.shearY + self.spr.flipX, self.spr.flipY = self.flipX, self.flipY self.spr.holdTimer = self.holdTimer end diff --git a/src/love/data/weeks/weekData.lua b/src/love/data/weeks/weekData.lua new file mode 100644 index 00000000..2787cdbb --- /dev/null +++ b/src/love/data/weeks/weekData.lua @@ -0,0 +1,12 @@ +return { + [0] = require "weeks.test", + require "weeks.tutorial", + require "weeks.week1", + require "weeks.week2", + require "weeks.week3", + require "weeks.week4", + require "weeks.week5", + require "weeks.week6", + require "weeks.week7", + require "weeks.weekend1" +} \ No newline at end of file diff --git a/src/love/data/weeks/weekDescriptions.lua b/src/love/data/weeks/weekDescriptions.lua new file mode 100644 index 00000000..973deed5 --- /dev/null +++ b/src/love/data/weeks/weekDescriptions.lua @@ -0,0 +1,11 @@ +return { -- Add your week description here + "TEACHING TIME", + "DADDY DEAREST", + "SPOOKY MONTH", + "PICO", + "MOMMY MUST MURDER", + "RED SNOW", + "HATING SIMULATOR FT. MOAWLING", + "TANKMAN FT. JOHNYUTAH", + "DUE DEBTS" +} \ No newline at end of file diff --git a/src/love/data/weeks/weekMeta.lua b/src/love/data/weeks/weekMeta.lua new file mode 100644 index 00000000..bc57e973 --- /dev/null +++ b/src/love/data/weeks/weekMeta.lua @@ -0,0 +1,80 @@ +return { -- Add/remove weeks here + [0] = { + "Test", + { + "Test" + } + }, + { + "Tutorial", + { + {"Tutorial"} + } + }, + { + "Week 1", + { + {"Bopeebo", erect=true}, + {"Fresh", erect=true}, + {"Dadbattle", erect=true} + } + }, + { + "Week 2", + { + {"Spookeez", erect=true}, + {"South", erect=true}, + {"Monster"} + } + }, + { + "Week 3", + { + {"Pico", erect=true}, + {"Philly Nice", erect=true}, + {"Blammed", erect=true} + } + }, + { + "Week 4", + { + {"Satin Panties", erect=true}, + {"High", erect=true}, + {"M.I.L.F"} + } + }, + { + "Week 5", + { + {"Cocoa"}, + {"Eggnog", erect=true}, + {"Winter Horrorland"} + } + }, + { + "Week 6", + { + {"Senpai", erect=true}, + {"Roses", erect=true}, + {"Thorns", erect=true} + } + }, + { + "Week 7", + { + {"Ugh"}, + {"Guns"}, + {"Stress"} + } + }, + { + "Weekend 1", + { + {"Darnell"}, + {"Lit Up"}, + {"2hot"}, + {"Blazin"}, + {"Cutscene", show=false} + } + } +} \ No newline at end of file diff --git a/src/love/main.lua b/src/love/main.lua index 93f63cef..857d63d5 100644 --- a/src/love/main.lua +++ b/src/love/main.lua @@ -35,13 +35,7 @@ function uitextflarge(text,x,y,limit,align,hovered,r,sx,sy,ox,oy,kx,ky) local oy = oy or 0 local kx = kx or 0 local ky = ky or 0 - --[[ if not hovered then graphics.setColor(0,0,0) else graphics.setColor(1,1,1) end - love.graphics.printf(text,x-6,y,limit,align,r,sx,sy,ox,oy,kx,ky) - love.graphics.printf(text,x+6,y,limit,align,r,sx,sy,ox,oy,kx,ky) - love.graphics.printf(text,x,y-6,limit,align,r,sx,sy,ox,oy,kx,ky) - love.graphics.printf(text,x,y+6,limit,align,r,sx,sy,ox,oy,kx,ky) - if not hovered then graphics.setColor(1,1,1) else graphics.setColor(0,0,0) end - love.graphics.printf(text,x,y,limit,align,r,sx,sy,ox,oy,kx,ky) ]] + if not hovered then graphics.setColor(0,0,0) else graphics.setColor(1,1,1) end for i = -6, 6 do for j = -6, 6 do @@ -296,145 +290,24 @@ function love.load() TankmanDatingSim = require "misc.dating" -- Load week data - weekData = { - [0] = require "weeks.test", - require "weeks.tutorial", - require "weeks.week1", - require "weeks.week2", - require "weeks.week3", - require "weeks.week4", - require "weeks.week5", - require "weeks.week6", - require "weeks.week7", - require "weeks.weekend1" - } + weekData = require "data.weeks.weekData" + weekDesc = require "data.weeks.weekDescriptions" + weekMeta = require "data.weeks.weekMeta" + for i, week in ipairs(weekMeta) do + for k, song in ipairs(week[2]) do + if type(song) == "table" then + if song.show == nil then + song.show = true + end + end + end + end + modWeekPlacement = #weekMeta -- everything after the main weeks is a mod folder. require "modules.extras" __VERSION__ = love.filesystem.getInfo("version.txt") and love.filesystem.read("version.txt") or "vUnknown" - weekDesc = { -- Add your week description here - "TEACHING TIME", - "DADDY DEAREST", - "SPOOKY MONTH", - "PICO", - "MOMMY MUST MURDER", - "RED SNOW", - "HATING SIMULATOR FT. MOAWLING", - "TANKMAN FT. JOHNYUTAH", - "DUE DEBTS" - } - - weekMeta = { -- Add/remove weeks here - [0] = { - "Test", - { - "Test" - } - }, - { - "Tutorial", - { - "Tutorial" - } - }, - { - "Week 1", - { - "Bopeebo", - "Fresh", - "Dadbattle" - }, - -- Erect remix's - { - "Bopeebo", - "Fresh", - "Dadbattle" - } - }, - { - "Week 2", - { - "Spookeez", - "South", - "Monster" - }, - { - "Spookeez", - "South" - } - }, - { - "Week 3", - { - "Pico", - "Philly Nice", - "Blammed" - }, - { - "Pico", - "Philly Nice", - "Blammed" - } - }, - { - "Week 4", - { - "Satin Panties", - "High", - "M.I.L.F" - }, - { - "Satin Panties", - "High" - } - }, - { - "Week 5", - { - "Cocoa", - "Eggnog", - "Winter Horrorland" - }, - { - "Eggnog" - } - }, - { - "Week 6", - { - "Senpai", - "Roses", - "Thorns" - }, - { - "Senpai", - "Roses", - "Thorns" - } - }, - { - "Week 7", - { - "Ugh", - "Guns", - "Stress" - } - }, - { - "Weekend 1", - { - "Darnell", - "Lit Up", - "2hot", - "Blazin", - {"Cutscene", false} - } - } - } - - modWeekPlacement = #weekMeta -- everything after the main weeks is a mod folder. - -- LÖVE init if curOS == "OS X" then love.window.setIcon(love.image.newImageData("icons/macos.png")) @@ -493,7 +366,6 @@ function love.load() (love.audio.getVolume()) )) - volumeWidth = {width = 160 } if CONSTANTS.OPTIONS.DO_MODS then diff --git a/src/love/modules/Icon.lua b/src/love/modules/Icon.lua index 29ab84d4..775ca1ba 100644 --- a/src/love/modules/Icon.lua +++ b/src/love/modules/Icon.lua @@ -7,6 +7,9 @@ return { graphics.cache[path] = love.graphics.newImage(path) end local img = graphics.cache[path] + if path:find("-pixel") then + img:setFilter("nearest") + end local frameData = { { x = 0, y = 0, diff --git a/src/love/modules/xml/Sprite.lua b/src/love/modules/xml/Sprite.lua index f791f339..7bead633 100644 --- a/src/love/modules/xml/Sprite.lua +++ b/src/love/modules/xml/Sprite.lua @@ -67,6 +67,7 @@ function Sprite.getFramesFromSparrow(tex, desc) local f = {texture=tex, frames={}} local sw, sh = tex:getWidth(), tex:getHeight() + ---@diagnostic disable-next-line: param-type-mismatch for i, c in ipairs(xml.parse(desc)) do if c.tag == "SubTexture" then table.insert(f.frames, Sprite.newFrame( diff --git a/src/love/songs/eggnog/Voices-bf-christmas-erect.ogg b/src/love/songs/eggnog/Voices-bf-erect.ogg similarity index 100% rename from src/love/songs/eggnog/Voices-bf-christmas-erect.ogg rename to src/love/songs/eggnog/Voices-bf-erect.ogg diff --git a/src/love/songs/high/Voices-bf-car-erect.ogg b/src/love/songs/high/Voices-bf-erect.ogg similarity index 100% rename from src/love/songs/high/Voices-bf-car-erect.ogg rename to src/love/songs/high/Voices-bf-erect.ogg diff --git a/src/love/songs/high/Voices-mom-car-erect.ogg b/src/love/songs/high/Voices-mom-erect.ogg similarity index 100% rename from src/love/songs/high/Voices-mom-car-erect.ogg rename to src/love/songs/high/Voices-mom-erect.ogg diff --git a/src/love/songs/roses/Voices-bf-pixel-erect.ogg b/src/love/songs/roses/Voices-bf-erect.ogg similarity index 100% rename from src/love/songs/roses/Voices-bf-pixel-erect.ogg rename to src/love/songs/roses/Voices-bf-erect.ogg diff --git a/src/love/songs/roses/Voices-senpai-angry-erect.ogg b/src/love/songs/roses/Voices-senpai-erect.ogg similarity index 100% rename from src/love/songs/roses/Voices-senpai-angry-erect.ogg rename to src/love/songs/roses/Voices-senpai-erect.ogg diff --git a/src/love/songs/satin-panties/Voices-bf-car-erect.ogg b/src/love/songs/satin-panties/Voices-bf-erect.ogg similarity index 100% rename from src/love/songs/satin-panties/Voices-bf-car-erect.ogg rename to src/love/songs/satin-panties/Voices-bf-erect.ogg diff --git a/src/love/songs/satin-panties/Voices-mom-car-erect.ogg b/src/love/songs/satin-panties/Voices-mom-erect.ogg similarity index 100% rename from src/love/songs/satin-panties/Voices-mom-car-erect.ogg rename to src/love/songs/satin-panties/Voices-mom-erect.ogg diff --git a/src/love/songs/senpai/Voices-bf-pixel-erect.ogg b/src/love/songs/senpai/Voices-bf-erect.ogg similarity index 100% rename from src/love/songs/senpai/Voices-bf-pixel-erect.ogg rename to src/love/songs/senpai/Voices-bf-erect.ogg diff --git a/src/love/songs/thorns/Voices-bf-pixel-erect.ogg b/src/love/songs/thorns/Voices-bf-erect.ogg similarity index 100% rename from src/love/songs/thorns/Voices-bf-pixel-erect.ogg rename to src/love/songs/thorns/Voices-bf-erect.ogg diff --git a/src/love/stages/streets.lua b/src/love/stages/streets.lua index 8783dc3b..3acc3154 100644 --- a/src/love/stages/streets.lua +++ b/src/love/stages/streets.lua @@ -94,6 +94,7 @@ return { girlfriend:draw() enemy:draw() + boyfriend:draw() stageImages["spraycanPile"]:draw() love.graphics.pop() diff --git a/src/love/states/menu/menuFreeplay.lua b/src/love/states/menu/menuFreeplay.lua index 40093043..48be0192 100644 --- a/src/love/states/menu/menuFreeplay.lua +++ b/src/love/states/menu/menuFreeplay.lua @@ -16,26 +16,38 @@ local function CreateWeek(weekIndex, hasErect) songs = {} } - for i, songName in ipairs(weekMeta[weekIndex][2]) do - if type(songName) == "string" then - local hasErect = false - if weekMeta[weekIndex][3] then - hasErect = table.contains(weekMeta[weekIndex][3], songName) - end + for _, song in ipairs(weekMeta[weekIndex][2]) do + if type(song) == "table" then + local hasErect, hasPico = song.erect, song.pico + if not song.show then goto continue end local song = { - name = songName, + name = song[1], diffs = { - -- diffname, isErect - {"easy", false}, - {"normal", false}, - {"hard", false}, - (hasErect and {"erect", true} or nil), - (hasErect and {"nightmare", true} or nil) + -- diffname, songExt + {"easy", ext=""}, + {"normal", ext=""}, + {"hard", ext=""}, + (hasErect and {"erect", ext="-erect"} or nil), + (hasErect and {"nightmare", ext="-erect"} or nil), + (hasPico and {"pico", ext="-pico"} or nil) + } + } + + table.insert(week.songs, song) + elseif type(song) == "string" then + local song = { + name = song, + diffs = { + {"easy", ext=""}, + {"normal", ext=""}, + {"hard", ext=""} } } table.insert(week.songs, song) end + + ::continue:: end return week @@ -129,8 +141,8 @@ return { end end if menuNum ~= 1 then - songBefore = weekMeta[weekNum][2][songNum-1] or "" - songAfter = weekMeta[weekNum][2][songNum+1] or "" + songBefore = weekMeta[weekNum][2][songNum-1] and weekMeta[weekNum][2][songNum-1][1] or "" + songAfter = weekMeta[weekNum][2][songNum+1] and weekMeta[weekNum][2][songNum+1][1] or "" end audio.playSound(selectSound) elseif input:pressed("up") then @@ -139,6 +151,7 @@ return { if weekNum < 0 then weekNum = #weekMeta end + if songDifficulty > #allWeeks[weekNum].songs[songNum].diffs then songDifficulty = #allWeeks[weekNum].songs[songNum].diffs end @@ -157,8 +170,8 @@ return { end end if menuNum ~= 1 then - songBefore = weekMeta[weekNum][2][songNum-1] or "" - songAfter = weekMeta[weekNum][2][songNum+1] or "" + songBefore = weekMeta[weekNum][2][songNum-1] and weekMeta[weekNum][2][songNum-1][1] or "" + songAfter = weekMeta[weekNum][2][songNum+1] and weekMeta[weekNum][2][songNum+1][1] or "" end audio.playSound(selectSound) elseif input:pressed("left") then @@ -182,14 +195,13 @@ return { 0.7, function() songAppend = allWeeks[weekNum].songs[songNum].diffs[songDifficulty][1] - isErect = songDifficulty > 3 and allWeeks[weekNum].songs[songNum].diffs[songDifficulty][2] or false importMods.inMod = weekNum > modWeekPlacement storyMode = false music:stop() - Gamestate.switch(weekData[weekNum], songNum, songAppend, isErect) + Gamestate.switch(weekData[weekNum], songNum, songAppend, allWeeks[weekNum].songs[songNum].diffs[songDifficulty].ext) status.setLoading(false) end @@ -204,8 +216,8 @@ return { curSongAccuracy = string.format("%.2f%%", curSongAccuracy) end - songBefore = weekMeta[weekNum][2][songNum-1] or "" - songAfter = weekMeta[weekNum][2][songNum+1] or "" + songBefore = weekMeta[weekNum][2][songNum-1] and weekMeta[weekNum][2][songNum-1][1] or "" + songAfter = weekMeta[weekNum][2][songNum+1] and weekMeta[weekNum][2][songNum+1][1] or "" audio.playSound(confirmSound) elseif input:pressed("back") then if menuNum ~= 1 then @@ -220,8 +232,8 @@ return { if menuNum == 1 then songNum = 1 menuNum = 2 - songBefore = weekMeta[weekNum][2][songNum-1] or "" - songAfter = weekMeta[weekNum][2][songNum+1] or "" + songBefore = weekMeta[weekNum][2][songNum-1] and weekMeta[weekNum][2][songNum-1][1] or "" + songAfter = weekMeta[weekNum][2][songNum+1] and weekMeta[weekNum][2][songNum+1][1] or "" else menuNum = 1 end diff --git a/src/love/states/menu/menuWeek.lua b/src/love/states/menu/menuWeek.lua index eabd8189..ed346e09 100644 --- a/src/love/states/menu/menuWeek.lua +++ b/src/love/states/menu/menuWeek.lua @@ -20,13 +20,22 @@ return { weekNum = 1 theTracks = "" for trackLength = 1, #weekMeta[weekNum][2] do - if type(weekMeta[weekNum][2][trackLength]) == "string" then + if type(weekMeta[weekNum][2][trackLength]) == "table" then + if not weekMeta[weekNum][2][trackLength].show then goto continue end + if theTracks ~= "" then + theTracks = theTracks .. " | " .. weekMeta[weekNum][2][trackLength][1] + else + theTracks = weekMeta[weekNum][2][trackLength][1] + end + elseif type(weekMeta[weekNum][2][trackLength]) == "string" then if theTracks ~= "" then theTracks = theTracks .. " | " .. weekMeta[weekNum][2][trackLength] else theTracks = weekMeta[weekNum][2][trackLength] end end + + ::continue:: end currentWeek = 0 @@ -153,7 +162,7 @@ return { storyMode = true - Gamestate.switch(weekData[weekNum], songNum, songAppend) + Gamestate.switch(weekData[weekNum], songNum, songAppend, "") status.setLoading(false) end @@ -172,13 +181,22 @@ return { end theTracks = "" for trackLength = 1, #weekMeta[weekNum][2] do - if type(weekMeta[weekNum][2][trackLength]) == "string" then + if type(weekMeta[weekNum][2][trackLength]) == "table" then + if not weekMeta[weekNum][2][trackLength].show then goto continue end + if theTracks ~= "" then + theTracks = theTracks .. " | " .. weekMeta[weekNum][2][trackLength][1] + else + theTracks = weekMeta[weekNum][2][trackLength][1] + end + elseif type(weekMeta[weekNum][2][trackLength]) == "string" then if theTracks ~= "" then theTracks = theTracks .. " | " .. weekMeta[weekNum][2][trackLength] else theTracks = weekMeta[weekNum][2][trackLength] end end + + ::continue:: end if enemyDanceLines:isAnimName("week" .. weekNum-1) then enemyDanceLines:animate("week" .. weekNum-1, true) diff --git a/src/love/states/weeks.lua b/src/love/states/weeks.lua index a8d94435..5d5f0b40 100644 --- a/src/love/states/weeks.lua +++ b/src/love/states/weeks.lua @@ -1341,8 +1341,8 @@ end boyfriendIcon.sizeX, boyfriendIcon.sizeY = -1.75, 1.75 end - enemyIcon.sizeX, enemyIcon.sizeY = util.coolLerp(enemyIcon.sizeX, 1.5, 0.1), util.lerp(enemyIcon.sizeY, 1.5, 0.1) - boyfriendIcon.sizeX, boyfriendIcon.sizeY = util.coolLerp(boyfriendIcon.sizeX, -1.5, 0.1), util.lerp(boyfriendIcon.sizeY, 1.5, 0.1) + enemyIcon.sizeX, enemyIcon.sizeY = util.coolLerp(enemyIcon.sizeX, 1.5, 0.1), enemyIcon.sizeX + boyfriendIcon.sizeX, boyfriendIcon.sizeY = util.coolLerp(boyfriendIcon.sizeX, -1.5, 0.1), -boyfriendIcon.sizeX end, drawRating = function(self) diff --git a/src/love/substates/options/graphics.lua b/src/love/substates/options/graphics.lua index 4d2732e9..80bbf32d 100644 --- a/src/love/substates/options/graphics.lua +++ b/src/love/substates/options/graphics.lua @@ -7,7 +7,7 @@ function m_graphics:enter() settings.fpsCap, "number" ) - o.minValue = _debug and 1 or 30 + o.minValue = debug and 1 or 30 o.maxValue = 500 self:addOption(o) self:addOption( diff --git a/src/love/weeks/tutorial.lua b/src/love/weeks/tutorial.lua index 402ae5b2..1ad18b28 100644 --- a/src/love/weeks/tutorial.lua +++ b/src/love/weeks/tutorial.lua @@ -23,12 +23,12 @@ local zoomTimer local zoom = {} return { - enter = function(self, from, songNum, songAppend, isErect) + enter = function(self, from, songNum, songAppend, _songExt) weeks:enter() difficulty = songAppend song = songNum - erectMode = isErect + songExt = _songExt stageBack = graphics.newImage(graphics.imagePath("week1/stage-back")) stageFront = graphics.newImage(graphics.imagePath("week1/stage-front")) @@ -50,9 +50,9 @@ return { zoom[1] = 1 - inst = love.audio.newSource("songs/tutorial/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/tutorial/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/tutorial/Voices-gf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/tutorial/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/tutorial/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/tutorial/Voices-gf" .. songExt .. ".ogg", "stream") self:initUI() @@ -62,7 +62,7 @@ return { initUI = function(self) weeks:initUI() - weeks:generateNotes("data/songs/tutorial/tutorial-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/tutorial/tutorial-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/tutorial/tutorial-chart" .. songExt .. ".json", "data/songs/tutorial/tutorial-metadata" .. songExt .. ".json", difficulty) end, update = function(self, dt) diff --git a/src/love/weeks/week1.lua b/src/love/weeks/week1.lua index 5839fa9f..d5200cdb 100644 --- a/src/love/weeks/week1.lua +++ b/src/love/weeks/week1.lua @@ -20,14 +20,14 @@ along with this program. If not, see . local stageBack, stageFront, curtains return { - enter = function(self, from, songNum, songAppend, isErect) + enter = function(self, from, songNum, songAppend, _songExt) weeks:enter() stages["stage"]:enter() song = songNum difficulty = songAppend - erectMode = isErect + songExt = _songExt self:load() end, @@ -37,17 +37,17 @@ return { stages["stage"]:load() if song == 3 then - inst = love.audio.newSource("songs/dadbattle/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/dadbattle/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/dadbattle/Voices-dad" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/dadbattle/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/dadbattle/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/dadbattle/Voices-dad" .. songExt .. ".ogg", "stream") elseif song == 2 then - inst = love.audio.newSource("songs/fresh/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/fresh/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/fresh/Voices-dad" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/fresh/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/fresh/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/fresh/Voices-dad" .. songExt .. ".ogg", "stream") else - inst = love.audio.newSource("songs/bopeebo/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/bopeebo/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/bopeebo/Voices-dad" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/bopeebo/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/bopeebo/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/bopeebo/Voices-dad" .. songExt .. ".ogg", "stream") end self:initUI() @@ -58,11 +58,11 @@ return { initUI = function(self) weeks:initUI() if song == 3 then - weeks:generateNotes("data/songs/dadbattle/dadbattle-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/dadbattle/dadbattle-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/dadbattle/dadbattle-chart" .. songExt .. ".json", "data/songs/dadbattle/dadbattle-metadata" .. songExt .. ".json", difficulty) elseif song == 2 then - weeks:generateNotes("data/songs/fresh/fresh-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/fresh/fresh-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/fresh/fresh-chart" .. songExt .. ".json", "data/songs/fresh/fresh-metadata" .. songExt .. ".json", difficulty) else - weeks:generateNotes("data/songs/bopeebo/bopeebo-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/bopeebo/bopeebo-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/bopeebo/bopeebo-chart" .. songExt .. ".json", "data/songs/bopeebo/bopeebo-metadata" .. songExt .. ".json", difficulty) end end, diff --git a/src/love/weeks/week2.lua b/src/love/weeks/week2.lua index 74e94991..0b64f4fc 100644 --- a/src/love/weeks/week2.lua +++ b/src/love/weeks/week2.lua @@ -20,14 +20,14 @@ along with this program. If not, see . local hauntedHouse return { - enter = function(self, from, songNum, songAppend, isErect) + enter = function(self, from, songNum, songAppend, _songExt) weeks:enter() stages["hauntedHouse"]:enter() song = songNum difficulty = songAppend - erectMode = isErect + songExt = _songExt camera.zoom = 1.1 camera.defaultZoom = 1.1 @@ -48,17 +48,17 @@ return { enemyIcon = icon.newIcon(icon.imagePath("monster")) - inst = love.audio.newSource("songs/monster/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/monster/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/monster/Voices-monster" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/monster/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/monster/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/monster/Voices-monster" .. songExt .. ".ogg", "stream") elseif song == 2 then - inst = love.audio.newSource("songs/south/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/south/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/south/Voices-spooky" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/south/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/south/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/south/Voices-spooky" .. songExt .. ".ogg", "stream") else - inst = love.audio.newSource("songs/spookeez/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/spookeez/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/spookeez/Voices-spooky" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/spookeez/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/spookeez/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/spookeez/Voices-spooky" .. songExt .. ".ogg", "stream") end weeks:load() @@ -73,11 +73,11 @@ return { weeks:initUI() if song == 3 then - weeks:generateNotes("data/songs/monster/monster-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/monster/monster-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/monster/monster-chart" .. songExt .. ".json", "data/songs/monster/monster-metadata" .. songExt .. ".json", difficulty) elseif song == 2 then - weeks:generateNotes("data/songs/south/south-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/south/south-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/south/south-chart" .. songExt .. ".json", "data/songs/south/south-metadata" .. songExt .. ".json", difficulty) else - weeks:generateNotes("data/songs/spookeez/spookeez-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/spookeez/spookeez-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/spookeez/spookeez-chart" .. songExt .. ".json", "data/songs/spookeez/spookeez-metadata" .. songExt .. ".json", difficulty) end end, diff --git a/src/love/weeks/week3.lua b/src/love/weeks/week3.lua index bd34130d..47be76e2 100644 --- a/src/love/weeks/week3.lua +++ b/src/love/weeks/week3.lua @@ -20,14 +20,14 @@ along with this program. If not, see . local sky, city, cityWindows, behindTrain, street return { - enter = function(self, from, songNum, songAppend, isErect) + enter = function(self, from, songNum, songAppend, _songExt) weeks:enter() stages["city"]:enter() song = songNum difficulty = songAppend - hasErect = isErect + songExt = _songExt camera.zoom = 1 camera.defaultZoom = 1 @@ -40,17 +40,17 @@ return { stages["city"]:load() if song == 3 then - inst = love.audio.newSource("songs/blammed/Inst" .. (hasErect and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/blammed/Voices-bf" .. (hasErect and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/blammed/Voices-pico" .. (hasErect and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/blammed/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/blammed/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/blammed/Voices-pico" .. songExt .. ".ogg", "stream") elseif song == 2 then - inst = love.audio.newSource("songs/philly-nice/Inst" .. (hasErect and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/philly-nice/Voices-bf" .. (hasErect and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/philly-nice/Voices-pico" .. (hasErect and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/philly-nice/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/philly-nice/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/philly-nice/Voices-pico" .. songExt .. ".ogg", "stream") else - inst = love.audio.newSource("songs/pico/Inst" .. (hasErect and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/pico/Voices-bf" .. (hasErect and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/pico/Voices-pico" .. (hasErect and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/pico/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/pico/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/pico/Voices-pico" .. songExt .. ".ogg", "stream") end self:initUI() @@ -62,11 +62,11 @@ return { weeks:initUI() if song == 3 then - weeks:generateNotes("data/songs/blammed/blammed-chart" .. (hasErect and "-erect" or "") .. ".json", "data/songs/blammed/blammed-metadata" .. (hasErect and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/blammed/blammed-chart" .. songExt .. ".json", "data/songs/blammed/blammed-metadata" .. songExt .. ".json", difficulty) elseif song == 2 then - weeks:generateNotes("data/songs/philly-nice/philly-nice-chart" .. (hasErect and "-erect" or "") .. ".json", "data/songs/philly-nice/philly-nice-metadata" .. (hasErect and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/philly-nice/philly-nice-chart" .. songExt .. ".json", "data/songs/philly-nice/philly-nice-metadata" .. songExt .. ".json", difficulty) else - weeks:generateNotes("data/songs/pico/pico-chart" .. (hasErect and "-erect" or "") .. ".json", "data/songs/pico/pico-metadata" .. (hasErect and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/pico/pico-chart" .. songExt .. ".json", "data/songs/pico/pico-metadata" .. songExt .. ".json", difficulty) end end, diff --git a/src/love/weeks/week4.lua b/src/love/weeks/week4.lua index a64c8df6..2e8c47b1 100644 --- a/src/love/weeks/week4.lua +++ b/src/love/weeks/week4.lua @@ -22,14 +22,14 @@ local sunset local bgLimo, limoDancer, limo return { - enter = function(self, from, songNum, songAppend, isErect) + enter = function(self, from, songNum, songAppend, _songExt) weeks:enter() stages["sunset"]:enter() song = songNum difficulty = songAppend - erectMode = isErect + songExt = _songExt self:load() end, @@ -39,17 +39,17 @@ return { stages["sunset"]:load() if song == 3 then - inst = love.audio.newSource("songs/milf/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/milf/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/milf/Voices-mom" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/milf/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/milf/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/milf/Voices-mom" .. songExt .. ".ogg", "stream") elseif song == 2 then - inst = love.audio.newSource("songs/high/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/high/Voices-bf" .. (erectMode and "-car-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/high/Voices-mom" .. (erectMode and "-car-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/high/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/high/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/high/Voices-mom" .. songExt .. ".ogg", "stream") else - inst = love.audio.newSource("songs/satin-panties/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/satin-panties/Voices-bf" .. (erectMode and "-car-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/satin-panties/Voices-mom" .. (erectMode and "-car-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/satin-panties/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/satin-panties/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/satin-panties/Voices-mom" .. songExt .. ".ogg", "stream") end self:initUI() @@ -61,11 +61,11 @@ return { weeks:initUI() if song == 3 then - weeks:generateNotes("data/songs/milf/milf-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/milf/milf-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/milf/milf-chart" .. songExt .. ".json", "data/songs/milf/milf-metadata" .. songExt .. ".json", difficulty) elseif song == 2 then - weeks:generateNotes("data/songs/high/high-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/high/high-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/high/high-chart" .. songExt .. ".json", "data/songs/high/high-metadata" .. songExt .. ".json", difficulty) else - weeks:generateNotes("data/songs/satin-panties/satin-panties-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/satin-panties/satin-panties-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/satin-panties/satin-panties-chart" .. songExt .. ".json", "data/songs/satin-panties/satin-panties-metadata" .. songExt .. ".json", difficulty) end end, diff --git a/src/love/weeks/week5.lua b/src/love/weeks/week5.lua index cc8a2337..ef21252c 100644 --- a/src/love/weeks/week5.lua +++ b/src/love/weeks/week5.lua @@ -24,7 +24,7 @@ local topBop, bottomBop, santa local scaryIntro = false return { - enter = function(self, from, songNum, songAppend, isErect) + enter = function(self, from, songNum, songAppend, _songExt) weeks:enter() stages["mall"]:enter() @@ -37,7 +37,7 @@ return { song = songNum difficulty = songAppend - erectMode = isErect + songExt = _songExt self:load() end, @@ -61,17 +61,17 @@ return { enemyIcon = icon.newIcon(icon.imagePath("monster")) - inst = love.audio.newSource("songs/winter-horrorland/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/winter-horrorland/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/winter-horrorland/Voices-monster" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/winter-horrorland/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/winter-horrorland/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/winter-horrorland/Voices-monster" .. songExt .. ".ogg", "stream") elseif song == 2 then - inst = love.audio.newSource("songs/eggnog/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/eggnog/Voices-bf" .. (erectMode and "-christmas-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/eggnog/Voices-parents-christmas" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/eggnog/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/eggnog/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/eggnog/Voices-parents-christmas" .. songExt .. ".ogg", "stream") else inst = love.audio.newSource("songs/cocoa/Inst.ogg", "stream") - voicesBF = love.audio.newSource("songs/cocoa/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/cocoa/Voices-parents-christmas" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/cocoa/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/cocoa/Voices-parents-christmas" .. songExt .. ".ogg", "stream") end weeks:load() @@ -102,11 +102,11 @@ return { weeks:initUI() if song == 3 then - weeks:generateNotes("data/songs/winter-horrorland/winter-horrorland-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/winter-horrorland/winter-horrorland-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/winter-horrorland/winter-horrorland-chart" .. songExt .. ".json", "data/songs/winter-horrorland/winter-horrorland-metadata" .. songExt .. ".json", difficulty) elseif song == 2 then - weeks:generateNotes("data/songs/eggnog/eggnog-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/eggnog/eggnog-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/eggnog/eggnog-chart" .. songExt .. ".json", "data/songs/eggnog/eggnog-metadata" .. songExt .. ".json", difficulty) else - weeks:generateNotes("data/songs/cocoa/cocoa-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/cocoa/cocoa-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/cocoa/cocoa-chart" .. songExt .. ".json", "data/songs/cocoa/cocoa-metadata" .. songExt .. ".json", difficulty) end end, diff --git a/src/love/weeks/week6.lua b/src/love/weeks/week6.lua index 539ba2e9..e04fa6f3 100644 --- a/src/love/weeks/week6.lua +++ b/src/love/weeks/week6.lua @@ -18,7 +18,7 @@ along with this program. If not, see . ------------------------------------------------------------------------------]] return { - enter = function(self, from, songNum, songAppend, isErect) + enter = function(self, from, songNum, songAppend, _songExt) love.graphics.setDefaultFilter("nearest") weeks:enter("pixel") @@ -35,7 +35,7 @@ return { song = songNum difficulty = songAppend - hasErect = isErect + songExt = _songExt self:load() @@ -65,17 +65,17 @@ return { weeks:load() if song == 3 then - inst = love.audio.newSource("songs/thorns/Inst" .. (hasErect and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/thorns/Voices-bf" .. (hasErect and "-pixel-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/thorns/Voices-spirit" .. (hasErect and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/thorns/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/thorns/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/thorns/Voices-spirit" .. songExt .. ".ogg", "stream") elseif song == 2 then - inst = love.audio.newSource("songs/roses/Inst" .. (hasErect and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/roses/Voices-bf" .. (hasErect and "-pixel-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/roses/Voices-senpai" .. (hasErect and "-angry-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/roses/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/roses/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/roses/Voices-senpai" .. songExt .. ".ogg", "stream") else - inst = love.audio.newSource("songs/senpai/Inst" .. (hasErect and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/senpai/Voices-bf" .. (hasErect and "-pixel-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/senpai/Voices-senpai" .. (hasErect and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/senpai/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/senpai/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/senpai/Voices-senpai" .. songExt .. ".ogg", "stream") end enemy.x, enemy.y = -340, -20 @@ -86,7 +86,7 @@ return { weeks:initUI("pixel") if song == 3 then - weeks:generateNotes("data/songs/thorns/thorns-chart" .. (hasErect and "-erect" or "") .. ".json", "data/songs/thorns/thorns-metadata" .. (hasErect and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/thorns/thorns-chart" .. songExt .. ".json", "data/songs/thorns/thorns-metadata" .. songExt .. ".json", difficulty) if storyMode and not died then dialogue.set("data/songs/thorns/thornsDialogue.txt") dialogue.addSpeaker("dad", graphics.newImage(graphics.imagePath("week6/spiritFaceForward")), 400, 250, 6, 6, false) @@ -106,7 +106,7 @@ return { weeks:setupCountdown() end elseif song == 2 then - weeks:generateNotes("data/songs/roses/roses-chart" .. (hasErect and "-erect" or "") .. ".json", "data/songs/roses/roses-metadata" .. (hasErect and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/roses/roses-chart" .. songExt .. ".json", "data/songs/roses/roses-metadata" .. songExt .. ".json", difficulty) if storyMode and not died then dialogue.set("data/songs/roses/rosesDialogue.txt") dialogue.addSpeaker("dad", love.filesystem.load("sprites/week6/angrySenpaiBox.lua")(), 650, 375, 6, 6, true, false) @@ -126,7 +126,7 @@ return { weeks:setupCountdown() end else - weeks:generateNotes("data/songs/senpai/senpai-chart" .. (hasErect and "-erect" or "") .. ".json", "data/songs/senpai/senpai-metadata" .. (hasErect and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/senpai/senpai-chart" .. songExt .. ".json", "data/songs/senpai/senpai-metadata" .. songExt .. ".json", difficulty) if storyMode and not died then dialogue.set("data/songs/senpai/senpaiDialogue.txt") diff --git a/src/love/weeks/week7.lua b/src/love/weeks/week7.lua index 5710a831..b9c5dc4a 100644 --- a/src/love/weeks/week7.lua +++ b/src/love/weeks/week7.lua @@ -1,5 +1,5 @@ return { - enter = function(self, from, songNum, songAppend, isErect) + enter = function(self, from, songNum, songAppend, _songExt) weeks:enter() stages["tank"]:enter() @@ -14,7 +14,7 @@ return { song = songNum difficulty = songAppend - erectMode = isErect + songExt = _songExt self:load() @@ -39,21 +39,21 @@ return { video:play() end - inst = love.audio.newSource("songs/stress/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/stress/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/stress/Voices-tankman" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/stress/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/stress/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/stress/Voices-tankman" .. songExt .. ".ogg", "stream") elseif song == 2 then - inst = love.audio.newSource("songs/guns/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/guns/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/guns/Voices-tankman" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/guns/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/guns/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/guns/Voices-tankman" .. songExt .. ".ogg", "stream") if storyMode and not died then video = cutscene.video("videos/gunsCutscene.ogv") video:play() end else - inst = love.audio.newSource("songs/ugh/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesBF = love.audio.newSource("songs/ugh/Voices-bf" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/ugh/Voices-tankman" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/ugh/Inst" .. songExt .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/ugh/Voices-bf" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/ugh/Voices-tankman" .. songExt .. ".ogg", "stream") if storyMode and not died then video = cutscene.video("videos/ughCutscene.ogv") video:play() @@ -71,8 +71,8 @@ return { weeks:initUI() if song == 3 then - weeks:generateNotes("data/songs/stress/stress-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/stress/stress-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) - weeks:generateGFNotes("data/songs/stress/stress-chart" .. (erectMode and "-erect" or "") .. ".json", "picospeaker") + weeks:generateNotes("data/songs/stress/stress-chart" .. songExt .. ".json", "data/songs/stress/stress-metadata" .. songExt .. ".json", difficulty) + weeks:generateGFNotes("data/songs/stress/stress-chart" .. songExt .. ".json", "picospeaker") tankmanRunImg = love.graphics.newImage(graphics.imagePath("week7/tankmanKilled1")) @@ -93,9 +93,9 @@ return { end end elseif song == 2 then - weeks:generateNotes("data/songs/guns/guns-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/guns/guns-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/guns/guns-chart" .. songExt .. ".json", "data/songs/guns/guns-metadata" .. songExt .. ".json", difficulty) else - weeks:generateNotes("data/songs/ugh/ugh-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/ugh/ugh-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/ugh/ugh-chart" .. songExt .. ".json", "data/songs/ugh/ugh-metadata" .. songExt .. ".json", difficulty) end end, diff --git a/src/love/weeks/weekend1.lua b/src/love/weeks/weekend1.lua index 53f06583..15edf718 100644 --- a/src/love/weeks/weekend1.lua +++ b/src/love/weeks/weekend1.lua @@ -26,14 +26,14 @@ local lastSaveDataBool = false local alternates = {false, false} return { - enter = function(self, from, songNum, songAppend, isErect) + enter = function(self, from, songNum, songAppend, _songExt) weeks:enter() stages["streets"]:enter() song = songNum difficulty = songAppend - erectMode = isErect + songExt = _songExt if love.system.getOS() ~= "NX" then gameCanvas = love.graphics.newCanvas(love.graphics.getWidth(), love.graphics.getHeight()) @@ -51,10 +51,10 @@ return { stages["streets"]:load() if song == 4 then - inst = love.audio.newSource("songs/blazin/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/blazin/Inst" .. songExt .. ".ogg", "stream") if curOS ~= "NX" then lovefftINST:init(1024) - lovefftINST:setSoundData("songs/blazin/Inst" .. (erectMode and "-erect" or "") .. ".ogg") + lovefftINST:setSoundData("songs/blazin/Inst" .. songExt .. ".ogg") end voicesBF = nil voicesEnemy = nil @@ -63,34 +63,34 @@ return { enemy = love.filesystem.load("sprites/characters/darnell-fighting.lua")() enemy.x = 350 elseif song == 3 then - inst = love.audio.newSource("songs/2hot/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/2hot/Inst" .. songExt .. ".ogg", "stream") if curOS ~= "NX" then lovefftINST:init(1024) - lovefftINST:setSoundData("songs/2hot/Inst" .. (erectMode and "-erect" or "") .. ".ogg") + lovefftINST:setSoundData("songs/2hot/Inst" .. songExt .. ".ogg") end - voicesBF = love.audio.newSource("songs/2hot/Voices-pico" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/2hot/Voices-darnell" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/2hot/Voices-pico" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/2hot/Voices-darnell" .. songExt .. ".ogg", "stream") rainShaderStartIntensity = 0.2 rainShaderEndIntensity = 0.4 elseif song == 2 then - inst = love.audio.newSource("songs/lit-up/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/lit-up/Inst" .. songExt .. ".ogg", "stream") if curOS ~= "NX" then lovefftINST:init(1024) - lovefftINST:setSoundData("songs/lit-up/Inst" .. (erectMode and "-erect" or "") .. ".ogg") + lovefftINST:setSoundData("songs/lit-up/Inst" .. songExt .. ".ogg") end - voicesBF = love.audio.newSource("songs/lit-up/Voices-pico" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/lit-up/Voices-darnell" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/lit-up/Voices-pico" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/lit-up/Voices-darnell" .. songExt .. ".ogg", "stream") rainShaderStartIntensity = 0.1 rainShaderEndIntensity = 0.2 else - inst = love.audio.newSource("songs/darnell/Inst" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + inst = love.audio.newSource("songs/darnell/Inst" .. songExt .. ".ogg", "stream") if curOS ~= "NX" then lovefftINST:init(1024) - lovefftINST:setSoundData("songs/darnell/Inst" .. (erectMode and "-erect" or "") .. ".ogg") + lovefftINST:setSoundData("songs/darnell/Inst" .. songExt .. ".ogg") end - voicesBF = love.audio.newSource("songs/darnell/Voices-pico" .. (erectMode and "-erect" or "") .. ".ogg", "stream") - voicesEnemy = love.audio.newSource("songs/darnell/Voices-darnell" .. (erectMode and "-erect" or "") .. ".ogg", "stream") + voicesBF = love.audio.newSource("songs/darnell/Voices-pico" .. songExt .. ".ogg", "stream") + voicesEnemy = love.audio.newSource("songs/darnell/Voices-darnell" .. songExt .. ".ogg", "stream") rainShaderStartIntensity = 0 rainShaderEndIntensity = 0.1 @@ -107,7 +107,7 @@ return { video:play() end elseif song == 4 then - weeks:generateNotes("data/songs/blazin/blazin-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/blazin/blazin-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/blazin/blazin-chart" .. songExt .. ".json", "data/songs/blazin/blazin-metadata" .. songExt .. ".json", difficulty) for i = 1, 4 do enemyArrows[i].visible = false @@ -131,11 +131,11 @@ return { video:play() end elseif song == 3 then - weeks:generateNotes("data/songs/2hot/2hot-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/2hot/2hot-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/2hot/2hot-chart" .. songExt .. ".json", "data/songs/2hot/2hot-metadata" .. songExt .. ".json", difficulty) elseif song == 2 then - weeks:generateNotes("data/songs/lit-up/lit-up-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/lit-up/lit-up-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/lit-up/lit-up-chart" .. songExt .. ".json", "data/songs/lit-up/lit-up-metadata" .. songExt .. ".json", difficulty) else - weeks:generateNotes("data/songs/darnell/darnell-chart" .. (erectMode and "-erect" or "") .. ".json", "data/songs/darnell/darnell-metadata" .. (erectMode and "-erect" or "") .. ".json", difficulty) + weeks:generateNotes("data/songs/darnell/darnell-chart" .. songExt .. ".json", "data/songs/darnell/darnell-metadata" .. songExt .. ".json", difficulty) if storyMode and not died then video = cutscene.video("videos/darnellCutscene.ogv") @@ -151,7 +151,6 @@ return { onNoteHit = function(self, character, noteType, rating, id) -- rating is "EnemyHit" when an enemy hits it. Can be used to determine if the player hit it or the enemy hit it when needed -- Return "true" to not play ANY animations, return "false" or nothing to play the default animations - if not util.startsWith(noteType or "", "weekend-1-") then return false end if rating == "EnemyHit" then if noteType == "weekend-1-lightcan" then @@ -166,82 +165,86 @@ return { end -- blazin - if noteType == "weekend-1-blockhigh" then - alternates[1] = not alternates[1] - enemy:animate("punch high" .. (alternates[1] and " 2" or "")) - elseif noteType == "weekend-1-blocklow" then - alternates[1] = not alternates[1] - enemy:animate("punch low" .. (alternates[1] and " 2" or "")) - elseif noteType == "weekend-1-blockspin" then - alternates[1] = not alternates[1] - enemy:animate("punch high" .. (alternates[1] and " 2" or "")) - - elseif noteType == "weekend-1-punchlow" then - alternates[1] = not alternates[1] - enemy:animate("punch low" .. (alternates[1] and " 2" or "")) - elseif noteType == "weekend-1-punchlowblocked" then - alternates[1] = not alternates[1] - enemy:animate("punch low" .. (alternates[1] and " 2" or "")) - elseif noteType == "weekend-1-punchlowdodged" then - alternates[1] = not alternates[1] - enemy:animate("punch low" .. (alternates[1] and " 2" or "")) - elseif noteType == "weekend-1-punchlowspin" then - alternates[1] = not alternates[1] - enemy:animate("punch low" .. (alternates[1] and " 2" or "")) - - elseif noteType == "weekend-1-punchhigh" then - enemy:animate("hit high") - elseif noteType == "weekend-1-punchhighblocked" then - enemy:animate("blocking") - elseif noteType == "weekend-1-punchhighdodged" then - enemy:animate("dodge") - elseif noteType == "weekend-1-punchhighspin" then - enemy:animate("spin") - - elseif noteType == "weekend-1-dodgehigh" then - alternates[1] = not alternates[1] - enemy:animate("punch high" .. (alternates[1] and " 2" or "")) - elseif noteType == "weekend-1-dodgelow" then - alternates[1] = not alternates[1] - enemy:animate("punch low" .. (alternates[1] and " 2" or "")) - elseif noteType == "weekend-1-dodgespin" then - alternates[1] = not alternates[1] - enemy:animate("punch high" .. (alternates[1] and " 2" or "")) - - elseif noteType == "weekend-1-hithigh" then - alternates[1] = not alternates[1] - enemy:animate("punch high" .. (alternates[1] and " 2" or "")) - elseif noteType == "weekend-1-hitlow" then - alternates[1] = not alternates[1] - enemy:animate("punch low" .. (alternates[1] and " 2" or "")) - - elseif noteType == "weekend-1-hitspin" then - alternates[1] = not alternates[1] - enemy:animate("punch high" .. (alternates[1] and " 2" or "")) - elseif noteType == "weekend-1-picouppercutprep" then - alternates[1] = not alternates[1] - enemy:animate("punch high" .. (alternates[1] and " 2" or "")) - elseif noteType == "weekend-1-picouppercut" then - - - elseif noteType == "weekend-1-darnelluppercutprep" then - alternates[1] = not alternates[1] - enemy:animate("pre-uppercut") - elseif noteType == "weekend-1-darnelluppercut" then - enemy:animate("uppercut") - elseif noteType == "weekend-1-idle" then - enemy:animate("idle") - elseif noteType == "weekend-1-fakeout" then - enemy:animate("fake out") - elseif noteType == "weekend-1-taunt" then - enemy:animate("cringe") - elseif noteType == "weekend-1-tauntforce" then - enemy:animate("pissed") - elseif noteType == "weekend-1-reversefakeout" then - enemy:animate("fake out") - end + if song == 4 then + if not util.startsWith(noteType or "", "weekend-1-") then return false end + + if noteType == "weekend-1-blockhigh" then + alternates[1] = not alternates[1] + enemy:animate("punch high" .. (alternates[1] and " 2" or "")) + elseif noteType == "weekend-1-blocklow" then + alternates[1] = not alternates[1] + enemy:animate("punch low" .. (alternates[1] and " 2" or "")) + elseif noteType == "weekend-1-blockspin" then + alternates[1] = not alternates[1] + enemy:animate("punch high" .. (alternates[1] and " 2" or "")) + + elseif noteType == "weekend-1-punchlow" then + alternates[1] = not alternates[1] + enemy:animate("punch low" .. (alternates[1] and " 2" or "")) + elseif noteType == "weekend-1-punchlowblocked" then + alternates[1] = not alternates[1] + enemy:animate("punch low" .. (alternates[1] and " 2" or "")) + elseif noteType == "weekend-1-punchlowdodged" then + alternates[1] = not alternates[1] + enemy:animate("punch low" .. (alternates[1] and " 2" or "")) + elseif noteType == "weekend-1-punchlowspin" then + alternates[1] = not alternates[1] + enemy:animate("punch low" .. (alternates[1] and " 2" or "")) + + elseif noteType == "weekend-1-punchhigh" then + enemy:animate("hit high") + elseif noteType == "weekend-1-punchhighblocked" then + enemy:animate("blocking") + elseif noteType == "weekend-1-punchhighdodged" then + enemy:animate("dodge") + elseif noteType == "weekend-1-punchhighspin" then + enemy:animate("spin") + + elseif noteType == "weekend-1-dodgehigh" then + alternates[1] = not alternates[1] + enemy:animate("punch high" .. (alternates[1] and " 2" or "")) + elseif noteType == "weekend-1-dodgelow" then + alternates[1] = not alternates[1] + enemy:animate("punch low" .. (alternates[1] and " 2" or "")) + elseif noteType == "weekend-1-dodgespin" then + alternates[1] = not alternates[1] + enemy:animate("punch high" .. (alternates[1] and " 2" or "")) + + elseif noteType == "weekend-1-hithigh" then + alternates[1] = not alternates[1] + enemy:animate("punch high" .. (alternates[1] and " 2" or "")) + elseif noteType == "weekend-1-hitlow" then + alternates[1] = not alternates[1] + enemy:animate("punch low" .. (alternates[1] and " 2" or "")) + + elseif noteType == "weekend-1-hitspin" then + alternates[1] = not alternates[1] + enemy:animate("punch high" .. (alternates[1] and " 2" or "")) + elseif noteType == "weekend-1-picouppercutprep" then + alternates[1] = not alternates[1] + enemy:animate("punch high" .. (alternates[1] and " 2" or "")) + elseif noteType == "weekend-1-picouppercut" then + + + elseif noteType == "weekend-1-darnelluppercutprep" then + alternates[1] = not alternates[1] + enemy:animate("pre-uppercut") + elseif noteType == "weekend-1-darnelluppercut" then + enemy:animate("uppercut") + elseif noteType == "weekend-1-idle" then + enemy:animate("idle") + elseif noteType == "weekend-1-fakeout" then + enemy:animate("fake out") + elseif noteType == "weekend-1-taunt" then + enemy:animate("cringe") + elseif noteType == "weekend-1-tauntforce" then + enemy:animate("pissed") + elseif noteType == "weekend-1-reversefakeout" then + enemy:animate("fake out") + end - return true + return true + end end, update = function(self, dt) @@ -284,24 +287,30 @@ return { return end -- The switch is too weak for shaders :( - if love.system.getOS() ~= "NX" then love.graphics.setCanvas(gameCanvas) end + local lastCanvas = love.graphics.getCanvas() + if love.system.getOS() ~= "NX" then + love.graphics.setCanvas(gameCanvas) + + end love.graphics.push() love.graphics.translate(graphics.getWidth() / 2, graphics.getHeight() / 2) love.graphics.scale(camera.zoom, camera.zoom) stages["streets"]:draw() love.graphics.pop() - if love.system.getOS() ~= "NX" then love.graphics.setCanvas() end + if love.system.getOS() ~= "NX" then + love.graphics.setCanvas(lastCanvas) + + end if love.system.getOS() ~= "NX" then love.graphics.setShader(shaders["rain"]) - love.graphics.draw(gameCanvas, 0, 0, 0, love.graphics.getWidth() / 1280, love.graphics.getHeight() / 720) + love.graphics.draw(gameCanvas) love.graphics.setShader() end if love.system.getOS() ~= "NX" then love.graphics.push() -- canvas' fuck with the game so we need to do this lol - love.graphics.scale(love.graphics.getWidth() / 1280, love.graphics.getHeight() / 720) end weeks:drawUI() if love.system.getOS() ~= "NX" then