This commit is contained in:
entar 2025-06-09 21:37:06 +07:00
parent 0021509866
commit b3250846f0
44 changed files with 1786 additions and 38 deletions

View File

@ -13,7 +13,7 @@
},
{
"offsets": [
54,
-54,
49
],
"loop": false,
@ -35,7 +35,7 @@
},
{
"offsets": [
89,
-89,
-12
],
"loop": false,
@ -46,7 +46,7 @@
},
{
"offsets": [
-23,
23,
-31
],
"loop": false,

View File

@ -1,6 +1,6 @@
{
"song": {
"player1": "bf-pixel",
"player1": "bf",
"player2": "senpai",
"notes": [
{
@ -2366,7 +2366,7 @@
"mustHitSection": true
}
],
"gfVersion": "gf-pixel",
"gfVersion": "gf",
"events": [],
"player3": null,
"song": "Senpai",
@ -2374,6 +2374,7 @@
"needsVoices": true,
"stage": "school",
"speed": 1.4,
"bpm": 144
"bpm": 144,
"noteskin": ""
}
}

View File

@ -4,9 +4,20 @@ local song
local videoStream
local video
local random
local module = {}
function module.onCreate(songName)
random = math.random(1, 25)
if not module.shared.tankmanLoaded then
module.shared.tankmanLoaded = {}
end
if not module.shared.tankmanLoaded[random] then
module.shared.tankmanLoaded[random] = love.audio.newSource(string.format("sounds/week7/death/jeffGameover-%s.ogg", random), "stream")
end
if songName == "Ugh" then
module.shared.canStart = false
song = songName
@ -23,6 +34,10 @@ function module.onUpdate()
module.shared.canStart = true
video = nil
videoStream = nil
else
if love.keyboard.isDown("space") and videoStream and videoStream:isPlaying() then
videoStream:pause()
end
end
end
end
@ -45,4 +60,8 @@ function module.onClose()
end
end
function module.onDeath()
module.shared.tankmanLoaded[random]:play()
end
return module

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
images/weeb/weebSchool.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

BIN
images/weeb/weebSky.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

BIN
images/weeb/weebStreet.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

87
log.log

File diff suppressed because one or more lines are too long

View File

@ -28,10 +28,20 @@ local function state(songName, songDifficulty)
local sharedVars = {
canStart = true,
screenSize = myTypes.Vector2(1280, 720),
canvasSize = myTypes.Vector2(1920,1080),
singVectors = {
singLEFT = myTypes.Vector2(20, 0),
singDOWN = myTypes.Vector2(0, -20),
singUP = myTypes.Vector2(0, 20),
singRIGHT = myTypes.Vector2(-20, 0),
["singLEFT-alt"] = myTypes.Vector2(20, 0), -- alt anims need to be here too
["singDOWN-alt"] = myTypes.Vector2(0, -20),
["singUP-alt"] = myTypes.Vector2(0, 20),
["singRIGHT-alt"] = myTypes.Vector2(-20, 0)
}
}
local countDown = true
local speed = chart.speed and chart.speed / 3 or 0.5
local miss = love.audio.newSource("sounds/missnote1.ogg", "static")
@ -130,17 +140,6 @@ local function state(songName, songDifficulty)
"red"
}
local singVectors = {
singLEFT = myTypes.Vector2(20, 0),
singDOWN = myTypes.Vector2(0, -20),
singUP = myTypes.Vector2(0, 20),
singRIGHT = myTypes.Vector2(-20, 0),
["singLEFT-alt"] = myTypes.Vector2(20, 0), -- alt anims need to be here too
["singDOWN-alt"] = myTypes.Vector2(0, -20),
["singUP-alt"] = myTypes.Vector2(0, 20),
["singRIGHT-alt"] = myTypes.Vector2(-20, 0)
}
local font = love.graphics.newFont("fonts/Phantomuff.ttf", 15)
local biggerFont = love.graphics.newFont("fonts/Phantomuff.ttf", 30)
local evenBiggerFont = love.graphics.newFont("fonts/FridayNightFunkin-Regular.ttf", 50)
@ -204,6 +203,9 @@ local function state(songName, songDifficulty)
if modules then
for index, module in next, modules do
if module.onDeath then
module.onDeath()
end
if module.onClose then
module.onClose()
modules[index] = nil
@ -277,6 +279,7 @@ local function state(songName, songDifficulty)
end
if sharedVars.canStart then
sharedVars.canStart = false -- already started
inst:play()
if chart.needsVoices then
voices:play()
@ -370,19 +373,19 @@ local function state(songName, songDifficulty)
if section then
if not section.gfSection then
if section.mustHitSection then
local currentSingVector = singVectors[characters.bf.animation] or myTypes.Vector2()
local currentSingVector = sharedVars.singVectors[characters.bf.animation] or myTypes.Vector2()
myTypes.render.cameraTarget = myTypes.Vector2(-stage.camera_boyfriend[1], -stage.camera_boyfriend[2]):Add(characters.bf.stageCamera:Negate()):Add(myTypes.Vector2(0, -200)):Add(currentSingVector)
else
if characters.dad then
local currentSingVector = singVectors[characters.dad.animation] or myTypes.Vector2()
local currentSingVector = sharedVars.singVectors[characters.dad.animation] or myTypes.Vector2()
myTypes.render.cameraTarget = myTypes.Vector2(stage.camera_opponent[1], stage.camera_opponent[2]):Add(characters.dad.stageCamera:Negate()):Add(myTypes.Vector2(0, -200)):Add(currentSingVector)
else
local currentSingVector = singVectors[characters.gf.animation] or myTypes.Vector2()
local currentSingVector = sharedVars.singVectors[characters.gf.animation] or myTypes.Vector2()
myTypes.render.cameraTarget = myTypes.Vector2(stage.camera_girlfriend[1], stage.camera_girlfriend[2]):Add(characters.gf.stageCamera:Negate()):Add(myTypes.Vector2(0, -200)):Add(currentSingVector)
end
end
else
local currentSingVector = singVectors[characters.gf.animation] or myTypes.Vector2()
local currentSingVector = sharedVars.singVectors[characters.gf.animation] or myTypes.Vector2()
myTypes.render.cameraTarget = myTypes.Vector2(stage.camera_girlfriend[1], stage.camera_girlfriend[2]):Add(characters.gf.stageCamera:Negate()):Add(myTypes.Vector2(0, -200)):Add(currentSingVector)
end
end
@ -540,7 +543,7 @@ local function state(songName, songDifficulty)
::continue::
end
local mainCanvas = love.graphics.newCanvas(1920, 1080)
local mainCanvas
function state.draw()
@ -580,7 +583,7 @@ local function state(songName, songDifficulty)
end
end
end
-- HEALTH BAR
for i, module in next, modules do
if module.onDraw then
module.onDraw() --mainly for cutscenes i guess
@ -589,14 +592,12 @@ local function state(songName, songDifficulty)
love.graphics.setCanvas()
love.graphics.draw(mainCanvas, (love.graphics.getWidth() - (love.graphics.getWidth() * zoom)) / 2, (love.graphics.getHeight() - love.graphics.getHeight() * zoom) / 2, 0, love.graphics.getWidth()/1920 * zoom, (love.graphics.getHeight()/1080 * zoom))
love.graphics.draw(mainCanvas, (love.graphics.getWidth() - (love.graphics.getWidth() * zoom)) / 2, (love.graphics.getHeight() - love.graphics.getHeight() * zoom) / 2, 0, love.graphics.getWidth()/sharedVars.canvasSize.x * zoom, (love.graphics.getHeight()/sharedVars.canvasSize.y * zoom))
love.graphics.print({{0,0,0,1}, string.format("FPS: %s \nVolume: %s", love.timer.getFPS(), volume)}, font)
end
love.window.setMode(1280, 720, { fullscreen = false , resizable = false})
function state.load()
settings = json.parse(files.read_file("settings.json"))
if not settings then
@ -640,22 +641,26 @@ local function state(songName, songDifficulty)
characters.bf = myTypes.character(chart.player1)
characters.bf.stagePosition = myTypes.Vector2(stage.boyfriend[1], stage.boyfriend[2])
characters.bf:PlayAnimation("idle")
characters.bf.sprite.layer = 1
local image = love.graphics.newImage(string.format("images/icons/icon-%s.png", characters.bf.icon))
icons.bf = {image = image, alive = love.graphics.newQuad(0,0, 150, 150, image), dead = love.graphics.newQuad(150, 0, 150, 150, image)}
characters.bf.sprite.layer = 1
if chart.player2 ~= "none" then -- you can have no player2 but always player1
characters.dad = myTypes.character(chart.player2)
characters.dad.stagePosition = myTypes.Vector2(stage.opponent[1], stage.opponent[2])
characters.dad:PlayAnimation(characters.dad.animInfo.idle and "idle" or "danceLeft")
characters.dad.sprite.layer = 1
local image = love.graphics.newImage(string.format("images/icons/icon-%s.png", characters.dad.icon))
icons.dad = {image = image, alive = love.graphics.newQuad(0,0, 150, 150, image), dead = love.graphics.newQuad(150, 0, 150, 150, image)}
characters.dad.sprite.layer = 1
end
conductor.stepCrochet = conductor:calculateCrochet(chart.bpm)/4
local noteSkin = chart.noteSkin or "NOTE_assets"
local noteSplash = chart.splashSkin or "noteSplashes"
for i = 0, 3 do
local receptor = myTypes.Rect("sprites/NOTE_assets.png", "sprites/NOTE_assets.json")
receptor:Frame("arrow"..directions[i+1], 0)
@ -821,12 +826,13 @@ local function state(songName, songDifficulty)
setfenv(func, newEnv)
::evilContinue::
end
module.characters = characters
module.shared = sharedVars
if module.onCreate then
module.onCreate(chart.song)
end
module.characters = characters
module.shared = sharedVars
if module.onCreate then
module.onCreate(chart.song)
end
end
end
@ -856,10 +862,20 @@ local function state(songName, songDifficulty)
goodImage.resize = myTypes.Vector2(0.5,0.5)
badImage.resize = myTypes.Vector2(0.5,0.5)
shitImage.resize = myTypes.Vector2(0.5,0.5)
local canvasSize = sharedVars.canvasSize or myTypes.Vector2(1920,1080)
mainCanvas = love.graphics.newCanvas(canvasSize.x, canvasSize.y)
local screenSize = sharedVars.screenSize or myTypes.Vector2(1280, 720)
love.window.setMode(screenSize.x, screenSize.y, { fullscreen = false , resizable = false})
end
function state.finish()
if sharedVars.canStart then
sharedVars.canStart = false -- already started
inst:play()
if chart.needsVoices then
voices:play()
@ -874,7 +890,6 @@ local function state(songName, songDifficulty)
startTime = socket.gettime()
sharedVars.canStart = false -- already started
end
end

