nothing special 👀
144
characters/eeveefriend.json
Normal file
@ -0,0 +1,144 @@
|
||||
{
|
||||
"animations": [
|
||||
{
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"loop": false,
|
||||
"fps": 12,
|
||||
"anim": "danceLeft",
|
||||
"indices": [],
|
||||
"name": "eeveefriend idle"
|
||||
},
|
||||
{
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"loop": true,
|
||||
"fps": 12,
|
||||
"anim": "sad2",
|
||||
"indices": [
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1
|
||||
],
|
||||
"name": "eeveefriend two miss"
|
||||
},
|
||||
{
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"loop": true,
|
||||
"fps": 12,
|
||||
"anim": "sad3",
|
||||
"indices": [
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1
|
||||
],
|
||||
"name": "eeveefriend three miss"
|
||||
},
|
||||
{
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"loop": true,
|
||||
"fps": 12,
|
||||
"anim": "sad4",
|
||||
"indices": [
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1
|
||||
],
|
||||
"name": "eeveefriend four miss"
|
||||
},
|
||||
{
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"loop": true,
|
||||
"fps": 12,
|
||||
"anim": "die",
|
||||
"indices": [],
|
||||
"name": "eeveefriend die"
|
||||
},
|
||||
{
|
||||
"loop": false,
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"anim": "danceRight",
|
||||
"fps": 12,
|
||||
"name": "eeveefriend idle",
|
||||
"indices": []
|
||||
},
|
||||
{
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"indices": [
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1,
|
||||
0,
|
||||
1
|
||||
],
|
||||
"fps": 12,
|
||||
"anim": "sad1",
|
||||
"loop": false,
|
||||
"name": "eeveefriend one miss"
|
||||
}
|
||||
],
|
||||
"no_antialiasing": true,
|
||||
"image": "sprites/characters/secret/eeveefriend",
|
||||
"position": [
|
||||
0,
|
||||
390
|
||||
],
|
||||
"healthicon": "pika",
|
||||
"flip_x": false,
|
||||
"healthbar_colors": [
|
||||
70,
|
||||
70,
|
||||
70
|
||||
],
|
||||
"camera_position": [
|
||||
-170,
|
||||
-230
|
||||
],
|
||||
"sing_duration": 4,
|
||||
"scale": 8
|
||||
}
|
100
characters/pikafriend.json
Normal file
@ -0,0 +1,100 @@
|
||||
{
|
||||
"animations": [
|
||||
{
|
||||
"loop": false,
|
||||
"offsets": [
|
||||
-1,
|
||||
0
|
||||
],
|
||||
"anim": "idle",
|
||||
"fps": 12,
|
||||
"name": "Pikafriend idle",
|
||||
"indices": []
|
||||
},
|
||||
{
|
||||
"loop": false,
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"anim": "singLEFT",
|
||||
"fps": 12,
|
||||
"name": "Pikafriend left",
|
||||
"indices": []
|
||||
},
|
||||
{
|
||||
"loop": false,
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"anim": "singRIGHT",
|
||||
"fps": 12,
|
||||
"name": "Pikafriend right",
|
||||
"indices": []
|
||||
},
|
||||
{
|
||||
"loop": false,
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"anim": "singDOWN",
|
||||
"fps": 12,
|
||||
"name": "Pikafriend down",
|
||||
"indices": []
|
||||
},
|
||||
{
|
||||
"loop": false,
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"anim": "singUP",
|
||||
"fps": 12,
|
||||
"name": "Pikafriend up",
|
||||
"indices": []
|
||||
},
|
||||
{
|
||||
"loop": true,
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"anim": "hit",
|
||||
"fps": 3,
|
||||
"name": "Pikafriend hurt",
|
||||
"indices": []
|
||||
},
|
||||
{
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"indices": [],
|
||||
"fps": 12,
|
||||
"anim": "death",
|
||||
"loop": true,
|
||||
"name": "Pikafriend death"
|
||||
}
|
||||
],
|
||||
"no_antialiasing": true,
|
||||
"image": "sprites/characters/secret/pikafriend",
|
||||
"position": [
|
||||
0,
|
||||
390
|
||||
],
|
||||
"healthicon": "pika",
|
||||
"flip_x": false,
|
||||
"healthbar_colors": [
|
||||
0,
|
||||
255,
|
||||
0
|
||||
],
|
||||
"camera_position": [
|
||||
-170,
|
||||
-230
|
||||
],
|
||||
"sing_duration": 4,
|
||||
"scale": 8
|
||||
}
|
78
characters/somari.json
Normal file
@ -0,0 +1,78 @@
|
||||
{
|
||||
"animations": [
|
||||
{
|
||||
"loop": false,
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"anim": "idle",
|
||||
"fps": 12,
|
||||
"name": "somari idle",
|
||||
"indices": []
|
||||
},
|
||||
{
|
||||
"loop": false,
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"anim": "singLEFT",
|
||||
"fps": 12,
|
||||
"name": "somari left",
|
||||
"indices": []
|
||||
},
|
||||
{
|
||||
"loop": false,
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"anim": "singRIGHT",
|
||||
"fps": 12,
|
||||
"name": "somari right",
|
||||
"indices": []
|
||||
},
|
||||
{
|
||||
"loop": false,
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"anim": "singDOWN",
|
||||
"fps": 12,
|
||||
"name": "somari down",
|
||||
"indices": []
|
||||
},
|
||||
{
|
||||
"loop": false,
|
||||
"offsets": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"anim": "singUP",
|
||||
"fps": 12,
|
||||
"name": "somari up",
|
||||
"indices": []
|
||||
}
|
||||
],
|
||||
"no_antialiasing": true,
|
||||
"image": "sprites/characters/secret/Somari",
|
||||
"position": [
|
||||
0,
|
||||
390
|
||||
],
|
||||
"healthicon": "somari",
|
||||
"flip_x": false,
|
||||
"healthbar_colors": [
|
||||
255,
|
||||
0,
|
||||
0
|
||||
],
|
||||
"camera_position": [
|
||||
-170,
|
||||
-230
|
||||
],
|
||||
"sing_duration": 4,
|
||||
"scale": 8
|
||||
}
|
8096
charts/somari/somari-chart.json
Normal file
50
charts/somari/somari-metadata.json
Normal file
@ -0,0 +1,50 @@
|
||||
{
|
||||
"version": "2.2.4",
|
||||
"songName": "MARIO SING AND GAME RYTHM 9",
|
||||
"artist": "TaeSkull",
|
||||
"divisions": 96,
|
||||
"looped": false,
|
||||
"offsets": {
|
||||
"instrumental": 0,
|
||||
"altInstrumentals": { },
|
||||
"vocals": { },
|
||||
"altVocals": { }
|
||||
},
|
||||
"playData": {
|
||||
"songVariations": [ ],
|
||||
"difficulties": [
|
||||
"normal"
|
||||
],
|
||||
"characters": {
|
||||
"player": "pikafriend",
|
||||
"girlfriend": "eeveefriend",
|
||||
"opponent": "somari",
|
||||
"instrumental": "",
|
||||
"altInstrumentals": []
|
||||
},
|
||||
"stage": "secretStageOne",
|
||||
"noteStyle": "pixel",
|
||||
"ratings": {
|
||||
"normal": 0
|
||||
},
|
||||
"previewStart": 0,
|
||||
"previewEnd": 0
|
||||
},
|
||||
"generatedBy": "Friday Night Funkin' - v0.6.2",
|
||||
"timeFormat": "ms",
|
||||
"timeChanges": [
|
||||
{
|
||||
"t": 0,
|
||||
"b": 0,
|
||||
"bpm": 117,
|
||||
"n": 4,
|
||||
"d": 4,
|
||||
"bt": [
|
||||
4,
|
||||
4,
|
||||
4,
|
||||
4
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
BIN
images/icons/icon-pika.png
Normal file
After Width: | Height: | Size: 661 B |
BIN
images/icons/icon-somari.png
Normal file
After Width: | Height: | Size: 637 B |
BIN
images/secretStageOne/platform.png
Normal file
After Width: | Height: | Size: 182 B |
BIN
images/secretStageOne/somari_stag1.png
Normal file
After Width: | Height: | Size: 832 B |
BIN
songs/Mario Sing and Game Rythm 9/Inst.ogg
Normal file
BIN
songs/Mario Sing and Game Rythm 9/Voices.ogg
Normal file
BIN
sprites/characters/secret/Somari.png
Normal file
After Width: | Height: | Size: 9.4 KiB |
30
sprites/characters/secret/Somari.xml
Normal file
@ -0,0 +1,30 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<TextureAtlas imagePath="somari.png">
|
||||
<SubTexture name="somari idle0000" x="0" y="0" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari idle0001" x="37" y="0" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari idle0002" x="74" y="0" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari idle0003" x="0" y="39" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari idle0004" x="0" y="39" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari left0000" x="37" y="39" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari left0001" x="74" y="39" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari up0000" x="111" y="0" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari up0001" x="111" y="39" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari up0002" x="0" y="78" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari right0000" x="37" y="78" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari right0001" x="74" y="78" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari down0000" x="111" y="78" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari down0001" x="148" y="0" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari left miss0000" x="148" y="39" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari left miss0001" x="148" y="78" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari up miss0000" x="0" y="117" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari up miss0001" x="37" y="117" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari up miss0002" x="74" y="117" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari right miss0002" x="111" y="117" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari right miss0003" x="148" y="117" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari down miss0002" x="185" y="0" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari down miss0003" x="185" y="39" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari ouch0000" x="185" y="78" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari getting shot0000" x="185" y="117" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari getting shot0001" x="0" y="156" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
<SubTexture name="somari OUGHHHHHHHH0000" x="37" y="156" width="37" height="39" frameX="0" frameY="0" frameWidth="37" frameHeight="39" />
|
||||
</TextureAtlas>
|
BIN
sprites/characters/secret/eeveefriend.png
Normal file
After Width: | Height: | Size: 4.2 KiB |
17
sprites/characters/secret/eeveefriend.xml
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<TextureAtlas imagePath="eeveefriend.png"><SubTexture name="eeveefriend idle0000" x="0" y="0" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend idle0001" x="29" y="0" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend idle0002" x="58" y="0" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend idle0003" x="0" y="32" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend one miss0000" x="29" y="32" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend one miss0001" x="58" y="32" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend two miss0000" x="87" y="0" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend two miss0001" x="87" y="32" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend three miss0000" x="0" y="64" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend three miss0001" x="29" y="64" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend four miss0000" x="58" y="64" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend four miss0001" x="87" y="64" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend die0000" x="116" y="0" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend pls0000" x="116" y="32" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
<SubTexture name="eeveefriend pls0001" x="116" y="64" width="29" height="32" frameX="0" frameY="0" frameWidth="29" frameHeight="32" />
|
||||
</TextureAtlas>
|
BIN
sprites/characters/secret/pikafriend.png
Normal file
After Width: | Height: | Size: 4.6 KiB |
36
sprites/characters/secret/pikafriend.xml
Normal file
@ -0,0 +1,36 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<TextureAtlas imagePath="pikafriend.png">
|
||||
<SubTexture name="Pikafriend idle0000" x="0" y="0" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend idle0001" x="32" y="0" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend idle0002" x="0" y="22" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend idle0003" x="32" y="22" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend idle0004" x="64" y="0" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend idle0005" x="64" y="22" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend left0000" x="0" y="44" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend left0001" x="32" y="44" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend left0002" x="32" y="44" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend left0003" x="64" y="44" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend left0004" x="0" y="66" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend left0005" x="64" y="22" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend right0000" x="32" y="66" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend right0001" x="64" y="66" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend right0002" x="64" y="66" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend right0003" x="96" y="0" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend right0004" x="96" y="22" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend right0005" x="64" y="22" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend up0000" x="96" y="44" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend up0001" x="96" y="66" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend up0002" x="96" y="66" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend up0003" x="0" y="88" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend up0004" x="32" y="88" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend up0005" x="64" y="22" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend down0000" x="64" y="88" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend down0001" x="96" y="88" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend down0002" x="96" y="88" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend down0003" x="128" y="0" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend down0004" x="128" y="22" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend down0005" x="64" y="22" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend hurt0000" x="128" y="44" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend death0000" x="128" y="66" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
<SubTexture name="Pikafriend RAD0000" x="128" y="88" width="32" height="22" frameX="0" frameY="0" frameWidth="32" frameHeight="22" />
|
||||
</TextureAtlas>
|
BIN
sprites/secretStageOne/bgstars.png
Normal file
After Width: | Height: | Size: 9.6 KiB |
9
sprites/secretStageOne/bgstars.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<TextureAtlas imagePath="bgstars.png"><SubTexture name="bgstars flash0000" x="0" y="0" width="694" height="63" frameX="-10" frameY="-2" frameWidth="713" frameHeight="67" />
|
||||
<SubTexture name="bgstars flash0001" x="0" y="63" width="694" height="63" frameX="-10" frameY="-2" frameWidth="713" frameHeight="67" />
|
||||
<SubTexture name="bgstars flash0002" x="0" y="126" width="686" height="63" frameX="-10" frameY="-2" frameWidth="713" frameHeight="67" />
|
||||
<SubTexture name="bgstars flash0003" x="0" y="63" width="694" height="63" frameX="-10" frameY="-2" frameWidth="713" frameHeight="67" />
|
||||
<SubTexture name="bgstars flash0004" x="0" y="189" width="694" height="63" frameX="-10" frameY="-2" frameWidth="713" frameHeight="67" />
|
||||
<SubTexture name="bgstars flash0005" x="0" y="252" width="678" height="61" frameX="-26" frameY="-4" frameWidth="713" frameHeight="67" />
|
||||
<SubTexture name="bgstars flash0006" x="0" y="189" width="694" height="63" frameX="-10" frameY="-2" frameWidth="713" frameHeight="67" />
|
||||
</TextureAtlas>
|
BIN
sprites/secretStageOne/buildings_papu.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
6
sprites/secretStageOne/buildings_papu.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<TextureAtlas imagePath="buildings papu.png"><SubTexture name="buildings papu color0000" x="0" y="0" width="96" height="36" frameX="-96" frameY="-51" frameWidth="192" frameHeight="87" />
|
||||
<SubTexture name="buildings papu color0001" x="0" y="36" width="96" height="36" frameX="-96" frameY="-51" frameWidth="192" frameHeight="87" />
|
||||
<SubTexture name="buildings papu color0002" x="96" y="0" width="96" height="36" frameX="-96" frameY="-51" frameWidth="192" frameHeight="87" />
|
||||
<SubTexture name="buildings papu color0003" x="96" y="36" width="96" height="36" frameX="-96" frameY="-51" frameWidth="192" frameHeight="87" />
|
||||
</TextureAtlas>
|
BIN
sprites/secretStageOne/spot.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
8
sprites/secretStageOne/spot.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<TextureAtlas imagePath="spot.png">
|
||||
<SubTexture name="spot 30000" x="0" y="0" width="196" height="91" frameX="0" frameY="0" frameWidth="196" frameHeight="91" />
|
||||
<SubTexture name="spot 00000" x="196" y="0" width="196" height="91" frameX="0" frameY="0" frameWidth="196" frameHeight="91" />
|
||||
<SubTexture name="spot 20000" x="0" y="91" width="196" height="91" frameX="0" frameY="0" frameWidth="196" frameHeight="91" />
|
||||
<SubTexture name="spot 10000" x="196" y="91" width="196" height="91" frameX="0" frameY="0" frameWidth="196" frameHeight="91" />
|
||||
<SubTexture name="none 10000" x="0" y="0" width="1" height="1" frameX="0" frameY="0" frameWidth="1" frameHeight="1" />
|
||||
</TextureAtlas>
|
15
stages/secretStageOne.json
Normal file
@ -0,0 +1,15 @@
|
||||
{
|
||||
"directory": "week6",
|
||||
"defaultZoom": 1.1,
|
||||
"isPixelStage": true,
|
||||
|
||||
"boyfriend": [920, 315],
|
||||
"girlfriend": [1075, 245],
|
||||
"opponent": [103, 190],
|
||||
"hide_girlfriend": false,
|
||||
|
||||
"camera_boyfriend": [0, 0],
|
||||
"camera_opponent": [50, -25],
|
||||
"camera_girlfriend": [0, 0],
|
||||
"camera_speed": 1
|
||||
}
|
48
stages/secretStageOne.lua
Normal file
@ -0,0 +1,48 @@
|
||||
local module = {}
|
||||
|
||||
--local skyScroll = {}
|
||||
|
||||
function module.onCreate(song)
|
||||
love.graphics.setDefaultFilter("nearest", "nearest", 0)
|
||||
--I wanted to try setting the aspect ratio to 1:1 but immediately
|
||||
--realised the game fights you if you try to do that.
|
||||
--blame playstate.lua?
|
||||
--[[if love.graphics:getWidth() ~= 720 then
|
||||
love.window.setMode(720, 720)
|
||||
end]]
|
||||
|
||||
--I wanted to do this so I could do the scrolling BG thing but FUCK ME i guess
|
||||
--I'm not kidding enabling this just fucking removes the sky sprite and idk why
|
||||
--for i = 1, 3 do
|
||||
local sky = Sprite("sprites/secretStageOne/bgstars.png", "sprites/secretStageOne/bgstars.xml")
|
||||
sky.modifier = 0
|
||||
sky:Resize(8)
|
||||
sky:PlayAnimation("bgstars flash", 6, true)
|
||||
--sky.position = Vector2(-3000 + (i * 3000), 200)
|
||||
sky.position = Vector2(0, 200)
|
||||
sky.layer = -12 --- i
|
||||
|
||||
--skyScroll[i] = sky
|
||||
--end
|
||||
|
||||
local animBg = Sprite("sprites/secretStageOne/buildings_papu.png", "sprites/secretStageOne/buildings_papu.xml")
|
||||
animBg.layer = -11
|
||||
animBg.position = Vector2(100, 325)
|
||||
animBg.modifier = 0
|
||||
animBg:Resize(8)
|
||||
animBg:PlayAnimation("buildings papu color", 1, true)
|
||||
|
||||
local somaPlat = Image("images/secretStageOne/somari_stag1.png")
|
||||
somaPlat.modifier = 0
|
||||
somaPlat.layer = -10
|
||||
somaPlat.resize = Vector2(8, 8)
|
||||
somaPlat.position = Vector2(100, 325)
|
||||
|
||||
local pikaPlat = Image("images/secretStageOne/platform.png")
|
||||
pikaPlat.layer = -9
|
||||
pikaPlat.position = Vector2(1200, 875)
|
||||
pikaPlat.resize = Vector2(8, 8)
|
||||
pikaPlat.modifier = 0
|
||||
end
|
||||
|
||||
return module
|
@ -113,7 +113,7 @@ return function()
|
||||
elseif key == "up" then
|
||||
currentOption = options[currentOption - 1] and currentOption -1 or #options
|
||||
elseif key == "9" then
|
||||
state.changeState("playstate", "shucks", "hard")
|
||||
state.changeState("secretcodestate") --since we don't have shucks anymore... why not have a little fun, yeah?
|
||||
end
|
||||
end
|
||||
|
||||
|
153
states/secretcodestate.lua
Normal file
@ -0,0 +1,153 @@
|
||||
--from menustate.lua
|
||||
local logging = require "modules.logging"
|
||||
local files = require "modules.files"
|
||||
local json = require "modules.json"
|
||||
|
||||
--from freeplaystate.lua
|
||||
local font = love.graphics.newFont("fonts/FridayNightFunkin-Regular.ttf", 40)
|
||||
local color = 255, 255, 255
|
||||
|
||||
--ough im yandeving it im yandeving it so gooooooooood
|
||||
local letter1 = ""
|
||||
local letter2 = ""
|
||||
local letter3 = ""
|
||||
local letter4 = ""
|
||||
local letter5 = ""
|
||||
local letter6 = ""
|
||||
local enteringLetter = 1
|
||||
|
||||
local enteredCode = string.format("%s%s%s%s%s%s", letter1, letter2, letter3, letter4, letter5, letter6)
|
||||
local ominousText = "Enter the code. Enter to advance a letter, Left Arrow to delete one."
|
||||
|
||||
--mostly from weekstate.lua with help from menustate.lua
|
||||
return function()
|
||||
local state = {}
|
||||
|
||||
local function setup()
|
||||
if freaky:isPlaying() then
|
||||
freaky:stop()
|
||||
end
|
||||
|
||||
render.cameraPosition = Vector2(0,0)
|
||||
render.cameraPosition = Vector2(0,0)
|
||||
end
|
||||
|
||||
function state.update(dt)
|
||||
enteredCode = string.format("%s%s%s%s%s%s", letter1, letter2, letter3, letter4, letter5, letter6)
|
||||
render.updateSprites(dt)
|
||||
end
|
||||
|
||||
function state.draw()
|
||||
render.drawSprites()
|
||||
render.drawUI()
|
||||
|
||||
love.graphics.setFont(font)
|
||||
love.graphics.print(ominousText, 0, 0, 0, 1, 1)
|
||||
love.graphics.print(enteredCode, 0, 150, 0, 1, 1)
|
||||
end
|
||||
|
||||
--mario teaches typing? nah, i need mario teaches you how to fucking code
|
||||
function state.keypressed(key)
|
||||
if key == "return" then
|
||||
if enteringLetter == 6 then
|
||||
if enteredCode == "somari" then
|
||||
state.changeState("playstate", "somari", "normal") --i dont think this can load erect sonds but idk
|
||||
elseif eneteredCode == "grndad" then
|
||||
ominousText = "Same umbrella, different vain."
|
||||
else
|
||||
letter1 = ""
|
||||
letter2 = ""
|
||||
letter3 = ""
|
||||
letter4 = ""
|
||||
letter5 = ""
|
||||
letter6 = ""
|
||||
ominousText = "Invalid."
|
||||
enteringLetter = 1
|
||||
end
|
||||
elseif enteringLetter > 6 then
|
||||
enteringLetter = enteringLetter + 1
|
||||
end
|
||||
elseif key == "escape" then
|
||||
state.changeState("menustate")
|
||||
elseif key == "left" then
|
||||
--"if only there were some easier way to do this"
|
||||
--yeah im yan deving it but who the fuck cares right?
|
||||
--(me, i do)
|
||||
if enteringLetter > 1 then
|
||||
if enteringLetter <= 6 then
|
||||
letter6 = ""
|
||||
if enteringLetter <= 5 then
|
||||
letter5 = ""
|
||||
if enteringLetter <= 4 then
|
||||
letter4 = ""
|
||||
if enteringLetter <= 3 then
|
||||
letter3 = ""
|
||||
if enteringLetter <= 2 then
|
||||
letter2 = ""
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
enteringLetter = enteringLetter - 1
|
||||
elseif letter1 == "" then
|
||||
ominousText = "What are you deleting?"
|
||||
else
|
||||
letter1 = ""
|
||||
end
|
||||
end
|
||||
|
||||
if key ~= ("return" or "escape" or "space" or "left" or "right" or "up" or "down") then
|
||||
--i think ive done a sin like 50 times atp
|
||||
if enteringLetter == 1 then
|
||||
if key == "left" or key == "return" then
|
||||
else
|
||||
letter1 = string.format("%s", key)
|
||||
enteringLetter = enteringLetter + 1
|
||||
end
|
||||
elseif enteringLetter == 2 then
|
||||
if key == "left" or key == "return" then
|
||||
else
|
||||
letter2 = string.format("%s", key)
|
||||
enteringLetter = enteringLetter + 1
|
||||
end
|
||||
elseif enteringLetter == 3 then
|
||||
if key == "left" or key == "return" then
|
||||
else
|
||||
letter3 = string.format("%s", key)
|
||||
enteringLetter = enteringLetter + 1
|
||||
end
|
||||
elseif enteringLetter == 4 then
|
||||
if key == "left" or key == "return" then
|
||||
else
|
||||
letter4 = string.format("%s", key)
|
||||
enteringLetter = enteringLetter + 1
|
||||
end
|
||||
elseif enteringLetter == 5 then
|
||||
if key == "left" or key == "return" then
|
||||
else
|
||||
letter5 = string.format("%s", key)
|
||||
enteringLetter = enteringLetter + 1
|
||||
end
|
||||
elseif enteringLetter == 6 then
|
||||
if key == "left" or key == "return" then
|
||||
else
|
||||
letter6 = string.format("%s", key)
|
||||
ominousText = "Full code, press enter?"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
function state.load()
|
||||
love.window.setTitle("TaggedEngine: ???")
|
||||
|
||||
if love.graphics:getHeight() ~= 720 then
|
||||
love.window.setMode(1280, 720)
|
||||
end
|
||||
setup()
|
||||
end
|
||||
|
||||
return state
|
||||
end
|