fuck new assets lmao

This reverts commit f37d31ab86.
This commit is contained in:
Yoshman29
2023-04-14 17:20:28 +02:00
parent f37d31ab86
commit fdf0d5b3cc
611 changed files with 198 additions and 1 deletions
+128
View File
@@ -0,0 +1,128 @@
<!DOCTYPE codename-engine-alphabet>
<letters fps="24">
<bold spritesheet="menus/alphabet-bold">
<!-- Bold Letters !-->
<letter char="A" anim="A bold" />
<letter char="B" anim="B bold" />
<letter char="C" anim="C bold" />
<letter char="D" anim="D bold" />
<letter char="E" anim="E bold" />
<letter char="F" anim="F bold" />
<letter char="G" anim="G bold" />
<letter char="H" anim="H bold" />
<letter char="I" anim="I bold" />
<letter char="J" anim="J bold" />
<letter char="K" anim="K bold" />
<letter char="L" anim="L bold" />
<letter char="M" anim="M bold" />
<letter char="N" anim="N bold" />
<letter char="O" anim="O bold" />
<letter char="P" anim="P bold" />
<letter char="Q" anim="Q bold" />
<letter char="R" anim="R bold" />
<letter char="S" anim="S bold" />
<letter char="T" anim="T bold" />
<letter char="U" anim="U bold" />
<letter char="V" anim="V bold" />
<letter char="W" anim="W bold" />
<letter char="X" anim="X bold" />
<letter char="Y" anim="Y bold" />
<letter char="Z" anim="Z bold" />
<letter char=">" anim="> Bold" />
</bold>
<normal spritesheet="menus/alphabet">
<!-- Symbols !-->
<letter char="$" anim="dollarsign" />
<letter char="#" anim="hashtag" />
<letter char="%" anim="%" />
<letter char="&amp;" anim="amp" />
<letter char="(" anim="(" />
<letter char=")" anim=")" />
<letter char="*" anim="*" center="middle" />
<letter char="+" anim="+" center="middle" />
<letter char="-" anim="-" center="middle" />
<letter char="0" anim="0" />
<letter char="1" anim="1" />
<letter char="2" anim="2" />
<letter char="3" anim="3" />
<letter char="4" anim="4" />
<letter char="5" anim="5" />
<letter char="6" anim="6" />
<letter char="7" anim="7" />
<letter char="8" anim="8" />
<letter char="9" anim="9" />
<letter char=":" anim=":" />
<letter char=";" anim=";" />
<letter char="<" anim="<" />
<letter char=">" anim=">" />
<letter char="=" anim="=" />
<letter char="@" anim="@" />
<letter char="|" anim="|" />
<letter char="~" anim="~" />
<letter char="[" anim="[" />
<letter char="]" anim="]" />
<letter char="→" anim="right arrow" center="middle" />
<letter char="←" anim="left arrow" center="middle" />
<letter char="↓" anim="down arrow" center="middle" />
<letter char="↑" anim="up arrow" center="middle" />
<letter char="." anim="period" center="middle" />
<letter char="?" anim="question mark" />
<letter char="&#34;" anim="start parentheses" />
<!-- Capital Letters !-->
<letter char="A" anim="A capital" />
<letter char="B" anim="B capital" />
<letter char="C" anim="C capital" />
<letter char="D" anim="D capital" />
<letter char="E" anim="E capital" />
<letter char="F" anim="F capital" />
<letter char="G" anim="G capital" />
<letter char="H" anim="H capital" />
<letter char="I" anim="I capital" />
<letter char="J" anim="J capital" />
<letter char="K" anim="K capital" />
<letter char="L" anim="L capital" />
<letter char="M" anim="M capital" />
<letter char="N" anim="N capital" />
<letter char="O" anim="O capital" />
<letter char="P" anim="P capital" />
<letter char="Q" anim="Q capital" />
<letter char="R" anim="R capital" />
<letter char="S" anim="S capital" />
<letter char="T" anim="T capital" />
<letter char="U" anim="U capital" />
<letter char="V" anim="V capital" />
<letter char="W" anim="W capital" />
<letter char="X" anim="X capital" />
<letter char="Y" anim="Y capital" />
<letter char="Z" anim="Z capital" />
<!-- Lowercase Letters !-->
<letter char="a" anim="a lowercase" />
<letter char="b" anim="b lowercase" />
<letter char="c" anim="c lowercase" />
<letter char="d" anim="d lowercase" />
<letter char="e" anim="e lowercase" />
<letter char="f" anim="f lowercase" />
<letter char="g" anim="g lowercase" />
<letter char="h" anim="h lowercase" />
<letter char="i" anim="i lowercase" />
<letter char="j" anim="j lowercase" />
<letter char="k" anim="k lowercase" />
<letter char="l" anim="l lowercase" />
<letter char="m" anim="m lowercase" />
<letter char="n" anim="n lowercase" />
<letter char="o" anim="o lowercase" />
<letter char="p" anim="p lowercase" />
<letter char="q" anim="q lowercase" />
<letter char="r" anim="r lowercase" />
<letter char="s" anim="s lowercase" />
<letter char="t" anim="t lowercase" />
<letter char="u" anim="u lowercase" />
<letter char="v" anim="v lowercase" />
<letter char="w" anim="w lowercase" />
<letter char="x" anim="x lowercase" />
<letter char="y" anim="y lowercase" />
<letter char="z" anim="z lowercase" />
</normal>
</letters>
+12
View File
@@ -0,0 +1,12 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="true" flipX="true" x="0" y="350" icon="bf" camx="25">
<anim name="idle" anim="BF idle dance" fps="24" loop="false" x="-5" y="0"/>
<anim name="singUP" anim="BF NOTE UP0" fps="24" loop="false" x="-29" y="27"/>
<anim name="singLEFT" anim="BF NOTE LEFT0" fps="24" loop="false" x="12" y="-6"/>
<anim name="singRIGHT" anim="BF NOTE RIGHT0" fps="24" loop="false" x="-38" y="-7"/>
<anim name="singDOWN" anim="BF NOTE DOWN0" fps="24" loop="false" x="-10" y="-50"/>
<anim name="singUPmiss" anim="BF NOTE UP MISS" fps="24" loop="false" x="-29" y="27"/>
<anim name="singLEFTmiss" anim="BF NOTE LEFT MISS" fps="24" loop="false" x="12" y="24"/>
<anim name="singRIGHTmiss" anim="BF NOTE RIGHT MISS" fps="24" loop="false" x="-30" y="21"/>
<anim name="singDOWNmiss" anim="BF NOTE DOWN MISS" fps="24" loop="false" x="-11" y="-19"/>
</character>
+13
View File
@@ -0,0 +1,13 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="true" flipX="true" x="0" y="350" icon="bf">
<anim name="idle" anim="BF idle dance" fps="24" loop="false" x="-5" y="0"/>
<anim name="singUP" anim="BF NOTE UP0" fps="24" loop="false" x="-29" y="27"/>
<anim name="singLEFT" anim="BF NOTE LEFT0" fps="24" loop="false" x="12" y="-6"/>
<anim name="singRIGHT" anim="BF NOTE RIGHT0" fps="24" loop="false" x="-38" y="-7"/>
<anim name="singDOWN" anim="BF NOTE DOWN0" fps="24" loop="false" x="-10" y="-50"/>
<anim name="singUPmiss" anim="BF NOTE UP MISS" fps="24" loop="false" x="-29" y="27"/>
<anim name="singLEFTmiss" anim="BF NOTE LEFT MISS" fps="24" loop="false" x="12" y="24"/>
<anim name="singRIGHTmiss" anim="BF NOTE RIGHT MISS" fps="24" loop="false" x="-30" y="21"/>
<anim name="singDOWNmiss" anim="BF NOTE DOWN MISS" fps="24" loop="false" x="-11" y="-19"/>
<anim name="hey" anim="BF HEY" fps="24" loop="false" x="7" y="4"/>
</character>
+6
View File
@@ -0,0 +1,6 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="true" flipX="true" x="0" y="350">
<anim name="firstDeath" anim="BF dies" fps="24" loop="false" x="37" y="11"/>
<anim name="deathLoop" anim="BF Dead Loop" fps="24" loop="false" x="37" y="5"/>
<anim name="deathConfirm" anim="BF Dead confirm" fps="24" loop="false" x="37" y="69"/>
</character>
+13
View File
@@ -0,0 +1,13 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="true" flipX="true" x="0" y="350" icon="bf">
<anim name="idle" anim="BF idle dance" fps="24" loop="false"/>
<anim name="singUP" anim="BF NOTE UP0" fps="24" loop="false" x="-29" y="10"/>
<anim name="singLEFT" anim="BF NOTE LEFT0" fps="24" loop="false" x="12" y="7"/>
<anim name="singRIGHT" anim="BF NOTE RIGHT0" fps="24" loop="false" x="-41" y="23"/>
<anim name="singDOWN" anim="BF NOTE DOWN0" fps="24" loop="false" x="-10" y="-10"/>
<anim name="singUPmiss" anim="BF NOTE UP MISS" fps="24" loop="false" x="-29" y="10"/>
<anim name="singLEFTmiss" anim="BF NOTE LEFT MISS" fps="24" loop="false" x="12" y="7"/>
<anim name="singRIGHTmiss" anim="BF NOTE RIGHT MISS" fps="24" loop="false" x="-41" y="23"/>
<anim name="singDOWNmiss" anim="BF NOTE DOWN MISS" fps="24" loop="false" x="-10" y="-10"/>
<anim name="bfCatch" anim="BF catches GF" fps="24" loop="false" x="0" y="0"/>
</character>
+10
View File
@@ -0,0 +1,10 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="true" flipX="true" x="200" y="570" antialiasing="false" scale="6" camx="-200" camy="-20">
<anim name="idle" anim="BF IDLE" fps="24" loop="false" x="0" y="0" />
<!-- Offsets are actually multiplied by scale -->
<anim name="singLEFT" anim="BF LEFT NOTE" fps="24" loop="false" x="0" y="0" />
<anim name="singDOWN" anim="BF DOWN NOTE" fps="24" loop="false" x="0" y="0" />
<anim name="singUP" anim="BF UP NOTE" fps="24" loop="false" x="0" y="0" />
<anim name="singRIGHT" anim="BF RIGHT NOTE" fps="24" loop="false" x="0" y="0" />
</character>
+14
View File
@@ -0,0 +1,14 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="true" flipX="true" x="0" y="350">
<anim name="idle" anim="BF idle dance" fps="24" loop="false" x="-5" y="0"/>
<anim name="singUP" anim="BF NOTE UP0" fps="24" loop="false" x="-29" y="27"/>
<anim name="singLEFT" anim="BF NOTE LEFT0" fps="24" loop="false" x="12" y="-6"/>
<anim name="singRIGHT" anim="BF NOTE RIGHT0" fps="24" loop="false" x="-38" y="-7"/>
<anim name="singDOWN" anim="BF NOTE DOWN0" fps="24" loop="false" x="-10" y="-50"/>
<anim name="singUPmiss" anim="BF NOTE UP MISS" fps="24" loop="false" x="-29" y="27"/>
<anim name="singLEFTmiss" anim="BF NOTE LEFT MISS" fps="24" loop="false" x="12" y="24"/>
<anim name="singRIGHTmiss" anim="BF NOTE RIGHT MISS" fps="24" loop="false" x="-30" y="21"/>
<anim name="singDOWNmiss" anim="BF NOTE DOWN MISS" fps="24" loop="false" x="-11" y="-19"/>
<anim name="hey" anim="BF HEY" fps="24" loop="false" x="7" y="4"/>
<anim name="scared" anim="BF idle shaking" fps="24" loop="true" x="-4" y="0"/>
</character>
+8
View File
@@ -0,0 +1,8 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" holdTime="6.1" icon="dad" y="150">
<anim name="idle" anim="Dad idle dance" fps="24" loop="false" x="0" y="0"/>
<anim name="singUP" anim="Dad Sing note UP" fps="24" loop="false" x="-2" y="50"/>
<anim name="singLEFT" anim="dad sing note right" fps="24" loop="false" x="-2" y="10"/>
<anim name="singRIGHT" anim="Dad Sing Note LEFT" fps="24" loop="false" x="-5" y="27"/>
<anim name="singDOWN" anim="Dad Sing Note DOWN" fps="24" loop="false" x="0" y="-30"/>
</character>
+8
View File
@@ -0,0 +1,8 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" holdTime="6.1">
<anim name="idle" anim="Dad idle dance" fps="24" loop="false" x="0" y="0"/>
<anim name="singUP" anim="Dad Sing note UP" fps="24" loop="false" x="-6" y="50"/>
<anim name="singLEFT" anim="dad sing note right" fps="24" loop="false" x="-10" y="10"/>
<anim name="singRIGHT" anim="Dad Sing Note LEFT" fps="24" loop="false" x="0" y="27"/>
<anim name="singDOWN" anim="Dad Sing Note DOWN" fps="24" loop="false" x="0" y="-30"/>
</character>
+5
View File
@@ -0,0 +1,5 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" isGF="true" x="75" y="335">
<anim name="danceLeft" anim="GF Dancing Beat Hair blowing CAR" fps="24" loop="false" x="0" y="0" indices="30,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" />
<anim name="danceRight" anim="GF Dancing Beat Hair blowing CAR" fps="24" loop="false" x="0" y="0" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" />
</character>
+14
View File
@@ -0,0 +1,14 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" isGF="true" x="115" y="325">
<anim name="cheer" anim="GF Cheer" fps="24" loop="false" />
<anim name="singUP" anim="GF Up Note" fps="24" loop="false" x="0" y="4" />
<anim name="singLEFT" anim="GF left note" fps="24" loop="false" x="0" y="-19" />
<anim name="singRIGHT" anim="GF Right Note" fps="24" loop="false" x="0" y="-20" />
<anim name="singDOWN" anim="GF Down Note" fps="24" loop="false" x="0" y="-20" />
<anim name="danceLeft" anim="GF Dancing Beat" fps="24" loop="false" x="0" y="-9" indices="30,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" />
<anim name="danceRight" anim="GF Dancing Beat" fps="24" loop="false" x="0" y="-9" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" />
<anim name="hairBlow" anim="GF Dancing Beat Hair blowing" fps="24" loop="false" x="45" y="-8" indices="0,1,2,3" />
<anim name="hairFall" anim="GF Dancing Beat Hair Landing" fps="24" loop="false" x="0" y="-9" indices="0,1,2,3,4,5,6,7,8,9,10,11" />
<anim name="scared" anim="GF FEAR" fps="24" loop="true" x="-2" y="-17" />
<anim name="sad" anim="gf sad" fps="24" loop="true" x="-2" y="-21" indices="0,1,2,3,4,5,6,7,8,9,10,11,12" />
</character>
+5
View File
@@ -0,0 +1,5 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" x="180" y="300" antialiasing="false" scale="6" camx="180" camy="300">
<anim name="danceLeft" anim="GF IDLE" fps="24" loop="false" indices="30,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" x="0" y="0" />
<anim name="danceRight" anim="GF IDLE" fps="24" loop="false" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" x="0" y="0" />
</character>
+7
View File
@@ -0,0 +1,7 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" isGF="true" x="100" y="275">
<anim name="danceLeft" anim="GF Dancing at Gunpoint" fps="24" loop="false" indices="30,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" />
<anim name="danceRight" anim="GF Dancing at Gunpoint" fps="24" loop="false" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" />
<anim name="dance-cutscene" anim="GF Dancing at Gunpoint" fps="24" loop="true" />
<anim name="sad" anim="GF Crying at Gunpoint" fps="24" loop="true" indices="0,1,2,3,4,5,6,7,8,9,10,11,12"/>
</character>
+14
View File
@@ -0,0 +1,14 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" isGF="true" x="100" y="275">
<anim name="cheer" anim="GF Cheer" fps="24" loop="false" />
<anim name="singUP" anim="GF Up Note" fps="24" loop="false" x="0" y="0" />
<anim name="singLEFT" anim="GF left note" fps="24" loop="false" x="0" y="0" />
<anim name="singRIGHT" anim="GF Right Note" fps="24" loop="false" x="0" y="0" />
<anim name="singDOWN" anim="GF Down Note" fps="24" loop="false" x="0" y="0" />
<anim name="danceLeft" anim="GF Dancing Beat" fps="24" loop="false" x="0" y="0" indices="30,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" />
<anim name="danceRight" anim="GF Dancing Beat" fps="24" loop="false" x="0" y="0" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" />
<anim name="hairBlow" anim="GF Dancing Beat Hair blowing" fps="24" loop="false" x="0" y="0" indices="0,1,2,3" />
<anim name="hairFall" anim="GF Dancing Beat Hair Landing" fps="24" loop="false" x="0" y="0" indices="0,1,2,3,4,5,6,7,8,9,10,11" />
<anim name="scared" anim="GF FEAR" fps="24" loop="true" x="0" y="0" />
<anim name="sad" anim="gf sad" fps="24" loop="true" x="0" y="0" indices="0,1,2,3,4,5,6,7,8,9,10,11,12" />
</character>
+10
View File
@@ -0,0 +1,10 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" icon="mom">
<anim name="idle" anim="Mom Idle" fps="24" loop="false" />
<anim name="singUP" anim="Mom Up Pose" fps="24" loop="false" x="14" y="71"/>
<anim name="singDOWN" anim="MOM DOWN POSE" fps="24" loop="false" x="20" y="-160"/>
<anim name="singLEFT" anim="Mom Left Pose" fps="24" loop="false" x="250" y="-23"/>
<!-- ANIMATION IS CALLED MOM LEFT POSE BUT ITS FOR THE RIGHT -->
<!-- CUZ DAVE IS DUMB! -->
<anim name="singRIGHT" anim="Mom Pose Left" fps="24" loop="false" x="10" y="-60"/>
</character>
+10
View File
@@ -0,0 +1,10 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false">
<anim name="idle" anim="Mom Idle" fps="24" loop="false" />
<anim name="singUP" anim="Mom Up Pose" fps="24" loop="false" x="14" y="71"/>
<anim name="singDOWN" anim="MOM DOWN POSE" fps="24" loop="false" x="20" y="-160"/>
<anim name="singLEFT" anim="Mom Left Pose" fps="24" loop="false" x="250" y="-23"/>
<!-- ANIMATION IS CALLED MOM LEFT POSE BUT ITS FOR THE RIGHT -->
<!-- CUZ DAVE IS DUMB! -->
<anim name="singRIGHT" anim="Mom Pose Left" fps="24" loop="false" x="10" y="-60"/>
</character>
@@ -0,0 +1,8 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" x="0" y="130" icon="monster">
<anim name="idle" anim="monster idle" fps="24" loop="false" x="0" y="0"/>
<anim name="singUP" anim="monster up note" fps="24" loop="false" x="-20" y="50"/>
<anim name="singRIGHT" anim="Monster left note" fps="24" loop="false" x="-30" y="0"/>
<anim name="singLEFT" anim="Monster Right note" fps="24" loop="false" x="-51" y="0"/>
<anim name="singDOWN" anim="monster down" fps="24" loop="false" x="-40" y="-94"/>
</character>
+8
View File
@@ -0,0 +1,8 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" x="0" y="100">
<anim name="idle" anim="monster idle" fps="24" loop="false" />
<anim name="singUP" anim="monster up note" fps="24" loop="false" x="-20" y="94"/>
<anim name="singRIGHT" anim="Monster left note" fps="24" loop="false" x="-30" y="20"/>
<anim name="singLEFT" anim="Monster Right note" fps="24" loop="false" x="-51" y="30"/>
<anim name="singDOWN" anim="monster down" fps="24" loop="false" x="-50" y="-80"/>
</character>
@@ -0,0 +1,12 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" x="-500" y="0">
<anim name="idle" anim="Parent Christmas Idle" fps="24" loop="false"/>
<anim name="singUP" anim="Parent Up Note Dad" fps="24" loop="false" x="-47" y="24"/>
<anim name="singDOWN" anim="Parent Down Note Dad" fps="24" loop="false" x="-31" y="-29"/>
<anim name="singLEFT" anim="Parent Left Note Dad" fps="24" loop="false" x="-30" y="16"/>
<anim name="singRIGHT" anim="Parent Right Note Dad" fps="24" loop="false" x="-1" y="-23"/>
<anim name="singUP-alt" anim="Parent Up Note Mom" fps="24" loop="false" x="-47" y="24"/>
<anim name="singDOWN-alt" anim="Parent Down Note Mom" fps="24" loop="false" x="-30" y="-27"/>
<anim name="singLEFT-alt" anim="Parent Left Note Mom" fps="24" loop="false" x="-30" y="15"/>
<anim name="singRIGHT-alt" anim="Parent Right Note Mom" fps="24" loop="false" x="-1" y="-24"/>
</character>
+19
View File
@@ -0,0 +1,19 @@
var dir = 2;
function onDance(event) {
event.cancel();
playAnim("idle" + Std.string(dir), true, "DANCE");
}
function onPlaySingAnim(event) {
dir = FlxG.random.int(0, 1) + (event.direction == 0 ? 3 : 1);
event.cancel();
playAnim("shoot" + Std.string(dir), true);
}
function update(elapsed) {
if (getAnimName() == null || (getAnimName().substr(0, 5) == "shoot" && isAnimFinished()))
dance();
}
+16
View File
@@ -0,0 +1,16 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" icon="pico" x="-50" y="-120" camx="195" camy="365">
<!-- Left Animations -->
<anim name="shoot1" anim="Pico shoot 1" fps="24" loop="false" indices="0,1,2,3" />
<anim name="idle1" anim="Pico shoot 1" fps="24" loop="false" indices="4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24" />
<anim name="shoot2" anim="Pico shoot 2" fps="24" loop="false" indices="0,1,2,3" />
<anim name="idle2" anim="Pico shoot 2" fps="24" loop="false" indices="4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24" />
<!-- Right Animations-->
<anim name="shoot3" anim="Pico shoot 3" fps="24" loop="false" indices="0,1,2,3" />
<anim name="idle3" anim="Pico shoot 3" fps="24" loop="false" indices="4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24" />
<anim name="shoot4" anim="Pico shoot 4" fps="24" loop="false" indices="0,1,2,3" />
<anim name="idle4" anim="Pico shoot 4" fps="24" loop="false" indices="4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24" />
</character>
+16
View File
@@ -0,0 +1,16 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="true" x="100" y="300" camx="-100">
<anim name="idle" anim="Pico Idle Dance" fps="24" loop="false"/>
<!-- Sing Animations -->
<anim name="singLEFT" anim="Pico Note Right0" fps="24" loop="false" x="65" y="9" />
<anim name="singDOWN" anim="Pico Down Note0" fps="24" loop="false" x="200" y="-70" />
<anim name="singUP" anim="pico Up note0" fps="24" loop="false" x="-20" y="50" />
<anim name="singRIGHT" anim="Pico NOTE LEFT0" fps="24" loop="false" x="-51" y="0" />
<!-- Miss Animations -->
<anim name="singLEFTmiss" anim="Pico Note Right Miss" fps="24" loop="false" x="62" y="64" />
<anim name="singDOWNmiss" anim="Pico Down Note MISS" fps="24" loop="false" x="200" y="-70" />
<anim name="singUPmiss" anim="pico Up note miss" fps="24" loop="false" x="-19" y="67" />
<anim name="singRIGHTmiss" anim="Pico NOTE LEFT miss" fps="24" loop="false" x="-60" y="41" />
</character>
+10
View File
@@ -0,0 +1,10 @@
<!DOCTYPE codename-engine-character>
<character sprite="senpai" isPlayer="false" flipX="false" x="150" y="360" antialiasing="false" scale="6" icon="senpai" camx="100">
<anim name="idle" anim="Angry Senpai Idle" fps="24" loop="false" x="0" y="0" />
<!-- Offsets are actually multiplied by scale -->
<anim name="singLEFT" anim="Angry Senpai LEFT NOTE" fps="24" loop="false" x="7" y="0" />
<anim name="singDOWN" anim="Angry Senpai DOWN NOTE" fps="24" loop="false" x="2" y="0" />
<anim name="singUP" anim="Angry Senpai UP NOTE" fps="24" loop="false" x="1" y="6" />
<anim name="singRIGHT" anim="Angry Senpai RIGHT NOTE" fps="24" loop="false" x="0" y="0" />
</character>
+10
View File
@@ -0,0 +1,10 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" x="150" y="360" antialiasing="false" scale="6" camx="100">
<anim name="idle" anim="Senpai Idle" fps="12" loop="false" x="0" y="0" />
<!-- Offsets are actually multiplied by scale -->
<anim name="singLEFT" anim="SENPAI LEFT NOTE" fps="12" loop="false" x="7" y="0" />
<anim name="singDOWN" anim="SENPAI DOWN NOTE" fps="12" loop="false" x="2" y="0" />
<anim name="singUP" anim="SENPAI UP NOTE" fps="12" loop="false" x="1" y="6" />
<anim name="singRIGHT" anim="SENPAI RIGHT NOTE" fps="12" loop="false" x="0" y="0" />
</character>
+10
View File
@@ -0,0 +1,10 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" x="70" y="380" antialiasing="false" scale="6" camx="100">
<anim name="idle" anim="idle spirit_" fps="24" loop="false" x="0" y="0" />
<!-- Offsets are actually multiplied by scale -->
<anim name="singLEFT" anim="left_" fps="24" loop="false" x="3" y="0" />
<anim name="singDOWN" anim="spirit down_" fps="24" loop="false" x="65" y="65" />
<anim name="singUP" anim="up_" fps="24" loop="false" x="0" y="7" />
<anim name="singRIGHT" anim="right_" fps="24" loop="false" x="0" y="0" />
</character>
+9
View File
@@ -0,0 +1,9 @@
<!DOCTYPE codename-engine-character>
<character isPlayer="false" flipX="false" x="0" y="200">
<anim name="danceLeft" anim="spooky dance idle" fps="12" loop="false" x="0" y="0" indices="0,2,6"/>
<anim name="danceRight" anim="spooky dance idle" fps="12" loop="false" x="0" y="0" indices="8,10,12,14"/>
<anim name="singUP" anim="spooky UP NOTE" fps="24" loop="false" x="-20" y="26"/>
<anim name="singLEFT" anim="note sing left" fps="24" loop="false" x="130" y="-10"/>
<anim name="singRIGHT" anim="spooky sing right" fps="24" loop="false" x="-130" y="-14"/>
<anim name="singDOWN" anim="spooky DOWN note" fps="24" loop="false" x="-50" y="-130"/>
</character>
+15
View File
@@ -0,0 +1,15 @@
<!DOCTYPE codename-engine-character>
<!-- tankman actually have player offsets !-->
<character isPlayer="true" flipX="true" x="0" y="180" camx="0">
<anim name="idle" anim="Tankman Idle Dance instance 100" fps="24" loop="false" x="0" y="0" />
<anim name="singRIGHT" anim="Tankman Right Note instance 1000" fps="24" loop="false" x="-1" y="-7" />
<anim name="singDOWN" anim="Tankman DOWN note instance 1000" fps="24" loop="false" x="98" y="-90" />
<anim name="singUP" anim="Tankman UP note instance 1000" fps="24" loop="false" x="24" y="56" />
<anim name="singLEFT" anim="Tankman Note Left instance 1000" fps="24" loop="false" x="100" y="-14" />
<!-- Heh! Pretty Good! -->
<anim name="singDOWN-alt" anim="PRETTY GOOD tankman instance 100" fps="24" loop="false" x="98" y="-90" />
<!-- Ugh! -->
<anim name="singUP-alt" anim="TANKMAN UGH instance 100" fps="30" loop="false" x="24" y="56" />
</character>
+4
View File
@@ -0,0 +1,4 @@
{
"clientID": "1027994136193810442",
"logoKey": "icon"
}
+4
View File
@@ -0,0 +1,4 @@
story mode
freeplay
donate
options
+14
View File
@@ -0,0 +1,14 @@
<!DOCTYPE codename-mod-options>
<!-- TEMPLATE FOR CUSTOM OPTIONS!!! -->
<menu name="Mod Options" desc="Modify mod options here">
<checkbox id="checkboxExample" name="Checkbox example" />
<choice id="choiceExample" name="Choice Example">
<value name="Disabled" value="disabled" />
<value name="This Only" value="thisonly" />
<value name="All" value="all" />
</choice>
<menu name="Submenu Example" desc="Submenu test">
<checkbox id="levelOfIdk2" name="Level of idk" />
</menu>
</menu>
+24
View File
@@ -0,0 +1,24 @@
<!DOCTYPE codename-engine-dialogue-box>
<dialoguebox scale="0.9" y="75">
<!--
Node containing all text settings
-->
<text font="vcr.ttf" x="107" y="206" width="1053" color="#000000" size="40"/>
<!--
All positions for characters
-->
<charpos name="left" x="-500" y="184" />
<charpos name="middle" x="0" y="184" />
<charpos name="right" x="500" y="184" flipBubble="true" />
<!--
All animations for the dialogue box
For example, if you wanna add an "angry" animation, add an animation named "angry" (box idle), and "angry-open" (not needed, for box apparition)
-->
<anim name="normal" anim="speech bubble normal" fps="24" loop="true" x="-30"/>
<anim name="normal-open" anim="Speech Bubble Normal Open" fps="24" />
<anim name="angry" anim="AHH speech bubble" fps="24" loop="true" y="60"/>
<anim name="angry-open" anim="speech bubble loud open" fps="24" y="60"/>
</dialoguebox>
@@ -0,0 +1,4 @@
<!DOCTYPE codename-engine-dialogue-character>
<character x="285">
<anim name="normal" anim="normal" fps="24" />
</character>
+4
View File
@@ -0,0 +1,4 @@
<!DOCTYPE codename-engine-dialogue-character>
<character x="50" y="-60">
<anim name="normal" anim="normal" fps="24" />
</character>
+4
View File
@@ -0,0 +1,4 @@
<!DOCTYPE codename-engine-dialogue-character>
<character x="250" y="-350">
<anim name="normal" anim="normal" fps="24" />
</character>
+30
View File
@@ -0,0 +1,30 @@
test
tutorial
bopeebo
fresh
dadbattle
spookeez
south
monster
pico
philly nice
blammed
satin panties
high
milf
cocoa
eggnog
winter horrorland
senpai
roses
thorns
ugh
guns
stress
+3
View File
@@ -0,0 +1,3 @@
function update(elapsed)
if (FlxG.keys.justPressed.F5)
FlxG.resetState();
+168
View File
@@ -0,0 +1,168 @@
import funkin.game.HudCamera;
import funkin.scripting.events.NoteHitEvent;
public var pixelNotesForBF = true;
public var pixelNotesForDad = true;
public var enablePixelUI = true;
public var enablePixelGameOver = true;
public var enableCameraHacks = Options.week6PixelPerfect;
public var enablePauseMenu = true;
public var isSpooky = false;
var oldStageQuality = FlxG.game.stage.quality;
static var daPixelZoom = 6;
/**
* UI
*/
function onNoteCreation(event) {
if (event.note.strumLine == playerStrums && !pixelNotesForBF) return;
if (event.note.strumLine == cpuStrums && !pixelNotesForDad) return;
event.cancel();
var note = event.note;
if (event.note.isSustainNote) {
note.loadGraphic(Paths.image('stages/school/ui/arrowEnds'), true, 7, 6);
note.animation.add("hold", [event.strumID]);
note.animation.add("holdend", [4 + event.strumID]);
} else {
note.loadGraphic(Paths.image('stages/school/ui/arrows-pixels'), true, 17, 17);
note.animation.add("scroll", [4 + event.strumID]);
}
note.scale.set(daPixelZoom, daPixelZoom);
note.updateHitbox();
}
function onStrumCreation(event) {
if (event.player == 1 && !pixelNotesForBF) return;
if (event.player == 0 && !pixelNotesForDad) return;
event.cancel();
var strum = event.strum;
strum.loadGraphic(Paths.image('stages/school/ui/arrows-pixels'), true, 17, 17);
strum.animation.add("static", [event.strumID]);
strum.animation.add("pressed", [4 + event.strumID, 8 + event.strumID], 12, false);
strum.animation.add("confirm", [12 + event.strumID, 16 + event.strumID], 24, false);
strum.scale.set(daPixelZoom, daPixelZoom);
strum.updateHitbox();
}
function onCountdown(event) {
if (!enablePixelUI) return;
if (event.soundPath != null) event.soundPath = 'pixel/' + event.soundPath;
event.antialiasing = false;
event.scale = daPixelZoom;
event.spritePath = switch(event.swagCounter) {
case 0: null;
case 1: 'stages/school/ui/ready';
case 2: 'stages/school/ui/set';
case 3: 'stages/school/ui/go';
};
}
function onPlayerHit(event:NoteHitEvent) {
if (!enablePixelUI) return;
event.ratingPrefix = "stages/school/ui/";
event.ratingScale = daPixelZoom * 0.7;
event.ratingAntialiasing = false;
event.numScale = daPixelZoom;
event.numAntialiasing = false;
}
/**
* CAMERA HACKS!!
*/
function postCreate() {
if (enablePauseMenu) {
PauseSubState.script = 'data/scripts/week6-pause';
}
if (enableCameraHacks) {
FlxG.camera.antialiasing = false;
FlxG.camera.pixelPerfectRender = true;
iconP1.antialiasing = false;
iconP2.antialiasing = false;
makeCameraPixely(camGame);
defaultCamZoom /= daPixelZoom;
}
if (enablePixelGameOver) {
gameOverSong = "pixel/gameOver";
lossSFX = "pixel/gameOverSFX";
retrySFX = "pixel/gameOverEnd";
}
}
function onStartCountdown() {
var newNoteCamera = new HudCamera();
newNoteCamera.bgColor = 0; // transparent
FlxG.cameras.add(newNoteCamera, false);
var pixelSwagWidth = Note.swagWidth + (daPixelZoom - (Note.swagWidth % daPixelZoom));
for(p in strumLines) {
var i = 0;
for(str in p.members) {
str.x = (FlxG.width * strumOffset) + (pixelSwagWidth * (i - 2));
str.x -= str.x % daPixelZoom;
i++;
}
}
makeCameraPixely(newNoteCamera);
}
/**
* Use this to make any camera pixelly (you wont be able to zoom with it anymore!)
*/
public function makeCameraPixely(cam) {
cam.pixelPerfectRender = true;
cam.zoom /= Math.min(FlxG.scaleMode.scale.x, FlxG.scaleMode.scale.y) * daPixelZoom;
var shad = new CustomShader('pixelZoomShader');
cam.addShader(shad);
pixellyCameras.push(cam);
pixellyShaders.push(shad);
FlxG.game.stage.quality = 2;
}
function destroy() {
// resets the stage quality
FlxG.game.stage.quality = oldStageQuality;
}
function pixelCam(cam) {
makeCameraPixely(cam);
}
var pixellyCameras = [];
var pixellyShaders = [];
function postUpdate(elapsed) {
for(e in pixellyCameras) {
if (Std.isOfType(e, HudCamera))
e.downscroll = camHUD.downscroll;
}
if (enableCameraHacks) {
for(p in strumLines)
p.notes.forEach(function(n) {
n.y -= n.y % daPixelZoom;
n.x -= n.x % daPixelZoom;
});
}
for(e in pixellyCameras) {
if (!e.exists) continue;
e.zoom = 1 / daPixelZoom / Math.min(FlxG.scaleMode.scale.x, FlxG.scaleMode.scale.y);
}
for(e in pixellyShaders) {
e.pixelZoom = 1 / daPixelZoom / Math.min(FlxG.scaleMode.scale.x, FlxG.scaleMode.scale.y);
}
}
+127
View File
@@ -0,0 +1,127 @@
import funkin.ui.FunkinText;
import flixel.text.FlxText;
import flixel.text.FlxTextBorderStyle;
import flixel.util.FlxAxes;
var pixelScript:Script;
var pauseCam = new FlxCamera();
var bg:FlxSprite;
var hand:FlxSprite;
var texts:Array<FlxText> = [];
var isThorns = PlayState.SONG.meta.name.toLowerCase() == "thorns";
function create(event) {
// cancel default pause menu!!
event.cancel();
event.music = isThorns ? "pixel/LunchboxScary" : "pixel/Lunchbox";
cameras = [];
pixelScript = game.scripts.getByName("pixel.hx");
pixelScript.call("pixelCam", [pauseCam]);
FlxG.cameras.add(pauseCam, false);
pauseCam.bgColor = isThorns ? 0x88000000 : 0x88FF99CC;
pauseCam.alpha = 0;
bg = new FlxSprite(44 * 6, 14 * 6);
bg.loadGraphic(Paths.image('stages/school/pause/bg'));
if (isThorns)
bg.color = 0xFF000000;
bg.scale.set(6, 6);
bg.updateHitbox();
bg.scale.y = 4;
bg.cameras = [pauseCam];
add(bg);
songText = new FlxText(0, 22 * 6, 0, "Pause", 8, false);
confText(songText);
add(songText);
var i = 2;
for(e in menuItems) {
text = new FlxText(0, (22 * 6) + (i * 9 * 6), 0, e, 8, false);
confText(text);
add(text);
texts.push(text);
i++;
}
hand = new FlxSprite().loadGraphic(Paths.image('stages/school/ui/hand_textbox'));
hand.scale.set(6, 6);
hand.updateHitbox();
add(hand);
FlxTween.tween(bg, {"scale.y": 6}, 0.75, {ease: FlxEase.elasticOut});
cameras = [pauseCam];
FlxG.sound.play(Paths.sound(isThorns ? 'pixel/ANGRY' : 'pixel/clickText'));
}
function confText(text) {
text.scale.set(6, 6);
text.updateHitbox();
text.screenCenter(FlxAxes.X);
text.borderStyle = FlxTextBorderStyle.OUTLINE;
if (!isThorns) text.borderColor = 0xFF953E3E;
}
function destroy() {
FlxG.cameras.remove(pauseCam);
}
var canDoShit = true;
var time:Float = 0;
function update(elapsed) {
pixelScript.call("postUpdate", [elapsed]);
pauseCam.alpha = lerp(pauseCam.alpha, 1, 0.25);
time += elapsed;
var curText = texts[curSelected];
hand.setPosition(curText.x - hand.width - 18 + (Math.sin(time * Math.PI * 2) * 12), curText.y + (text.height - hand.height) - 6);
hand.x -= hand.x % 6;
hand.y -= hand.y % 6;
if (!canDoShit) return;
var oldSec = curSelected;
if (controls.DOWN_P)
changeSelection(1, false);
if (controls.UP_P)
changeSelection(-1);
if (oldSec != curSelected) {
FlxG.sound.play(Paths.sound(isThorns ? 'pixel/type' : 'pixel/pixelText'));
}
if (controls.ACCEPT) {
FlxG.sound.play(Paths.sound(isThorns ? 'pixel/ANGRY' : 'pixel/clickText'));
var option = menuItems[curSelected];
if (option == "Resume" || option == "Exit to menu") {
canDoShit = false;
for(t in texts) t.visible = false;
hand.visible = songText.visible = false;
FlxTween.tween(bg, {"scale.y": 0}, 0.125, {ease: FlxEase.cubeOut, onComplete: function() {
selectOption();
}});
} else {
selectOption();
}
}
}
function changeSelection(change) {
curSelected += change;
if (curSelected < 0)
curSelected = menuItems.length - 1;
if (curSelected >= menuItems.length)
curSelected = 0;
}
+23
View File
@@ -0,0 +1,23 @@
wanda
fizzd
kiddbrute
HenryEYES
Clone Hero
Tom Fulp
StuffedWombat
mmatt_ugh
Squidly
Luis
GeoKureli
Will Blanton
SrPelo
Austin East
Krystin, Kaye-lyn, Cassidy, Mack, Levi, and Jasmine.
Laurel
bbpanzu
Etika
Foamymuffin (insert travis scott lyrics here)
SiIvaGunner
Masaya Matsuura
BIT BOY - MIKE WELSH
+19
View File
@@ -0,0 +1,19 @@
<!DOCTYPE codename-engine-splashes>
<splashes sprite="game/splashes/default" alpha="0.6">
<strum id="0"> <!-- LEFT -->
<anim name="splashleft1" anim="note impact 1 purple" fps="24" x="0" y="0" />
<anim name="splashleft2" anim="note impact 2 purple" fps="24" x="0" y="0" />
</strum>
<strum id="1"> <!-- DOWN -->
<anim name="splashdown1" anim="note impact 1 blue" fps="24" x="0" y="0" />
<anim name="splashdown2" anim="note impact 2 blue" fps="24" x="0" y="0" />
</strum>
<strum id="2"> <!-- UP -->
<anim name="splashup1" anim="note impact 1 green" fps="24" x="0" y="0" />
<anim name="splashup2" anim="note impact 2 green" fps="24" x="0" y="0" />
</strum>
<strum id="3"> <!-- RIGHT -->
<anim name="splashright1" anim="note impact 1 red" fps="24" x="0" y="0" />
<anim name="splashright2" anim="note impact 2 red" fps="24" x="0" y="0" />
</strum>
</splashes>
+15
View File
@@ -0,0 +1,15 @@
<!DOCTYPE codename-engine-splashes>
<splashes sprite="game/splashes/secret" alpha="0.6" scale="0.75">
<strum id="0"> <!-- LEFT -->
<anim name="splash purple" anim="splash purple" fps="24" x="0" y="0" />
</strum>
<strum id="1"> <!-- DOWN -->
<anim name="splash blue" anim="splash blue" fps="24" x="0" y="0" />
</strum>
<strum id="2"> <!-- UP -->
<anim name="splash green" anim="splash green" fps="24" x="0" y="0" />
</strum>
<strum id="3"> <!-- RIGHT -->
<anim name="splash red" anim="splash red" fps="24" x="0" y="0" />
</strum>
</splashes>
+39
View File
@@ -0,0 +1,39 @@
var fastCarCanDrive:Bool = true;
function create() {
resetFastCar();
}
function update(elapsed:Float) {
if (!fastCarCanDrive && fastCar.x > 2000) {
resetFastCar();
fastCarCanDrive = true;
}
// back limo drive
if (Options.lowMemoryMode) {
bgLimo.frameOffset.x = Math.sin(curBeatFloat / 4) * Math.cos(curBeatFloat / 16) * 85;
} else {
for(e in [bgLimo, dancer1, dancer2, dancer3, dancer4, dancer5]) {
e.frameOffset.x = Math.sin(curBeatFloat / 4) * Math.cos(curBeatFloat / 16) * 85;
}
}
}
function beatHit(curBeat:Int) {
if (FlxG.random.bool(10) && fastCarCanDrive)
fastCarDrive();
}
function resetFastCar() {
fastCar.x = -12600;
fastCar.y = FlxG.random.int(140, 250);
fastCar.velocity.x = 0;
fastCarCanDrive = true;
}
function fastCarDrive()
{
FlxG.sound.play(Paths.soundRandom('carPass', 0, 1), 0.7);
fastCar.velocity.x = (FlxG.random.int(170, 220) / FlxG.elapsed) * 3;
fastCarCanDrive = false;
}
+46
View File
@@ -0,0 +1,46 @@
<!DOCTYPE codename-engine-stage>
<stage zoom="0.9" name="limo" folder="stages/limo/">
<!-- BG LIMOS !-->
<sprite name="skyBG" x="-120" y="-50" sprite="limoSunset" scroll="0.1" zoomfactor="0"/>
<sprite name="bgLimo" x="-200" y="480" sprite="bgLimo" scroll="0.4" zoomfactor="0.55" />
<!-- ONLY FOR INSTANCES WITH LOW MEMORY MODE DISABLED -->
<high-memory>
<!-- DANCERS !-->
<sprite name="dancer1" x="130" y="80" sprite="limoDancer" scroll="0.4" zoomfactor="0.55">
<anim name="danceLeft" anim="bg dancer sketch PINK" loop="false" indices="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" />
<anim name="danceRight" anim="bg dancer sketch PINK" loop="false" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" />
</sprite>
<sprite name="dancer2" x="500" y="80" sprite="limoDancer" scroll="0.4" zoomfactor="0.55">
<anim name="danceLeft" anim="bg dancer sketch PINK" loop="false" indices="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" />
<anim name="danceRight" anim="bg dancer sketch PINK" loop="false" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" />
</sprite>
<sprite name="dancer3" x="870" y="80" sprite="limoDancer" scroll="0.4" zoomfactor="0.55">
<anim name="danceLeft" anim="bg dancer sketch PINK" loop="false" indices="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" />
<anim name="danceRight" anim="bg dancer sketch PINK" loop="false" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" />
</sprite>
<sprite name="dancer4" x="1240" y="80" sprite="limoDancer" scroll="0.4" zoomfactor="0.55">
<anim name="danceLeft" anim="bg dancer sketch PINK" loop="false" indices="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" />
<anim name="danceRight" anim="bg dancer sketch PINK" loop="false" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" />
</sprite>
<sprite name="dancer5" x="1610" y="80" sprite="limoDancer" scroll="0.4" zoomfactor="0.55">
<anim name="danceLeft" anim="bg dancer sketch PINK" loop="false" indices="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" />
<anim name="danceRight" anim="bg dancer sketch PINK" loop="false" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" />
</sprite>
<!-- SUPER FAST CAR !-->
<sprite name="fastCar" x="-300" y="160" sprite="fastCarLol" zoomfactor="0.75" />
</high-memory>
<!-- MORE LIMO STUFF !-->
<girlfriend />
<sprite name="limo" x="-120" y="550" sprite="limoDrive" />
<boyfriend x="1030" y="-120" camxoffset="-300"/>
<high-memory>
<sprite name="overlayShit" x="-500" y="480" sprite="limoOverlay" scroll="0">
<property name="alpha" type="float" value="0.5" />
</sprite>
</high-memory>
</stage>
+10
View File
@@ -0,0 +1,10 @@
<!DOCTYPE codename-engine-stage>
<stage zoom="1.05" name="mall-evil" folder="stages/mall/">
<sprite name="bg" x="-400" y="-500" sprite="evilBG" scroll="0.2"/>
<sprite name="evilTree" x="300" y="-300" sprite="evilTree" scroll="0.2"/>
<sprite name="evilSnow" x="-200" y="700" sprite="evilSnow" />
<girlfriend />
<dad y="20"/>
<boyfriend x="1090"/>
</stage>
+20
View File
@@ -0,0 +1,20 @@
<!DOCTYPE codename-engine-stage>
<stage zoom="0.8" name="mall" folder="stages/mall/">
<sprite name="bg" x="-1000" y="-500" sprite="bgWalls" scroll="0.2"/>
<high-memory>
<sprite name="upperBoppers" x="-240" y="-90" sprite="upperBop" scroll="0.2" />
</high-memory>
<sprite name="bgEscalator" x="-1100" y="-600" sprite="bgEscalator" scroll="0.3" scale="0.9" updateHitbox="true"/>
<sprite name="tree" x="370" y="-250" sprite="christmasTree" scroll="0.4"/>
<sprite name="bottomBoppers" x="-300" y="140" sprite="bottomBop" scroll="0.9"/>
<sprite name="fgSnow" x="-600" y="700" sprite="fgSnow"/>
<high-memory>
<sprite name="santa" x="-840" y="150" sprite="santa"/>
</high-memory>
<girlfriend />
<dad />
<boyfriend x="870" camyoffset="-200"/>
</stage>
+101
View File
@@ -0,0 +1,101 @@
import funkin.game.PlayState;
// phillyTrain is automatically added by Stage.hx
var curColor:Int = 0;
var trainSound:FlxSound;
var colors = [
0xFF31A2FD,
0xFF31FD8C,
0xFFFB33F5,
0xFFFD4531,
0xFFFBA633
];
var trainMoving:Bool = false;
var trainFrameTiming:Float = 0;
var trainCars:Int = 8;
var trainFinishing:Bool = false;
var trainCooldown:Int = 0;
function create() {
// defaultCamZoom = 0.5;
light.color = colors[curColor];
trainSound = FlxG.sound.load(Paths.sound("train_passes"));
}
function beatHit(curBeat:Int) {
if (curBeat % 4 == 0) {
// switches color
var newColor = FlxG.random.int(0, colors.length-2);
if (newColor >= curColor) newColor++;
curColor = newColor;
light.color = colors[curColor];
}
if (!trainMoving)
trainCooldown += 1;
if (curBeat % 8 == 4 && FlxG.random.bool(30) && !trainMoving && trainCooldown > 8 && !trainSound.playing)
{
trainCooldown = FlxG.random.int(-4, 0);
trainStart();
}
}
function update(elapsed:Float) {
if (Conductor.songPosition > 0)
light.alpha = 1 - (FlxEase.cubeIn((curBeatFloat / 4) % 1) * 0.85);
else
light.alpha = 0;
if (trainMoving) {
updateTrainPos();
}
}
function trainStart():Void
{
trainMoving = true;
if (!trainSound.playing)
trainSound.play(true);
}
var startedMoving:Bool = false;
function updateTrainPos():Void
{
if (trainSound.time >= 4700)
{
startedMoving = true;
gf.playAnim('hairBlow');
}
if (startedMoving)
{
phillyTrain.velocity.x = -400 * 24;
if (phillyTrain.x < -2000 && !trainFinishing)
{
phillyTrain.x = -1150;
trainCars -= 1;
if (trainCars <= 0)
trainFinishing = true;
}
if (phillyTrain.x < -4000 && trainFinishing)
trainReset();
}
}
function trainReset():Void
{
gf.playAnim('hairFall');
phillyTrain.x = FlxG.width + 200;
trainMoving = false;
// trainSound.stop();
// trainSound.time = 0;
trainCars = 8;
trainFinishing = false;
startedMoving = false;
phillyTrain.velocity.x = 0;
}
+9
View File
@@ -0,0 +1,9 @@
<!DOCTYPE codename-engine-stage>
<stage zoom="1.05" name="philly" folder="stages/philly/">
<sprite name="bg" x="-100" y="0" sprite="sky" scroll="0.1" zoomfactor="0"/>
<sprite name="city" x="-10" y="0" sprite="city" scroll="0.3" scale="0.85" updateHitbox="true" zoomfactor="0.3"/>
<sprite name="light" x="-10" y="0" sprite="win" scroll="0.3" scale="0.85" updateHitbox="true" zoomfactor="0.3"/>
<sprite name="streetBehind" x="-40" y="50" sprite="behindTrain" zoomfactor="1" />
<sprite name="phillyTrain" x="2000" y="360" sprite="train" zoomfactor="1" />
<sprite name="street" x="-40" y="50" sprite="street" zoomfactor="1" />
</stage>
+4
View File
@@ -0,0 +1,4 @@
function create() {
importScript("data/scripts/pixel");
isSpooky = true;
}
+5
View File
@@ -0,0 +1,5 @@
<!DOCTYPE codename-engine-stage>
<stage zoom="1" name="school-evil" folder="stages/school/" >
<sprite name="bg" x="400" y="200" sprite="animatedEvilSchool"
antialiasing="false" scale="6" scrollx="0.8" scrolly="0.9" type="loop"/>
</stage>
+14
View File
@@ -0,0 +1,14 @@
function create() {
importScript("data/scripts/pixel");
if (PlayState.SONG.song == "Roses") {
flabbergastGirls();
}
}
public function flabbergastGirls() {
bgGirls.animation.remove("danceLeft");
bgGirls.animation.remove("danceRight");
bgGirls.animation.addByIndices('danceLeft', 'BG fangirls dissuaded', CoolUtil.numberArray(14), "", 24, false);
bgGirls.animation.addByIndices('danceRight', 'BG fangirls dissuaded', CoolUtil.numberArray(30, 15), "", 24, false);
bgGirls.animation.play("danceLeft", true);
}
+28
View File
@@ -0,0 +1,28 @@
<!DOCTYPE codename-engine-stage>
<stage zoom="1" folder="stages/school/" >
<sprite name="bgSky" x="-12" y="0" sprite="weebSky"
antialiasing="false" scale="6" scroll="0.1" updateHitbox="true"/>
<sprite name="bgSchool" x="-216" y="0" sprite="weebSchool"
antialiasing="false" scale="6" scrollx="0.6" scrolly="0.9" updateHitbox="true"/>
<sprite name="bgStreet" x="-204" y="0" sprite="weebStreet"
antialiasing="false" scale="6" scroll="0.95" updateHitbox="true"/>
<sprite name="fgTrees" x="-30" y="130" sprite="weebTreesBack"
antialiasing="false" scale="4.8" scroll="0.9" updateHitbox="true" type="loop"/>
<sprite name="bgTrees" x="-1180" y="-1600" sprite="weebTrees"
antialiasing="false" scale="8.4" scroll="0.85" updateHitbox="true" type="loop"/>
<high-memory>
<sprite name="treeLeaves" x="-200" y="-40" sprite="petals"
antialiasing="false" scale="6" scroll="0.85" updateHitbox="true" type="loop"/>
</high-memory>
<sprite name="bgGirls" x="-100" y="190" sprite="bgFreaks" scroll="0.9" scale="6" antialiasing="false" updateHitbox="true">
<anim name="danceLeft" anim="BG girls group" indices="0,1,2,3,4,5,6,7,8,9,10,11,12,13" fps="24" loop="false"/>
<anim name="danceRight" anim="BG girls group" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" fps="24" loop="false"/>
</sprite>
</stage>
+28
View File
@@ -0,0 +1,28 @@
public var lightningStrike:Bool = true;
public var lightningStrikeBeat:Int = 0;
public var lightningOffset:Int = 8;
public var thunderSFXamount:Int = 2;
function create() {
for(i in 1...thunderSFXamount+1)
FlxG.sound.load(Paths.sound('thunder_' + Std.string(i)));
bg.playAnim('idle');
}
public function lightningStrikeShit():Void
{
FlxG.sound.play(Paths.soundRandom('thunder_', 1, thunderSFXamount));
bg.playAnim('lightning');
lightningStrikeBeat = curBeat;
lightningOffset = FlxG.random.int(8, 24);
boyfriend.playAnim('scared', true, "SING"); // SING so that they dont get indefinitely looped
gf.playAnim('scared', true, "SING");
}
function beatHit(curBeat) {
if (lightningStrike && FlxG.random.bool(10) && curBeat > lightningStrikeBeat + lightningOffset)
{
lightningStrikeShit();
}
}
+7
View File
@@ -0,0 +1,7 @@
<!DOCTYPE codename-engine-stage>
<stage zoom="1.05" name="spooky" folder="stages/spooky/">
<sprite name="bg" x="-200" y="-100" sprite="halloween_bg" anim="idle" type="none" scale="1.05">
<anim name="idle" anim="halloweem bg0" type="loop" />
<anim name="lightning" anim="halloweem bg lightning strike" loop="false"/>
</sprite>
</stage>
+9
View File
@@ -0,0 +1,9 @@
<!DOCTYPE codename-engine-stage>
<stage zoom="0.9" name="stage" folder="stages/default/">
<sprite name="bg" x="-600" y="-200" sprite="stageback" scroll="0.9" />
<sprite name="stageFront" x="-600" y="600" sprite="stagefront" scroll="0.9" />
<girlfriend />
<dad />
<boyfriend />
<sprite name="stageCurtains" x="-500" y="-300" sprite="stagecurtains" scroll="1.3" />
</stage>
+9
View File
@@ -0,0 +1,9 @@
var tankAngle:Float = FlxG.random.int(-90, 45);
var tankSpeed:Float = FlxG.random.float(5, 7);
function update(elapsed:Float) {
tankAngle += elapsed * tankSpeed;
tankRolling.angle = tankAngle - 90 + 15;
tankRolling.x = 400 + (1500 * Math.cos(Math.PI / 180 * (1 * tankAngle + 180)));
tankRolling.y = 1300 + (1100 * Math.sin(Math.PI / 180 * (1 * tankAngle + 180)));
}
+40
View File
@@ -0,0 +1,40 @@
<!DOCTYPE codename-engine-stage>
<stage zoom="0.9" name="tank" folder="stages/tank/">
<!-- BG STUFF -->
<sprite name="tankBg" x="-500" y="0" sprite="tankBg" scroll="0" zoomfactor="0"/>
<sprite name="tankSky" x="-400" y="-600" sprite="tankSky" scroll="0" zoomfactor="0"/>
<high-memory>
<sprite name="tankClouds" x="-350" y="0" sprite="tankClouds" scroll="0.1" zoomfactor="0">
<property name="velocity.x" type="float" value="10" />
</sprite>
</high-memory>
<sprite name="tankMountains" x="-300" y="-20" sprite="tankMountains" scroll="0.2" scale="1.2" updateHitbox="true" zoomfactor="0.10"/>
<high-memory>
<sprite name="tankBuildings" x="-300" y="-20" sprite="tankBuildings" scroll="0.3" scale="1.1" updateHitbox="true" zoomfactor="0.25"/>
<sprite name="tankRuins" x="-200" y="0" sprite="tankRuins" scroll="0.35" scale="1.1" updateHitbox="true" zoomfactor="0.35"/>
</high-memory>
<high-memory>
<sprite name="smokeLeft" x="-200" y="-100" sprite="smokeLeft" scroll="0.4" zoomfactor="0.6"/>
<sprite name="smokeRight" x="1100" y="-100" sprite="smokeRight" scroll="0.4" zoomfactor="0.6"/>
<sprite name="tankWatchtower" x="100" y="50" sprite="tankWatchtower" scroll="0.5" onBeat="true" zoomfactor="0.7"/>
</high-memory>
<sprite name="tankRolling" x="300" y="300" sprite="tankRolling" scroll="0.5" zoomfactor="0.8" type="loop"/>
<sprite name="tankGround" x="-420" y="-150" sprite="tankGround" scale="1.15" updateHitbox="true" zoomfactor="1.0"/>
<!-- CHARACTERS -->
<girlfriend x="305" y="105"/>
<dad x="20" y="160"/>
<boyfriend x="810"/>
<!-- FOREGROUND TANKMANS -->
<high-memory>
<sprite name="tank0" x="-500" y="650" sprite="tank0" scrollx="1.7" scrolly="1.5" onBeat="true" zoomfactor="1.25"/>
<sprite name="tank1" x="-300" y="750" sprite="tank1" scrollx="2" scrolly="0.2" onBeat="true" zoomfactor="1.25"/>
<sprite name="tank2" x="450" y="940" sprite="tank2" scroll="1.5" onBeat="true" zoomfactor="1.25"/>
<sprite name="tank4" x="1300" y="900" sprite="tank4" scroll="1.5" onBeat="true" zoomfactor="1.25"/>
<sprite name="tank5" x="1620" y="700" sprite="tank5" scroll="1.5" onBeat="true" zoomfactor="1.25"/>
<sprite name="tank3" x="1300" y="1200" sprite="tank3" scrollx="3.5" scrolly="2.5" onBeat="true" zoomfactor="1.25"/>
</high-memory>
</stage>
+56
View File
@@ -0,0 +1,56 @@
shoutouts to tom fulp--lmao
Ludum dare--extraordinaire
cyberzone--coming soon
love to thriftman--swag
ultimate rhythm gaming--probably
dope ass game--playstation magazine
in loving memory of--henryeyes
dancin--forever
funkin--forever
ritz dx--rest in peace lol
rate five--pls no blam
rhythm gaming--ultimate
game of the year--forever
you already know--we really out here
rise and grind--love to luis
like parappa--but cooler
album of the year--chuckie finster
free gitaroo man--with love to wandaboy
better than geometry dash--fight me robtop
kiddbrute for president--vote now
play dead estate--on newgrounds
this is a god damn prototype--we workin on it okay
women are real--this is official
too over exposed--newgrounds cant handle us
Hatsune Miku--biggest inspiration
too many people--my head hurts
newgrounds--forever
refined taste in music--if i say so myself
his name isnt keith--dumb eggy lol
his name isnt evan--silly tiktok
stream chuckie finster--on spotify
never forget to--pray to god
dont play rust--we only funkin
good bye--my penis
dababy--biggest inspiration
fashionably late--but here it is
yooooooooooo--yooooooooo
pico funny--pico funny
updates each friday--on time every time
shoutouts to mason--for da homies
bonk--get in the discord call
github exclusive intro text--open source forever
stage editor--coming soon!
its millions--to one
make mods--not malware
yoshi engine--never heard of it
cant add ndlls--or can i
xml is--too powerful
its only been--a week
his name is evilsk8er--dumb alphabet
you should play--soulles dx demo
do you yield--i do not
funk funk--revolution
null object--reference
hi--how are you
+71
View File
@@ -0,0 +1,71 @@
<!DOCTYPE codename-titlestate >
<titlestate>
<sprites folder="menus/titlescreen">
<sprite name="logo" sprite="logo" x="-150" y="-100" />
<sprite name="gf" sprite="gf" x="512" y="50">
<anim name="danceLeft" anim="gfDance" indices="30,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14" />
<anim name="danceRight" anim="gfDance" indices="15,16,17,18,19,20,21,22,23,24,25,26,27,28,29" />
</sprite>
<titleEnter sprite="titleEnter" x="-150" y="-100" />
</sprites>
<intro length="16">
<text beat="1">
<line text="ninjamuffin99" />
<line text="phantomArcade" />
<line text="kawaisprite" />
<line text="evilsk8er" />
</text>
<text beat="3">
<line text="ninjamuffin99" />
<line text="phantomArcade" />
<line text="kawaisprite" />
<line text="evilsk8er" />
<line text="presents" />
</text>
<text beat="4" /> <!-- clears the screen !-->
<text beat="5">
<line text="In association" />
<line text="with" />
</text>
<text beat="7">
<line text="In association" />
<line text="with" />
<line text="Newgrounds" />
<sprite path="menus/titlescreen/newgrounds_logo" scale="0.8"/>
</text>
<text beat="8" /> <!-- clears the screen !-->
<text beat="9">
<introtext line="1" />
</text>
<text beat="11">
<introtext line="1" />
<introtext line="2" />
</text>
<text beat="12"/>
<text beat="13">
<line text="Friday" />
</text>
<text beat="14">
<line text="Friday" />
<line text="Night" />
</text>
<text beat="15">
<line text="Friday" />
<line text="Night" />
<line text="Funkin'" />
</text>
</intro>
</titlestate>
+5
View File
@@ -0,0 +1,5 @@
<!DOCTYPE codename-engine-week-character>
<char scale="0.9" x="80">
<anim name="idle" anim="BF idle dance white" fps="24" loop="true" />
<anim name="confirm" anim="BF HEY!!" fps="24" loop="false"/>
</char>
+2
View File
@@ -0,0 +1,2 @@
<!DOCTYPE codename-engine-week-character>
<char scale="0.5" x="50" />
+2
View File
@@ -0,0 +1,2 @@
<!DOCTYPE codename-engine-week-character>
<char scale="0.5" />
+2
View File
@@ -0,0 +1,2 @@
<!DOCTYPE codename-engine-week-character>
<char scale="0.5" x="50" y="10"/>
@@ -0,0 +1,2 @@
<!DOCTYPE codename-engine-week-character>
<char scale="0.4" x="150" y="-20" />
+2
View File
@@ -0,0 +1,2 @@
<!DOCTYPE codename-engine-week-character>
<char scale="0.7" x="100" y="-30" flip="true"/>
+2
View File
@@ -0,0 +1,2 @@
<!DOCTYPE codename-engine-week-character>
<char x="130" y="-50"/>
+2
View File
@@ -0,0 +1,2 @@
<!DOCTYPE codename-engine-week-character>
<char scale="0.7" x="125" />
+2
View File
@@ -0,0 +1,2 @@
<!DOCTYPE codename-engine-week-character>
<char x="75" y="-35"/>
+11
View File
@@ -0,0 +1,11 @@
# THIS FILE ISNT NECESSARY,
# BUT YOU CAN USE IT TO SORT WEEKS
tutorial
week1
week2
week3
week4
week5
week6
week7
+4
View File
@@ -0,0 +1,4 @@
<!DOCTYPE codename-engine-week>
<week name="" chars="none,bf,gf" sprite="tutorial">
<song>Tutorial</song>
</week>
+6
View File
@@ -0,0 +1,6 @@
<!DOCTYPE codename-engine-week>
<week name="DADDY DEAREST" chars="dad,bf,gf" sprite="week1">
<song>Bopeebo</song>
<song>Fresh</song>
<song>Dadbattle</song>
</week>
+6
View File
@@ -0,0 +1,6 @@
<!DOCTYPE codename-engine-week>
<week name="SPOOKY MONTH" chars="spooky,bf,gf" sprite="week2">
<song>Spookeez</song>
<song>South</song>
<song hide="true">Monster</song>
</week>
+6
View File
@@ -0,0 +1,6 @@
<!DOCTYPE codename-engine-week>
<week name="PICO" chars="pico,bf,gf" sprite="week3">
<song>Pico</song>
<song>Philly Nice</song>
<song>Blammed</song>
</week>
+6
View File
@@ -0,0 +1,6 @@
<!DOCTYPE codename-engine-week>
<week name="MOMMY MUST MURDER" chars="mom,bf,gf" sprite="week4">
<song>Satin Panties</song>
<song>High</song>
<song>MILF</song>
</week>
+6
View File
@@ -0,0 +1,6 @@
<!DOCTYPE codename-engine-week>
<week name="RED SNOW" chars="parents-christmas,bf,gf" sprite="week5">
<song>Cocoa</song>
<song>Eggnog</song>
<song>Winter Horrorland</song>
</week>
+6
View File
@@ -0,0 +1,6 @@
<!DOCTYPE codename-engine-week>
<week name="HATING SIMULATOR FT. MOAWLING" chars="senpai,bf,gf" sprite="week6">
<song>Senpai</song>
<song>Roses</song>
<song hide="true">Thorns</song>
</week>
+6
View File
@@ -0,0 +1,6 @@
<!DOCTYPE codename-engine-week>
<week name="TANKMAN" chars="tankman,bf,gf" sprite="week7">
<song>Ugh</song>
<song>Guns</song>
<song>Stress</song>
</week>