Tankman
@ -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,
|
||||
|
@ -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": ""
|
||||
}
|
||||
}
|
@ -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
|
BIN
images/weeb/weebBackTrees.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
images/weeb/weebSchool.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
BIN
images/weeb/weebSky.png
Normal file
After Width: | Height: | Size: 2.7 KiB |
BIN
images/weeb/weebStreet.png
Normal file
After Width: | Height: | Size: 4.4 KiB |
BIN
images/weeb/weebTreesBack.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
@ -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
|
||||
|
||||
|
@ -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
|
||||
|
BIN
sounds/week7/death/jeffGameover-1.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-10.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-11.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-12.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-13.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-14.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-15.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-16.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-17.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-18.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-19.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-2.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-20.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-21.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-22.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-23.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-24.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-25.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-3.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-4.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-5.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-6.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-7.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-8.ogg
Normal file
BIN
sounds/week7/death/jeffGameover-9.ogg
Normal file
1085
sprites/characters/senpai.json
Normal file
427
sprites/weeb/bgFreaks.json
Normal 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
After Width: | Height: | Size: 32 KiB |
BIN
sprites/weeb/petals.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
59
sprites/weeb/petals.xml
Normal 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
After Width: | Height: | Size: 16 KiB |
15
stages/school.json
Normal 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
@ -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
|