View File

@ -25,6 +25,10 @@ function Vector2:Mul(num)
return module.Vector2(self.x * num, self.y * num)
end
function Vector2:Div(num)
return module.Vector2(self.x / num, self.y / num)
end
function module.Vector2(x, y)
return setmetatable({x = x or 0, y = y or 0}, Vector2)
end

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

427
sprites/weeb/bgFreaks.json Normal file
View File

@ -0,0 +1,427 @@
{
"TextureAtlas": {
"SubTexture": [
{
"_name": "BG fangirls dissuaded0000",
"_x": "0",
"_y": "0",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0001",
"_x": "0",
"_y": "0",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0002",
"_x": "461",
"_y": "0",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0003",
"_x": "461",
"_y": "0",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0004",
"_x": "461",
"_y": "0",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0005",
"_x": "461",
"_y": "0",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0006",
"_x": "0",
"_y": "106",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0007",
"_x": "0",
"_y": "106",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0008",
"_x": "0",
"_y": "106",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0009",
"_x": "0",
"_y": "106",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0010",
"_x": "0",
"_y": "106",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0011",
"_x": "0",
"_y": "106",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0012",
"_x": "0",
"_y": "106",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0013",
"_x": "0",
"_y": "106",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0014",
"_x": "461",
"_y": "106",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0015",
"_x": "461",
"_y": "106",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0016",
"_x": "0",
"_y": "212",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0017",
"_x": "0",
"_y": "212",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0018",
"_x": "461",
"_y": "212",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0019",
"_x": "461",
"_y": "212",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0020",
"_x": "0",
"_y": "318",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0021",
"_x": "0",
"_y": "318",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0022",
"_x": "461",
"_y": "318",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0023",
"_x": "461",
"_y": "318",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0024",
"_x": "461",
"_y": "318",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0025",
"_x": "461",
"_y": "318",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0026",
"_x": "461",
"_y": "318",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0027",
"_x": "461",
"_y": "318",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0028",
"_x": "461",
"_y": "318",
"_width": "451",
"_height": "96"
},
{
"_name": "BG fangirls dissuaded0029",
"_x": "461",
"_y": "318",
"_width": "451",
"_height": "96"
},
{
"_name": "BG girls group0000",
"_x": "0",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0001",
"_x": "0",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0002",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0003",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0004",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0005",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0006",
"_x": "0",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0007",
"_x": "0",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0008",
"_x": "0",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0009",
"_x": "0",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0010",
"_x": "0",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0011",
"_x": "0",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0012",
"_x": "0",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0013",
"_x": "0",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0014",
"_x": "460",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0015",
"_x": "460",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0016",
"_x": "0",
"_y": "636",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0017",
"_x": "0",
"_y": "636",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0018",
"_x": "0",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0019",
"_x": "0",
"_y": "530",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0020",
"_x": "460",
"_y": "636",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0021",
"_x": "460",
"_y": "636",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0022",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0023",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0024",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0025",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0026",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0027",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0028",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
},
{
"_name": "BG girls group0029",
"_x": "460",
"_y": "424",
"_width": "450",
"_height": "96"
}
],
"_imagePath": "bgFreaks.png"
}
}

