Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1c3bcdc4a4 | ||
|
|
52ee99c051 | ||
|
|
46a26212b0 | ||
|
|
e6e96dc6a9 | ||
|
|
52b2299f33 | ||
|
|
22677262b3 | ||
|
|
b55f3bea86 | ||
|
|
35d389ebd3 | ||
|
|
367d2588b9 | ||
|
|
465b0ec5cb | ||
|
|
aa8dab3b1a | ||
|
|
90bc513adf | ||
|
|
0033a8fae4 | ||
|
|
b95e97b5d4 | ||
|
|
99504ea84e | ||
|
|
50ccd25c00 | ||
|
|
712ed2ef25 | ||
|
|
98572d31f4 | ||
|
|
47c66d8bf2 | ||
|
|
3f17113016 | ||
|
|
c4c9781d13 | ||
|
|
70c98639b2 | ||
|
|
85cdfdeb10 | ||
|
|
fa30362c0b | ||
|
|
bf961cd098 | ||
|
|
e593605f60 | ||
|
|
7afb990ef4 | ||
|
|
2b2990ae30 | ||
|
|
d0594793a9 | ||
|
|
a6de27c5de | ||
|
|
411763d6b1 | ||
|
|
e9bae066a1 | ||
|
|
b667b160a6 | ||
|
|
d323030268 | ||
|
|
565c66c800 | ||
|
|
7fd4ddee75 | ||
|
|
b82b7a1ae2 | ||
|
|
eba8c05c8e | ||
|
|
ff322562bb | ||
|
|
bfa744e570 | ||
|
|
456a2f7f8d | ||
|
|
fa3b6d1953 | ||
|
|
8aeecfb7aa | ||
|
|
6cf42293f6 | ||
|
|
4b4c2f10e9 | ||
|
|
d45dbc9d7a | ||
|
|
498af57dd6 | ||
|
|
6149753495 | ||
|
|
2f7c539d2a | ||
|
|
9cf6c50400 | ||
|
|
b3aee374a6 | ||
|
|
ee8608d3b9 | ||
|
|
0aac607da2 | ||
|
|
ff2ca65a92 | ||
|
|
986ad2bd95 | ||
|
|
82df9eb04a | ||
|
|
06828cade7 | ||
|
|
7eb8bc23fd | ||
|
|
c266bf1ac0 | ||
|
|
958091e2d4 | ||
|
|
bab0525f98 | ||
|
|
22e4ce4016 | ||
|
|
540c52c13a | ||
|
|
33f0bc70eb | ||
|
|
11339cb3cd | ||
|
|
0d63232ecc | ||
|
|
755cd16468 | ||
|
|
cbd7e0a3f5 | ||
|
|
419ef50c0a | ||
|
|
8d144a1262 | ||
|
|
59db640a94 | ||
|
|
d155b440d8 | ||
|
|
fdf0d5b3cc | ||
|
|
f37d31ab86 | ||
|
|
54c079d866 | ||
|
|
50cb615c26 | ||
|
|
1825d4b775 | ||
|
|
decdba1488 | ||
|
|
64c11c32ac | ||
|
|
c94f37bf92 | ||
|
|
f85d8b1675 | ||
|
|
42fc092a7e | ||
|
|
7f5ff7629f | ||
|
|
9ea939dfcd | ||
|
|
4e19c51f91 | ||
|
|
3f42b140cb | ||
|
|
d9ed847bde | ||
|
|
d7dcb1872a | ||
|
|
fa53926f06 | ||
|
|
a28d70eb6b | ||
|
|
bd18dbbe56 | ||
|
|
f6e40fef49 | ||
|
|
e4abe73895 | ||
|
|
82f31be66b | ||
|
|
adad87db8b | ||
|
|
3c6531b154 | ||
|
|
a7aab0044a | ||
|
|
4fbec4ce4f | ||
|
|
3008cb9d2a | ||
|
|
d7b42b38fd | ||
|
|
decec1beae | ||
|
|
668df9754b | ||
|
|
c5c73fe353 | ||
|
|
8de2a16998 | ||
|
|
a2148bf0ea | ||
|
|
d9ca22bbda | ||
|
|
7b9c984cf9 | ||
|
|
ddb868f43f | ||
|
|
459e9fa8d1 | ||
|
|
8eb788d65a | ||
|
|
71528882f1 | ||
|
|
823ff20bf7 | ||
|
|
c0fc0923de | ||
|
|
2c653aec50 | ||
|
|
cff825a888 | ||
|
|
0a86cce9c7 | ||
|
|
9c615caddc | ||
|
|
be2a504a83 | ||
|
|
a2523b34df | ||
|
|
14442ba5b5 | ||
|
|
76cb5a256b | ||
|
|
570b9e5f88 | ||
|
|
b60ad1b1bb | ||
|
|
71ef2243f6 | ||
|
|
798895f8c4 | ||
|
|
7e1088213d | ||
|
|
d0acc77923 | ||
|
|
bb1e07c2d3 | ||
|
|
5eb5ca4d17 | ||
|
|
cb94dd7208 | ||
|
|
d0ee6d5d91 | ||
|
|
9e64a9d9d8 | ||
|
|
172fdc9f67 | ||
|
|
a9c1b360c1 | ||
|
|
7f04a82b70 | ||
|
|
8137651c3d | ||
|
|
989a602b71 | ||
|
|
57fcd54542 | ||
|
|
484b989aed | ||
|
|
b2a4baa11f | ||
|
|
129aa6a739 | ||
|
|
6a61bb4307 | ||
|
|
7faa4e0aa8 | ||
|
|
ef7a3c1602 | ||
|
|
c4c3e44e71 | ||
|
|
f69c509c65 | ||
|
|
4ebd65a36d | ||
|
|
e5ac8f1614 | ||
|
|
e4d613200a | ||
|
|
d3d3ecc749 | ||
|
|
213e8a8f37 | ||
|
|
16ace2d10f | ||
|
|
3c7497080e | ||
|
|
1997be7164 | ||
|
|
548210c51d | ||
|
|
6ecfb6d7d4 | ||
|
|
ae01d8ae83 | ||
|
|
b804408d94 | ||
|
|
c206a31354 | ||
|
|
0af39387df | ||
|
|
64e1bd768e | ||
|
|
cab1904562 | ||
|
|
472a23e576 | ||
|
|
4cc9762ea7 | ||
|
|
d042018dab | ||
|
|
afb3f1cb24 | ||
|
|
4e2ba50f83 | ||
|
|
a63e5f5958 | ||
|
|
c259385f2a | ||
|
|
043fcf7151 | ||
|
|
836089c0e4 | ||
|
|
5450da2274 | ||
|
|
518362b1e0 | ||
|
|
f22c5e754f | ||
|
|
0ad31331a1 | ||
|
|
381651aa2f | ||
|
|
dc25592994 | ||
|
|
0f227a5a5d | ||
|
|
e592144f93 | ||
|
|
948c62fb46 | ||
|
|
41a174b280 | ||
|
|
e53d987e53 | ||
|
|
aeacb0fb3e | ||
|
|
e0e59d4495 | ||
|
|
f63a0d7eaa | ||
|
|
9ed1d82952 | ||
|
|
44a4598958 | ||
|
|
97791b36dc | ||
|
|
9132120608 | ||
|
|
f86f4a3c12 | ||
|
|
74f998ff6a | ||
|
|
26190b70a6 | ||
|
|
efcd3af193 | ||
|
|
edf7545b56 | ||
|
|
a73b2ee121 | ||
|
|
105fe5944e | ||
|
|
f62f695134 | ||
|
|
d507ebaf9a | ||
|
|
27b0ab1de9 | ||
|
|
099c9a7d55 | ||
|
|
18c107ab0a | ||
|
|
c2b64d7ec3 | ||
|
|
a55e6eba38 | ||
|
|
d3a681d55a | ||
|
|
ae14e6e61f | ||
|
|
02dc16acc2 | ||
|
|
22f56d2c91 | ||
|
|
6aec2e024b | ||
|
|
2a9cab6535 | ||
|
|
9e1a042e45 | ||
|
|
03e8162abf | ||
|
|
fc5bd8b988 | ||
|
|
02358a0246 | ||
|
|
88b75cf086 | ||
|
|
8bf522444b | ||
|
|
fef21a0d2d | ||
|
|
c95c1e2975 | ||
|
|
7c091445c2 | ||
|
|
beb31cd5b1 | ||
|
|
b140ab4345 | ||
|
|
8f542c11e9 | ||
|
|
2232d19fa2 | ||
|
|
38f450ec43 | ||
|
|
ba996e87a2 | ||
|
|
139d5daefa | ||
|
|
30d76bec21 | ||
|
|
220e124c75 | ||
|
|
09372e6608 | ||
|
|
3e2c0a0ed1 | ||
|
|
98df016360 | ||
|
|
36ab52b160 | ||
|
|
7fa6cdd91e | ||
|
|
c145ef7cef | ||
|
|
2ed0fbeca9 | ||
|
|
7eab9809c8 | ||
|
|
43c269a126 | ||
|
|
94518547d2 | ||
|
|
f6a11a2472 | ||
|
|
1d29f4eec5 | ||
|
|
ba71e67b3e | ||
|
|
8decd9b1a5 | ||
|
|
af89443188 | ||
|
|
922fa11e0a | ||
|
|
972a10d7c6 | ||
|
|
418089fdf6 | ||
|
|
fee84bd87c | ||
|
|
81c4395552 | ||
|
|
6a527ccf20 | ||
|
|
091d0e9d10 | ||
|
|
8666deee95 | ||
|
|
981cd1f516 | ||
|
|
524da89d3a | ||
|
|
4a15cff151 | ||
|
|
d72558c427 | ||
|
|
2f96cbaf68 | ||
|
|
dca9aebb14 | ||
|
|
3ce5c24eaf | ||
|
|
abf595c9f6 | ||
|
|
d06812a662 | ||
|
|
f80281d41e | ||
|
|
65fd5fa72e | ||
|
|
5dba1a47f7 | ||
|
|
62d9dd1df1 | ||
|
|
a39b8644c9 | ||
|
|
8b595cf7b4 | ||
|
|
b35b8b2a33 | ||
|
|
758a02c379 | ||
|
|
b12d91e172 | ||
|
|
0d240a9725 | ||
|
|
c97eb04e12 | ||
|
|
e0076a4ddf | ||
|
|
5e41414249 | ||
|
|
9cd0742f53 | ||
|
|
7c073438b3 | ||
|
|
c063152f1b | ||
|
|
b48d09ef52 | ||
|
|
4e2a80b3ac | ||
|
|
7c451c16b9 | ||
|
|
ed91b7f250 | ||
|
|
6233f32c81 | ||
|
|
20cd819291 | ||
|
|
1397fa42e3 | ||
|
|
9ad993002a | ||
|
|
4bdc0c73ff | ||
|
|
eddea6a63b | ||
|
|
b1349c09b9 | ||
|
|
4b98b0ba31 | ||
|
|
242860628b | ||
|
|
2158da173a | ||
|
|
766a49474d | ||
|
|
32a8e2708f | ||
|
|
0ae79a9bb4 | ||
|
|
18823ab677 | ||
|
|
5b963fb7f8 | ||
|
|
beda6f28c2 | ||
|
|
8db770bc28 | ||
|
|
19fbdeb8de | ||
|
|
952f2e6d3e | ||
|
|
96f1bc7edf | ||
|
|
5599b8ca16 | ||
|
|
6238c55a1d | ||
|
|
da6296e587 | ||
|
|
a67ce3e425 | ||
|
|
b771fc747f | ||
|
|
703b6c6b97 | ||
|
|
f034c00443 | ||
|
|
8aaf97b8b3 | ||
|
|
390702d265 | ||
|
|
de578ec38b | ||
|
|
a9df83d905 | ||
|
|
376609153b | ||
|
|
25afb382db | ||
|
|
49840fdeb5 | ||
|
|
858aa39647 | ||
|
|
1532c7361b | ||
|
|
513a72127c | ||
|
|
25f49c9dab | ||
|
|
bcb3b1271a | ||
|
|
1d6856039b | ||
|
|
6b3ba95ed3 | ||
|
|
759b712324 | ||
|
|
ff907a0f19 | ||
|
|
224d43b384 | ||
|
|
e6fc95d585 | ||
|
|
be7856cc83 | ||
|
|
1d018c9289 | ||
|
|
0176c1f018 | ||
|
|
f89dde8f47 | ||
|
|
0d8244ef3d | ||
|
|
943988c10a | ||
|
|
37cd5ef677 | ||
|
|
ce1b22af8c | ||
|
|
38a8381ee3 | ||
|
|
e0d5780f41 | ||
|
|
a1500240ce | ||
|
|
db1c8c2606 | ||
|
|
77c06c1bc9 | ||
|
|
b33d6a5da2 | ||
|
|
2b9017a355 | ||
|
|
3e183b95ab | ||
|
|
4c30c0da16 | ||
|
|
8bd84f92e7 | ||
|
|
0d23e808a6 | ||
|
|
ea7b583ffa | ||
|
|
e37a2f9ce3 | ||
|
|
7a6e81cb45 | ||
|
|
7b5f0595c7 | ||
|
|
d9a779151c | ||
|
|
b7d01c2a08 | ||
|
|
899944fcd3 | ||
|
|
20e1b982c1 | ||
|
|
f0d25558c9 | ||
|
|
f410396b47 | ||
|
|
c506f0bd03 | ||
|
|
bf4423545a | ||
|
|
82edabfc4f | ||
|
|
c22c8a0258 | ||
|
|
74bd79fe77 | ||
|
|
5db3772d4b |
@@ -16,5 +16,5 @@ labels: compiling help
|
||||
[ ] Mac
|
||||
|
||||
### Explain your issue
|
||||
##### Please check first if your issue haven't already been reported yet.
|
||||
[weed]: <> (MAKE SURE TO ADD A SCREENSHOT OF THE CRASH HANDLER, IF AVAILABLE, AND STEPS TO REPRODUCE THE BUG!)
|
||||
##### Please check first if your issue haven't already been reported yet, and make sure you ran the `update.bat` file before building.
|
||||
[weed]: <> (MAKE SURE TO ADD A SCREENSHOT OF THE CRASH HANDLER, IF AVAILABLE, AND STEPS TO REPRODUCE THE BUG!)
|
||||
|
||||
@@ -5,6 +5,7 @@ on:
|
||||
jobs:
|
||||
build:
|
||||
name: Linux Build
|
||||
permissions: write-all
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Pulling the source
|
||||
@@ -26,7 +27,7 @@ jobs:
|
||||
cache-build-linux
|
||||
- name: Installing/Updating libraries
|
||||
run: |
|
||||
haxe -cp ./update -D analyzer-optimize -main Update --interp
|
||||
haxe -cp commandline -D analyzer-optimize --run Main setup
|
||||
- name: Building the game
|
||||
run: |
|
||||
haxelib run lime build linux
|
||||
@@ -69,4 +70,4 @@ jobs:
|
||||
export/release/linux/haxe/
|
||||
export/release/linux/obj/
|
||||
restore-keys: |
|
||||
cache-build-linux
|
||||
cache-build-linux
|
||||
|
||||
@@ -5,6 +5,7 @@ on:
|
||||
jobs:
|
||||
build:
|
||||
name: Mac OS Build
|
||||
permissions: write-all
|
||||
runs-on: macos-latest
|
||||
steps:
|
||||
- name: Pulling the new commit
|
||||
@@ -26,7 +27,7 @@ jobs:
|
||||
cache-build-mac
|
||||
- name: Installing/Updating libraries
|
||||
run: |
|
||||
haxe -cp ./update -D analyzer-optimize -main Update --interp
|
||||
haxe -cp commandline -D analyzer-optimize --run Main setup
|
||||
- name: Building the game
|
||||
run: |
|
||||
haxelib run lime build mac
|
||||
@@ -69,4 +70,4 @@ jobs:
|
||||
export/release/macos/haxe/
|
||||
export/release/macos/obj/
|
||||
restore-keys: |
|
||||
cache-build-mac
|
||||
cache-build-mac
|
||||
|
||||
@@ -5,6 +5,7 @@ on:
|
||||
jobs:
|
||||
build:
|
||||
name: Windows Build
|
||||
permissions: write-all
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- name: Pulling the new commit
|
||||
@@ -26,7 +27,7 @@ jobs:
|
||||
cache-build-windows
|
||||
- name: Installing/Updating libraries
|
||||
run: |
|
||||
haxe -cp ./update -D analyzer-optimize -main Update --interp
|
||||
haxe -cp commandline -D analyzer-optimize --run Main setup
|
||||
- name: Building the game
|
||||
run: |
|
||||
haxelib run lime build windows
|
||||
@@ -69,4 +70,4 @@ jobs:
|
||||
export/release/windows/haxe/
|
||||
export/release/windows/obj/
|
||||
restore-keys: |
|
||||
cache-build-windows
|
||||
cache-build-windows
|
||||
|
||||
@@ -2,5 +2,6 @@ export/
|
||||
dump/
|
||||
latest/windows/obj/
|
||||
latest/windows/haxe/
|
||||
.vscode/
|
||||
.vscode/*
|
||||
!.vscode/settings.json
|
||||
.haxelib/
|
||||
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"editor.detectIndentation": false,
|
||||
"editor.insertSpaces": false,
|
||||
"files.associations": {
|
||||
"*.hx": "haxe",
|
||||
"*.hscript": "haxe",
|
||||
"*.hsc": "haxe",
|
||||
"*.hxs": "haxe"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
# Codename Engine features
|
||||
This markdown file contains every single feature Codename has, separated into multiple categories. List may be incomplete.
|
||||
|
||||
_**QOL = Quality of Life**_
|
||||
|
||||
<details>
|
||||
<summary><h2>Player QOL Features</h2></summary>
|
||||
|
||||
- New input system
|
||||
- New accuracy and misses system, added to fix the base game UI.
|
||||
- New options, including:
|
||||
- Controls rebinds (for P1 and P2)
|
||||
- Downscroll
|
||||
- Ghost Tapping
|
||||
- Opponent & Co-op modes
|
||||
- Memory optimisation (most of the game runs < 500mb)
|
||||
- Usage of [flxanimate](https://github.com/Dot-Stuff/flxanimate) on big sprites, such as Girlfriend to save memory.
|
||||
- You can further optimize it on certain stages by enabling `Low Memory Mode` in `Options > Appearance`.
|
||||
- New volume change SFX (no more loud flixel beep, customizable)
|
||||
- New FPS counter allowing you to see advanced info by pressing F3.
|
||||
- Simple but advanced modding system (press TAB on main menu)
|
||||
- **Windows only:**
|
||||
- (Windows) FNF is no longer blurry on 125-150% DPI
|
||||
- FNF auto fixes audio on state change when you plug in/out your headphones.
|
||||
- FNF auto applies dark titlebar
|
||||
- **Week 7 included** with softcoded cutscenes (no MP4)
|
||||
- Auto updating: Once the engine updates, a prompt will be available at launch. If you accept to update, the engine will auto install the newest version. All of the following update files will be downloaded from the GitHub releases:
|
||||
- `Update-Windows.exe` - Containing the latest Windows executable. (~60mb)
|
||||
- `Update-Assets.zip` - Every asset change from the latest version to the newest. If upgrading from even older version, all of the `Update-Assets.zip` files for the versions in between and the latest one will be downloaded.
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary><h2>Modding QOL features</h2></summary>
|
||||
|
||||
- New assets and scripting management - **Applies both to the `assets` folder and mods.**
|
||||
- Support for `hscript-improved`, a fork made to allow HScript to push modding even further
|
||||
- Allows for imports
|
||||
- Allows for public variables (variables shared between every script in a ScriptPack such as a song scripts)
|
||||
- Allows for static variables (variabels shared between every single script ran in this mod)
|
||||
- Allows you to use for example `boyfriend` instead of `PlayState.boyfriend` or `game.boyfriend`, for smaller and easier to comprehend code.
|
||||
- Allows you to use `@:bypassAccessor`
|
||||
- Allows you to use maps
|
||||
- Usage of XML files for Characters instead of hardcoding them.
|
||||
- Animation names, prefixes, indices, etc... can be set in the XML without an additional line of code.
|
||||
- Offsets are automatically fixed. That means changes such as scaling, rotation, and playing as an opponent character wont break them.
|
||||
- Entirely new song structure (`songs/name/`)
|
||||
- Usage of `meta.json`, which allows you to synchronize data between charts and the Freeplay menu.
|
||||
- Charts can use their own by specifying `meta` in the JSON (Codename charts only)
|
||||
- Charts are now located in `songs/name/charts/`, and are named after the difficulty `hard.json` instead of `name-hard.json`
|
||||
- Difficulties are auto-detected in case they aren't specified in the `meta.json` file.
|
||||
- Scripts are located in `songs/name/scripts/`, and only applies to the current song.
|
||||
- Script that applies on every song are located in `data/charts/`.
|
||||
- Song files are now located in `songs/name/song/`. They still follow their `Inst.ogg` and `Voices.ogg` names.
|
||||
- Inst/Voices for custom difficulties can be set by naming those files `Inst-difficulty.ogg` and/or `Voices-difficulty.ogg`.
|
||||
- Song length limits
|
||||
- Usage of XML files for stages. XMLs can:
|
||||
- Change camera zooms, camera offsets, etc...
|
||||
- Add elements to the stage and
|
||||
- Position them
|
||||
- Add animations
|
||||
- Change their scale
|
||||
- Change their scrollfactor
|
||||
- Change their zoomfactor
|
||||
- Turn on/off their antialiasing (on by default)
|
||||
- Change additional properties via child nodes.
|
||||
- Change boyfriend, girlfriend and dad's info
|
||||
- Moving the `<boyfriend />`, `<girlfriend />` and `<dad />` nodes will move them in the layers
|
||||
- Adding x and y attributes to them will change their position
|
||||
- You can add positioning for custom characters by adding `<character name="name" />`
|
||||
- Usage of XML files for weeks.
|
||||
- Characters are located in `data/weeks/characters`.
|
||||
- Weeks are located in `data/weeks/weeks/`
|
||||
- If you need to rearrange the weeks in-game, you can use the `data/weeks/weeks.txt` file.
|
||||
- Every single state & substate can be modified via HScript (`data/states/StateName.hx`)
|
||||
- **Instances launched via `lime test windows` will automatically use assets from source.**
|
||||
</details>
|
||||
@@ -1,16 +1,27 @@
|
||||
# Friday Night Funkin' - Codename Engine (WIP)
|
||||
|
||||
## PLEASE NOTE - THIS IS STILL IN A BETA STATE
|
||||
### Mods created with beta versions of Codename may not be compatible with the release version
|
||||
Known issues in the beta:
|
||||
- Some options are missing
|
||||
- Week 5 has no monster animation
|
||||
- Week 6 still have no dialogue
|
||||
- Week 7 have no running tankman
|
||||
|
||||
Build instructions are below. Press TAB on the main menu to switch mods (make sure a mod folder exists or it crashes).
|
||||
Build instructions are below. Press TAB on the main menu to switch mods.
|
||||
|
||||
Also, `lime test windows` uses the source assets folder instead of the export one for easier development.
|
||||
|
||||
## Codename Engine
|
||||
|
||||
Codename Engine is a new Friday Night Funkin' Engine aimed for easier modding, along with extensiblity and ease of use.
|
||||
|
||||
### It includes many new features, as seen [here](FEATURES.md)
|
||||
|
||||
## How to download
|
||||
|
||||
Latest builds for the engine can be found in the [Actions](https://github.com/YoshiCrafter29/CodenameEngine/actions) tab.
|
||||
|
||||
<details>
|
||||
<summary><h2>Credits</h2></summary>
|
||||
|
||||
@@ -27,7 +38,7 @@ Also, `lime test windows` uses the source assets folder instead of the export on
|
||||
<summary>Windows</summary>
|
||||
|
||||
##### Tested on Windows 10 21H2
|
||||
1. Install the [latest version of Haxe](https://haxe.org/download/).
|
||||
1. Install [version 4.2.5 of Haxe](https://haxe.org/download/version/4.2.5/).
|
||||
2. Download [Visual Studio Build Tools](https://aka.ms/vs/17/release/vs_BuildTools.exe)
|
||||
3. Wait for the Visual Studio Installer to install
|
||||
4. On the Visual Studio installer screen, go to the "Individual components" tab and only select those options:
|
||||
@@ -52,7 +63,7 @@ Also, `lime test windows` uses the source assets folder instead of the export on
|
||||
<summary>Linux</summary>
|
||||
|
||||
##### Requires testing
|
||||
1. Install the [latest version of Haxe](https://haxe.org/download/).
|
||||
1. Install [version 4.2.5 of Haxe](https://haxe.org/download/version/4.2.5/).
|
||||
2. Install `g++`, if not present already.
|
||||
3. Download and install [`git-scm`](https://git-scm.com/download/linux).
|
||||
4. Open a terminal in the Codename Engine source folder, and run `update.sh`.
|
||||
@@ -63,7 +74,7 @@ Also, `lime test windows` uses the source assets folder instead of the export on
|
||||
<summary>MacOS</summary>
|
||||
|
||||
##### Requires testing
|
||||
1. Install the [latest version of Haxe](https://haxe.org/download/).
|
||||
1. Install [version 4.2.5 of Haxe](https://haxe.org/download/version/4.2.5/).
|
||||
2. Install `Xcode` to allow C++ app building.
|
||||
3. Download and install [`git-scm`](https://git-scm.com/download/mac).
|
||||
4. Open a terminal in the Codename Engine source folder, and run `update.sh`.
|
||||
@@ -73,4 +84,4 @@ Also, `lime test windows` uses the source assets folder instead of the export on
|
||||
|
||||
</details>
|
||||
|
||||
</details>
|
||||
</details>
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
# Codename Engine Todo List
|
||||
|
||||
## `v1.0.0` - Initial release
|
||||
|
||||
- [x] Remove Herobrine
|
||||
- [ ] Chart Editor
|
||||
- [x] Place & Delete notes
|
||||
- [x] Ctrl+Z & Ctrl+Y
|
||||
- [x] Selection box & dragging
|
||||
- [x] Scroll bar at the right + Song info
|
||||
- [x] Fix the strumlines bar when zooming out
|
||||
- [x] Algorithm to make note placements faster & sorted out
|
||||
- [x] Play here working
|
||||
- [ ] Events (including Camera Movement)
|
||||
- [ ] Custom Notes
|
||||
- [ ] Metadata Editing
|
||||
- [ ] Cap zoom in & out
|
||||
- [ ] Step based zooming
|
||||
- [ ] Use latest hxCodec
|
||||
- [ ] Re-export gf-christmas, gf-car and gf-tankmen with padding
|
||||
- [ ] Multiple state scripts & Multiple global scripts
|
||||
- [ ] Re-add shader camera stuff
|
||||
- [ ] Make update.bat use libs.xml instead of hmm.json
|
||||
- [ ] New Switch Mod menu
|
||||
- [ ] Port shader camera stuff over to new flixel fork
|
||||
- [ ] Add note offset
|
||||
- [ ] Dialogue
|
||||
- [ ] Finish Base Game port
|
||||
- [ ] Character Editor
|
||||
- [ ] Fix bugs
|
||||
|
||||
## `v1.1.0`
|
||||
- [ ] Charter Waveforms (maybe in v1.1.0, dont wanna slow shit down)
|
||||
- [ ] Custom classes
|
||||
- [ ] Full 3D support via stages files
|
||||
- [ ] Multithread sprites loading (for faster load times) ?
|
||||
- [ ] Stage Editor
|
||||
@@ -0,0 +1,10 @@
|
||||
## DEV (PRIVATE) REPO INSTRUCTIONS TO SYNC UP WITH IT INSTEAD OF SYNCING WITH THE PUBLIC ONE
|
||||
- Open a Command Prompt window in the public codename repo folder
|
||||
- Type those commands:
|
||||
- `git remote add dev https://www.github.com/YoshiCrafter29/CodenameEngine-Dev`
|
||||
- `git branch --set-upstream-to dev/main`
|
||||
- GitHub desktop should be synchronized with the dev repo now. If you're unsure,
|
||||
- Repo name should still say "CodenameEngine"
|
||||
- Current branch should still say "main"
|
||||
- "Fetch" button should say "Fetch dev"
|
||||
- You shouldn't have any commit to push.
|
||||
|
After Width: | Height: | Size: 153 KiB |
|
After Width: | Height: | Size: 150 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 10 KiB |
@@ -1,127 +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" />
|
||||
</bold>
|
||||
<normal spritesheet="menus/alphabet">
|
||||
<!-- Symbols !-->
|
||||
<letter char="$" anim="dollarsign" />
|
||||
<letter char="#" anim="hashtag" />
|
||||
<letter char="%" anim="%" />
|
||||
<letter char="&" 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=""" anim="start parentheses" />
|
||||
<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="&" 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=""" 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" />
|
||||
<!-- 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>
|
||||
<!-- 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>
|
||||
@@ -1,12 +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"/>
|
||||
<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>
|
||||
@@ -1,13 +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"/>
|
||||
<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>
|
||||
@@ -1,6 +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"/>
|
||||
<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>
|
||||
@@ -1,13 +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"/>
|
||||
<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>
|
||||
@@ -1,10 +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" />
|
||||
<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" />
|
||||
<!-- 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>
|
||||
@@ -1,14 +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"/>
|
||||
<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>
|
||||
@@ -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>
|
||||
@@ -1,8 +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 LEFT" fps="24" loop="false" x="-10" y="10"/>
|
||||
<anim name="singRIGHT" anim="Dad Sing Note RIGHT" fps="24" loop="false" x="0" y="27"/>
|
||||
<anim name="singDOWN" anim="Dad Sing Note DOWN" fps="24" loop="false" x="0" y="-30"/>
|
||||
<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>
|
||||
@@ -1,5 +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" />
|
||||
<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>
|
||||
@@ -1,14 +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" />
|
||||
<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>
|
||||
@@ -1,5 +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" />
|
||||
<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>
|
||||
@@ -1,6 +1,7 @@
|
||||
<!DOCTYPE codename-engine-character>
|
||||
<character isPlayer="false" flipX="false" isGF="true">
|
||||
<anim name="danceLeft" anim="GF Dancing at Gunpoint" 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 at Gunpoint" 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="sad" anim="GF Crying at Gunpoint" fps="24" loop="true" x="-2" y="-21" indices="0,1,2,3,4,5,6,7,8,9,10,11,12"/>
|
||||
<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>
|
||||
@@ -1,14 +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" />
|
||||
<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>
|
||||
@@ -1,10 +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 -->
|
||||
<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"/>
|
||||
<anim name="singRIGHT" anim="Mom Pose Left" fps="24" loop="false" x="10" y="-60"/>
|
||||
</character>
|
||||
@@ -1,10 +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 -->
|
||||
<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"/>
|
||||
<anim name="singRIGHT" anim="Mom Pose Left" fps="24" loop="false" x="10" y="-60"/>
|
||||
</character>
|
||||
@@ -1,8 +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="singLEFT" anim="Monster left note" fps="24" loop="false" x="-30" y="0"/>
|
||||
<anim name="singRIGHT" 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"/>
|
||||
<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>
|
||||
@@ -1,8 +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="singLEFT" anim="Monster left note" fps="24" loop="false" x="-30" y="20"/>
|
||||
<anim name="singRIGHT" 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"/>
|
||||
<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>
|
||||
@@ -1,12 +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"/>
|
||||
<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>
|
||||
@@ -1,19 +1,19 @@
|
||||
var dir = 2;
|
||||
|
||||
function onDance(event) {
|
||||
event.cancel();
|
||||
|
||||
playAnim("idle" + Std.string(dir), true, "DANCE");
|
||||
event.cancel();
|
||||
|
||||
playAnim("idle" + Std.string(dir), true, "DANCE");
|
||||
}
|
||||
|
||||
function onPlaySingAnim(event) {
|
||||
dir = FlxG.random.int(0, 1) + (event.direction == 0 ? 1 : 3);
|
||||
event.cancel();
|
||||
dir = FlxG.random.int(0, 1) + (event.direction == 0 ? 3 : 1);
|
||||
event.cancel();
|
||||
|
||||
playAnim("shoot" + Std.string(dir), true);
|
||||
playAnim("shoot" + Std.string(dir), true);
|
||||
}
|
||||
|
||||
function update(elapsed) {
|
||||
if (animation.curAnim == null || (animation.curAnim.name.substr(0, 5) == "shoot" && animation.curAnim.finished))
|
||||
dance();
|
||||
if (getAnimName() == null || (getAnimName().substr(0, 5) == "shoot" && isAnimFinished()))
|
||||
dance();
|
||||
}
|
||||
@@ -1,16 +1,16 @@
|
||||
<!DOCTYPE codename-engine-character>
|
||||
<character isPlayer="false" flipX="false" icon="pico" x="140" y="-125">
|
||||
<!-- 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" />
|
||||
<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" x="-1" y="-128" />
|
||||
<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" x="-1" y="-128" />
|
||||
<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" x="412" y="-64" />
|
||||
<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" x="412" y="-64" />
|
||||
<!-- 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" x="439" y="-19" />
|
||||
<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" x="439" y="-19" />
|
||||
<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>
|
||||
@@ -1,16 +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"/>
|
||||
<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" />
|
||||
<!-- 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" />
|
||||
<!-- 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>
|
||||
@@ -1,10 +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" />
|
||||
<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" />
|
||||
<!-- 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>
|
||||
@@ -1,10 +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" />
|
||||
<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" />
|
||||
<!-- 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>
|
||||
@@ -1,10 +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" />
|
||||
<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" />
|
||||
<!-- 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>
|
||||
@@ -1,9 +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"/>
|
||||
<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>
|
||||
@@ -2,14 +2,14 @@
|
||||
|
||||
<!-- 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" />
|
||||
<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" />
|
||||
<!-- 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>
|
||||
@@ -1,7 +0,0 @@
|
||||
<!DOCTYPE codename-config >
|
||||
<mod name="Codename Engine" desc="New FNF engine designed to make mod making easier, both in source and via softcoding!">
|
||||
<!-- This line is ignored if in source assets. Use the project.xml to change settings. !-->
|
||||
<window icon="icon.ico" title="Friday Night Funkin' - Codename Engine" width="1280" height="720" />
|
||||
|
||||
|
||||
</mod>
|
||||
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"clientID": "1027994136193810442",
|
||||
"logoKey": "icon"
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
story mode
|
||||
freeplay
|
||||
options
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -0,0 +1,4 @@
|
||||
<!DOCTYPE codename-engine-dialogue-character>
|
||||
<character x="50" y="-60">
|
||||
<anim name="normal" anim="normal" fps="24" />
|
||||
</character>
|
||||
@@ -0,0 +1,4 @@
|
||||
<!DOCTYPE codename-engine-dialogue-character>
|
||||
<character x="250" y="-350">
|
||||
<anim name="normal" anim="normal" fps="24" />
|
||||
</character>
|
||||
@@ -1,133 +0,0 @@
|
||||
{
|
||||
"addOGSongs": false,
|
||||
"songs": [
|
||||
{
|
||||
"name": "test",
|
||||
"icon": "bf"
|
||||
},
|
||||
{
|
||||
"name": "Tutorial",
|
||||
"icon": "gf",
|
||||
"color": "#9271FD"
|
||||
},
|
||||
|
||||
|
||||
{
|
||||
"name": "Bopeebo",
|
||||
"icon": "dad",
|
||||
"color": "#9271FD"
|
||||
},
|
||||
{
|
||||
"name": "Fresh",
|
||||
"icon": "dad",
|
||||
"color": "#9271FD"
|
||||
},
|
||||
{
|
||||
"name": "Dadbattle",
|
||||
"icon": "dad",
|
||||
"color": "#9271FD"
|
||||
},
|
||||
|
||||
|
||||
{
|
||||
"name": "Spookeez",
|
||||
"icon": "spooky",
|
||||
"color": "#223344"
|
||||
},
|
||||
{
|
||||
"name": "South",
|
||||
"icon": "spooky",
|
||||
"color": "#223344"
|
||||
},
|
||||
{
|
||||
"name": "Monster",
|
||||
"icon": "monster",
|
||||
"color": "#223344"
|
||||
},
|
||||
|
||||
|
||||
{
|
||||
"name": "Pico",
|
||||
"icon": "pico",
|
||||
"color": "#941653"
|
||||
},
|
||||
{
|
||||
"name": "Philly Nice",
|
||||
"icon": "pico",
|
||||
"color": "#941653"
|
||||
},
|
||||
{
|
||||
"name": "Blammed",
|
||||
"icon": "pico",
|
||||
"color": "#941653"
|
||||
},
|
||||
|
||||
|
||||
{
|
||||
"name": "Satin Panties",
|
||||
"icon": "mom",
|
||||
"color": "#FC96D7"
|
||||
},
|
||||
{
|
||||
"name": "High",
|
||||
"icon": "mom",
|
||||
"color": "#FC96D7"
|
||||
},
|
||||
{
|
||||
"name": "MILF",
|
||||
"icon": "mom",
|
||||
"color": "#FC96D7"
|
||||
},
|
||||
|
||||
|
||||
{
|
||||
"name": "Cocoa",
|
||||
"icon": "parents-christmas",
|
||||
"color": "#A0D1FF"
|
||||
},
|
||||
{
|
||||
"name": "Eggnog",
|
||||
"icon": "parents-christmas",
|
||||
"color": "#A0D1FF"
|
||||
},
|
||||
{
|
||||
"name": "Winter Horrorland",
|
||||
"icon": "monster",
|
||||
"color": "#A0D1FF"
|
||||
},
|
||||
|
||||
|
||||
{
|
||||
"name": "Senpai",
|
||||
"icon": "senpai",
|
||||
"color": "#FF78BF"
|
||||
},
|
||||
{
|
||||
"name": "Roses",
|
||||
"icon": "senpai",
|
||||
"color": "#FF78BF"
|
||||
},
|
||||
{
|
||||
"name": "Thorns",
|
||||
"icon": "spirit",
|
||||
"color": "#FF78BF"
|
||||
},
|
||||
|
||||
|
||||
{
|
||||
"name": "Ugh",
|
||||
"icon": "tankman",
|
||||
"color": "#F6B604"
|
||||
},
|
||||
{
|
||||
"name": "Guns",
|
||||
"icon": "tankman",
|
||||
"color": "#F6B604"
|
||||
},
|
||||
{
|
||||
"name": "Stress",
|
||||
"icon": "tankman",
|
||||
"color": "#F6B604"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -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
|
||||
@@ -0,0 +1,3 @@
|
||||
function update(elapsed)
|
||||
if (FlxG.keys.justPressed.F5)
|
||||
FlxG.resetState();
|
||||
@@ -16,154 +16,153 @@ static var daPixelZoom = 6;
|
||||
* UI
|
||||
*/
|
||||
function onNoteCreation(event) {
|
||||
if (event.note.mustPress && !pixelNotesForBF) return;
|
||||
if (!event.note.mustPress && !pixelNotesForDad) return;
|
||||
|
||||
event.cancel();
|
||||
if (event.note.strumLine == playerStrums && !pixelNotesForBF) return;
|
||||
if (event.note.strumLine == cpuStrums && !pixelNotesForDad) return;
|
||||
|
||||
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();
|
||||
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;
|
||||
if (event.player == 1 && !pixelNotesForBF) return;
|
||||
if (event.player == 0 && !pixelNotesForDad) return;
|
||||
|
||||
event.cancel();
|
||||
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();
|
||||
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 (!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';
|
||||
};
|
||||
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;
|
||||
if (!enablePixelUI) return;
|
||||
event.ratingPrefix = "stages/school/ui/";
|
||||
event.ratingScale = daPixelZoom * 0.7;
|
||||
event.ratingAntialiasing = false;
|
||||
|
||||
event.numScale = daPixelZoom;
|
||||
event.numAntialiasing = 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";
|
||||
}
|
||||
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 newNoteCamera = new HudCamera();
|
||||
newNoteCamera.bgColor = 0; // transparent
|
||||
FlxG.cameras.add(newNoteCamera, false);
|
||||
|
||||
var pixelSwagWidth = Note.swagWidth + (daPixelZoom - (Note.swagWidth % daPixelZoom));
|
||||
// TODO: multikey support??
|
||||
for(s in 0...4) {
|
||||
var i = 0;
|
||||
for(str in [cpuStrums.members[s], playerStrums.members[s]]) {
|
||||
// TODO: middlescroll???
|
||||
str.x = (FlxG.width * (0.25 + (0.5 * i))) + (pixelSwagWidth * (s - 2));
|
||||
str.x -= str.x % daPixelZoom;
|
||||
str.cameras = [newNoteCamera];
|
||||
i++;
|
||||
}
|
||||
}
|
||||
makeCameraPixely(newNoteCamera);
|
||||
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;
|
||||
cam.pixelPerfectRender = true;
|
||||
cam.zoom /= Math.min(FlxG.scaleMode.scale.x, FlxG.scaleMode.scale.y) * daPixelZoom;
|
||||
|
||||
var shad = new CustomShader('pixelZoomShader');
|
||||
cam.addShader(shad);
|
||||
var shad = new CustomShader('pixelZoomShader');
|
||||
cam.addShader(shad);
|
||||
|
||||
pixellyCameras.push(cam);
|
||||
pixellyShaders.push(shad);
|
||||
pixellyCameras.push(cam);
|
||||
pixellyShaders.push(shad);
|
||||
|
||||
FlxG.game.stage.quality = 2;
|
||||
FlxG.game.stage.quality = 2;
|
||||
}
|
||||
|
||||
function destroy() {
|
||||
// resets the stage quality
|
||||
FlxG.game.stage.quality = oldStageQuality;
|
||||
// resets the stage quality
|
||||
FlxG.game.stage.quality = oldStageQuality;
|
||||
}
|
||||
|
||||
function pixelCam(cam) {
|
||||
makeCameraPixely(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) {
|
||||
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);
|
||||
}
|
||||
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);
|
||||
}
|
||||
}
|
||||
@@ -11,117 +11,117 @@ var hand:FlxSprite;
|
||||
|
||||
var texts:Array<FlxText> = [];
|
||||
|
||||
var isThorns = PlayState.SONG.song.toLowerCase() == "thorns";
|
||||
var isThorns = PlayState.SONG.meta.name.toLowerCase() == "thorns";
|
||||
|
||||
function create(event) {
|
||||
// cancel default pause menu!!
|
||||
event.cancel();
|
||||
// cancel default pause menu!!
|
||||
event.cancel();
|
||||
|
||||
event.music = isThorns ? "pixel/LunchboxScary" : "pixel/Lunchbox";
|
||||
event.music = isThorns ? "pixel/LunchboxScary" : "pixel/Lunchbox";
|
||||
|
||||
cameras = [];
|
||||
cameras = [];
|
||||
|
||||
pixelScript = game.scripts.getByName("pixel.hx");
|
||||
pixelScript.call("pixelCam", [pauseCam]);
|
||||
pixelScript = game.scripts.getByName("pixel.hx");
|
||||
pixelScript.call("pixelCam", [pauseCam]);
|
||||
|
||||
FlxG.cameras.add(pauseCam, false);
|
||||
FlxG.cameras.add(pauseCam, false);
|
||||
|
||||
pauseCam.bgColor = isThorns ? 0x88000000 : 0x88FF99CC;
|
||||
pauseCam.alpha = 0;
|
||||
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);
|
||||
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);
|
||||
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++;
|
||||
}
|
||||
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);
|
||||
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});
|
||||
FlxTween.tween(bg, {"scale.y": 6}, 0.75, {ease: FlxEase.elasticOut});
|
||||
|
||||
cameras = [pauseCam];
|
||||
cameras = [pauseCam];
|
||||
|
||||
FlxG.sound.play(Paths.sound(isThorns ? 'pixel/ANGRY' : 'pixel/clickText'));
|
||||
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;
|
||||
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);
|
||||
FlxG.cameras.remove(pauseCam);
|
||||
}
|
||||
|
||||
var canDoShit = true;
|
||||
var time:Float = 0;
|
||||
function update(elapsed) {
|
||||
pixelScript.call("postUpdate", [elapsed]);
|
||||
pixelScript.call("postUpdate", [elapsed]);
|
||||
|
||||
pauseCam.alpha = lerp(pauseCam.alpha, 1, 0.25);
|
||||
time += 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;
|
||||
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 (!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 (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();
|
||||
}
|
||||
}
|
||||
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;
|
||||
curSelected += change;
|
||||
|
||||
if (curSelected < 0)
|
||||
curSelected = menuItems.length - 1;
|
||||
if (curSelected >= menuItems.length)
|
||||
curSelected = 0;
|
||||
if (curSelected < 0)
|
||||
curSelected = menuItems.length - 1;
|
||||
if (curSelected >= menuItems.length)
|
||||
curSelected = 0;
|
||||
}
|
||||
@@ -1,19 +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>
|
||||
<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>
|
||||
@@ -1,15 +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>
|
||||
<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>
|
||||
@@ -1,35 +1,39 @@
|
||||
var fastCarCanDrive:Bool = true;
|
||||
|
||||
function create() {
|
||||
resetFastCar();
|
||||
resetFastCar();
|
||||
}
|
||||
function update(elapsed:Float) {
|
||||
if (!fastCarCanDrive && fastCar.x > 2000) {
|
||||
resetFastCar();
|
||||
fastCarCanDrive = true;
|
||||
}
|
||||
if (!fastCarCanDrive && fastCar.x > 2000) {
|
||||
resetFastCar();
|
||||
fastCarCanDrive = true;
|
||||
}
|
||||
|
||||
// back limo drive
|
||||
for(e in [bgLimo, dancer1, dancer2, dancer3, dancer4, dancer5]) {
|
||||
e.rotOffset.x = Math.sin(curBeatFloat / 4) * Math.cos(curBeatFloat / 16) * 85;
|
||||
}
|
||||
// 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();
|
||||
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;
|
||||
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);
|
||||
FlxG.sound.play(Paths.soundRandom('carPass', 0, 1), 0.7);
|
||||
|
||||
fastCar.velocity.x = (FlxG.random.int(170, 220) / FlxG.elapsed) * 3;
|
||||
fastCarCanDrive = false;
|
||||
fastCar.velocity.x = (FlxG.random.int(170, 220) / FlxG.elapsed) * 3;
|
||||
fastCarCanDrive = false;
|
||||
}
|
||||
@@ -1,39 +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" />
|
||||
<!-- 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" />
|
||||
|
||||
<!-- 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>
|
||||
<!-- 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" />
|
||||
<!-- 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"/>
|
||||
<sprite name="overlayShit" x="-500" y="480" sprite="limoOverlay" scroll="0">
|
||||
<property name="alpha" type="float" value="0.5" />
|
||||
</sprite>
|
||||
|
||||
<!-- 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>
|
||||
@@ -1,10 +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" />
|
||||
<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"/>
|
||||
<girlfriend />
|
||||
<dad y="20"/>
|
||||
<boyfriend x="1090"/>
|
||||
</stage>
|
||||
@@ -1,14 +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"/>
|
||||
<sprite name="upperBoppers" x="-240" y="-90" sprite="upperBop" scroll="0.2" />
|
||||
<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"/>
|
||||
<sprite name="santa" x="-840" y="150" sprite="santa"/>
|
||||
<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"/>
|
||||
<girlfriend />
|
||||
<dad />
|
||||
<boyfriend x="870" camyoffset="-200"/>
|
||||
</stage>
|
||||
@@ -5,11 +5,11 @@ import funkin.game.PlayState;
|
||||
var curColor:Int = 0;
|
||||
var trainSound:FlxSound;
|
||||
var colors = [
|
||||
0xFF31A2FD,
|
||||
0xFF31FD8C,
|
||||
0xFFFB33F5,
|
||||
0xFFFD4531,
|
||||
0xFFFBA633
|
||||
0xFF31A2FD,
|
||||
0xFF31FD8C,
|
||||
0xFFFB33F5,
|
||||
0xFFFD4531,
|
||||
0xFFFBA633
|
||||
];
|
||||
var trainMoving:Bool = false;
|
||||
var trainFrameTiming:Float = 0;
|
||||
@@ -18,84 +18,84 @@ 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"));
|
||||
// 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 (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 (!trainMoving)
|
||||
trainCooldown += 1;
|
||||
|
||||
if (curBeat % 8 == 4 && FlxG.random.bool(30) && !trainMoving && trainCooldown > 8 && !trainSound.playing)
|
||||
{
|
||||
trainCooldown = FlxG.random.int(-4, 0);
|
||||
trainStart();
|
||||
}
|
||||
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 (Conductor.songPosition > 0)
|
||||
light.alpha = 1 - (FlxEase.cubeIn((curBeatFloat / 4) % 1) * 0.85);
|
||||
else
|
||||
light.alpha = 0;
|
||||
|
||||
if (trainMoving) {
|
||||
updateTrainPos();
|
||||
}
|
||||
if (trainMoving) {
|
||||
updateTrainPos();
|
||||
}
|
||||
}
|
||||
|
||||
function trainStart():Void
|
||||
{
|
||||
trainMoving = true;
|
||||
if (!trainSound.playing)
|
||||
trainSound.play(true);
|
||||
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 (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 (startedMoving)
|
||||
{
|
||||
phillyTrain.velocity.x = -400 * 24;
|
||||
if (phillyTrain.x < -2000 && !trainFinishing)
|
||||
{
|
||||
phillyTrain.x = -1150;
|
||||
trainCars -= 1;
|
||||
|
||||
if (trainCars <= 0)
|
||||
trainFinishing = true;
|
||||
}
|
||||
if (trainCars <= 0)
|
||||
trainFinishing = true;
|
||||
}
|
||||
|
||||
if (phillyTrain.x < -4000 && trainFinishing)
|
||||
trainReset();
|
||||
}
|
||||
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;
|
||||
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;
|
||||
}
|
||||
@@ -1,9 +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" />
|
||||
<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>
|
||||
@@ -1,4 +1,4 @@
|
||||
function create() {
|
||||
importScript("data/scripts/pixel");
|
||||
isSpooky = true;
|
||||
importScript("data/scripts/pixel");
|
||||
isSpooky = true;
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
<!DOCTYPE codename-engine-stage>
|
||||
<stage zoom="0.5" 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 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>
|
||||
@@ -1,14 +1,14 @@
|
||||
function create() {
|
||||
importScript("data/scripts/pixel");
|
||||
if (PlayState.SONG.song == "Roses") {
|
||||
flabbergastGirls();
|
||||
}
|
||||
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);
|
||||
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);
|
||||
}
|
||||
@@ -1,25 +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="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="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="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"/>
|
||||
<sprite name="fgTrees" x="-30" y="130" sprite="weebTreesBack"
|
||||
antialiasing="false" scale="4.8" scroll="0.9" updateHitbox="true" type="loop"/>
|
||||
|
||||
<sprite name="treeLeaves" x="-200" y="-40" sprite="petals"
|
||||
antialiasing="false" scale="6" scroll="0.85" 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"/>
|
||||
|
||||
<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>
|
||||
<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>
|
||||
@@ -1,22 +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, 2));
|
||||
bg.animation.play('lightning');
|
||||
FlxG.sound.play(Paths.soundRandom('thunder_', 1, thunderSFXamount));
|
||||
bg.playAnim('lightning');
|
||||
|
||||
lightningStrikeBeat = curBeat;
|
||||
lightningOffset = FlxG.random.int(8, 24);
|
||||
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");
|
||||
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();
|
||||
}
|
||||
if (lightningStrike && FlxG.random.bool(10) && curBeat > lightningStrikeBeat + lightningOffset)
|
||||
{
|
||||
lightningStrikeShit();
|
||||
}
|
||||
}
|
||||
@@ -1,7 +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">
|
||||
<anim name="idle" anim="halloweem bg0" type="loop" />
|
||||
<anim name="lightning" anim="halloweem bg lightning strike" loop="false"/>
|
||||
</sprite>
|
||||
<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>
|
||||
@@ -1,9 +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" />
|
||||
<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>
|
||||
@@ -2,8 +2,8 @@ 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)));
|
||||
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)));
|
||||
}
|
||||
@@ -1,30 +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"/>
|
||||
<sprite name="tankClouds" x="-350" y="0" sprite="tankClouds" scroll="0.1" zoomfactor="0">
|
||||
<property name="velocity.x" type="float" value="10" />
|
||||
</sprite>
|
||||
<sprite name="tankMountains" x="-300" y="-20" sprite="tankMountains" scroll="0.2" scale="1.2" updateHitbox="true" zoomfactor="0.10"/>
|
||||
<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"/>
|
||||
<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"/>
|
||||
<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"/>
|
||||
<!-- 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="230" y="55"/>
|
||||
<dad x="20" y="160"/>
|
||||
<boyfriend x="810"/>
|
||||
<!-- CHARACTERS -->
|
||||
<girlfriend x="305" y="105"/>
|
||||
<dad x="20" y="160"/>
|
||||
<boyfriend x="810"/>
|
||||
|
||||
<!-- FOREGROUND TANKMANS -->
|
||||
<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"/>
|
||||
<!-- 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>
|
||||
@@ -1,71 +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>
|
||||
<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>
|
||||
<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>
|
||||
<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="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="4" /> <!-- clears the screen !-->
|
||||
|
||||
<text beat="5">
|
||||
<line text="In association" />
|
||||
<line text="with" />
|
||||
</text>
|
||||
<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="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="8" /> <!-- clears the screen !-->
|
||||
|
||||
<text beat="9">
|
||||
<introtext line="1" />
|
||||
</text>
|
||||
<text beat="9">
|
||||
<introtext line="1" />
|
||||
</text>
|
||||
|
||||
<text beat="11">
|
||||
<introtext line="1" />
|
||||
<introtext line="2" />
|
||||
</text>
|
||||
<text beat="11">
|
||||
<introtext line="1" />
|
||||
<introtext line="2" />
|
||||
</text>
|
||||
|
||||
<text beat="12"/>
|
||||
<text beat="12"/>
|
||||
|
||||
<text beat="13">
|
||||
<line text="Friday" />
|
||||
</text>
|
||||
<text beat="13">
|
||||
<line text="Friday" />
|
||||
</text>
|
||||
|
||||
<text beat="14">
|
||||
<line text="Friday" />
|
||||
<line text="Night" />
|
||||
</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>
|
||||
<text beat="15">
|
||||
<line text="Friday" />
|
||||
<line text="Night" />
|
||||
<line text="Funkin'" />
|
||||
</text>
|
||||
</intro>
|
||||
</titlestate>
|
||||
@@ -1,72 +0,0 @@
|
||||
<!DOCTYPE codename-engine-weeks>
|
||||
<config>
|
||||
<characters>
|
||||
<!-- BOYFRIEND -->
|
||||
<char name="bf" 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>
|
||||
|
||||
<!-- ANIMATION IS AUTOMATICALLY ADDED. IF YOU WANT TO SPECIFY A PREFIX, ADD AN IDLE ANIM LIKE ABOVE. -->
|
||||
<char name="dad" scale="0.5" x="50" />
|
||||
<char name="gf" scale="0.5" />
|
||||
<char name="spooky" scale="0.7" x="125" />
|
||||
<char name="pico" scale="0.7" x="100" y="-30" flip="true"/>
|
||||
<char name="mom" scale="0.5" x="50" y="10"/>
|
||||
<char name="parents-christmas" scale="0.4" x="150" y="-20" />
|
||||
<char name="senpai" x="130" y="-50"/>
|
||||
<char name="tankman" x="75" y="-35"/>
|
||||
</characters>
|
||||
<weeks>
|
||||
<!-- SPRITE BUTTONS ARE LOCATED IN "images/menus/storymenu/weeks/" -->
|
||||
<!-- IF NO SPRITE ARE SPECIFIED, "week(week number)" WILL BE USED. -->
|
||||
<!-- IF YOU WANT CUSTOM DIFFICULTIES, ADD THIS: difficulties="easy,normal,hard" -->
|
||||
<!-- DIFFICULTIES SPRITES IN "images/menus/storymenu/difficulties/" -->
|
||||
|
||||
<week name="" chars="none,bf,gf" sprite="tutorial">
|
||||
<song name="Tutorial" />
|
||||
</week>
|
||||
|
||||
<week name="DADDY DEAREST" chars="dad,bf,gf" sprite="week1">
|
||||
<song name="Bopeebo" />
|
||||
<song name="Fresh" />
|
||||
<song name="Dadbattle" />
|
||||
</week>
|
||||
|
||||
<week name="SPOOKY MONTH" chars="spooky,bf,gf" sprite="week2">
|
||||
<song name="Spookeez" />
|
||||
<song name="South" />
|
||||
<song name="Monster" hide="true" />
|
||||
</week>
|
||||
|
||||
<week name="PICO" chars="pico,bf,gf" sprite="week3">
|
||||
<song name="Pico" />
|
||||
<song name="Philly" />
|
||||
<song name="Blammed" />
|
||||
</week>
|
||||
|
||||
<week name="MOMMY MUST MURDER" chars="mom,bf,gf" sprite="week4">
|
||||
<song name="Satin Panties" />
|
||||
<song name="High" />
|
||||
<song name="MILF" />
|
||||
</week>
|
||||
|
||||
<week name="RED SNOW" chars="parents-christmas,bf,gf" sprite="week5">
|
||||
<song name="Cocoa" />
|
||||
<song name="Eggnog" />
|
||||
<song name="Winter-Horrorland" hide="true" />
|
||||
</week>
|
||||
|
||||
<week name="HATING SIMULATOR FT. MOAWLING" chars="senpai,bf,gf" sprite="week6">
|
||||
<song name="Senpai" />
|
||||
<song name="Roses" />
|
||||
<song name="Thorns" hide="true" />
|
||||
</week>
|
||||
|
||||
<week name="TANKMAN" chars="tankman,bf,gf" sprite="week7">
|
||||
<song name="Ugh" />
|
||||
<song name="Guns" />
|
||||
<song name="Stress" />
|
||||
</week>
|
||||
</weeks>
|
||||
</config>
|
||||
@@ -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>
|
||||
@@ -0,0 +1,2 @@
|
||||
<!DOCTYPE codename-engine-week-character>
|
||||
<char scale="0.5" x="50" />
|
||||
@@ -0,0 +1,2 @@
|
||||
<!DOCTYPE codename-engine-week-character>
|
||||
<char scale="0.5" />
|
||||
@@ -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" />
|
||||
@@ -0,0 +1,2 @@
|
||||
<!DOCTYPE codename-engine-week-character>
|
||||
<char scale="0.7" x="100" y="-30" flip="true"/>
|
||||
@@ -0,0 +1,2 @@
|
||||
<!DOCTYPE codename-engine-week-character>
|
||||
<char x="130" y="-50"/>
|
||||
@@ -0,0 +1,2 @@
|
||||
<!DOCTYPE codename-engine-week-character>
|
||||
<char scale="0.7" x="125" />
|
||||
@@ -0,0 +1,2 @@
|
||||
<!DOCTYPE codename-engine-week-character>
|
||||
<char x="75" y="-35"/>
|
||||
@@ -0,0 +1,11 @@
|
||||
# THIS FILE ISNT NECESSARY,
|
||||
# BUT YOU CAN USE IT TO SORT WEEKS
|
||||
|
||||
tutorial
|
||||
week1
|
||||
week2
|
||||
week3
|
||||
week4
|
||||
week5
|
||||
week6
|
||||
week7
|
||||
@@ -0,0 +1,4 @@
|
||||
<!DOCTYPE codename-engine-week>
|
||||
<week name="" chars="none,bf,gf" sprite="tutorial">
|
||||
<song>Tutorial</song>
|
||||
</week>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
@@ -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>
|
||||
|
After Width: | Height: | Size: 921 KiB |
@@ -0,0 +1,129 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextureAtlas imagePath="da.png">
|
||||
<!-- Created with Adobe Animate version 21.0.1.37179 -->
|
||||
<!-- http://www.adobe.com/products/animate.html -->
|
||||
<SubTexture name="Dad Sing Note DOWN0000" x="2" y="2" width="379" height="565" pivotX="-88.3" pivotY="69.7" frameX="0" frameY="-5" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0001" x="2" y="2" width="379" height="565" frameX="0" frameY="-5" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0002" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0003" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0004" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0005" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0006" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0007" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0008" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0009" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0010" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0011" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0012" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0013" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0014" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note DOWN0015" x="383" y="2" width="374" height="568" frameX="-1" frameY="0" frameWidth="379" frameHeight="570"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0000" x="759" y="2" width="369" height="621" pivotX="-91.35" pivotY="111.35" frameX="-5" frameY="-1" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0001" x="759" y="2" width="369" height="621" frameX="-5" frameY="-1" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0002" x="1130" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0003" x="1130" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0004" x="1493" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0005" x="1493" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0006" x="1130" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0007" x="1130" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0008" x="1493" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0009" x="1493" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0010" x="1130" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0011" x="1130" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0012" x="1493" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0013" x="1493" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0014" x="1130" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0015" x="1130" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0016" x="1493" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0017" x="1493" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing Note LEFT0018" x="1130" y="2" width="361" height="622" frameX="0" frameY="0" frameWidth="374" frameHeight="622"/>
|
||||
<SubTexture name="Dad Sing note UP0000" x="1856" y="2" width="356" height="642" pivotX="320.05" pivotY="597.65" frameX="0" frameY="0" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0001" x="1856" y="2" width="356" height="642" frameX="0" frameY="0" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0002" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0003" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0004" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0005" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0006" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0007" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0008" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0009" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0010" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0011" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0012" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0013" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0014" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0015" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0016" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0017" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0018" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0019" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0020" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0021" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0022" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0023" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0024" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0025" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0026" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0027" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0028" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0029" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0030" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0031" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0032" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0033" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0034" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0035" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0036" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0037" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0038" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0039" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0040" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0041" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0042" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0043" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0044" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0045" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0046" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0047" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0048" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0049" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0050" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0051" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0052" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0053" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0054" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0055" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0056" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0057" x="2570" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0058" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad Sing note UP0059" x="2214" y="2" width="354" height="635" frameX="-1" frameY="-8" frameWidth="356" frameHeight="643"/>
|
||||
<SubTexture name="Dad idle dance0000" x="2926" y="2" width="357" height="595" pivotX="316.65" pivotY="547.15" frameX="-2" frameY="0" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0001" x="2926" y="2" width="357" height="595" frameX="-2" frameY="0" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0002" x="2" y="646" width="363" height="589" frameX="0" frameY="-8" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0003" x="2" y="646" width="363" height="589" frameX="0" frameY="-8" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0004" x="367" y="646" width="359" height="586" frameX="-1" frameY="-10" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0005" x="367" y="646" width="359" height="586" frameX="-1" frameY="-10" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0006" x="728" y="646" width="359" height="588" frameX="-1" frameY="-8" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0007" x="728" y="646" width="359" height="588" frameX="-1" frameY="-8" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0008" x="1089" y="646" width="356" height="594" frameX="-2" frameY="-1" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0009" x="1089" y="646" width="356" height="594" frameX="-2" frameY="-1" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0010" x="1447" y="646" width="357" height="595" frameX="-2" frameY="0" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0011" x="1447" y="646" width="357" height="595" frameX="-2" frameY="0" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="Dad idle dance0012" x="2926" y="2" width="357" height="595" frameX="-2" frameY="0" frameWidth="363" frameHeight="597"/>
|
||||
<SubTexture name="dad sing note right0000" x="1806" y="646" width="339" height="605" pivotX="-78.35" pivotY="76.45" frameX="0" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0001" x="1806" y="646" width="339" height="605" frameX="0" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0002" x="2147" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0003" x="2147" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0004" x="2498" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0005" x="2498" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0006" x="2147" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0007" x="2147" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0008" x="2498" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0009" x="2498" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0010" x="2147" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0011" x="2147" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0012" x="2498" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0013" x="2498" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0014" x="2147" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
<SubTexture name="dad sing note right0015" x="2147" y="646" width="349" height="605" frameX="-2" frameY="0" frameWidth="351" frameHeight="605"/>
|
||||
</TextureAtlas>
|
||||
|
Before Width: | Height: | Size: 595 KiB After Width: | Height: | Size: 1.0 MiB |