mirror of
https://github.com/ninjamuffin99/Funkin.git
synced 2024-11-19 21:33:06 +00:00
Merge branch 'rewrite/master' into input-offsets
This commit is contained in:
commit
18a926e108
|
@ -113,7 +113,6 @@
|
||||||
<haxelib name="json2object" /> <!-- JSON parsing -->
|
<haxelib name="json2object" /> <!-- JSON parsing -->
|
||||||
<haxelib name="thx.semver" /> <!-- Version string handling -->
|
<haxelib name="thx.semver" /> <!-- Version string handling -->
|
||||||
|
|
||||||
<haxelib name="hmm" /> <!-- Read library version data at compile time so it can be baked into logs -->
|
|
||||||
<haxelib name="hxcpp-debug-server" if="desktop debug" /> <!-- VSCode debug support -->
|
<haxelib name="hxcpp-debug-server" if="desktop debug" /> <!-- VSCode debug support -->
|
||||||
|
|
||||||
<!--Disable the Flixel core focus lost screen-->
|
<!--Disable the Flixel core focus lost screen-->
|
||||||
|
|
|
@ -7,7 +7,8 @@
|
||||||
- If you accidentally cloned without the `assets` submodule (aka didn't follow the step above), you can run `git submodule update --init --recursive` to get the assets in a foolproof way.
|
- If you accidentally cloned without the `assets` submodule (aka didn't follow the step above), you can run `git submodule update --init --recursive` to get the assets in a foolproof way.
|
||||||
2. Install `hmm` (run `haxelib --global install hmm` and then `haxelib --global run hmm setup`)
|
2. Install `hmm` (run `haxelib --global install hmm` and then `haxelib --global run hmm setup`)
|
||||||
3. Install all haxelibs of the current branch by running `hmm install`
|
3. Install all haxelibs of the current branch by running `hmm install`
|
||||||
4. Platform setup
|
4. Setup lime: `haxelib run lime setup`
|
||||||
|
5. Platform setup
|
||||||
- For Windows, download the [Visual Studio Build Tools](https://aka.ms/vs/17/release/vs_BuildTools.exe)
|
- For Windows, download the [Visual Studio Build Tools](https://aka.ms/vs/17/release/vs_BuildTools.exe)
|
||||||
- When prompted, select "Individual Components" and make sure to download the following:
|
- When prompted, select "Individual Components" and make sure to download the following:
|
||||||
- MSVC v143 VS 2022 C++ x64/x86 build tools
|
- MSVC v143 VS 2022 C++ x64/x86 build tools
|
||||||
|
@ -15,5 +16,5 @@
|
||||||
- Mac: [`lime setup mac` Documentation](https://lime.openfl.org/docs/advanced-setup/macos/)
|
- Mac: [`lime setup mac` Documentation](https://lime.openfl.org/docs/advanced-setup/macos/)
|
||||||
- Linux: [`lime setup linux` Documentation](https://lime.openfl.org/docs/advanced-setup/linux/)
|
- Linux: [`lime setup linux` Documentation](https://lime.openfl.org/docs/advanced-setup/linux/)
|
||||||
- HTML5: Compiles without any extra setup
|
- HTML5: Compiles without any extra setup
|
||||||
5. If you are targeting for native, you likely need to run `lime rebuild PLATFORM` and `lime rebuild PLATFORM -debug`
|
6. If you are targeting for native, you likely need to run `lime rebuild PLATFORM` and `lime rebuild PLATFORM -debug`
|
||||||
6. `lime test PLATFORM` !
|
7. `lime test PLATFORM` !
|
||||||
|
|
5
hmm.json
5
hmm.json
|
@ -64,11 +64,6 @@
|
||||||
"ref": "e9f880522e27134b29df4067f82df7d7e5237b70",
|
"ref": "e9f880522e27134b29df4067f82df7d7e5237b70",
|
||||||
"url": "https://github.com/haxeui/haxeui-flixel"
|
"url": "https://github.com/haxeui/haxeui-flixel"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "hmm",
|
|
||||||
"type": "haxelib",
|
|
||||||
"version": "3.1.0"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "hscript",
|
"name": "hscript",
|
||||||
"type": "haxelib",
|
"type": "haxelib",
|
||||||
|
|
|
@ -7,7 +7,7 @@ class HaxelibVersions
|
||||||
public static macro function getLibraryVersions():haxe.macro.Expr.ExprOf<Array<String>>
|
public static macro function getLibraryVersions():haxe.macro.Expr.ExprOf<Array<String>>
|
||||||
{
|
{
|
||||||
#if !display
|
#if !display
|
||||||
return macro $v{formatHmmData(readHmmData())};
|
return macro $v{formatHmmData()};
|
||||||
#else
|
#else
|
||||||
// `#if display` is used for code completion. In this case returning an
|
// `#if display` is used for code completion. In this case returning an
|
||||||
// empty string is good enough; We don't want to call functions on every hint.
|
// empty string is good enough; We don't want to call functions on every hint.
|
||||||
|
@ -17,44 +17,33 @@ class HaxelibVersions
|
||||||
}
|
}
|
||||||
|
|
||||||
#if (macro)
|
#if (macro)
|
||||||
static function readHmmData():hmm.HmmConfig
|
@SuppressWarnings('checkstyle:Dynamic')
|
||||||
{
|
static function formatHmmData():Array<String>
|
||||||
return hmm.HmmConfig.HmmConfigs.readHmmJsonOrThrow();
|
|
||||||
}
|
|
||||||
|
|
||||||
static function formatHmmData(hmmData:hmm.HmmConfig):Array<String>
|
|
||||||
{
|
{
|
||||||
var result:Array<String> = [];
|
var result:Array<String> = [];
|
||||||
|
|
||||||
for (library in hmmData.dependencies)
|
var hmmData:Dynamic = haxe.Json.parse(sys.io.File.getContent('hmm.json'));
|
||||||
|
var dependencies:Array<Dynamic> = cast hmmData.dependencies;
|
||||||
|
for (library in dependencies)
|
||||||
{
|
{
|
||||||
switch (library)
|
switch (library.type)
|
||||||
{
|
{
|
||||||
case Haxelib(name, version):
|
case 'haxelib':
|
||||||
result.push('${name} haxelib(${o(version)})');
|
result.push('${library.name} haxelib(${library.version ?? 'None'})');
|
||||||
case Git(name, url, ref, dir):
|
case 'git':
|
||||||
result.push('${name} git(${url}/${o(dir, '')}:${o(ref)})');
|
result.push('${library.name} git(${library.url}/${library.dir ?? ''}:${library.ref ?? 'None'}');
|
||||||
case Mercurial(name, url, ref, dir):
|
case 'mercurial':
|
||||||
result.push('${name} mercurial(${url}/${o(dir, '')}:${o(ref)})');
|
result.push('${library.name} mercurial(${library.url}/${library.dir ?? ''}:${library.ref ?? 'None'})');
|
||||||
case Dev(name, path):
|
case 'dev':
|
||||||
result.push('${name} dev(${path})');
|
result.push('${library.name} dev(${library.path})');
|
||||||
|
case ty:
|
||||||
|
throw 'Unhandled hmm library type ${ty}';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static function o(option:haxe.ds.Option<String>, defaultValue:String = 'None'):String
|
|
||||||
{
|
|
||||||
switch (option)
|
|
||||||
{
|
|
||||||
case Some(value):
|
|
||||||
return value;
|
|
||||||
case None:
|
|
||||||
return defaultValue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static function readLibraryCurrentVersion(libraryName:String):String
|
static function readLibraryCurrentVersion(libraryName:String):String
|
||||||
{
|
{
|
||||||
var path = Path.join([Path.addTrailingSlash(Sys.getCwd()), '.haxelib', libraryName, '.current']);
|
var path = Path.join([Path.addTrailingSlash(Sys.getCwd()), '.haxelib', libraryName, '.current']);
|
||||||
|
|
Loading…
Reference in a new issue