BIN
sprites/weeb/bgFreaks.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
sprites/weeb/petals.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

59
sprites/weeb/petals.xml Normal file
View File

@ -0,0 +1,59 @@
<?xml version="1.0" encoding="utf-8"?>
<TextureAtlas imagePath="petals.png">
<SubTexture name="PETALS ALL0000" x="0" y="0" width="311" height="161" />
<SubTexture name="PETALS ALL0001" x="0" y="0" width="311" height="161" />
<SubTexture name="PETALS ALL0002" x="313" y="0" width="311" height="161" />
<SubTexture name="PETALS ALL0003" x="313" y="0" width="311" height="161" />
<SubTexture name="PETALS ALL0004" x="626" y="0" width="311" height="161" />
<SubTexture name="PETALS ALL0005" x="939" y="0" width="311" height="161" />
<SubTexture name="PETALS ALL0006" x="1252" y="0" width="311" height="161" />
<SubTexture name="PETALS ALL0007" x="1252" y="0" width="311" height="161" />
<SubTexture name="PETALS ALL0008" x="1565" y="0" width="311" height="161" />
<SubTexture name="PETALS ALL0009" x="0" y="163" width="311" height="161" />
<SubTexture name="PETALS ALL0010" x="313" y="163" width="311" height="161" />
<SubTexture name="PETALS ALL0011" x="626" y="163" width="311" height="161" />
<SubTexture name="PETALS ALL0012" x="939" y="163" width="311" height="161" />
<SubTexture name="PETALS ALL0013" x="1252" y="163" width="311" height="161" />
<SubTexture name="PETALS ALL0014" x="1252" y="163" width="311" height="161" />
<SubTexture name="PETALS ALL0015" x="1565" y="163" width="311" height="161" />
<SubTexture name="PETALS ALL0016" x="0" y="326" width="311" height="161" />
<SubTexture name="PETALS ALL0017" x="313" y="326" width="311" height="161" />
<SubTexture name="PETALS ALL0018" x="313" y="326" width="311" height="161" />
<SubTexture name="PETALS ALL0019" x="626" y="326" width="311" height="161" />
<SubTexture name="PETALS ALL0020" x="939" y="326" width="311" height="161" />
<SubTexture name="PETALS ALL0021" x="1252" y="326" width="311" height="161" />
<SubTexture name="PETALS ALL0022" x="1252" y="326" width="311" height="161" />
<SubTexture name="PETALS ALL0023" x="1565" y="326" width="311" height="161" />
<SubTexture name="PETALS ALL0024" x="0" y="489" width="311" height="161" />
<SubTexture name="PETALS ALL0025" x="313" y="489" width="311" height="161" />
<SubTexture name="PETALS ALL0026" x="626" y="489" width="311" height="161" />
<SubTexture name="PETALS ALL0027" x="939" y="489" width="311" height="161" />
<SubTexture name="PETALS ALL0028" x="1252" y="489" width="311" height="161" />
<SubTexture name="PETALS ALL0029" x="1565" y="489" width="311" height="161" />
<SubTexture name="PETALS ALL0030" x="0" y="652" width="311" height="161" />
<SubTexture name="PETALS ALL0031" x="313" y="652" width="311" height="161" />
<SubTexture name="PETALS ALL0032" x="626" y="652" width="311" height="161" />
<SubTexture name="PETALS ALL0033" x="939" y="652" width="311" height="161" />
<SubTexture name="PETALS ALL0034" x="1252" y="652" width="311" height="161" />
<SubTexture name="PETALS ALL0035" x="1252" y="652" width="311" height="161" />
<SubTexture name="PETALS ALL0036" x="1565" y="652" width="311" height="161" />
<SubTexture name="PETALS ALL0037" x="0" y="815" width="311" height="161" />
<SubTexture name="PETALS ALL0038" x="313" y="815" width="311" height="161" />
<SubTexture name="PETALS ALL0039" x="313" y="815" width="311" height="161" />
<SubTexture name="PETALS ALL0040" x="626" y="815" width="311" height="161" />
<SubTexture name="PETALS ALL0041" x="939" y="815" width="311" height="161" />
<SubTexture name="PETALS ALL0042" x="939" y="815" width="311" height="161" />
<SubTexture name="PETALS ALL0043" x="1252" y="815" width="311" height="161" />
<SubTexture name="PETALS ALL0044" x="1565" y="815" width="311" height="161" />
<SubTexture name="PETALS ALL0045" x="0" y="978" width="311" height="161" />
<SubTexture name="PETALS ALL0046" x="313" y="978" width="311" height="161" />
<SubTexture name="PETALS ALL0047" x="626" y="978" width="311" height="161" />
<SubTexture name="PETALS ALL0048" x="939" y="978" width="311" height="161" />
<SubTexture name="PETALS ALL0049" x="1252" y="978" width="311" height="161" />
<SubTexture name="PETALS ALL0050" x="1565" y="978" width="311" height="161" />
<SubTexture name="PETALS ALL0051" x="0" y="1141" width="311" height="161" />
<SubTexture name="PETALS ALL0052" x="313" y="1141" width="311" height="161" />
<SubTexture name="PETALS ALL0053" x="313" y="1141" width="311" height="161" />
<SubTexture name="PETALS ALL0054" x="626" y="1141" width="311" height="161" />
<SubTexture name="PETALS ALL0055" x="0" y="0" width="311" height="161" />
</TextureAtlas>

