Merge branch 'main' into new-editors

This commit is contained in:
Ne_Eo
2025-02-28 16:39:06 +01:00
18 changed files with 306 additions and 38 deletions
+200
View File
@@ -0,0 +1,200 @@
# v0.4.0 - First (proper) beta release
This changelog lists every change that has been added since the last update (including public changes).
## Flags System
- Added a brand new flags system, which allows you to modify the game constants using a simple `flags.ini` file ([f8d1cf0](https://github.com/CodenameCrew/CodenameEngine/commit/f8d1cf08ad9f6cdda4e971a3d8adff6fce5130d2))
- Added the ability to change the way the mod songs/weeks are added to the menu ([cb1d6fc](https://github.com/CodenameCrew/CodenameEngine/commit/cb1d6fcacf4ad0e2888ed7e76d16a6f85c09b021))
- Added the ability to disable editors, transtions and beta warning state ([90a8c27](https://github.com/CodenameCrew/CodenameEngine/commit/90a8c2711ce36c9eaf85e705d551d46876991aa9))
- Added the ability to set the default Transition, Pause, Game Over scripts ([fd0c188](https://github.com/CodenameCrew/CodenameEngine/commit/fd0c188577cf58e34e8ed706e59903a989ee2d11))
- Added the ability to set the default glsl version ([cbbb598](https://github.com/CodenameCrew/CodenameEngine/commit/cbbb598f52b3f7c0f156cf72cd03e165aa38a4f1))
- Added the ability to set the urls that the engine uses for wiki, fallback, and itch.io ([cbbb598](https://github.com/CodenameCrew/CodenameEngine/commit/cbbb598f52b3f7c0f156cf72cd03e165aa38a4f1))
## Additions
- Added a function ``WindowUtils.resetAffixes()`` to reset the prefix and suffix of the engine's window title, and fixed a typo ([1d94945](https://github.com/CodenameCrew/CodenameEngine/commit/1d94945faeea86af02bcaecd715f5bea22ef48fd))
- Added a field `extra` to FunkinSprite, which can be used to store any extra data you want (e.g. sprite.extra.set("name", value)) ([fb48570](https://github.com/CodenameCrew/CodenameEngine/commit/fb485701b451d6a7a22a1e696bfc081699f1c6d2))
- Added default icon colors to every base game character ([814bd71](https://github.com/CodenameCrew/CodenameEngine/commit/814bd712fe2ea2dd21116e9903d9c2babe5341b1))
- Added more features to cne.bat/cne.sh: ([4ef43df](https://github.com/CodenameCrew/CodenameEngine/commit/4ef43dfbecc79283d038d939f94671966802039e), [0dc166c](https://github.com/CodenameCrew/CodenameEngine/commit/0dc166c601b25e3167a1d04542840265484576b4))
- Setup
- `--reinstall` to reinstall all libraries
- `--no-vscheck` to skip the Visual Studio check
- `--silent` to not print the download progress
- project file has conditionals now
- `--lib=path.xml` to use a specific setup file
- Alphabet now allows multiple lines in the text ([d519db0](https://github.com/CodenameCrew/CodenameEngine/commit/d519db011a14aac0ddfc052089836c6b445f7f44))
- Allow importing mod root level modules in hscript, instead of only source/ ([7e66ee8](https://github.com/CodenameCrew/CodenameEngine/commit/7e66ee81e24204cd152de20046fa1500bb9d204b))
- Added a way to force animations in the `Play Animation` event ([d7b6fbe](https://github.com/CodenameCrew/CodenameEngine/commit/d7b6fbe510edeb832112ab5adc8ab19dfe97d77f))
- Adde unused boyfriend animations ([be55696](https://github.com/CodenameCrew/CodenameEngine/commit/be55696bbefe537f06ad6550b039278ffcbcfb2f))
- Made it display the keybind for the mod menu in main menu ([1ac2e7f](https://github.com/CodenameCrew/CodenameEngine/commit/1ac2e7f53390a9e92aa2a1fea94d147ed50d3694))
- Made the FPS Counter move on all Tree Menus instead of only in options ([bf0a6a9](https://github.com/CodenameCrew/CodenameEngine/commit/bf0a6a9bbe48bc5eb6df56077b66ecac7cbbcedd))
- Improved the accuracy of the mall stage ([1fffb48](https://github.com/CodenameCrew/CodenameEngine/commit/1fffb487197c619bb8bae08c736ce868b5eb4df8))
- Made the xml order consistent ([2f917fd](https://github.com/CodenameCrew/CodenameEngine/commit/2f917fd7c00ba4f80d85d2908781b806c77d8ce9))
- Fixed issues with flipping the character in the editor ([2f917fd](https://github.com/CodenameCrew/CodenameEngine/commit/2f917fd7c00ba4f80d85d2908781b806c77d8ce9))
- Added a toggle to turn off icon bopping `doIconBop` ([7b5d975](https://github.com/CodenameCrew/CodenameEngine/commit/7b5d975072690071824d21034485bf47c4396e8c))
- Allow changing the camera zoom lerp speed `camGameZoomLerp` and `camHUDZoomLerp` ([d79959d](https://github.com/CodenameCrew/CodenameEngine/commit/d79959d0504562b952d04d5e3898847fcf45f0a6))
- Added a system to easily set file attributes + Crash fix ([8d0a384](https://github.com/CodenameCrew/CodenameEngine/commit/8d0a38419de5ac4cccb5f08c47ea0acc3c6ded85), [a6c5b4d](https://github.com/CodenameCrew/CodenameEngine/commit/a6c5b4d6e81d1c5d2012388e69a906b7287599b3), [6715e2b](https://github.com/CodenameCrew/CodenameEngine/commit/6715e2b1ccec52ef82be92362a90e18a1b2ad7da))
- Made a build info print when building ([6075da5](https://github.com/CodenameCrew/CodenameEngine/commit/6075da522077adba28154aba50ba1e07911ebe4f))
- Made action builds use tar.gz for mac and linux ([d4a7d7e](https://github.com/CodenameCrew/CodenameEngine/commit/d4a7d7eac4dec7361aa778d97b6a2771c7b92295))
- Made building have a progress bar ([ad52d5a](https://github.com/CodenameCrew/CodenameEngine/commit/ad52d5ac00918fea416c2add1ccffad389e22e85))
- Added `onSplashShown` event ([82d50e5](https://github.com/CodenameCrew/CodenameEngine/commit/82d50e50c8416e377abcd3d5276f2e69023e90f3))
- Added `Character` and `Stage` event parameter types ([363f828](https://github.com/CodenameCrew/CodenameEngine/commit/363f82860d302032f39d6b352ce95937b86719ab))
- Added `bg` and `versionText`, and `forceCenterX` fields in funkin.menus.MainMenuState ([a3d9ddb](https://github.com/CodenameCrew/CodenameEngine/commit/a3d9ddb74e3e3fd1819ab41511f41c651c493ec6))
- [Hscript] Actually use classes in tankmenRun.hx ([15e8e46](https://github.com/CodenameCrew/CodenameEngine/commit/15e8e4696123429ac00df74f7afb7e38349c7fc0))
- Pass `shaderEnabled` and `colorTransform` to FlxAnimate ([9245078](https://github.com/CodenameCrew/CodenameEngine/commit/92450785f5be601d6e2e13b95fd46e87a3c240a8))
- Added color support for credits, plus store the credits in a variable ([abb8449](https://github.com/CodenameCrew/CodenameEngine/commit/abb8449ca2782e748ae2a5fb4cfc6a7e3aeb5457))
- Added number ranges `1..3,5,7..9,8..5` => `[1,2,3,5,7,8,9,8,7,6,5]` for use in indices ([1b55bef](https://github.com/CodenameCrew/CodenameEngine/commit/1b55beffe906404d8cb39ad63f6fc6b446557e1c))
- Added support for `-loop` suffix animations ([24a65a4](https://github.com/CodenameCrew/CodenameEngine/commit/24a65a4a8ad1c1fd1f6fd989f94c901b93a8b07b))
- Credits Main Menu Button instead of Donate button ([166c5f4](https://github.com/CodenameCrew/CodenameEngine/commit/166c5f44110965216ec6c58c7bb531a9fe9db86f))
- Added customizable sound trays ([49db1a0](https://github.com/CodenameCrew/CodenameEngine/commit/49db1a089a83cb3db05d430f97be4797f380ba8f))
- Allow for week colors in the story menu + a lot more ([49db1a0](https://github.com/CodenameCrew/CodenameEngine/commit/49db1a089a83cb3db05d430f97be4797f380ba8f))
- Added `funkin.vis` (custom fork) and `grig.audio` for audio visualization ([173c48c](https://github.com/CodenameCrew/CodenameEngine/commit/173c48c7b54b85ddc9a550e7767f22515a87279b))
- Added passable data to ModStates and ModSubStates ([e749a0e](https://github.com/CodenameCrew/CodenameEngine/commit/e749a0e7e32c336b4e3b5f32a8a09be2cfb8693e))
- Imports in shaders + scriptable shaders ([a6697a8](https://github.com/CodenameCrew/CodenameEngine/commit/a6697a837c88ed38f4675d6bd63114b20dd592dc))
- FNF Modern Parser wip ([47e60b6](https://github.com/CodenameCrew/CodenameEngine/commit/47e60b66f5d2d94491cec8489655236d21619abb))
- Allow using custom extensions in `Paths` ([4b783a9](https://github.com/CodenameCrew/CodenameEngine/commit/4b783a983e9717993c28a67bb00cad21ae2f45fa))
- Made the dropdown event parameter allow nested arrays and arrays ([ec4515f](https://github.com/CodenameCrew/CodenameEngine/commit/ec4515f4e21ea356fd298033100107d69c684a81))
- Optimized StringTools.trim() code ([e51439b](https://github.com/CodenameCrew/CodenameEngine/commit/e51439b53e808a92e06afabaa2d48433b31117dc))
- Added Stage Script Extensions ([15a18bb](https://github.com/CodenameCrew/CodenameEngine/commit/15a18bb3daf21c920266afee968e55e0325458ab), [bb58e08](https://github.com/CodenameCrew/CodenameEngine/commit/bb58e08c29a30a93e858b1d6c6bdcd0183b8021f), [d6ebd27](https://github.com/CodenameCrew/CodenameEngine/commit/d6ebd27b43924aef4d1c7ca25d299ed51f07f112))
- Added a way to open the wiki from the engine ([d5740b4](https://github.com/CodenameCrew/CodenameEngine/commit/d5740b4e243909d95f34d528cf277dd71bb4d2dc))
- Made the selected mod show as green in the mods menu ([33a5009](https://github.com/CodenameCrew/CodenameEngine/commit/33a50092acfe4b12bd78bdde81766735291c6ef0))
- Added `getAnim` and `isAnimAtEnd` to `FunkinSprite` ([2c52720](https://github.com/CodenameCrew/CodenameEngine/commit/2c52720244a6b30a166d601185bf589ad12a0a15))
- Added `bf` shorthand for `boyfriend` in playstate ([2b81220](https://github.com/CodenameCrew/CodenameEngine/commit/2b81220c15ed77acecd17c09a975ed401677165f))
- Added character script extensions ([682358c](https://github.com/CodenameCrew/CodenameEngine/commit/682358c93a0c17469d1a481de0523e4c4e19c6ec))
- Folder support in the character editor selection ([68c2fea](https://github.com/CodenameCrew/CodenameEngine/commit/68c2feab373db69d4a00b6f274f98afb3d8e3803))
- cne.bat/cne.sh setup --fast for quickly downloading git libraries ([21bba98](https://github.com/CodenameCrew/CodenameEngine/commit/21bba98923307fe75667e1395781d068a7ec47ad))
- Allow hold notes to be force deleted ([25b5630](https://github.com/CodenameCrew/CodenameEngine/commit/25b563066fc53ac92ebe3064175c80b5f1ae64bc))
- Allow tweening shaders and array values using FlxTween ([3de3c3f](https://github.com/CodenameCrew/CodenameEngine/commit/3de3c3f8286b2b07c9690334e2d85ce052a909c5))
- Made the advanced info show `Mod State: {name}` instead of `State: funkin.backend.scripting.ModState` ([3de3c3f](https://github.com/CodenameCrew/CodenameEngine/commit/3de3c3f8286b2b07c9690334e2d85ce052a909c5))
- Made it possible to individually hide the rating and combo ([5ea2f57](https://github.com/CodenameCrew/CodenameEngine/commit/5ea2f57e25f513a70ed7fa9c7ecc2cdeb7112665))
- Made the combo text be hidden by default ([5ea2f57](https://github.com/CodenameCrew/CodenameEngine/commit/5ea2f57e25f513a70ed7fa9c7ecc2cdeb7112665))
- More scritping for the dialogues ([b1b1663](https://github.com/CodenameCrew/CodenameEngine/commit/b1b1663f5c3f06c88bfd6ed4c455ff03cc192d39))
- Parse the error log for shaders and display it in a readable way ([200d8e3](https://github.com/CodenameCrew/CodenameEngine/commit/200d8e39509c783d78bf6b90d301e09d0defbc79))
- Added import redirects for hscript ([1713e87](https://github.com/CodenameCrew/CodenameEngine/commit/1713e8700dd7dd3c62c625de11c231957bc48886))
- Allow scrolling in the pause, mod, story, mod, main menus ([f671055](https://github.com/CodenameCrew/CodenameEngine/commit/f6710550c8805f1a1c987723faa77b884243d002))
- Allow setting the window border color and title color on windows ([454bb73](https://github.com/CodenameCrew/CodenameEngine/commit/454bb735719a13a444ad9cfafa20d25266e8f799))
- Added keybinds for some charter buttons ([32a0eda](https://github.com/CodenameCrew/CodenameEngine/commit/32a0eda1b03eefeab62ccddb734282cbc747a394))
- Added more info about the latest commit in GitCommitMacro ([96b9851](https://github.com/CodenameCrew/CodenameEngine/commit/96b98513b322003058dff06b6d23c11b92e02840))
- Support Psych Chart v1.0 Format ([eada310](https://github.com/CodenameCrew/CodenameEngine/commit/eada3105a471034250aa4b385f3e49d8c801567d))
- Added FunkinSprite.addAnim + consistent names for FunkinSprite ([f6deda2](https://github.com/CodenameCrew/CodenameEngine/commit/f6deda2c84984202effdfc5f6b577c2d956aa7b5))
- Added flipX and flipY to xml sprites ([6e2877c](https://github.com/CodenameCrew/CodenameEngine/commit/6e2877c2a9dc2d6de1ef793d35b6746f766d86b5))
- Custom Transitions using scripting ([e2a3951](https://github.com/CodenameCrew/CodenameEngine/commit/e2a39517025e38832d24ce999be872963a19d105))
- Added documentation for a lot of classes ([a6c9975](https://github.com/CodenameCrew/CodenameEngine/commit/a6c99754fd1bfe56db61b82b9749f073a1a0a170), [aec73ab](https://github.com/CodenameCrew/CodenameEngine/commit/aec73ab2b65ab8b2bfc18a3bb1393623da497913))
- Added `SortedArrayUtil.removeSorted` ([a6c9975](https://github.com/CodenameCrew/CodenameEngine/commit/a6c99754fd1bfe56db61b82b9749f073a1a0a170))
- Added blend mode support for FlxAnimate ([17cc888](https://github.com/CodenameCrew/CodenameEngine/commit/17cc888e61cb6dc55de0b285f533002c1ac05f4a), [76c07ce](https://github.com/CodenameCrew/CodenameEngine/commit/76c07cef30bda2e3718f2220cd3931e3fdc7ca75))
- Allow for BPM Changes with decimals ([2557fc4](https://github.com/CodenameCrew/CodenameEngine/commit/2557fc4fb373ec09eee9b19642fb36bee909c72d))
- Added NoteSkin, Dialogue, Alphabet editor icons ([16672e9](https://github.com/CodenameCrew/CodenameEngine/commit/16672e9f597fd4e621d7ee2c000ba559d3837662))
- Added verbose mode for the log that can be enabled using `--verbose` ([a061284](https://github.com/CodenameCrew/CodenameEngine/commit/a06128472c3f0315a91110dd9882bfce75ad8999))
- The Memory Info now shows more types of memory on windows ([38f6e86](https://github.com/CodenameCrew/CodenameEngine/commit/38f6e8676c36130a1a071e90ee1888244f8a405c))
- Async video loading, bugfixes, pausing cutscenes, some playstate events now also get called in characters ([8e81d17](https://github.com/CodenameCrew/CodenameEngine/commit/8e81d17fb0cc9c69bc117ebfa9b901ec44e5a985))
- Improved readability of the events macro ([47cf72d](https://github.com/CodenameCrew/CodenameEngine/commit/47cf72d53b985bcc818286a90fdbbaa92f4a9396))
- Changed how editor icons are stored ([16672e9](https://github.com/CodenameCrew/CodenameEngine/commit/16672e9f597fd4e621d7ee2c000ba559d3837662), [18ea916](https://github.com/CodenameCrew/CodenameEngine/commit/18ea916f1af4c03db765ba55841acc13d7108766))
- Changed `WindowUtils.winTitle` to `WindowUtils.title` ([a6c9975](https://github.com/CodenameCrew/CodenameEngine/commit/a6c99754fd1bfe56db61b82b9749f073a1a0a170))
## Removals
- Removed `isGF` ([2f917fd](https://github.com/CodenameCrew/CodenameEngine/commit/2f917fd7c00ba4f80d85d2908781b806c77d8ce9))
- Removed the `TITLESCREEN_XML` define because it made the code a lot more complicated ([2f63f8a](https://github.com/CodenameCrew/CodenameEngine/commit/2f63f8ac41f22c3ae33ad22ea497cb392af92291))
- Removed the default example files since they are now on the website ([aae4dee](https://github.com/CodenameCrew/CodenameEngine/commit/aae4dee6cb6aa04ddd72b663f89901253b5e4015))
- Removed the Haxe 4.3.0 warning ([5a8af43](https://github.com/CodenameCrew/CodenameEngine/commit/5a8af4301737b90b28500cb0409d77e51ae1e592))
## Bugfixes
- Fixed min and max on event params TFloat not being floats ([97a486f](https://github.com/CodenameCrew/CodenameEngine/commit/97a486f03e076a2f1a0cbfcfb1f86dac2375edb4))
- Fixed issues related to paused cameras ([0c06bf7](https://github.com/CodenameCrew/CodenameEngine/commit/0c06bf73b3dda26586285689c09d7b9757eaee39), [c38039c](https://github.com/CodenameCrew/CodenameEngine/commit/c38039c085ace56ed3dde4378ccf0701e1508e1b))
- Fixed FPS counter breaking when changing timescale. ([0a1517d](https://github.com/CodenameCrew/CodenameEngine/commit/0a1517df6bb5374ab64f1149df856ae8e4d797c7))
- Fixed week highscores not being saved correctly ([6021bd3](https://github.com/CodenameCrew/CodenameEngine/commit/6021bd36dc9e00edb646089e5d1e26a20765fc1e))
- Fixed CoolUtil.openURL not working on Linux ([16fa304](https://github.com/CodenameCrew/CodenameEngine/commit/16fa3046e2ad69164e7ee2c0ef0826884a54dbe2))
- Fixed CoolUtil.openURL not working on NixOs ([796d585](https://github.com/CodenameCrew/CodenameEngine/commit/796d585f9c4aeab96490f2554dd3038fef464384))
- Fixed loop animations not supporting flxanimate ([2f552ae](https://github.com/CodenameCrew/CodenameEngine/commit/2f552ae519fdc54c735332d51934b9e4fb4e5446))
- Fixed casesensitive issues when using Zip mods ([ecae996](https://github.com/CodenameCrew/CodenameEngine/commit/ecae996cc2001c4cdf05da21afdbd4efa56b7774))
- Fixed issues with alphabet sprite ([2d7a87f](https://github.com/CodenameCrew/CodenameEngine/commit/2d7a87f9dad540889eb29071122831bc3dad9a44))
- Fixed FNF Legacy Parser not handling mustHitSection ([31f9dd1](https://github.com/CodenameCrew/CodenameEngine/commit/31f9dd1aa55f8245fd742fcdfa3dd7913a798ecf))
- Made `Alt Anim Note` and `No Anim Note` work on misses too ([b682bcf](https://github.com/CodenameCrew/CodenameEngine/commit/b682bcfb0b610ead51dbfe8805080d6b7b4a4ebf))
- Improved sing animation code to reduce the amount of errors ([f259d62](https://github.com/CodenameCrew/CodenameEngine/commit/f259d626cfec591ef04c00429b37df16fb7f9857))
- Fixed some issues with the character editor related to offsets ([ce19a63](https://github.com/CodenameCrew/CodenameEngine/commit/ce19a63225df3eba0135959f14e83ec4731b602f))
- Made character scripts be destroyed ([1e8149e](https://github.com/CodenameCrew/CodenameEngine/commit/1e8149e0944dcab31d6196ba47e681da4e69d52d))
- Fixed bug with autoplay that happened due to threading ([6aaa9e1](https://github.com/CodenameCrew/CodenameEngine/commit/6aaa9e1421230ef10eced39890fce4720ce09eac))
- Fixed bug with the death counter not incrementing ([3ee946f](https://github.com/CodenameCrew/CodenameEngine/commit/3ee946fe031f8986fde2d354b0fc48102d11d7de))
- Fixed videos not showing up ([c294c70](https://github.com/CodenameCrew/CodenameEngine/commit/c294c708170f528985933965f3320521dcbf1c5e))
- Prevent the framerate counters from being selectable except when in advanced ([d9968a8](https://github.com/CodenameCrew/CodenameEngine/commit/d9968a8a87bb23957bb3e963e6e3a53c1b55b0d9), [e2c79be](https://github.com/CodenameCrew/CodenameEngine/commit/e2c79bea7d2125e3ad26f671c500d245d3e77cd9))
- Forced xml animation attribute now works correctly ([ae5fc55](https://github.com/CodenameCrew/CodenameEngine/commit/ae5fc555a815cf5c8d9081bc84c477e2e3a91195), [680cb97](https://github.com/CodenameCrew/CodenameEngine/commit/680cb973a1af367926a3562014970c5dd9331318), [809f1f2](https://github.com/CodenameCrew/CodenameEngine/commit/809f1f2840b085ad50b4ac89895607a7fcc16152), [dd4e896](https://github.com/CodenameCrew/CodenameEngine/commit/dd4e8962d85bc9c65923418b576d622bdaf01bbc))
- Fixed some issues with the editor blur not working on GL ES ([dec2a12](https://github.com/CodenameCrew/CodenameEngine/commit/dec2a126390faa60f3b458bfdaff312eb9ea355b))
- Fixed limbs not being able to be rotated in spritemap for flxanimate ([90c5802](https://github.com/CodenameCrew/CodenameEngine/commit/90c5802057cad59362f6e6a4254477bebf48b7af))
- Fixed notes disappearing early when exiting songs ([d8005a3](https://github.com/CodenameCrew/CodenameEngine/commit/d8005a316648e0d219110c000cf1c124c0e0c786))
- Made it easier to apply flixel effects in shaders ([53c7746](https://github.com/CodenameCrew/CodenameEngine/commit/53c77466f5a09ce89913f38aec1859bd44dfb10a))
- Fixed the volume on CoolUtil.playMusic not being a float ([36bb272](https://github.com/CodenameCrew/CodenameEngine/commit/36bb272ab401b83724863c1779780fa44da5e6d2))
- UI Debug State is hidden in release ([71160f1](https://github.com/CodenameCrew/CodenameEngine/commit/71160f188e0abab627308547ccbf75eecd24a2fd))
- Fixed so fast cars in the limo stage now work, and optimized the limo stage ([0b22165](https://github.com/CodenameCrew/CodenameEngine/commit/0b22165408c0b831e6bdc8512182851583b1c94b))
- Allowed using introLength = 0 in scripts ([620650b](https://github.com/CodenameCrew/CodenameEngine/commit/620650bb81d0e314228ff863cd0edd15af37efe1))
- Fixed not being able to use custom fonts in dialogues ([a886060](https://github.com/CodenameCrew/CodenameEngine/commit/a8860604e8a6d14d2781dda94bf14387e18c58e7))
- Window title is now reset when the mod is changed ([2be2c68](https://github.com/CodenameCrew/CodenameEngine/commit/2be2c68c9b9268df7c7f9dc0a445f8890ce98992))
- Fix the options not returning to the playstate if playstate opened the settings ([722278f](https://github.com/CodenameCrew/CodenameEngine/commit/722278fdd2f7b4601d8aaaed988e4a44317304ff))
- Fixed the health icon health state being broken ([08179b1](https://github.com/CodenameCrew/CodenameEngine/commit/08179b124dc1f09f21df3b827565cce4c9b56a77))
- Fix dialogueLine next sound not getting from `assets/sounds` ([cb54e5e](https://github.com/CodenameCrew/CodenameEngine/commit/cb54e5e1c56fd5914d868f0059c60948e2bff48d))
- Fixed not being able to modify the main menu choice using scripts ([2ee70ca](https://github.com/CodenameCrew/CodenameEngine/commit/2ee70caf22f54353fca62703a370493ffaf57c2b))
- Fixed not being able to modift the week choice using scripts ([0261223](https://github.com/CodenameCrew/CodenameEngine/commit/02612239e814aa4821b807670e22fcbee4aa4ff9))
- Fixed engine hanging on sudo password prompt ([da3fd5e](https://github.com/CodenameCrew/CodenameEngine/commit/da3fd5e0ddc729c3af413d305d139a23e08a6074))
- Fixed the default difficulty not being set to the middle of the difficulty list ([04e1763](https://github.com/CodenameCrew/CodenameEngine/commit/04e1763d259ed11871ef445a7d7cd7ffa41818d3))
- Fixed the alpha for the week sprites ([04e1763](https://github.com/CodenameCrew/CodenameEngine/commit/04e1763d259ed11871ef445a7d7cd7ffa41818d3))
- Fixed the documentation for the trail cache ([2d9c771](https://github.com/CodenameCrew/CodenameEngine/commit/2d9c7716240099dc23d777c0e5418ccaff258f96))
- If on source assets: Paths.getAssetsRoot() now returns the path to the source assets ([1aacf14](https://github.com/CodenameCrew/CodenameEngine/commit/1aacf14c6b3a6f5261f0b7ce2d1a6d6814f633d7))
- Fixed character offsets to be more visually pleasing ([9d51b9d](https://github.com/CodenameCrew/CodenameEngine/commit/9d51b9db8fdd7f031d88e78d3621ebf52870a2a9))
- Fix some issues with incorrect types ([17301f6](https://github.com/CodenameCrew/CodenameEngine/commit/17301f6951432357e08c201c37f270522c82d36e))
- Fixed not being able to have cutscenes on a video thats longer than 25 days ([1713e87](https://github.com/CodenameCrew/CodenameEngine/commit/1713e8700dd7dd3c62c625de11c231957bc48886))
- Fixed split vocals not pausing when pausing in editor ([4bf58ae](https://github.com/CodenameCrew/CodenameEngine/commit/4bf58aeda5b66a6b4a9a2cfa5f2e1536d8c95bad))
- Fixed bug with coop opponent mode ([4295d42](https://github.com/CodenameCrew/CodenameEngine/commit/4295d424941537d5a36dad4f8ae3526910d1f25e))
- Fixed the hscript errors having incorrect line numbers ([a2a12f1](https://github.com/CodenameCrew/CodenameEngine/commit/a2a12f121ec388703f003f53dd4be689402099cd))
- Fixed reloading a uistate that has custom script name ([83cf69b](https://github.com/CodenameCrew/CodenameEngine/commit/83cf69b4777d581d816cc0d1f4cf3c8f22254ff2))
- Fixed typos across the entire engine ([d6dc3ea](https://github.com/CodenameCrew/CodenameEngine/commit/d6dc3ea232369e2b7b3d59024655a4d15fd4b027))
- Fixed negative sustain lengths breaking the chart editor ([0040d93](https://github.com/CodenameCrew/CodenameEngine/commit/0040d93950d89f20acc09ae43fb9c248d8028748))
- Fixed pasting and added copying in `UITextBox` ([c4abac4](https://github.com/CodenameCrew/CodenameEngine/commit/c4abac4ba1ef0692325a736f1123a511965368a6))
- Made the Freeplay Autoplay change the bpm ([f90782d](https://github.com/CodenameCrew/CodenameEngine/commit/f90782d7123970215324ace99c55584ad78ca028))
- Prevent accidental mouse inputs when pressing on the unfocused window ([300f38d](https://github.com/CodenameCrew/CodenameEngine/commit/300f38d290bb8c31a5c1e67afdf981c644b27f8a))
- Fix notes not being destroyed when the strumline is destroyed ([1f224be](https://github.com/CodenameCrew/CodenameEngine/commit/1f224bef228c496d789aeed1f44c6517668107a9))
- Fixed the credits and options menu backgorunds not being animated if the background is animated ([1facc82](https://github.com/CodenameCrew/CodenameEngine/commit/1facc82073b9a06b861d1987a162f8aecbec46f1))
- Fixed duplicated line messages in the log ([1aa1364](https://github.com/CodenameCrew/CodenameEngine/commit/1aa136469d1ecadb4e9c49c04d6d6287d4b39884))
- Selection fixes in Editors ([0102cbb](https://github.com/CodenameCrew/CodenameEngine/commit/0102cbbdb6812f315697f6e389760ce948ff1993), [accc197](https://github.com/CodenameCrew/CodenameEngine/commit/accc197407c86a6fe9aaf1c557c93148674879ff))
## Crash fixes
- Fixed missing null check in Paths.getFrames() ([ea52e25](https://github.com/CodenameCrew/CodenameEngine/commit/ea52e25251089eed0edc92ef237b93916919e73d))
- Fixed crash in charter regarding Voices missing ([b2c4cc3](https://github.com/CodenameCrew/CodenameEngine/commit/b2c4cc3777e634e76c83f477661156fee464e690))
- Fixed crash if custom camera wasnt set in pause menu ([b79dbe4](https://github.com/CodenameCrew/CodenameEngine/commit/b79dbe4a74516c2ba8e43dff6bd236d377fd25f5))
- Fixed waveform crashes ([64923a3](https://github.com/CodenameCrew/CodenameEngine/commit/64923a3e07317fc36db9e539b546c72d64275653))
- Fixed null reference in PlayState ([6c34dbf](https://github.com/CodenameCrew/CodenameEngine/commit/6c34dbf6207b9ef17f9d551b637f151aade4f4e3))
- Fixed crash that happens when using a assets/ path in a event pack ([0afbbbf](https://github.com/CodenameCrew/CodenameEngine/commit/0afbbbf625b128496e973b4f7922a187339330ef))
- Fixed crash when skipping a transition ([e2a3951](https://github.com/CodenameCrew/CodenameEngine/commit/e2a39517025e38832d24ce999be872963a19d105))
- Fixed crash when there are no mods folder ([7488485](https://github.com/CodenameCrew/CodenameEngine/commit/74884854ea2caceeef17edbffcb07cd8898d466e))
## Typo fixes
- Fixed typos in funkin.game.StrumLine ([71b7daa](https://github.com/CodenameCrew/CodenameEngine/commit/71b7daabbfc742212f2b35d27b5655561504bf3a))
- Fixed documentation typos ([165338f](https://github.com/CodenameCrew/CodenameEngine/commit/165338f36c1e394b377ed87c2df6306676cfb4c7))
## Optimizations + Cleanup
- Various optimizations and cleanup ([7b279bf](https://github.com/CodenameCrew/CodenameEngine/commit/7b279bfed0dea7b9d49fa7272fbb16d7ecdd4349), [8174fef](https://github.com/CodenameCrew/CodenameEngine/commit/8174fef53db028e5808239f87566a84d6467d9fd))
- Small ram improvements
- Asset optimizations ([3ce7561](https://github.com/CodenameCrew/CodenameEngine/commit/3ce7561f560757f627144041bfdd3cde701eb5c2))
- Optimized internal shader code ([ddd4be8](https://github.com/CodenameCrew/CodenameEngine/commit/ddd4be87554463adcbcf8559f03eb3aa38b95d6c))
- Optimize the angle code ([120127b](https://github.com/CodenameCrew/CodenameEngine/commit/120127b10c2f7138955df07412c3e114cb610b0e))
- Optimize the entire engine by using rewriting the casts ([2bfc58c](https://github.com/CodenameCrew/CodenameEngine/commit/2bfc58ccb0851ca498173dc6b253073000895d73))
- Optimize the startsWith and endsWith functions on C++ ([73e6832](https://github.com/CodenameCrew/CodenameEngine/commit/73e6832ad3d65b2983d5683d6283ee2bc0150737))
- Ram optimizations ([85b50c7](https://github.com/CodenameCrew/CodenameEngine/commit/85b50c7ccee88000ada26ae73391ab8693c5d5de))
- Optimized the fast editor blur shader ([99fb9b4](https://github.com/CodenameCrew/CodenameEngine/commit/99fb9b48e5e7e9a709ae6e9d812a413bc50ed05b))
- Optimize senpai sprites ([9d51b9d](https://github.com/CodenameCrew/CodenameEngine/commit/9d51b9db8fdd7f031d88e78d3621ebf52870a2a9))
- Added optimizations for the entire engine ([669645e](https://github.com/CodenameCrew/CodenameEngine/commit/669645ed47fa6f12ab3d507f0bd3acea24ab08f7))
- Optimizations for the editors and PlayState notes ([f54c485](https://github.com/CodenameCrew/CodenameEngine/commit/f54c485d0c7cec1799a0a1a7921e2ff16ed35028))
- Cleanup Save macro ([85b50c7](https://github.com/CodenameCrew/CodenameEngine/commit/85b50c7ccee88000ada26ae73391ab8693c5d5de))
- Cleaned up the controls code ([c3580cf](https://github.com/CodenameCrew/CodenameEngine/commit/c3580cf1413f90386dd52763042e11b20d21ce2d), [c1123b9](https://github.com/CodenameCrew/CodenameEngine/commit/c1123b9e3c3c1887888744e0c62827231abc48be))
- Cleaned up unused variables in TitleState ([2779ef3](https://github.com/CodenameCrew/CodenameEngine/commit/2779ef3314471558e371b3ec2f17f8d4df48943a))
- Restructured the events folder ([77b7eeb](https://github.com/CodenameCrew/CodenameEngine/commit/77b7eebed1ea077516ff884902528c0ff3d01872))
- Reduced the amount of data thats stored for the Github Contributors savefile ([2abc45a](https://github.com/CodenameCrew/CodenameEngine/commit/2abc45a9e416a1c5dd2bd0a5297c664e60c6f1d8))
## Unsorted list
- @NexIsDumb Please document this i still dont understand it ([d31454c](https://github.com/CodenameCrew/CodenameEngine/commit/d31454c7ddf4cbf6a681cc8b32cd3f9480f8eacd))
+1 -1
View File
@@ -44,7 +44,7 @@
- [x] Dialogue
- [ ] Finish Base Game port
- [x] Add credits
- [ ] Verbose mode (`--verbose`)
- [x] Verbose mode (`--verbose`)
- [ ] Tooltips
- [ ] Fix bugs
+14
View File
@@ -0,0 +1,14 @@
[general]
sample-type=float32
stereo-mode=speakers
stereo-encoding=panpot
hrtf=false
cf_level=0
resampler=fast_bsinc24
front-stablizer=false
output-limiter=false
volume-adjust=0
[decoder]
hq-mode=false
distance-comp=false
nfc=false
+2
View File
@@ -26,6 +26,8 @@
<!-- <lib name="dox" /> -->
<lib name="markdown" />
<lib name="nape-haxe4" />
<!-- For building lime -->
<lib global="true" name="hxp" /> <lib name="hxp" />
<lib global="true" name="format" /> <lib name="format" />
+13
View File
@@ -68,6 +68,12 @@
<assets path='mods' rename='mods' embed='false'/>
<assets path='art/readme.txt' rename='do NOT readme.txt' />
<!-- OpenAL config -->
<section if="desktop">
<assets path="alsoft.txt" rename="plugins/alsoft.ini" type="text" if="windows"/>
<assets path="alsoft.txt" rename="plugins/alsoft.conf" type="text" unless="windows"/>
</section>
<!-- ______________________________ Haxedefines _____________________________ -->
<haxeflag name="--macro" value="funkin.backend.system.macros.BuildInfo.printBuildInfo()" />
@@ -143,6 +149,9 @@
<!-- Comment this out to disable support for Funkin Audio Visualizer (reduces compile times) !-->
<define name="AUDIO_VIS_SUPPORT" />
<!-- Comment this out to disable support for Nape integration (flixel.addons.nape) (reduces compile times) !-->
<define name="NAPE_ENABLED" />
<!-- Comment this out to disable video cutscene support, in case of compilation errors. !-->
<section if="cpp">
<define name="VIDEO_CUTSCENES" if="desktop || android" />
@@ -154,6 +163,9 @@
<!-- Comment this out to disable dark mode windows -->
<define name="DARK_MODE_WINDOW"/>
<!-- Disable a optimization, to allow reflection to use more functions -->
<define name="FLX_NO_GENERIC" />
<haxedef name="analyzer-optimize" unless="debug" />
<haxedef name="VIDEO_CUTSCENES" if="VIDEO_CUTSCENES" />
@@ -181,6 +193,7 @@
<haxelib name="grig.audio" if="AUDIO_VIS_SUPPORT" />
<haxelib name="format" />
<haxelib name="flxanimate" />
<haxelib name="nape-haxe4" if="NAPE_ENABLED"/>
<haxelib name="hscript-improved" />
<haxelib name="hxdiscord_rpc" if="DISCORD_RPC"/>
+5 -3
View File
@@ -200,13 +200,15 @@ class Paths
* @param Unique Whenever the image should be unique in the cache
* @param Key Key to the image in the cache
* @param SkipAtlasCheck Whenever the atlas check should be skipped.
* @param SkipMultiCheck Whenever the multi spritesheet check should be skipped.
* @param Ext Extension of the image.
* @return FlxFramesCollection Frames
*/
static function loadFrames(path:String, Unique:Bool = false, Key:String = null, SkipAtlasCheck:Bool = false, ?Ext:String = null):FlxFramesCollection {
static function loadFrames(path:String, Unique:Bool = false, Key:String = null, SkipAtlasCheck:Bool = false, SkipMultiCheck:Bool = false, ?Ext:String = null):FlxFramesCollection {
var noExt = Path.withoutExtension(path);
var ext = Ext != null ? Ext : Flags.IMAGE_EXT;
if (Assets.exists('$noExt/1.${ext}')) {
if (!SkipMultiCheck && Assets.exists('$noExt/1.${ext}')) {
// MULTIPLE SPRITESHEETS!!
var graphic = FlxG.bitmap.add("flixel/images/logo/default.png", false, '$noExt/mult');
@@ -218,7 +220,7 @@ class Paths
var cur = 1;
var finalFrames = new MultiFramesCollection(graphic);
while(Assets.exists('$noExt/$cur.${ext}')) {
var spr = loadFrames('$noExt/$cur.${ext}');
var spr = loadFrames('$noExt/$cur.${ext}', false, null, false, true);
finalFrames.addFrames(spr);
cur++;
}
@@ -64,8 +64,8 @@ final class CommandLineHandler {
Main.noCwdFix = true;
case "-livereload":
// do nothing
case "-verbose":
// do nothing
case "-v" | "-verbose" | "--verbose":
Main.verbose = true;
default:
Sys.println("Unknown command");
}
+6 -11
View File
@@ -143,25 +143,20 @@ final class Logs {
traceColored(text, level);
}
public inline static function getPrefix(prefix:String) {
public inline static function getPrefix(prefix:String)
return logText('[${prefix}] ', BLUE);
}
public inline static function infos(text:String, color:ConsoleColor = LIGHTGRAY, ?prefix:String) {
public inline static function infos(text:String, color:ConsoleColor = LIGHTGRAY, ?prefix:String)
Logs.trace(text, INFO, color, prefix);
}
public inline static function verbose(text:String, color:ConsoleColor = LIGHTGRAY, ?prefix:String) {
Logs.trace(text, VERBOSE, color, prefix);
}
public inline static function verbose(text:String, color:ConsoleColor = LIGHTGRAY, ?prefix:String)
if (Main.verbose) Logs.trace(text, VERBOSE, color, prefix);
public inline static function warn(text:String, color:ConsoleColor = YELLOW, ?prefix:String) {
public inline static function warn(text:String, color:ConsoleColor = YELLOW, ?prefix:String)
Logs.trace(text, WARNING, color, prefix);
}
public inline static function error(text:String, color:ConsoleColor = RED, ?prefix:String) {
public inline static function error(text:String, color:ConsoleColor = RED, ?prefix:String)
Logs.trace(text, ERROR, color, prefix);
}
}
enum abstract Level(Int) {
+1
View File
@@ -35,6 +35,7 @@ class Main extends Sprite
public static var modToLoad:String = null;
public static var forceGPUOnlyBitmapsOff:Bool = #if desktop false #else true #end;
public static var noTerminalColor:Bool = false;
public static var verbose:Bool = false;
public static var scaleMode:FunkinRatioScaleMode;
#if !mobile
@@ -33,7 +33,7 @@ class FramerateCounter extends Sprite {
if (alpha <= 0.05) return;
super.__enterFrame(t);
lastFPS = CoolUtil.fpsLerp(lastFPS, FlxG.elapsed == 0 ? 0 : (1 / FlxG.elapsed), 0.25);
lastFPS = CoolUtil.fpsLerp(lastFPS, FlxG.rawElapsed == 0 ? 0 : (1 / FlxG.rawElapsed), 0.25);
fpsNum.text = Std.string(Math.floor(lastFPS));
fpsLabel.x = fpsNum.x + fpsNum.width;
fpsLabel.y = (fpsNum.y + fpsNum.height) - fpsLabel.height;
@@ -21,6 +21,7 @@ class Macros {
// OTHER LIBRARIES & STUFF
#if THREE_D_SUPPORT "away3d", "flx3d", #end
#if VIDEO_CUTSCENES "hxvlc.flixel", "hxvlc.openfl", #end
#if NAPE_ENABLED "nape", "flixel.addons.nape", #end
// BASE HAXE
"DateTools", "EReg", "Lambda", "StringBuf", "haxe.crypto", "haxe.display", "haxe.exceptions", "haxe.extern", "scripting"
])
@@ -0,0 +1,31 @@
package funkin.backend.system.modules;
import haxe.io.Path;
/*
* A class that simply points OpenALSoft to a custom configuration file when
* the game starts up.
*
* The config overrides a few global OpenALSoft settings with the aim of
* improving audio quality on desktop targets.
*/
@:keepInit class ALSoftConfig
{
#if desktop
static function __init__():Void
{
var origin:String = #if hl Sys.getCwd() #else Sys.programPath() #end;
var configPath:String = Path.directory(Path.withoutExtension(origin));
#if windows
configPath += "/plugins/alsoft.ini";
#elseif mac
configPath = Path.directory(configPath) + "/Resources/plugins/alsoft.conf";
#else
configPath += "/plugins/alsoft.conf";
#end
Sys.putEnv("ALSOFT_CONF", configPath);
}
#end
}
@@ -60,6 +60,8 @@ class CharacterInfoScreen extends UISubstateWindow {
add(iconColorWheel);
addLabelOn(iconColorWheel, "Icon Color");
if (character.iconColor != null)
iconColorWheel.colorChanged = true;
iconColorPicker.colorWheel = iconColorWheel;
durationStepper = new UINumericStepper(iconColorWheel.x, iconColorWheel.y + 125 + 36, character.holdTime == -1 ? 4 : character.holdTime, 0.001, 2, 0, 9999999, 74);
+1 -1
View File
@@ -1243,7 +1243,7 @@ class Charter extends UIState {
if (note.strumLineID == strumLineID)
selection.remove(note);
else i++;
}
} else i++;
}
}
#end
+6 -3
View File
@@ -946,7 +946,7 @@ class PlayState extends MusicBeatState
var spr = event.spritePath;
if (!Assets.exists(spr)) spr = Paths.image('$spr');
sprite = new FlxSprite().loadAnimatedGraphic(spr);
sprite = new FunkinSprite().loadAnimatedGraphic(spr);
sprite.scrollFactor.set();
sprite.scale.set(event.scale, event.scale);
sprite.updateHitbox();
@@ -1278,8 +1278,11 @@ class PlayState extends MusicBeatState
accFormat.format.color = curRating.color;
accuracyTxt.text = 'Accuracy:${accuracy < 0 ? "-%" : '${CoolUtil.quantize(accuracy * 100, 100)}%'} - ${curRating.rating}';
accuracyTxt._formatRanges[0].range.start = accuracyTxt.text.length - curRating.rating.length;
accuracyTxt._formatRanges[0].range.end = accuracyTxt.text.length;
for (i => frmtRange in accuracyTxt._formatRanges) if (frmtRange.format == accFormat) {
accuracyTxt._formatRanges[i].range.start = accuracyTxt.text.length - curRating.rating.length;
accuracyTxt._formatRanges[i].range.end = accuracyTxt.text.length;
break;
}
}
}
+13 -10
View File
@@ -1,20 +1,20 @@
package funkin.menus;
import flixel.sound.FlxSound;
import flixel.text.FlxText;
import flixel.tweens.FlxTween;
import flixel.util.FlxColor;
import funkin.backend.FunkinText;
import funkin.backend.scripting.Script;
import funkin.backend.scripting.events.NameEvent;
import funkin.backend.scripting.events.menu.MenuChangeEvent;
import funkin.backend.scripting.events.menu.pause.*;
import funkin.backend.scripting.events.NameEvent;
import funkin.backend.system.Conductor;
import funkin.backend.utils.FunkinParentDisabler;
import funkin.editors.charter.Charter;
import funkin.menus.StoryMenuState;
import funkin.options.OptionsMenu;
import funkin.options.keybinds.KeybindsOptions;
import funkin.options.TreeMenu;
import funkin.options.keybinds.KeybindsOptions;
class PauseSubState extends MusicBeatSubstate
{
@@ -22,7 +22,13 @@ class PauseSubState extends MusicBeatSubstate
var grpMenuShit:FlxTypedGroup<Alphabet>;
var levelInfo:FunkinText;
var levelDifficulty:FunkinText;
var deathCounter:FunkinText;
var multiplayerText:FunkinText;
var menuItems:Array<String>;
var curSelected:Int = 0;
var pauseMusic:FlxSound;
@@ -59,7 +65,6 @@ class PauseSubState extends MusicBeatSubstate
menuItems = event.options;
pauseMusic = FlxG.sound.load(Paths.music(event.music), 0, true);
pauseMusic.persist = false;
pauseMusic.group = FlxG.sound.defaultMusicGroup;
@@ -74,15 +79,13 @@ class PauseSubState extends MusicBeatSubstate
bg.scrollFactor.set();
add(bg);
var levelInfo:FlxText = new FlxText(20, 15, 0, PlayState.SONG.meta.displayName, 32);
var levelDifficulty:FlxText = new FlxText(20, 15, 0, PlayState.difficulty.toUpperCase(), 32);
var deathCounter:FlxText = new FlxText(20, 15, 0, "Blue balled: " + PlayState.deathCounter, 32);
var multiplayerText:FlxText = new FlxText(20, 15, 0, PlayState.opponentMode ? 'OPPONENT MODE' : (PlayState.coopMode ? 'CO-OP MODE' : ''), 32);
levelInfo = new FunkinText(20, 15, 0, PlayState.SONG.meta.displayName, 32, false);
levelDifficulty = new FunkinText(20, 15, 0, PlayState.difficulty.toUpperCase(), 32, false);
deathCounter = new FunkinText(20, 15, 0, "Blue balled: " + PlayState.deathCounter, 32, false);
multiplayerText = new FunkinText(20, 15, 0, PlayState.opponentMode ? 'OPPONENT MODE' : (PlayState.coopMode ? 'CO-OP MODE' : ''), 32, false);
for(k=>label in [levelInfo, levelDifficulty, deathCounter, multiplayerText]) {
label.scrollFactor.set();
label.setFormat(Paths.font('vcr.ttf'), 32);
label.updateHitbox();
label.alpha = 0;
label.x = FlxG.width - (label.width + 20);
label.y = 15 + (32 * k);
@@ -92,7 +92,7 @@ class CreditsCodename extends funkin.options.OptionsScreen {
});
Options.contributors = contributors;
}
Logs.trace('[CreditsCodename] Contributors list Updated!', VERBOSE);
Logs.verbose('[CreditsCodename] Contributors list Updated!');
var errorOnMain:Bool = false;
var idk2 = GitHub.getOrganizationMembers(Flags.REPO_OWNER, function(e) {
@@ -103,7 +103,7 @@ class CreditsCodename extends funkin.options.OptionsScreen {
});
if(!errorOnMain) {
Options.mainDevs = [for(m in idk2) m.id];
Logs.trace('[CreditsCodename] Main Devs list Updated!', VERBOSE);
Logs.verbose('[CreditsCodename] Main Devs list Updated!');
}
return true;
+4 -3
View File
@@ -7,6 +7,7 @@ import funkin.backend.FunkinText;
import funkin.editors.ui.UIState;
import funkin.menus.MainMenuState;
import funkin.options.type.OptionType;
import funkin.options.type.TextOption;
import funkin.backend.system.framerate.Framerate;
class TreeMenu extends UIState {
@@ -18,13 +19,13 @@ class TreeMenu extends UIState {
public static var lastState:Class<FlxState> = null; // Static for fixing the softlock bugs when resetting the state - Nex
public function new() {
public function new(scriptsAllowed:Bool = true, ?scriptName:String) {
if(lastState == null) lastState = Type.getClass(FlxG.state);
super();
super(scriptsAllowed, scriptName);
}
public override function createPost() {
if (main == null) throw "\"main\" variable has not been set in extended class!";
if (main == null) main = new OptionsScreen("Fallback Treemenu", "Please set the \"main\" variable in your extended class before createPost", [new TextOption("Oops! No Options", "This doesn't look like it was supposed to happen...", () -> FlxG.resetState() ) ]);
FlxG.camera.scroll.set(-FlxG.width, 0);