-
Notifications
You must be signed in to change notification settings - Fork 4
/
Project.xml
124 lines (88 loc) · 4.52 KB
/
Project.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<?xml version="1.0" encoding="utf-8"?>
<project>
<!-- [[ Application Settings ]] -->
<app title="Friday Night Funkin': Eternal" file="EternalFunkin" main="Main" version="0.1.0" company="Sword352" packageName="com.sword.Eternal" />
<app preloader="flixel.system.FlxPreloader" />
<window if="desktop" orientation="landscape" fullscreen="false" resizable="true" allow-high-dpi="true" />
<window width="1280" height="720" fps="60" background="#000000" hardware="true" vsync="false" />
<window if="mobile" orientation="landscape" fullscreen="true" width="0" height="0" />
<assets path="assets" type="template" /> <!-- We can safely declare this as template since we're handling assets on our own -->
<assets path="mods" type="template" />
<icon path="resources/win-icon-pixel.png" size="16" />
<icon path="resources/win-icon.png" />
<source path="source" />
<!-- Defines build directories depending on the target. -->
<section if="debug">
<set name="BUILD_DIR" value="export/debug" />
<set name="BUILD_DIR" value="export/x32-debug" if="32bits" />
</section>
<section unless="debug">
<set name="BUILD_DIR" value="export/release" />
<set name="BUILD_DIR" value="export/x32" if="32bits" />
</section>
<set name="SWF_VERSION" value="11.8" />
<!-- [[ Features ]] -->
<!-- Enables the crash handler. -->
<define name="CRASH_HANDLER" if="desktop" />
<!-- Enables the Discord Rich Presence. -->
<define name="DISCORD_RPC" if="cpp" />
<!-- [[ Librairies ]] -->
<!-- Flixel librairies -->
<haxelib name="flixel" />
<haxelib name="flixel-addons" />
<!-- Discord Rich Presence library -->
<haxelib name="hxdiscord_rpc" if="DISCORD_RPC" />
<!-- HScript scripting library -->
<haxelib name="hscript-improved" rename="hscript" />
<!-- YAML parsing library -->
<haxelib name="yaml" />
<!-- UI librairies -->
<haxelib name="haxeui-core" />
<haxelib name="haxeui-flixel" />
<haxelib name="flixel-text-input" />
<!-- Debugging library -->
<haxelib name="hxcpp-debug-server" if="cpp debug" unless="hxtelemetry" />
<!-- [[ Defines ]] -->
<!-- Keeps the song event classes compiled. -->
<haxeflag name="--macro" value="funkin.core.macros.SongEventMacro.keepClasses()" />
<!-- Prevents the Discord Rich Presence API from making a second thread. -->
<haxedef name="DISCORD_DISABLE_IO_THREAD" if="DISCORD_RPC" />
<!-- Allows HScript error reporting at parse time. -->
<define name="hscriptPos" />
<!-- Allows HScript custom classes. -->
<define name="CUSTOM_CLASSES" />
<!-- Disables dead code elimination to force unused stuff to be compiled. -->
<haxeflag name="-dce" value="std" />
<!-- Runs the import macro that compiles some additional classes for scripting. -->
<haxeflag name="--macro" value='funkin.core.macros.IncludeMacro.addAdditionalClasses()' />
<!-- Enables OpenFL error handling. -->
<define name="openfl-enable-handle-error" if="CRASH_HANDLER" />
<!-- Includes the crash dialog executable on Windows. -->
<!-- TODO: this is just a bandaid for now, come up with a better solution later (that works with other targets as well) -->
<assets path="resources/CrashDialog.exe" rename="CrashDialog.exe" if="CRASH_HANDLER windows" unless="32bits" type="template" />
<!-- Required for HaxeUI states. -->
<haxedef name="haxeui_dont_impose_base_class" />
<!-- Disables the HaxeUI custom cursors. -->
<haxedef name="haxeui_flixel_no_custom_cursors" />
<!-- Required for HaxeUI's RuntimeComponentBuilder (temporary). -->
<haxeflag name="--macro" value="include('haxe.ui.components')" />
<haxeflag name="--macro" value="include('haxe.ui.containers')" />
<!-- Optimise inputs. Be careful, you will get null errors if you don't use conditionals. -->
<haxedef name="FLX_NO_MOUSE" if="mobile" />
<haxedef name="FLX_NO_KEYBOARD" if="mobile" />
<haxedef name="FLX_NO_TOUCH" if="desktop" />
<!-- Disables the Flixel core focus lost screen. -->
<haxedef name="FLX_NO_FOCUS_LOST_SCREEN" />
<section unless="debug" >
<!-- Disables the Flixel core debugger. Automatically gets set whenever you compile in release mode. -->
<haxedef name="FLX_NO_DEBUG" />
<!-- Enables this for Nape release builds for a serious peformance improvement. -->
<haxedef name="NAPE_RELEASE_BUILD" />
<!-- Allows crashes to be traced on release builds. -->
<haxedef name="HXCPP_CHECK_POINTER" if="CRASH_HANDLER" />
<haxedef name="HXCPP_STACK_LINE" if="CRASH_HANDLER" />
<haxedef name="HXCPP_STACK_TRACE" if="CRASH_HANDLER" />
</section>
<!-- Disables deprecation warnings. -->
<haxedef name="no-deprecation-warnings" />
</project>