BIN
sprites/weeb/weebTrees.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

15
stages/school.json Normal file
View File

@ -0,0 +1,15 @@
{
"directory": "week6",
"defaultZoom": 1.05,
"isPixelStage": true,
"boyfriend": [970, 320],
"girlfriend": [580, 430],
"opponent": [100, 100],
"hide_girlfriend": false,
"camera_boyfriend": [-100, -100],
"camera_opponent": [0, 0],
"camera_girlfriend": [0, 0],
"camera_speed": 1
}

38
stages/school.lua Normal file
View File

@ -0,0 +1,38 @@
local mytypes = require('modules.types')
local module = {}
function module.onCreate()
module.shared.canvasSize = mytypes.Vector2(311, 161)
module.shared.screenSize = mytypes.Vector2(967, 500)
for index, dir in next, module.shared.singVectors do
module.shared.singVectors[index] = dir:Div(5)
end
love.graphics.setDefaultFilter("nearest", "nearest", 0)
local sky = mytypes.Image("images/weeb/weebSky.png")
sky.modifier = 0
sky.layer = -15
local backTrees = mytypes.Image("images/weeb/weebBackTrees.png", .1)
backTrees.layer = -14
backTrees.position = mytypes.Vector2(-10)
local school = mytypes.Image("images/weeb/weebSchool.png", .4)
school.layer = -10
backTrees.position = mytypes.Vector2(-15)
local road = mytypes.Image("images/weeb/weebStreet.png", 1)
road.layer = -9
backTrees.position = mytypes.Vector2(-50, 30)
local ZHENSHINI = mytypes.Sprite("sprites/weeb/bgFreaks.png", "sprites/weeb/bgFreaks.json")
ZHENSHINI.layer = -2
backTrees.position = mytypes.Vector2(-70, 50)
end
return module