Compare commits
524 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2ef28aae5f | ||
|
|
51c456e907 | ||
|
|
afa42fe498 | ||
|
|
a79f7c8fcc | ||
|
|
ef9b79f120 | ||
|
|
553ed365e9 | ||
|
|
d69cb92028 | ||
|
|
e06d871aaf | ||
|
|
8a9866db54 | ||
|
|
a2e2b4e211 | ||
|
|
c5a90673b9 | ||
|
|
fbaa766f7e | ||
|
|
10008f98c3 | ||
|
|
47b10edbab | ||
|
|
6044889270 | ||
|
|
e7cac9cd0c | ||
|
|
06d0c6d98e | ||
|
|
3a21ca2f5c | ||
|
|
ad0e867b48 | ||
|
|
ae0c057b31 | ||
|
|
301a8675cf | ||
|
|
5736b9c03c | ||
|
|
570c7355eb | ||
|
|
611ac6cebd | ||
|
|
7fd6f00cf7 | ||
|
|
5cfe49c166 | ||
|
|
f40914f071 | ||
|
|
4743684298 | ||
|
|
6673f7dc5c | ||
|
|
efd4f50e4e | ||
|
|
c12cdfc908 | ||
|
|
995029e99b | ||
|
|
3a17b3fea5 | ||
|
|
3cfb0785fe | ||
|
|
07bff7724d | ||
|
|
5d61ee091c | ||
|
|
3de0519d47 | ||
|
|
0a56019a53 | ||
|
|
a4254f8771 | ||
|
|
69c81eb5ce | ||
|
|
1c28616679 | ||
|
|
f8731ab84c | ||
|
|
e1e882098b | ||
|
|
a92b0eb1b6 | ||
|
|
a7ade37670 | ||
|
|
9bd8ed8a5d | ||
|
|
d6a97365a8 | ||
|
|
9b8b908524 | ||
|
|
aedffdc2c3 | ||
|
|
b6032a4b64 | ||
|
|
77108d12af | ||
|
|
d275730b3e | ||
|
|
3d065c116e | ||
|
|
5a6c8ae6e1 | ||
|
|
bb33ddf07b | ||
|
|
c348dfb530 | ||
|
|
6ea397b7d5 | ||
|
|
e97f7f2823 | ||
|
|
c5c1c30c4b | ||
|
|
8a1997190a | ||
|
|
e7e50cf865 | ||
|
|
97e8f5a753 | ||
|
|
4cf4748813 | ||
|
|
ebd3f03e13 | ||
|
|
70b4d51943 | ||
|
|
203916bfae | ||
|
|
b6679f7b87 | ||
|
|
13c9c8d99e | ||
|
|
ef6612bcb8 | ||
|
|
6c45fce486 | ||
|
|
2662ff7074 | ||
|
|
f41b169dca | ||
|
|
8f3177a885 | ||
|
|
e66f9fd0ff | ||
|
|
d74b8d81be | ||
|
|
80aa53997c | ||
|
|
296c7e893b | ||
|
|
2610a72257 | ||
|
|
6abf22776e | ||
|
|
41a356ca65 | ||
|
|
e40625d451 | ||
|
|
5ab50aef12 | ||
|
|
602e662503 | ||
|
|
e216be4ec9 | ||
|
|
3964b43aca | ||
|
|
d34bc7c363 | ||
|
|
cd3fe87fed | ||
|
|
00e4420100 | ||
|
|
b4b3906610 | ||
|
|
19cc14679e | ||
|
|
18d0e7154f | ||
|
|
ffa9855174 | ||
|
|
e7417c7002 | ||
|
|
3fcf2c8799 | ||
|
|
f9a58d15a9 | ||
|
|
26ed1cb820 | ||
|
|
85ce3b5507 | ||
|
|
7e60689a58 | ||
|
|
6f374db2ad | ||
|
|
0f11c17cb8 | ||
|
|
bdccf31a23 | ||
|
|
0c58d597d4 | ||
|
|
54aae3c997 | ||
|
|
d893ca30e6 | ||
|
|
98de4cff1c | ||
|
|
da12b521db | ||
|
|
87ff14b6b8 | ||
|
|
2416a7119e | ||
|
|
41f041f3f9 | ||
|
|
5220b8909c | ||
|
|
c07083f400 | ||
|
|
1706c16540 | ||
|
|
de265e7742 | ||
|
|
0c9db3ea58 | ||
|
|
b4324707f3 | ||
|
|
bd5fb5021c | ||
|
|
aa8f640b0e | ||
|
|
7682e6b5f8 | ||
|
|
ca314d734a | ||
|
|
fa92b6d1af | ||
|
|
3a928a6014 | ||
|
|
57873e6301 | ||
|
|
2d5bdda9ab | ||
|
|
60b116f9aa | ||
|
|
11043e04b0 | ||
|
|
98b6781970 | ||
|
|
21ac9259d4 | ||
|
|
a8d316d4fd | ||
|
|
a33fb533df | ||
|
|
d9b9298277 | ||
|
|
87efa2ce51 | ||
|
|
424127e527 | ||
|
|
ba0dd018ab | ||
|
|
52343d9a45 | ||
|
|
9d483d2382 | ||
|
|
0376db7c73 | ||
|
|
0720ea9424 | ||
|
|
c830d417f1 | ||
|
|
5a8eab9aff | ||
|
|
f84d69fbda | ||
|
|
a0d01656ab | ||
|
|
d7acac9227 | ||
|
|
8b612fd089 | ||
|
|
08f057dc6c | ||
|
|
7bc95d492b | ||
|
|
36bc46d7b9 | ||
|
|
7837be38e9 | ||
|
|
651726bb06 | ||
|
|
a1c4691466 | ||
|
|
cc57591342 | ||
|
|
a817d0481b | ||
|
|
7bb3969fc7 | ||
|
|
9bab55cba5 | ||
|
|
870474cfed | ||
|
|
b3978bb9bb | ||
|
|
b1af411014 | ||
|
|
64ee9dcf29 | ||
|
|
fe37dc4209 | ||
|
|
3120674b66 | ||
|
|
7ba9b5aaf6 | ||
|
|
2e9917d9f1 | ||
|
|
911ea765bf | ||
|
|
81e4c98cca | ||
|
|
56c8e6e97e | ||
|
|
7366f49670 | ||
|
|
0cd6486d39 | ||
|
|
3d388e6b57 | ||
|
|
268b59a841 | ||
|
|
e6d01130d4 | ||
|
|
ee65e733e5 | ||
|
|
a83b1cb13e | ||
|
|
4084e362b3 | ||
|
|
4e80a53d07 | ||
|
|
bd373b6971 | ||
|
|
c4f4ea92b8 | ||
|
|
1e5227b4fa | ||
|
|
7f87db5757 | ||
|
|
8569a95116 | ||
|
|
a06adeb435 | ||
|
|
c6a7d5cb38 | ||
|
|
d040c56382 | ||
|
|
cca94aa290 | ||
|
|
d63a0798ac | ||
|
|
588eba52d2 | ||
|
|
bcd2f2b085 | ||
|
|
67eb9a0991 | ||
|
|
c40243acaa | ||
|
|
f303925551 | ||
|
|
25b1c01205 | ||
|
|
484e189978 | ||
|
|
36d3f86f28 | ||
|
|
d8604c9717 | ||
|
|
63781f1532 | ||
|
|
a9b9ed1a98 | ||
|
|
7fb8e4530d | ||
|
|
dfc943e802 | ||
|
|
74d444a835 | ||
|
|
ef6c3a0146 | ||
|
|
a2be44157e | ||
|
|
11052389b1 | ||
|
|
ea6766dff6 | ||
|
|
4f23c2cea9 | ||
|
|
72f13ba68b | ||
|
|
9852825486 | ||
|
|
79d470cc57 | ||
|
|
d7d2cfaf45 | ||
|
|
5bd92b2312 | ||
|
|
67db795368 | ||
|
|
52bdbdc65b | ||
|
|
52276538e3 | ||
|
|
e37795a80d | ||
|
|
72e83a5dbb | ||
|
|
5c446925ba | ||
|
|
f201279264 | ||
|
|
e42960d946 | ||
|
|
fdfc67ff8d | ||
|
|
8b58181f30 | ||
|
|
5b502cd9b2 | ||
|
|
928e95af6e | ||
|
|
d05b436a00 | ||
|
|
27a8f8f18b | ||
|
|
e058f28865 | ||
|
|
323598c4f2 | ||
|
|
cc9f29e3ac | ||
|
|
e36f4e824a | ||
|
|
8b28d74e04 | ||
|
|
43c9d64f33 | ||
|
|
2e27ba0aa0 | ||
|
|
bb713ad779 | ||
|
|
b0c5dafb09 | ||
|
|
720a92df52 | ||
|
|
1ddb981702 | ||
|
|
86461bf11f | ||
|
|
3091e33384 | ||
|
|
7076ccdff3 | ||
|
|
f53ea53697 | ||
|
|
3792f5b924 | ||
|
|
2e6eedba81 | ||
|
|
df669cca17 | ||
|
|
d9e49c8a32 | ||
|
|
b85e7b232c | ||
|
|
497579089f | ||
|
|
1f7b117753 | ||
|
|
7fa0da4a9b | ||
|
|
5de3e74379 | ||
|
|
d1977a7c36 | ||
|
|
964aa9aefb | ||
|
|
69199b9da7 | ||
|
|
edd29b1cad | ||
|
|
7450625a2f | ||
|
|
82cdf9b9b6 | ||
|
|
7c278a0579 | ||
|
|
0a2ed380d3 | ||
|
|
c8b591c474 | ||
|
|
2fa9dbb71d | ||
|
|
3a3345c4d3 | ||
|
|
a861b94e69 | ||
|
|
864fd53218 | ||
|
|
53a39a63c0 | ||
|
|
e8b8a422f7 | ||
|
|
a99ee2b9ab | ||
|
|
91a50f224e | ||
|
|
144ba1e3d6 | ||
|
|
ba69caffd2 | ||
|
|
2283afe20d | ||
|
|
939910eb6c | ||
|
|
90d1709352 | ||
|
|
4db37cee23 | ||
|
|
8d07ee64a0 | ||
|
|
3b867a547e | ||
|
|
49ab1ec8ec | ||
|
|
5d02d81af8 | ||
|
|
585c9111c1 | ||
|
|
d9f15f7ac9 | ||
|
|
45c8e7ce49 | ||
|
|
06239378fb | ||
|
|
21c5ecfeb9 | ||
|
|
3416445a73 | ||
|
|
f5b5729972 | ||
|
|
e78343ce39 | ||
|
|
0fb0a47016 | ||
|
|
11ca7dd052 | ||
|
|
4c0ea4afb2 | ||
|
|
a8f36317c5 | ||
|
|
ea2f4d790c | ||
|
|
6945dd4acc | ||
|
|
93d86bbd6a | ||
|
|
97e8e2ebee | ||
|
|
be9ec77e13 | ||
|
|
70daee42f7 | ||
|
|
74c7125e9c | ||
|
|
c7da2c2de6 | ||
|
|
311579e631 | ||
|
|
07bd6a15c8 | ||
|
|
4bfd6dd6be | ||
|
|
7fbf8f26af | ||
|
|
81708632cc | ||
|
|
1064e9d272 | ||
|
|
c56d382c3a | ||
|
|
e87411794c | ||
|
|
9b342f4a23 | ||
|
|
ce1bcf9c2c | ||
|
|
266a29afc4 | ||
|
|
506cb50960 | ||
|
|
f6231facc2 | ||
|
|
53eda514ba | ||
|
|
c93eb1db6b | ||
|
|
2639afd515 | ||
|
|
14b941f65c | ||
|
|
5eb8e39b82 | ||
|
|
db7f7c0cf6 | ||
|
|
dc9ee0a60c | ||
|
|
98662dfd3a | ||
|
|
9821cb2575 | ||
|
|
db435f4f05 | ||
|
|
ded22e5e37 | ||
|
|
81dcfd5119 | ||
|
|
018b4d8705 | ||
|
|
aa93731f04 | ||
|
|
ef3d698996 | ||
|
|
b53fe858d7 | ||
|
|
433bb9baaa | ||
|
|
ad7c1cae3c | ||
|
|
c439b32338 | ||
|
|
5d2915f586 | ||
|
|
c7191ad45e | ||
|
|
129a591a2e | ||
|
|
1f0e2bea43 | ||
|
|
03b0eced47 | ||
|
|
a7068dd808 | ||
|
|
ecb6ce58c5 | ||
|
|
7b45fde2bc | ||
|
|
d2323a3811 | ||
|
|
7f000d8021 | ||
|
|
73b70ab6ab | ||
|
|
e6605efaa6 | ||
|
|
82081b3698 | ||
|
|
0face52d90 | ||
|
|
ce9532964b | ||
|
|
2121bf000c | ||
|
|
4bd6aaec43 | ||
|
|
06769e9987 | ||
|
|
077f8e8e43 | ||
|
|
31259b7c6f | ||
|
|
c823c98b3e | ||
|
|
8be0bbb79e | ||
|
|
714d9079d2 | ||
|
|
65af151b62 | ||
|
|
033e4f041e | ||
|
|
04a774a41e | ||
|
|
770eac480a | ||
|
|
271994e582 | ||
|
|
9a525b8a06 | ||
|
|
005d9c3e6e | ||
|
|
d0dcb5f6c9 | ||
|
|
3ea6926871 | ||
|
|
0979f113b5 | ||
|
|
28ad6b478d | ||
|
|
487b6acec4 | ||
|
|
b62da3af89 | ||
|
|
de20dbf0b8 | ||
|
|
eb08a1e18a | ||
|
|
fbeed31da2 | ||
|
|
3cfd42825f | ||
|
|
4a4b3f76b6 | ||
|
|
215167a863 | ||
|
|
1b292ff4a7 | ||
|
|
8a677fd2c3 | ||
|
|
f917210f8c | ||
|
|
c64d6bef13 | ||
|
|
203d66ccfe | ||
|
|
146cecdfdc | ||
|
|
a915ee30f2 | ||
|
|
32ab3c7967 | ||
|
|
98474da3e0 | ||
|
|
5bd410408f | ||
|
|
47bb2de547 | ||
|
|
bb9f59e7a8 | ||
|
|
cb3e452db6 | ||
|
|
034aa75a22 | ||
|
|
133c783de0 | ||
|
|
53324b3d08 | ||
|
|
8984e3a496 | ||
|
|
b5ad3b5352 | ||
|
|
6e07c4f357 | ||
|
|
d5ede276d6 | ||
|
|
5edf1d1a6c | ||
|
|
f3d79fbbab | ||
|
|
82ca9cde8e | ||
|
|
609c5dc1b7 | ||
|
|
2342d940a6 | ||
|
|
5772110c52 | ||
|
|
0968761c6f | ||
|
|
cdb801445c | ||
|
|
b21ac340a8 | ||
|
|
affbceda51 | ||
|
|
1c7ad635f8 | ||
|
|
5e08f085b7 | ||
|
|
8cecb8934c | ||
|
|
9753b1485e | ||
|
|
6b8d03adf2 | ||
|
|
05c62eee57 | ||
|
|
5c918c02d2 | ||
|
|
d0ed847e0b | ||
|
|
8340b8a46a | ||
|
|
6573e06bd8 | ||
|
|
cc47bcddc8 | ||
|
|
d0c220bdd8 | ||
|
|
d70608acb8 | ||
|
|
797c426456 | ||
|
|
3b4add0d08 | ||
|
|
1d86c2f992 | ||
|
|
f278b36254 | ||
|
|
a2c399557e | ||
|
|
deee285e71 | ||
|
|
a1e67dd7e9 | ||
|
|
92ec04a5b9 | ||
|
|
cad8606057 | ||
|
|
ec6e7785e5 | ||
|
|
ba1fd21174 | ||
|
|
97d9db8295 | ||
|
|
81bf76bfb2 | ||
|
|
808e35a4af | ||
|
|
d76a7812e0 | ||
|
|
c4234c3c63 | ||
|
|
dc21945869 | ||
|
|
be31bb5a2c | ||
|
|
edf93f8edd | ||
|
|
57175a413c | ||
|
|
375d22650f | ||
|
|
9e1240fc44 | ||
|
|
0c50e7f037 | ||
|
|
217b83ac94 | ||
|
|
51a48609dd | ||
|
|
80d6cb43b6 | ||
|
|
2d3153e836 | ||
|
|
5528b57b87 | ||
|
|
cc00fb2fdf | ||
|
|
7b00b995d1 | ||
|
|
50ae6803dc | ||
|
|
57134b9a85 | ||
|
|
9d229a4747 | ||
|
|
8e19719060 | ||
|
|
cfd40df7b6 | ||
|
|
ef392a17b1 | ||
|
|
39450065c1 | ||
|
|
19ca4fef2d | ||
|
|
30381deb19 | ||
|
|
0fc64d9b70 | ||
|
|
1d1513026b | ||
|
|
49b22ef2ad | ||
|
|
2c94aa864e | ||
|
|
b874663c63 | ||
|
|
7f0a51e9e8 | ||
|
|
5c702d39e6 | ||
|
|
d261a15cb2 | ||
|
|
1d24fb1976 | ||
|
|
1018208d5c | ||
|
|
f22cce9825 | ||
|
|
2f17ab1df4 | ||
|
|
dd6a0be20d | ||
|
|
8980869082 | ||
|
|
e39420e8b1 | ||
|
|
c4e3279f45 | ||
|
|
6460a66139 | ||
|
|
8361ad7d1d | ||
|
|
7b13a002c0 | ||
|
|
336a5e3314 | ||
|
|
7def09eeae | ||
|
|
eff683b40a | ||
|
|
1627942278 | ||
|
|
caa20747a7 | ||
|
|
bfaf31b822 | ||
|
|
ba5f06a40d | ||
|
|
b7652955b5 | ||
|
|
92d59ec1b6 | ||
|
|
f79a633322 | ||
|
|
f820a3e41b | ||
|
|
0c1e121a8b | ||
|
|
bf41bb576e | ||
|
|
f3cc59066a | ||
|
|
a22565855c | ||
|
|
af67c9eac0 | ||
|
|
58a1f048d2 | ||
|
|
ef9a7cbe5e | ||
|
|
eb8978b406 | ||
|
|
8c3b4e0b01 | ||
|
|
f471707387 | ||
|
|
a1b9164b45 | ||
|
|
f1e4b44ce1 | ||
|
|
632f7fd732 | ||
|
|
592a6d78ec | ||
|
|
d9ac2585ad | ||
|
|
cc6c2b2dee | ||
|
|
e37853732f | ||
|
|
6993f18626 | ||
|
|
6f7b0b5c7b | ||
|
|
fab07bc51b | ||
|
|
22047323c8 | ||
|
|
6f47c50e2a | ||
|
|
8d4f965861 | ||
|
|
c0b0d1f10d | ||
|
|
e2eafd3824 | ||
|
|
84af2fa3fb | ||
|
|
1e21f17d8f | ||
|
|
6a30687263 | ||
|
|
35b353f535 | ||
|
|
dbeb6b7c60 | ||
|
|
4a6c06bf3a | ||
|
|
b7e94aa027 | ||
|
|
ab59e51e24 | ||
|
|
1a5529efb6 | ||
|
|
2ae5f79890 | ||
|
|
812af3925e | ||
|
|
37653ba974 | ||
|
|
48c38aaa3a | ||
|
|
3cb5d47e5b | ||
|
|
310be0760d | ||
|
|
bffa58e838 | ||
|
|
7408afa680 | ||
|
|
56fcf3706e | ||
|
|
d48c3aabdf | ||
|
|
ce3e33d5b5 | ||
|
|
c878984ee3 |
475
.circleci/config.yml
Normal file
|
|
@ -0,0 +1,475 @@
|
||||||
|
# Use the latest 2.1 version of CircleCI pipeline process engine.
|
||||||
|
# See: https://circleci.com/docs/2.0/configuration-reference
|
||||||
|
version: 2.1
|
||||||
|
orbs:
|
||||||
|
win: circleci/windows@4.1.1 # The Windows orb give you everything you need to start using the Windows executor.
|
||||||
|
macos: circleci/macos@2.5.1
|
||||||
|
|
||||||
|
# Define a job to be invoked later in a workflow.
|
||||||
|
# See: https://circleci.com/docs/2.0/configuration-reference/#jobs
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
macos:
|
||||||
|
xcode: 14.1.0 # Specify the Xcode version to use
|
||||||
|
resource_class: macos.m1.medium.gen1
|
||||||
|
environment:
|
||||||
|
HOMEBREW_NO_AUTO_UPDATE: 1
|
||||||
|
NPROC: 4
|
||||||
|
COMMIT_TAG: pipeline.git.tag
|
||||||
|
steps:
|
||||||
|
- add_ssh_keys:
|
||||||
|
fingerprints:
|
||||||
|
- "82:42:56:a0:57:43:95:4e:00:c0:8c:c1:7f:70:74:47"
|
||||||
|
- checkout:
|
||||||
|
path: ~/MBHaxe
|
||||||
|
|
||||||
|
- macos/install-rosetta
|
||||||
|
- run:
|
||||||
|
name: Install brew dependencies
|
||||||
|
command: |
|
||||||
|
brew install cmake
|
||||||
|
brew install pkg-config
|
||||||
|
brew install libpthread-stubs
|
||||||
|
brew install nasm
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Install Haxe
|
||||||
|
command: |
|
||||||
|
set -eux
|
||||||
|
download_url="https://github.com/HaxeFoundation/haxe/releases/download/4.3.4/haxe-4.3.4-osx.tar.gz"
|
||||||
|
echo "Downloading [$download_url]..."
|
||||||
|
mkdir ~/haxe
|
||||||
|
curl -fsSL --retry 3 --retry-delay 5 "$download_url" -o ~/haxe.tar.gz
|
||||||
|
tar xzvf ~/haxe.tar.gz -C ~/haxe --strip-components=1
|
||||||
|
download_url="https://github.com/HaxeFoundation/neko/releases/download/v2-4-0-rc/neko-2.4.0-rc-osx-universal.tar.gz"
|
||||||
|
echo "Downloading [$download_url]..."
|
||||||
|
mkdir ~/neko
|
||||||
|
curl -fsSL --retry 3 --retry-delay 5 "$download_url" -o ~/neko.tar.gz
|
||||||
|
tar xzvf ~/neko.tar.gz -C ~/neko --strip-components=1
|
||||||
|
export PATH=~/haxe/:"$PATH"
|
||||||
|
export PATH=~/neko/:"$PATH"
|
||||||
|
export HAXE_STD_PATH=~/haxe/std
|
||||||
|
export DYLD_LIBRARY_PATH=~/neko
|
||||||
|
sudo chmod +x ~/neko/neko
|
||||||
|
haxelib setup ~/haxelib
|
||||||
|
haxelib list
|
||||||
|
haxelib install hashlink
|
||||||
|
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Compile zlib
|
||||||
|
command: |
|
||||||
|
mkdir -p ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
curl https://www.zlib.net/zlib-1.3.1.tar.xz | tar xz
|
||||||
|
cd zlib-1.3.1
|
||||||
|
if [ ! -f /usr/local/lib/libz.1.3.1.dylib ]; then
|
||||||
|
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DCMAKE_MACOSX_RPATH=TRUE
|
||||||
|
cmake --build build --config Release -j$NPROC
|
||||||
|
sudo cmake --install build
|
||||||
|
fi
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Compile alsoft
|
||||||
|
command: |
|
||||||
|
mkdir -p ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
curl https://openal-soft.org/openal-releases/openal-soft-1.22.2.tar.bz2 | tar xz
|
||||||
|
cd openal-soft-1.22.2
|
||||||
|
if [ ! -f /usr/local/lib/libopenal.1.22.2.dylib ]; then
|
||||||
|
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DALSOFT_BACKEND_SNDIO=NO -DALSOFT_BACKEND_PORTAUDIO=NO -DALSOFT_BACKEND_WAVE=NO -DALSOFT_UTILS=NO -DALSOFT_EXAMPLES=NO -DCMAKE_MACOSX_RPATH=TRUE
|
||||||
|
cmake --build build --config Release -j$NPROC
|
||||||
|
sudo cmake --install build
|
||||||
|
fi
|
||||||
|
- run:
|
||||||
|
name: Compile jpeg-turbo (x86)
|
||||||
|
command: |
|
||||||
|
mkdir -p ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
curl -L https://downloads.sourceforge.net/project/libjpeg-turbo/2.1.4/libjpeg-turbo-2.1.4.tar.gz | tar xz
|
||||||
|
cd libjpeg-turbo-2.1.4
|
||||||
|
if [ ! -f /usr/local/lib/libturbojpeg.0.2.0.dylib ]; then
|
||||||
|
cmake -S. -Bbuild-x86 -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="x86_64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DCMAKE_MACOSX_RPATH=TRUE -DCMAKE_INSTALL_PREFIX=/usr/local
|
||||||
|
cmake --build build-x86 --config release -j$NPROC
|
||||||
|
fi
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Compile jpeg-turbo (ARM64)
|
||||||
|
command: |
|
||||||
|
cd ~/deps/libjpeg-turbo-2.1.4
|
||||||
|
if [ ! -f /usr/local/lib/libturbojpeg.0.2.0.dylib ]; then
|
||||||
|
cmake -S. -Bbuild-arm64 -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="arm64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DCMAKE_MACOSX_RPATH=TRUE -DCMAKE_INSTALL_PREFIX=/usr/local
|
||||||
|
cmake --build build-arm64 --config release -j$NPROC
|
||||||
|
fi
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Install jpeg-turbo (Universal)
|
||||||
|
command: |
|
||||||
|
if [ ! -f /usr/local/lib/libturbojpeg.0.2.0.dylib ]; then
|
||||||
|
cd ~/deps/libjpeg-turbo-2.1.4/build-arm64
|
||||||
|
for i in libjpeg.62.3.0.dylib cjpeg cjpeg-static djpeg djpeg-static jcstest jpegtran jpegtran-static libjpeg.a libturbojpeg.a libturbojpeg.0.2.0.dylib rdjpgcom strtest tjbench tjbench-static tjexample tjunittest tjunittest-static wrjpgcom
|
||||||
|
do
|
||||||
|
lipo -create -output $i ../build-x86/$i $i
|
||||||
|
done
|
||||||
|
sudo cmake --install .
|
||||||
|
fi
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Compile libogg
|
||||||
|
command: |
|
||||||
|
mkdir -p ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
curl -L https://downloads.xiph.org/releases/ogg/libogg-1.3.5.tar.xz | tar xz
|
||||||
|
cd libogg-1.3.5
|
||||||
|
if [ ! -f /usr/local/lib/libogg.0.8.5.dylib ]; then
|
||||||
|
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DBUILD_SHARED_LIBS=ON -DCMAKE_MACOSX_RPATH=TRUE
|
||||||
|
cmake --build build --config Release -j$NPROC
|
||||||
|
sudo cmake --install build
|
||||||
|
fi
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Compile libvorbis
|
||||||
|
command: |
|
||||||
|
mkdir -p ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
curl -L https://downloads.xiph.org/releases/vorbis/libvorbis-1.3.7.tar.xz | tar xz
|
||||||
|
cd libvorbis-1.3.7
|
||||||
|
if [ ! -f /usr/local/lib/libvorbis.0.4.9.dylib ]; then
|
||||||
|
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DBUILD_SHARED_LIBS=ON -DCMAKE_MACOSX_RPATH=TRUE
|
||||||
|
cmake --build build --config Release -j$NPROC
|
||||||
|
sudo cmake --install build
|
||||||
|
fi
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Compile libpng (x86)
|
||||||
|
command: |
|
||||||
|
mkdir -p ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
curl -L https://download.sourceforge.net/libpng/libpng-1.6.39.tar.xz | tar xz
|
||||||
|
cd libpng-1.6.39
|
||||||
|
if [ ! -f /usr/local/lib/libpng16.16.dylib ]; then
|
||||||
|
cmake -S. -Bbuild-x86 -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="x86_64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DCMAKE_MACOSX_RPATH=TRUE
|
||||||
|
cmake --build build-x86 --config release -j$NPROC
|
||||||
|
fi
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Compile libpng (arm64)
|
||||||
|
command: |
|
||||||
|
mkdir -p ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
cd libpng-1.6.39
|
||||||
|
if [ ! -f /usr/local/lib/libpng16.16.dylib ]; then
|
||||||
|
cmake -S. -Bbuild-arm64 -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="arm64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DCMAKE_MACOSX_RPATH=TRUE
|
||||||
|
cmake --build build-arm64 --config release -j$NPROC
|
||||||
|
fi
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Install libpng (Universal)
|
||||||
|
command: |
|
||||||
|
if [ ! -f /usr/local/lib/libpng16.16.dylib ]; then
|
||||||
|
cd ~/deps/libpng-1.6.39/build-arm64
|
||||||
|
for i in libpng16.16.39.0.dylib libpng16.a png-fix-itxt pngfix pngimage pngstest pngtest pngunknown pngvalid
|
||||||
|
do
|
||||||
|
lipo -create -output $i ../build-x86/$i $i
|
||||||
|
done
|
||||||
|
sudo cmake --install .
|
||||||
|
fi
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Compile SDL2
|
||||||
|
command: |
|
||||||
|
mkdir -p ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
curl -L https://github.com/libsdl-org/SDL/releases/download/release-2.26.1/SDL2-2.26.1.tar.gz | tar xz
|
||||||
|
cd SDL2-2.26.1
|
||||||
|
if [ ! -f /usr/local/lib/libSDL2-2.0.0.dylib ]; then
|
||||||
|
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DBUILD_SHARED_LIBS=ON -DCMAKE_MACOSX_RPATH=TRUE
|
||||||
|
cmake --build build --config Release -j$NPROC
|
||||||
|
sudo cmake --install build
|
||||||
|
fi
|
||||||
|
- run:
|
||||||
|
name: Compile libuv
|
||||||
|
command: |
|
||||||
|
mkdir -p ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
curl -fsSL https://github.com/libuv/libuv/archive/refs/tags/v1.44.2.tar.gz | tar xz
|
||||||
|
cd libuv-1.44.2
|
||||||
|
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DCMAKE_MACOSX_RPATH=TRUE
|
||||||
|
cmake --build build --config Release -j$NPROC
|
||||||
|
sudo cmake --install build
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Install hashlink
|
||||||
|
command: |
|
||||||
|
mkdir -p ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
git clone --depth=1 https://github.com/RandomityGuy/hashlink
|
||||||
|
cd hashlink
|
||||||
|
cd ~/deps
|
||||||
|
git clone https://github.com/RandomityGuy/hxDatachannel
|
||||||
|
cd hashlink
|
||||||
|
mv ~/deps/hxDatachannel/cpp libs/datachannel
|
||||||
|
echo -e "\nadd_subdirectory(datachannel)" >> libs/CMakeLists.txt
|
||||||
|
curl -L https://raw.githubusercontent.com/RandomityGuy/hashlink/master/libs/ssl/CMakeLists.txt > libs/ssl/CMakeLists.txt
|
||||||
|
# Fix OpenAL
|
||||||
|
# curl -L https://github.com/nullobsi/hashlink/commit/a09491918cc4b83c2cb9fcded855fe967857385f.diff | git apply
|
||||||
|
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DCMAKE_FIND_FRAMEWORK=LAST -DWITH_SQLITE=OFF -DBUILD_TESTING=OFF -DCMAKE_MACOSX_RPATH=TRUE -DHASHLINK_INCLUDE_DIR="~/deps/hashlink/src" -DHASHLINK_LIBRARY_DIR="/usr/local/lib/"
|
||||||
|
cmake --build build --config Release -j$NPROC
|
||||||
|
sudo cmake --install build
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Install haxe dependencies
|
||||||
|
command: |
|
||||||
|
export PATH=~/haxe/:"$PATH"
|
||||||
|
export HAXE_STD_PATH=~/haxe/std
|
||||||
|
export PATH=~/neko/:"$PATH"
|
||||||
|
export DYLD_LIBRARY_PATH=~/neko
|
||||||
|
haxelib git heaps https://github.com/RandomityGuy/heaps
|
||||||
|
haxelib dev hlopenal ~/deps/hashlink/libs/openal
|
||||||
|
haxelib dev hlsdl ~/deps/hashlink/libs/sdl
|
||||||
|
haxelib dev datachannel ~/deps/hxDatachannel
|
||||||
|
haxelib install colyseus-websocket
|
||||||
|
|
||||||
|
- save_cache:
|
||||||
|
key: mbhaxe-deps-v1
|
||||||
|
paths:
|
||||||
|
- /usr/local/lib/ui.hdll
|
||||||
|
- /usr/local/lib/openal.hdll
|
||||||
|
- /usr/local/lib/fmt.hdll
|
||||||
|
- /usr/local/lib/sdl.hdll
|
||||||
|
- /usr/local/lib/libSDL2-2.0.0.dylib
|
||||||
|
- /usr/local/lib/libhl.1.13.0.dylib
|
||||||
|
- /usr/local/lib/libogg.0.8.5.dylib
|
||||||
|
- /usr/local/lib/libopenal.1.22.2.dylib
|
||||||
|
- /usr/local/lib/libpng16.16.dylib
|
||||||
|
- /usr/local/lib/libturbojpeg.0.2.0.dylib
|
||||||
|
- /usr/local/lib/libvorbis.0.4.9.dylib
|
||||||
|
- /usr/local/lib/libvorbisfile.3.3.8.dylib
|
||||||
|
- /usr/local/lib/libvorbisenc.2.0.12.dylib
|
||||||
|
- /usr/local/lib/libz.1.3.1.dylib
|
||||||
|
- /usr/local/lib/datachannel.hdll
|
||||||
|
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Compile MBHaxe
|
||||||
|
command: |
|
||||||
|
export PATH=~/haxe/:"$PATH"
|
||||||
|
export HAXE_STD_PATH=~/haxe/std
|
||||||
|
export PATH=~/neko/:"$PATH"
|
||||||
|
export DYLD_LIBRARY_PATH=~/neko
|
||||||
|
cd ~/MBHaxe
|
||||||
|
haxe compile-macos.hxml
|
||||||
|
cd native
|
||||||
|
cp ~/deps/hashlink/src/hlc_main.c .
|
||||||
|
clang -mmacosx-version-min=10.15 -arch x86_64 -arch arm64 -o marblegame -I . -L /usr/local/lib/ -std=c11 marblegame.c /usr/local/lib/{ui.hdll,openal.hdll,fmt.hdll,sdl.hdll,uv.hdll,ssl.hdll,datachannel.hdll} -lsdl2 -lhl -luv
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Package app bundle
|
||||||
|
command: |
|
||||||
|
cd ~/MBHaxe
|
||||||
|
./package-macos.sh v$COMMIT_TAG
|
||||||
|
cd "macos-dist/MarbleBlast Platinum.app/Contents/MacOS"
|
||||||
|
otool -L marblegame
|
||||||
|
cd ../Frameworks
|
||||||
|
cp /usr/local/lib/{ui.hdll,openal.hdll,fmt.hdll,sdl.hdll,libSDL2-2.0.0.dylib,ssl.hdll,uv.hdll,datachannel.hdll} .
|
||||||
|
cp /usr/local/lib/libhl.1.13.0.dylib libhl.1.dylib
|
||||||
|
cp /usr/local/lib/libogg.0.8.5.dylib libogg.0.dylib
|
||||||
|
cp /usr/local/lib/libopenal.1.22.2.dylib libopenal.1.dylib
|
||||||
|
cp /usr/local/lib/libpng16.16.dylib libpng16.16.dylib
|
||||||
|
cp /usr/local/lib/libturbojpeg.0.2.0.dylib libturbojpeg.0.dylib
|
||||||
|
cp /usr/local/lib/libvorbis.0.4.9.dylib libvorbis.0.4.9.dylib
|
||||||
|
cp /usr/local/lib/libvorbisfile.3.3.8.dylib libvorbisfile.3.3.8.dylib
|
||||||
|
cp /usr/local/lib/libvorbisenc.2.0.12.dylib libvorbisenc.2.0.12.dylib
|
||||||
|
cp /usr/local/lib/libz.1.3.1.dylib libz.1.dylib
|
||||||
|
cp /usr/local/lib/libuv.1.dylib libuv.1.dylib
|
||||||
|
# These libraries have dangling RPATHs
|
||||||
|
install_name_tool -delete_rpath /usr/local/lib libturbojpeg.0.dylib
|
||||||
|
for i in fmt.hdll libpng16.16.dylib
|
||||||
|
do
|
||||||
|
install_name_tool -change /usr/lib/libz.1.dylib @rpath/libz.1.dylib $i
|
||||||
|
done
|
||||||
|
- run:
|
||||||
|
name: Sign app bundle
|
||||||
|
command: |
|
||||||
|
cd ~/MBHaxe/macos-dist
|
||||||
|
xattr -rc "MarbleBlast Platinum.app"
|
||||||
|
cp "MarbleBlast Platinum.app/Contents/Entitlements.plist" .
|
||||||
|
codesign --deep --entitlements Entitlements.plist -fs - "MarbleBlast Platinum.app"
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: ZIP Bundle
|
||||||
|
command: |
|
||||||
|
cd ~/MBHaxe/macos-dist
|
||||||
|
npm install -g create-dmg
|
||||||
|
create-dmg --dmg-title="Marble Blast Platinum" "MarbleBlast Platinum.app" || true
|
||||||
|
rm -rf "macos-dist/MarbleBlast Platinum.app.in"
|
||||||
|
mv "marblegame vpipeline.git.tag.dmg" "MBHaxe-Platinum-Mac.dmg"
|
||||||
|
# zip -r MBHaxe-Ultra-Mac.zip macos-dist/
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Upload to Artifact Storage
|
||||||
|
command: |
|
||||||
|
scp -o StrictHostKeyChecking=no -i $KEYPATH -P $PORT ~/MBHaxe/macos-dist/MBHaxe-Platinum-Mac.dmg $REMOTEDIR/MBHaxe-Platinum-Mac.dmg
|
||||||
|
|
||||||
|
# - store_artifacts:
|
||||||
|
# path: ~/MBHaxe/MBHaxe-Platinum-Mac.zip
|
||||||
|
|
||||||
|
build-win:
|
||||||
|
executor:
|
||||||
|
name: win/server-2022
|
||||||
|
shell: bash.exe # executor type
|
||||||
|
# Checkout the code as the first step. This is a dedicated CircleCI step.
|
||||||
|
# The python orb's install-packages step will install the dependencies from a Pipfile via Pipenv by default.
|
||||||
|
# Here we're making sure we use just use the system-wide pip. By default it uses the project root's requirements.txt.
|
||||||
|
# Then run your tests!
|
||||||
|
# CircleCI will report the results back to your VCS provider.
|
||||||
|
steps:
|
||||||
|
- add_ssh_keys:
|
||||||
|
fingerprints:
|
||||||
|
- "82:42:56:a0:57:43:95:4e:00:c0:8c:c1:7f:70:74:47"
|
||||||
|
- checkout
|
||||||
|
- run:
|
||||||
|
name: Install dependencies
|
||||||
|
command: |
|
||||||
|
curl -fsSL --retry 3 --retry-delay 5 -o /tmp/sdl.zip https://www.libsdl.org/release/SDL2-devel-2.0.5-VC.zip
|
||||||
|
curl -fsSL --retry 3 --retry-delay 5 -o /tmp/openal.zip https://openal-soft.org/openal-binaries/openal-soft-1.17.2-bin.zip
|
||||||
|
curl -fsSL --retry 3 --retry-delay 5 -o /tmp/ffmpeg.zip https://github.com/HaxeFoundation/hashlink/files/5648056/ffmpeg-3.4.2-win64-dev.zip
|
||||||
|
cd /tmp
|
||||||
|
7z x /tmp/sdl.zip -oinclude; mv /tmp/include/SDL2* /tmp/include/sdl
|
||||||
|
7z x /tmp/openal.zip -oinclude; mv /tmp/include/openal* /tmp/include/openal
|
||||||
|
7z x /tmp/ffmpeg.zip -oinclude; mv /tmp/include/ffmpeg* /tmp/include/ffmpeg
|
||||||
|
- run:
|
||||||
|
name: Install Neko
|
||||||
|
command: |
|
||||||
|
choco install --no-progress neko -y
|
||||||
|
nekopath=$(/bin/find /c/ProgramData/chocolatey/lib/neko -name neko.dll -printf '%h\n')
|
||||||
|
set NEKOPATH=$nekopath
|
||||||
|
export PATH=$nekopath:"$PATH"
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Install CMake
|
||||||
|
command: |
|
||||||
|
choco install --no-progress cmake -y
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Install Haxe
|
||||||
|
command: |
|
||||||
|
download_url="https://github.com/HaxeFoundation/haxe/releases/download/4.3.4/haxe-4.3.4-win64.zip"
|
||||||
|
echo "Downloading [$download_url]..."
|
||||||
|
mkdir /tmp/haxe
|
||||||
|
curl -fsSL --retry 3 --retry-delay 5 "$download_url" -o /tmp/haxe.zip
|
||||||
|
7z x /tmp/haxe.zip -o/tmp
|
||||||
|
mv -v /tmp/haxe_* /tmp/haxe
|
||||||
|
cd /tmp/haxe
|
||||||
|
mv haxe_* haxe
|
||||||
|
export PATH=/tmp/haxe/haxe:"$PATH"
|
||||||
|
export HAXE_STD_PATH=/tmp/haxe/haxe/std
|
||||||
|
nekopath=$(/bin/find /c/ProgramData/chocolatey/lib/neko -name neko.dll -printf '%h\n')
|
||||||
|
set NEKOPATH=$nekopath
|
||||||
|
export PATH=$nekopath:"$PATH"
|
||||||
|
haxelib setup ~/haxelib
|
||||||
|
haxelib list
|
||||||
|
- run:
|
||||||
|
name: Build Hashlink
|
||||||
|
command: |
|
||||||
|
mkdir ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
git clone https://github.com/RandomityGuy/hashlink
|
||||||
|
cd hashlink
|
||||||
|
mv /tmp/include/sdl include/sdl
|
||||||
|
mv /tmp/include/openal include/openal
|
||||||
|
MSBuild.exe hl.sln -m -nologo -p:Configuration=Release -p:Platform=x64
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Build datachannel
|
||||||
|
command: |
|
||||||
|
mkdir ~/deps
|
||||||
|
cd ~/deps
|
||||||
|
git clone https://github.com/RandomityGuy/hxDatachannel
|
||||||
|
cd hxDatachannel/cpp
|
||||||
|
"/c/Program Files/CMake/bin/cmake" -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DHASHLINK_LIBRARY_DIR="~/deps/hashlink/x64/Release" -DHASHLINK_INCLUDE_DIR="../../hashlink/src"
|
||||||
|
"/c/Program Files/CMake/bin/cmake" --build build --config Release -j4
|
||||||
|
mv ~/deps/hxDatachannel/cpp/build/Release/datachannel.hdll ~/deps/hashlink/x64/Release
|
||||||
|
mv ~/deps/hxDatachannel/cpp/build/Release/datachannel.lib ~/deps/hashlink/x64/Release
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Install haxe dependencies
|
||||||
|
command: |
|
||||||
|
export PATH=/tmp/haxe/haxe:"$PATH"
|
||||||
|
export HAXE_STD_PATH=/tmp/haxe/haxe/std
|
||||||
|
nekopath=$(/bin/find /c/ProgramData/chocolatey/lib/neko -name neko.dll -printf '%h\n')
|
||||||
|
set NEKOPATH=$nekopath
|
||||||
|
export PATH=$nekopath:"$PATH"
|
||||||
|
haxelib git heaps https://github.com/RandomityGuy/heaps
|
||||||
|
haxelib dev hlopenal ~/deps/hashlink/libs/openal
|
||||||
|
haxelib dev hlsdl ~/deps/hashlink/libs/sdl
|
||||||
|
haxelib dev hashlink ~/deps/hashlink/other/haxelib
|
||||||
|
haxelib dev datachannel ~/deps/hxDatachannel
|
||||||
|
haxelib install colyseus-websocket
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Compile MBHaxe
|
||||||
|
command: |
|
||||||
|
export PATH=/tmp/haxe/haxe:"$PATH"
|
||||||
|
export HAXE_STD_PATH=/tmp/haxe/haxe/std
|
||||||
|
nekopath=$(/bin/find /c/ProgramData/chocolatey/lib/neko -name neko.dll -printf '%h\n')
|
||||||
|
set NEKOPATH=$nekopath
|
||||||
|
export PATH=$nekopath:"$PATH"
|
||||||
|
cd ~/project
|
||||||
|
haxe compile-c.hxml
|
||||||
|
cd native
|
||||||
|
HASHLINKPATH=~/deps/hashlink
|
||||||
|
MSBuild.exe -m -nologo -p:Configuration=Release -p:Platform=x64 -p:PlatformToolset=v142 -p:HASHLINK=$HASHLINKPATH marblegame.sln
|
||||||
|
- run:
|
||||||
|
name: Package app bundle
|
||||||
|
command: |
|
||||||
|
cd ~/project
|
||||||
|
mkdir release
|
||||||
|
cd release
|
||||||
|
cp ../native/x64/Release/marblegame.exe .
|
||||||
|
mv marblegame.exe marbleblast.exe
|
||||||
|
cp -r ../data .
|
||||||
|
cp ~/deps/hashlink/x64/Release/libhl.dll .
|
||||||
|
cp ~/deps/hashlink/x64/Release/fmt.hdll .
|
||||||
|
cp ~/deps/hashlink/x64/Release/ui.hdll .
|
||||||
|
cp ~/deps/hashlink/x64/Release/openal.hdll .
|
||||||
|
cp ~/deps/hashlink/x64/Release/sdl.hdll .
|
||||||
|
cp ~/deps/hashlink/x64/Release/ssl.hdll .
|
||||||
|
cp ~/deps/hashlink/x64/Release/datachannel.hdll .
|
||||||
|
cp ~/deps/hashlink/x64/Release/uv.hdll .
|
||||||
|
cp ~/deps/hashlink/include/sdl/lib/x64/SDL2.dll .
|
||||||
|
cp ~/deps/hashlink/include/openal/bin/Win64/soft_oal.dll ./OpenAL32.dll
|
||||||
|
- run:
|
||||||
|
name: Zip bundle
|
||||||
|
command: |
|
||||||
|
cd ~/project
|
||||||
|
7z a MBHaxe-Platinum-Win.zip release/
|
||||||
|
|
||||||
|
- run:
|
||||||
|
name: Upload to Artifact Storage
|
||||||
|
command: |
|
||||||
|
scp -o StrictHostKeyChecking=no -i $KEYPATH -P $PORT ~/project/MBHaxe-Platinum-Win.zip $REMOTEDIR/MBHaxe-Platinum-Win.zip
|
||||||
|
# - store_artifacts:
|
||||||
|
# path: ~/project/MBHaxe-Platinum-Win.zip
|
||||||
|
|
||||||
|
|
||||||
|
# Invoke jobs via workflows
|
||||||
|
# See: https://circleci.com/docs/2.0/configuration-reference/#workflows
|
||||||
|
workflows:
|
||||||
|
build-mac:
|
||||||
|
jobs:
|
||||||
|
- build:
|
||||||
|
filters:
|
||||||
|
tags:
|
||||||
|
only: /^\d+.\d+.\d+$/
|
||||||
|
branches:
|
||||||
|
ignore: /.*/
|
||||||
|
|
||||||
|
build-windows:
|
||||||
|
jobs:
|
||||||
|
- build-win:
|
||||||
|
filters:
|
||||||
|
tags:
|
||||||
|
only: /^\d+.\d+.\d+$/
|
||||||
|
branches:
|
||||||
|
ignore: /.*/
|
||||||
1
.github/FUNDING.yml
vendored
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
ko_fi: randomityguy
|
||||||
21
.gitignore
vendored
|
|
@ -5,6 +5,25 @@
|
||||||
native
|
native
|
||||||
*.exe
|
*.exe
|
||||||
*.obj
|
*.obj
|
||||||
|
marblegame.hl
|
||||||
|
marblegame
|
||||||
settings.json
|
settings.json
|
||||||
|
console.log
|
||||||
|
data/replays/
|
||||||
release
|
release
|
||||||
Export
|
Export
|
||||||
|
node_modules
|
||||||
|
fonts
|
||||||
|
package.json
|
||||||
|
package-lock.json
|
||||||
|
leaderboards
|
||||||
|
out
|
||||||
|
server
|
||||||
|
mpcustom
|
||||||
|
|
||||||
|
macos-dist/MarbleBlast Platinum.app/
|
||||||
|
macos-dist/data/
|
||||||
|
|
||||||
|
.DS_Store
|
||||||
|
**/.DS_Store
|
||||||
|
|
||||||
|
|
|
||||||
150
CHANGELOG.md
Normal file
|
|
@ -0,0 +1,150 @@
|
||||||
|
# 1.7.1
|
||||||
|
This update brings the following bugfixes:
|
||||||
|
- Fixed a crash when the marble goes out of bounds.
|
||||||
|
- Fixed the FPS limiter not limiting rendered frames per second.
|
||||||
|
- Fixed scores not being sent in certain cases.
|
||||||
|
|
||||||
|
# 1.7.0
|
||||||
|
It's the fabled Leaderboards update!
|
||||||
|
Leaderboards have been implemented for all the levels with automatic replay uploading for official levels as well as watching top replays. Additionally, segregation has been made to allow switching between rewind and non-rewind scores on the leaderboards.
|
||||||
|
|
||||||
|
Changes:
|
||||||
|
- Added an FPS limiter in the settings.
|
||||||
|
- Added custom friction support as well as custom marble attributes. Now levels can modify the marble's physics parameters to their liking.
|
||||||
|
- Improved level select persistence. Now your last chosen level will be displayed on quitting or finishing a level instead of last level in a category.
|
||||||
|
- Improved the Gem Hunt algorithm to match closer to PlatinumQuest's.
|
||||||
|
- Trigger detection now matches with the original game.
|
||||||
|
- Camera is now smoothened.
|
||||||
|
- Fixed camera not pointing at gems after respawn in Multiplayer.
|
||||||
|
- Fixed Superspeed powerup sometimes throwing you in the wrong direction in Multiplayer.
|
||||||
|
- Fixed the marble being wonky at times in replays.
|
||||||
|
- Fixed an interaction with Random powerup giving Time Travels.
|
||||||
|
- Fixed some collision issues with moving platforms.
|
||||||
|
|
||||||
|
# 1.6.1
|
||||||
|
This update fixes the following bugs:
|
||||||
|
- Fixed a crash when there are more players than spawnpoints in multiplayer.
|
||||||
|
- Fixed minor UI bugs with kicking and player list.
|
||||||
|
- Prevent timing out of players who are still loading the level.
|
||||||
|
- Fixed sort order of two multiplayer levels.
|
||||||
|
- Attempted to improve performance when someone joins mid-game.
|
||||||
|
- Touch Controls: Pressing pause now releases the joystick.
|
||||||
|
|
||||||
|
# 1.6.0
|
||||||
|
A big update! Bringing in the cross platform multiplayer the way it was meant to be played!
|
||||||
|
Please note that it is always and always recommended to download the native client for unlocked FPS and higher performance.
|
||||||
|
- Added cross platform multiplayer, the Online button is now unlocked.
|
||||||
|
- Gem Hunt Free-for-all only, no other game modes are present.
|
||||||
|
- Server authoritative marble physics and rollback netcode for all gameplay elements - including moving platforms.
|
||||||
|
- Up to 8 players due to platform technical limitations.
|
||||||
|
- Seamless multiplayer custom levels integration through Marbleland.
|
||||||
|
- Spectator mode is implemented but lasts until the end of match.
|
||||||
|
- Four PlatinumQuest levels that were present in MBP multiplayer have been added along with their shaders.
|
||||||
|
- Added the Ability to toggle between old spawns and new spawns for certain multiplayer maps.
|
||||||
|
- Added Competitor Mode:
|
||||||
|
- A new gem spawn will happen automatically after a certain duration depending on number of gems picked up.
|
||||||
|
- Reduced Mega Marble duration.
|
||||||
|
- Only Ultra Blasts can affect marbles.
|
||||||
|
- Fixed starting point.
|
||||||
|
- Touch controls improvements:
|
||||||
|
- Configure visibility of On-Screen Controls
|
||||||
|
- Configure behavior of buttons acting as camera joystick by altering Button Camera Factor
|
||||||
|
- Configure your camera sensitivity and swipe extent.
|
||||||
|
- Improved touch camera sensitivity a bit.
|
||||||
|
- Added Dynamic Joystick for Touch Controls.
|
||||||
|
- Added support for iOS for the web version.
|
||||||
|
- Improved Controller support for Android.
|
||||||
|
- Optimized the game to run at much higher framerates.
|
||||||
|
- Improved marble shadow.
|
||||||
|
- Fixed certain customs missing interiors/textures.
|
||||||
|
- Fixed marble collision at varying radii.
|
||||||
|
- Fixed Super Speed throwing you in the wrong direction.
|
||||||
|
|
||||||
|
# 1.5.4
|
||||||
|
This update fixes the following bugs:
|
||||||
|
- Updated Marbleland support. New levels will now automatically show up.
|
||||||
|
- Implement "Latest" and "Alphabetical" sorting for Marbleland customs.
|
||||||
|
- Optimized rewind to use memory better.
|
||||||
|
- Fixed a handful of memory leaks.
|
||||||
|
- Match with MBG Collision code.
|
||||||
|
|
||||||
|
# 1.5.3
|
||||||
|
This update fixes the following bugs:
|
||||||
|
- Slightly improved marble cubemaps.
|
||||||
|
- Fixed camera movement for varying FPS and sensitivities.
|
||||||
|
- Fixed rolling sound bug.
|
||||||
|
|
||||||
|
# 1.5.2
|
||||||
|
- Updated Marbleland integration link to the new site.
|
||||||
|
|
||||||
|
# 1.5.1
|
||||||
|
This update fixes the following bugs:
|
||||||
|
- Fixed a bug concerning moving platform collisions.
|
||||||
|
- Made moving platforms rewind correctly in case of traplaunches.
|
||||||
|
|
||||||
|
# 1.5.0
|
||||||
|
This update brings the following big changes:
|
||||||
|
- Added Rewind capabilities. Open options to configure it.
|
||||||
|
- Added capability to play locally installed custom levels. Install your customs in platinum/data/missions.
|
||||||
|
- Improved traplaunches, now they should be much more easier to do.
|
||||||
|
- Buffed nuke a bit, hold jump key to make it blast much stronger.
|
||||||
|
- Minor physics improvements.
|
||||||
|
- Minor performance improvements.
|
||||||
|
|
||||||
|
# 1.4.0
|
||||||
|
This update adds all the playable MBG, MBP, MBU custom levels via Marbleland integration. Play the entire custom level archive without manually installing with, with a single click.
|
||||||
|
- Added controller support. (Thanks thearst3rd)
|
||||||
|
- Improved replay saving flow.
|
||||||
|
- Improved marble physics a bit.
|
||||||
|
- Cleaned up some UI.
|
||||||
|
- Fixed collision detection bugs.
|
||||||
|
- Fixed various graphical bugs.
|
||||||
|
- Fixed item hitboxes being too small.
|
||||||
|
# 1.3.3
|
||||||
|
This update addresses the following issues:
|
||||||
|
- FOV is now based on horizontal FOV instead of vertical, matching with- original MB.
|
||||||
|
- Fixed the marble getting stuck in the corners.
|
||||||
|
- Fixed black screen on opening the game for the first time on MacOS
|
||||||
|
|
||||||
|
# 1.3.2
|
||||||
|
This is the first build of MBHaxe Platinum that has Mac support.
|
||||||
|
- MBU interior shaders now match more closely to those of MBU in Xbox.
|
||||||
|
- Added Console for debug purposes. Press Tilde ~ to bring it up.
|
||||||
|
- Added replay browser for native.
|
||||||
|
- Reduced lag caused by end pad.
|
||||||
|
- Fixed inactive button hover sounds.
|
||||||
|
- Fixed OOB animation timings.
|
||||||
|
- Added HighDPI/Retina support.
|
||||||
|
- Fixed the color bugs regarding text input.
|
||||||
|
- Minor graphical changes to match original.
|
||||||
|
- Minor performance and physics improvements.
|
||||||
|
- Fixed tornado rendering.
|
||||||
|
|
||||||
|
# 1.3.1
|
||||||
|
This release fixes a lot of bugs that were reported and adds in minor improvements:
|
||||||
|
- Fixed Pad animations not working
|
||||||
|
- Fixed bugs relating to powerup pickup on respawn.
|
||||||
|
- Fixed marble not using the hitbox of the rotated hitbox for item pickups.
|
||||||
|
- Marble finish animation now matches more closely with the original.
|
||||||
|
- Fixed camera keys not working.
|
||||||
|
- Added keyboard shortcuts to certain buttons on certain dialog boxes.
|
||||||
|
- Timer now becomes green on finishing, to match original.
|
||||||
|
- Fixed double click sound on selecting level category.
|
||||||
|
- Hypercube now uses MBG gameplay logic.
|
||||||
|
- Added Time Travel Bonus messages to HUD.
|
||||||
|
- Fixed lag caused by GJK/Startpad/Endpad.
|
||||||
|
- Fixed being able to press the end game buttons while typing the name. The- input box will be focused.
|
||||||
|
- Fixed option sliders not updating values
|
||||||
|
|
||||||
|
# 1.3.0
|
||||||
|
- Added Marble Blast Ultra levels as per Platinum.
|
||||||
|
- Added Ultra Marbles as per Platinum and their shaders.
|
||||||
|
- Added shaders for Ultra levels closely matching original MBU. (This may- lag mobile devices)
|
||||||
|
- Fixed lot of marble physics bugs, they should now be smoother.
|
||||||
|
- Minor performance improvements.
|
||||||
|
- Added restart button to touch controls.
|
||||||
|
|
||||||
|
# 1.2.0
|
||||||
|
- Implemented most Marble Blast Platinum 1.7.42 (except Ultra)
|
||||||
|
- Marble reflections
|
||||||
|
- Optimized resource loading and performance
|
||||||
78
README-macOS.md
Normal file
|
|
@ -0,0 +1,78 @@
|
||||||
|
# Building on macOS
|
||||||
|
|
||||||
|
Required:
|
||||||
|
- CMake to build dependencies
|
||||||
|
- Hashlink (to build Universal: https://github.com/nullobsi/hashlink)
|
||||||
|
- SDL2
|
||||||
|
- libjpeg
|
||||||
|
- libjpegturbo
|
||||||
|
- libogg
|
||||||
|
- libvorbis
|
||||||
|
- libpng
|
||||||
|
- openal-soft
|
||||||
|
- zlib
|
||||||
|
|
||||||
|
## Building dependencies for Universal
|
||||||
|
I've found that using CMake makes building universal binaries on macOS a
|
||||||
|
lot easier.
|
||||||
|
|
||||||
|
Here's the process for dependencies that use CMake:
|
||||||
|
```sh
|
||||||
|
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DCMAKE_OSX_DEPLOYMENT_TARGET="10.15" -DBUILD_SHARED_LIBS=ON -DCMAKE_FIND_FRAMEWORK=LAST
|
||||||
|
cmake --build build --config Release -j8
|
||||||
|
sudo cmake --install build
|
||||||
|
```
|
||||||
|
This will build + install a CMake project as a Universal binary. It's
|
||||||
|
important that every dependency in the chain be universal for this to
|
||||||
|
work, otherwise you will get linking errors.
|
||||||
|
|
||||||
|
Some notes:
|
||||||
|
- When compiling Hashlink, you may need to disable `uv` and `ssl` as
|
||||||
|
these are not needed by MBHaxe
|
||||||
|
|
||||||
|
Please see the other readme for Haxe libraries as you will need to use a
|
||||||
|
custom version of Heaps and HLSDL.
|
||||||
|
|
||||||
|
## Compiling MBHaxe
|
||||||
|
Use `haxe compile-c.hxml` to generate the `native` directory. If you're
|
||||||
|
going to build a .app bundle, use compile-macos.hxml instead.
|
||||||
|
|
||||||
|
cd into the native directory, then use the following command to build:
|
||||||
|
```sh
|
||||||
|
# Sometimes needed because of HLSDL.
|
||||||
|
sed -i -e 's/?sdl/sdl/g' sdl/Window.c hl/natives.h hl/functions.c sdl/Sdl.c
|
||||||
|
|
||||||
|
clang -mmacosx-version-min=10.15 -arch x86_64 -arch arm64 -o marblegame -I . -L /usr/local/lib/ -std=c11 marblegame.c /usr/local/lib/{ui.hdll, openal.hdll, fmt.hdll, sdl.hdll} -lsdl2 -lhl
|
||||||
|
```
|
||||||
|
This assumes you built all the libraries and installed them to
|
||||||
|
/usr/local/lib.
|
||||||
|
|
||||||
|
## Packaging for macOS .app format
|
||||||
|
After compiling native/marblegame.c successfully, use the script
|
||||||
|
`./package-macos.sh` to create the skeleton app bundle under macos-dist.
|
||||||
|
|
||||||
|
Finally, you need to use `otool` and `install_name_tool` to redirect the
|
||||||
|
library paths to @rpath/lib.dylib.
|
||||||
|
|
||||||
|
marblegame should already have the rpath set. You just need to make sure
|
||||||
|
it's correct and copy the libs:
|
||||||
|
- fmt.hdll
|
||||||
|
- libSDL2-2.0.0.dylib
|
||||||
|
- libhl.dylib
|
||||||
|
- libogg.dylib
|
||||||
|
- libopenal.dylib
|
||||||
|
- libpng16.dylib
|
||||||
|
- libturbojpeg.dylib
|
||||||
|
- libvorbis.dylib
|
||||||
|
- libvorbisfile.dylib
|
||||||
|
- libz.dylib
|
||||||
|
- openal.dylib
|
||||||
|
- sdl.hdll
|
||||||
|
- ui.hdll
|
||||||
|
|
||||||
|
Ensure that they all depend on eachother with @rpath, as that will be
|
||||||
|
set to the correct directory when running marblegame. `otool -L` is
|
||||||
|
useful to check.
|
||||||
|
|
||||||
|
Sign the .app with `codesign` and it should be ready to go.
|
||||||
|
|
||||||
88
README.md
|
|
@ -1,16 +1,72 @@
|
||||||
# MBHaxe
|
# MBHaxe
|
||||||
A Haxe port of Marble Blast Gold, name subject to change.
|
A Haxe port of Marble Blast Gold, Ultra and Platinum, name subject to change.
|
||||||
The marble physics code was taken from [OpenMBU](https://github.com/MBU-Team/OpenMBU) along with my own collision detection code, game logic was partially from scratch and taken with permission from [Marble Blast Web Port](https://github.com/Vanilagy/MarbleBlast).
|
The marble physics code was taken from [OpenMBU](https://github.com/MBU-Team/OpenMBU) along with my own collision detection code, game logic was partially from scratch and taken with permission from [Marble Blast Web Port](https://github.com/Vanilagy/MarbleBlast).
|
||||||
The browser version of this port is hosted [here](https://mbhaxe.netlify.app/)
|
|
||||||
|
[](https://ko-fi.com/H2H5FRTTL)
|
||||||
|
Support Discord: https://discord.gg/GsmTVQQAhG
|
||||||
|
# Play
|
||||||
|
## Web Browser
|
||||||
|
The browser port supports touch controls, meaning it can be played on mobile devices.
|
||||||
|
### Marble Blast Gold: [Play](https://marbleblastgold.randomityguy.me/)
|
||||||
|
### Marble Blast Platinum: [Play](https://marbleblast.randomityguy.me/)
|
||||||
|
### Marble Blast Ultra: [Play](https://marbleblastultra.randomityguy.me/)
|
||||||
|
## Windows and Mac
|
||||||
|
### Marble Blast Gold: [Download](https://github.com/RandomityGuy/MBHaxe/releases/tag/1.1.12)
|
||||||
|
### Marble Blast Platinum: [Download](https://github.com/RandomityGuy/MBHaxe/releases/tag/1.7.1)
|
||||||
|
### Marble Blast Ultra: [Download](https://github.com/RandomityGuy/MBHaxe/releases/tag/1.2.5-mbu)
|
||||||
|
## Mac Instructions - Important
|
||||||
|
Put the .app file in either /Applications or ~/Applications in order to run it properly.
|
||||||
|
You will also have to bypass Gatekeeper since the .app is not signed.
|
||||||
|
## Android
|
||||||
|
### Marble Blast Gold: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.1.12/MBHaxe-Gold.apk)
|
||||||
|
### Marble Blast Platinum: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.7.1/MBHaxe-Platinum.apk)
|
||||||
|
### Marble Blast Ultra: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.2.5-mbu/MBHaxe-Ultra.apk)
|
||||||
|
|
||||||
|
## Xbox (NEW!)
|
||||||
|
### Marble Blast Ultra: [Download](https://github.com/RandomityGuy/MBHaxe/releases/download/1.2.5-mbu/MBHaxe-Ultra-UWP-Xbox.msix)
|
||||||
|
Ported to Xbox via UWP by [Daniel Worley](https://github.com/worleydl).
|
||||||
|
You will need to enable Developer Mode on your Xbox in order to sideload the app. The walkthrough can be found at https://www.youtube.com/watch?v=2Ly9TIdu9uw.
|
||||||
|
|
||||||
|
## Additional Features
|
||||||
|
- Cross Platform Multiplayer: Available in Ultra and Platinum. You can host and join multiplayer matches in any of these platforms: Windows, Mac, Web, Android.
|
||||||
|
- Replay System: You can record your run using the built in replay system and watch it later.
|
||||||
|
- Rewind: You can rewind your marble by enabling rewind in the Options and holding down the rewind key (defaults to R).
|
||||||
|
- Controller Support: Full controller support is added to Marble Blast Ultra, with incomplete support for the rest.
|
||||||
|
- Touch Controls: Available in the web (mobile) and android versions.
|
||||||
|
|
||||||
|
# Screenshots
|
||||||
|
<img src="https://imgur.com/Ncb4atl.png" width="640">
|
||||||
|
<img src="https://imgur.com/KQKUk0Y.png" width="640">
|
||||||
|
<img src="https://imgur.com/VnnrIt2.png" width="640">
|
||||||
|
<img src="https://imgur.com/lfLBKqO.png" width="640">
|
||||||
|
<img src="https://imgur.com/DN1A2Mf.png" width="640">
|
||||||
|
<img src="https://imgur.com/2UngOAy.png" width="640">
|
||||||
|
<img src="https://imgur.com/Jvfip72.png" width="640">
|
||||||
|
<img src="https://imgur.com/CS693zi.png" width="640">
|
||||||
|
<img src="https://imgur.com/iryo0AL.png" width="640">
|
||||||
|
<img src="https://imgur.com/vsuNqUi.png" width="640">
|
||||||
|
<img src="https://imgur.com/SFPdC7g.png" width="640">
|
||||||
|
<img src="https://imgur.com/CTFkYAj.png" width="640">
|
||||||
|
<img src="https://imgur.com/57dAAP8.png" width="640">
|
||||||
|
<img src="https://imgur.com/T5ayduK.png" width="640">
|
||||||
|
<img src="https://imgur.com/I3Gaze9.png" width="640">
|
||||||
|
<img src="https://imgur.com/qn9aThu.png" width="640">
|
||||||
|
<img src="https://imgur.com/eEfU2we.png" width="640">
|
||||||
|
<img src="https://imgur.com/7OSISYJ.png" width="640">
|
||||||
|
|
||||||
# Why Haxe?
|
# Why Haxe?
|
||||||
I chose Haxe because its a good language that can target other languages, meaning any Haxe code can be converted and used in Python, C++, Java very easily so that nobody has to take effort in porting the code to different languages, atleast thats what my mindset was when I started it, but unfortunately because of the 3d engine I used, it only compiles to C and Javascript. You will have to isolate the engine specific features yourself if you want to use this for other programming languages.
|
I chose Haxe because its a good language that can target other languages, meaning any Haxe code can be converted and used in Python, C++, Java very easily so that nobody has to take effort in porting the code to different languages, atleast thats what my mindset was when I started it, but unfortunately because of the 3d engine I used, it only compiles to C and Javascript. You will have to isolate the engine specific features yourself if you want to use this for other programming languages.
|
||||||
|
|
||||||
# Build
|
# Build
|
||||||
Requires Haxe 4.2.2 or above
|
The `master` branch is currently for Marble Blast Platinum.
|
||||||
|
If you want to build Marble Blast Ultra, go to the [mbu-port](https://github.com/RandomityGuy/MBHaxe/tree/mbu-port) branch.
|
||||||
|
If you want to build Marble Blast Gold, go to the [mbg](https://github.com/RandomityGuy/MBHaxe/tree/mbg) branch.
|
||||||
|
|
||||||
|
Requires Haxe 4.3.0 or above
|
||||||
You require the following Haxe libraries:
|
You require the following Haxe libraries:
|
||||||
- heaps: The specific version located [here](https://github.com/RandomityGuy/heaps)
|
- heaps: The specific version located [here](https://github.com/RandomityGuy/heaps)
|
||||||
- hlsdl (Obtain the haxelib version of hlsdl, then patch it with these files [here](https://github.com/RandomityGuy/hashlink/tree/master/libs/sdl)) (Hashlink/C native target)
|
- hlsdl (Obtain the haxelib version of hlsdl, then patch it with these files [here](https://github.com/RandomityGuy/hashlink/tree/master/libs/sdl)) (Hashlink/C native target)
|
||||||
|
- datachannel: obtained from [here](https://github.com/RandomityGuy/hxDatachannel)
|
||||||
- stb_ogg_sound (JS/Browser target)
|
- stb_ogg_sound (JS/Browser target)
|
||||||
- zip 1.1.0 (JS/Browser target)
|
- zip 1.1.0 (JS/Browser target)
|
||||||
|
|
||||||
|
|
@ -22,15 +78,23 @@ To compile to C, do `haxe compile-c.hxml` and use the instructions in https://gi
|
||||||
## Javascript/Browser
|
## Javascript/Browser
|
||||||
If the build dependencies are fullfilled, compile with `haxe compile-js.hxml` and run the game by running a web server in the same directory as the repo where index.html is located.
|
If the build dependencies are fullfilled, compile with `haxe compile-js.hxml` and run the game by running a web server in the same directory as the repo where index.html is located.
|
||||||
|
|
||||||
|
## MacOS
|
||||||
|
See [here](README-macOS.md)
|
||||||
|
|
||||||
|
## Android
|
||||||
|
The branches used for Android builds are `mbg-android`, `mbp-android-new` or `mbu-android`.
|
||||||
|
Clone [this repository](https://github.com/RandomityGuy/MBHaxeAndroidLibs) containing the necessary libraries for the build and merge its src folder with that of Export/android/app/src folder.
|
||||||
|
Android NDK version 18.1.5063045 and platform SDK version 31 is needed.
|
||||||
|
Install zyheaps haxelib as well.
|
||||||
|
Finally run `gradlew` in Export/android folder and run `gradlew assembleRelease`
|
||||||
|
This will build the apk file at Export/android/app/build/outputs/apk/release/app-release-unsigned.apk which you can sign yourself and install on your device.
|
||||||
|
|
||||||
# FAQ
|
# FAQ
|
||||||
|
|
||||||
## Help I am able to reproduce a crash!
|
## Help I am able to reproduce a crash!
|
||||||
If you are on browser, please send the browser console log to me
|
If you are on browser, please send the browser console log to me
|
||||||
If you are on native, please run marbleblast-debug.bat and reproduce the crash, send the resulting stacktrace that occurs during the crash to me.
|
If you are on native, please run marbleblast-debug.bat and reproduce the crash, send the resulting stacktrace that occurs during the crash to me.
|
||||||
|
|
||||||
## Help it shows a black screen when playing a level!
|
|
||||||
Your PC does not support the game, please upgrade it, there is nothing I can do about it to fix it.
|
|
||||||
|
|
||||||
## How accurate are the marble physics?
|
## How accurate are the marble physics?
|
||||||
Very accurate with up to 1% deviation from the original physics. The deviations are due to traplaunches being slightly different and occassional internal edge collisions, and the lower delta t values for physics simulations.
|
Very accurate with up to 1% deviation from the original physics. The deviations are due to traplaunches being slightly different and occassional internal edge collisions, and the lower delta t values for physics simulations.
|
||||||
|
|
||||||
|
|
@ -39,11 +103,15 @@ In browser, you can just resize your window. You can use the browser zoom featur
|
||||||
In native version, you can just resize the window if windowed or use the resolution options in the menu or just directly modify settings.json
|
In native version, you can just resize the window if windowed or use the resolution options in the menu or just directly modify settings.json
|
||||||
|
|
||||||
## How do I change my FOV?
|
## How do I change my FOV?
|
||||||
Edit settings.json for native version, edit the MBHaxeSettings key in LocalStorage in browser
|
Edit settings.json for native version, edit the MBHaxeSettings key in LocalStorage in browser.
|
||||||
|
In the Platinum and Ultra versions, there is an FOV slider.
|
||||||
|
|
||||||
## How do I unlock/lock FPS?
|
## How do I unlock/lock FPS?
|
||||||
You cannot unlock fps in the browser, it is forever set to vsync.
|
You cannot unlock fps in the browser, it is forever set to vsync.
|
||||||
In the native version, edit settings.json
|
In the native version, use the options menu to unlock/lock fps, or edit settings.json and set "vsync" to false to unlock fps.
|
||||||
|
|
||||||
## Hey can you please add this new feature?
|
## Hey can you please add this new feature?
|
||||||
If this new feature of yours already exists in MBG but not in this port, then I will try to add it, if I get time to do so, otherwise chances are, I won't add it since I have other things to do and would rather not waste my time on this any further. You are free to do pull requests if you have already implemented said feature.
|
If this new feature of yours already exists in MBG but not in this port, then I will try to add it, if I get time to do so, otherwise chances are, I won't add it since I have other things to do and would rather not waste my time on this any further. You are free to do pull requests if you have already implemented said feature.
|
||||||
|
|
||||||
|
# Notes
|
||||||
|
This project is tested with BrowserStack.
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,10 @@
|
||||||
-cp src
|
-cp src
|
||||||
-lib heaps
|
-lib heaps
|
||||||
-lib hlsdl
|
-lib hlsdl
|
||||||
|
-lib datachannel
|
||||||
|
-lib colyseus-websocket
|
||||||
|
-D highDPI
|
||||||
|
-D flow_border
|
||||||
|
-D hlgen.makefile=vs2019
|
||||||
-hl native/marblegame.c
|
-hl native/marblegame.c
|
||||||
--main Main
|
--main Main
|
||||||
14
compile-js-rel.hxml
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
-cp src
|
||||||
|
-lib heaps
|
||||||
|
-lib stb_ogg_sound
|
||||||
|
-lib zip
|
||||||
|
-lib datachannel
|
||||||
|
-lib colyseus-websocket
|
||||||
|
-lib uglifyjs
|
||||||
|
--js marblegame.js
|
||||||
|
-D windowSize=1280x720
|
||||||
|
-D js-es=6
|
||||||
|
-D flow_border
|
||||||
|
-D highDPI
|
||||||
|
--dce full
|
||||||
|
--main Main
|
||||||
|
|
@ -2,9 +2,13 @@
|
||||||
-lib heaps
|
-lib heaps
|
||||||
-lib stb_ogg_sound
|
-lib stb_ogg_sound
|
||||||
-lib zip
|
-lib zip
|
||||||
|
-lib datachannel
|
||||||
|
-lib colyseus-websocket
|
||||||
--js marblegame.js
|
--js marblegame.js
|
||||||
-D windowSize=1280x720
|
-D windowSize=1280x720
|
||||||
-D js-es=6
|
-D js-es=6
|
||||||
-D keep-inline-positions
|
-D keep-inline-positions
|
||||||
|
-D highDPI
|
||||||
|
-D flow_border
|
||||||
--main Main
|
--main Main
|
||||||
-debug
|
-debug
|
||||||
7
compile-linux.hxml
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
-cp src
|
||||||
|
-lib heaps
|
||||||
|
-lib hlsdl
|
||||||
|
-D highDPI
|
||||||
|
-D flow_border
|
||||||
|
-hl native/marblegame.c
|
||||||
|
--main Main
|
||||||
6
compile-linux.sh
Executable file
|
|
@ -0,0 +1,6 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
haxe compile-linux.hxml
|
||||||
|
cd native
|
||||||
|
gcc -o marblegame -g -I . -L /usr/local/lib marblegame.c /usr/local/lib/{ui.hdll,openal.hdll,fmt.hdll,sdl.hdll,uv.hdll,ssl.hdll} -lSDL2 -lhl -lm
|
||||||
|
cp marblegame ..
|
||||||
10
compile-macos.hxml
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
-cp src
|
||||||
|
-lib heaps
|
||||||
|
-lib hlsdl
|
||||||
|
-lib datachannel
|
||||||
|
-lib colyseus-websocket
|
||||||
|
-D highDPI
|
||||||
|
-D flow_border
|
||||||
|
-hl native/marblegame.c
|
||||||
|
-D MACOS_BUNDLE
|
||||||
|
--main Main
|
||||||
|
|
@ -1 +1 @@
|
||||||
cl native\marblegame.c /Fe:marblegame.exe /Od -I "D:\C Projects\Haxe\hl-1.11.0-win\include" -I native "D:\repos\Hashlink\hashlink\x64\Release\libhl.lib" "D:\repos\Hashlink\hashlink\x64\Release\fmt.lib" "D:\repos\Hashlink\hashlink\x64\Release\ui.lib" "D:\repos\Hashlink\hashlink\x64\Release\openal.lib" "D:\repos\Hashlink\hashlink\x64\Release\sdl.lib"
|
cl native\marblegame.c /Fe:marblegame.exe /O2 -I "D:\C Projects\Haxe\hl-1.11.0-win\include" -I native "D:\repos\Hashlink\hashlink\x64\Release\libhl.lib" "D:\repos\Hashlink\hashlink\x64\Release\fmt.lib" "D:\repos\Hashlink\hashlink\x64\Release\ui.lib" "D:\repos\Hashlink\hashlink\x64\Release\openal.lib" "D:\repos\Hashlink\hashlink\x64\Release\sdl.lib" "D:\repos\Hashlink\hashlink\x64\Release\uv.lib" "D:\repos\Hashlink\hashlink\x64\Release\ssl.lib" "D:\repos\Hashlink\hashlink\x64\Release\datachannel-static.lib" "D:\repos\Hashlink\hashlink\x64\Release\MbedTLS.lib" "D:\repos\Hashlink\hashlink\x64\Release\datachannel.lib"
|
||||||
|
|
@ -1,9 +1,12 @@
|
||||||
-cp src
|
-cp src
|
||||||
-lib heaps
|
-lib heaps
|
||||||
-lib hlsdl
|
-lib hlsdl
|
||||||
-lib zyheaps
|
-lib datachannel
|
||||||
|
-lib colyseus-websocket
|
||||||
-hl marblegame.hl
|
-hl marblegame.hl
|
||||||
-D windowSize=1280x720
|
-D windowSize=1280x720
|
||||||
-D keep-inline-positions
|
-D keep-inline-positions
|
||||||
|
-D highDPI
|
||||||
|
-D flow_border
|
||||||
--main Main
|
--main Main
|
||||||
-debug
|
-debug
|
||||||
204
data/font/EXPON.fnt
Normal file
|
|
@ -0,0 +1,204 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<font>
|
||||||
|
<info face="EXPON" size="42" bold="0" italic="0" charset="" unicode="1" stretchH="100" smooth="1" aa="1" padding="2,2,2,2" spacing="0,0" outline="0"/>
|
||||||
|
<common lineHeight="47" base="36" scaleW="512" scaleH="256" pages="1" packed="0" alphaChnl="0" redChnl="0" greenChnl="0" blueChnl="0"/>
|
||||||
|
<pages>
|
||||||
|
<page id="0" file="ExpoSDF.png"/>
|
||||||
|
</pages>
|
||||||
|
<distanceField fieldType="msdf" distanceRange="4"/>
|
||||||
|
<chars count="95">
|
||||||
|
<char id="87" index="61" char="W" width="52" height="37" xoffset="0" yoffset="3" xadvance="50" chnl="15" x="0" y="0" page="0"/>
|
||||||
|
<char id="77" index="51" char="M" width="49" height="36" xoffset="-1" yoffset="4" xadvance="47" chnl="15" x="0" y="38" page="0"/>
|
||||||
|
<char id="106" index="80" char="j" width="17" height="48" xoffset="-1" yoffset="3" xadvance="15" chnl="15" x="0" y="75" page="0"/>
|
||||||
|
<char id="124" index="98" char="|" width="7" height="46" xoffset="-1" yoffset="4" xadvance="6" chnl="15" x="0" y="124" page="0"/>
|
||||||
|
<char id="91" index="65" char="[" width="13" height="44" xoffset="-1" yoffset="0" xadvance="11" chnl="15" x="0" y="171" page="0"/>
|
||||||
|
<char id="93" index="67" char="]" width="13" height="44" xoffset="-2" yoffset="0" xadvance="10" chnl="15" x="8" y="124" page="0"/>
|
||||||
|
<char id="109" index="83" char="m" width="44" height="27" xoffset="-1" yoffset="14" xadvance="41" chnl="15" x="0" y="216" page="0"/>
|
||||||
|
<char id="78" index="52" char="N" width="41" height="36" xoffset="-1" yoffset="4" xadvance="39" chnl="15" x="14" y="169" page="0"/>
|
||||||
|
<char id="88" index="62" char="X" width="41" height="37" xoffset="-1" yoffset="4" xadvance="39" chnl="15" x="18" y="75" page="0"/>
|
||||||
|
<char id="119" index="93" char="w" width="41" height="26" xoffset="-1" yoffset="14" xadvance="39" chnl="15" x="50" y="38" page="0"/>
|
||||||
|
<char id="36" index="10" char="$" width="32" height="40" xoffset="-1" yoffset="2" xadvance="30" chnl="15" x="45" y="206" page="0"/>
|
||||||
|
<char id="74" index="48" char="J" width="23" height="40" xoffset="-2" yoffset="3" xadvance="20" chnl="15" x="22" y="113" page="0"/>
|
||||||
|
<char id="123" index="97" char="{" width="15" height="40" xoffset="-1" yoffset="3" xadvance="12" chnl="15" x="46" y="113" page="0"/>
|
||||||
|
<char id="125" index="99" char="}" width="15" height="40" xoffset="-2" yoffset="3" xadvance="12" chnl="15" x="60" y="65" page="0"/>
|
||||||
|
<char id="38" index="12" char="&" width="39" height="37" xoffset="-1" yoffset="5" xadvance="37" chnl="15" x="53" y="0" page="0"/>
|
||||||
|
<char id="65" index="39" char="A" width="39" height="37" xoffset="-1" yoffset="2" xadvance="37" chnl="15" x="56" y="154" page="0"/>
|
||||||
|
<char id="72" index="46" char="H" width="39" height="36" xoffset="-1" yoffset="4" xadvance="37" chnl="15" x="62" y="106" page="0"/>
|
||||||
|
<char id="103" index="77" char="g" width="28" height="39" xoffset="-1" yoffset="14" xadvance="26" chnl="15" x="76" y="65" page="0"/>
|
||||||
|
<char id="35" index="9" char="#" width="38" height="36" xoffset="-1" yoffset="4" xadvance="36" chnl="15" x="78" y="192" page="0"/>
|
||||||
|
<char id="40" index="14" char="(" width="15" height="38" xoffset="-1" yoffset="3" xadvance="14" chnl="15" x="96" y="143" page="0"/>
|
||||||
|
<char id="41" index="15" char=")" width="15" height="38" xoffset="-1" yoffset="3" xadvance="14" chnl="15" x="93" y="0" page="0"/>
|
||||||
|
<char id="63" index="37" char="?" width="24" height="38" xoffset="-1" yoffset="3" xadvance="22" chnl="15" x="105" y="39" page="0"/>
|
||||||
|
<char id="64" index="38" char="@" width="37" height="38" xoffset="-1" yoffset="4" xadvance="35" chnl="15" x="109" y="0" page="0"/>
|
||||||
|
<char id="67" index="41" char="C" width="35" height="38" xoffset="-1" yoffset="2" xadvance="33" chnl="15" x="105" y="78" page="0"/>
|
||||||
|
<char id="71" index="45" char="G" width="35" height="38" xoffset="-1" yoffset="3" xadvance="33" chnl="15" x="130" y="39" page="0"/>
|
||||||
|
<char id="79" index="53" char="O" width="35" height="38" xoffset="-1" yoffset="3" xadvance="33" chnl="15" x="147" y="0" page="0"/>
|
||||||
|
<char id="80" index="54" char="P" width="35" height="38" xoffset="-1" yoffset="3" xadvance="33" chnl="15" x="112" y="117" page="0"/>
|
||||||
|
<char id="81" index="55" char="Q" width="38" height="38" xoffset="-1" yoffset="3" xadvance="36" chnl="15" x="141" y="78" page="0"/>
|
||||||
|
<char id="82" index="56" char="R" width="37" height="38" xoffset="-1" yoffset="3" xadvance="35" chnl="15" x="166" y="39" page="0"/>
|
||||||
|
<char id="85" index="59" char="U" width="38" height="37" xoffset="-1" yoffset="4" xadvance="36" chnl="15" x="183" y="0" page="0"/>
|
||||||
|
<char id="89" index="63" char="Y" width="38" height="36" xoffset="-1" yoffset="4" xadvance="36" chnl="15" x="117" y="156" page="0"/>
|
||||||
|
<char id="98" index="72" char="b" width="30" height="38" xoffset="-1" yoffset="2" xadvance="28" chnl="15" x="148" y="117" page="0"/>
|
||||||
|
<char id="100" index="74" char="d" width="32" height="38" xoffset="-1" yoffset="2" xadvance="30" chnl="15" x="117" y="193" page="0"/>
|
||||||
|
<char id="104" index="78" char="h" width="32" height="38" xoffset="-1" yoffset="3" xadvance="30" chnl="15" x="150" y="193" page="0"/>
|
||||||
|
<char id="112" index="86" char="p" width="31" height="38" xoffset="-1" yoffset="14" xadvance="29" chnl="15" x="179" y="117" page="0"/>
|
||||||
|
<char id="113" index="87" char="q" width="29" height="38" xoffset="-1" yoffset="14" xadvance="25" chnl="15" x="180" y="78" page="0"/>
|
||||||
|
<char id="33" index="7" char="!" width="15" height="37" xoffset="-1" yoffset="3" xadvance="14" chnl="15" x="204" y="38" page="0"/>
|
||||||
|
<char id="48" index="22" char="0" width="29" height="37" xoffset="-1" yoffset="3" xadvance="27" chnl="15" x="210" y="76" page="0"/>
|
||||||
|
<char id="49" index="23" char="1" width="20" height="37" xoffset="-1" yoffset="4" xadvance="19" chnl="15" x="220" y="38" page="0"/>
|
||||||
|
<char id="54" index="28" char="6" width="27" height="37" xoffset="-1" yoffset="4" xadvance="25" chnl="15" x="222" y="0" page="0"/>
|
||||||
|
<char id="55" index="29" char="7" width="26" height="37" xoffset="-1" yoffset="4" xadvance="24" chnl="15" x="183" y="156" page="0"/>
|
||||||
|
<char id="56" index="30" char="8" width="30" height="37" xoffset="-1" yoffset="4" xadvance="29" chnl="15" x="183" y="194" page="0"/>
|
||||||
|
<char id="57" index="31" char="9" width="27" height="37" xoffset="-1" yoffset="3" xadvance="25" chnl="15" x="210" y="156" page="0"/>
|
||||||
|
<char id="66" index="40" char="B" width="35" height="37" xoffset="-1" yoffset="2" xadvance="33" chnl="15" x="211" y="114" page="0"/>
|
||||||
|
<char id="68" index="42" char="D" width="36" height="37" xoffset="-1" yoffset="2" xadvance="34" chnl="15" x="240" y="76" page="0"/>
|
||||||
|
<char id="69" index="43" char="E" width="33" height="37" xoffset="-1" yoffset="3" xadvance="31" chnl="15" x="241" y="38" page="0"/>
|
||||||
|
<char id="73" index="47" char="I" width="20" height="37" xoffset="-1" yoffset="4" xadvance="18" chnl="15" x="250" y="0" page="0"/>
|
||||||
|
<char id="75" index="49" char="K" width="36" height="37" xoffset="-1" yoffset="3" xadvance="34" chnl="15" x="271" y="0" page="0"/>
|
||||||
|
<char id="76" index="50" char="L" width="31" height="37" xoffset="-1" yoffset="3" xadvance="29" chnl="15" x="275" y="38" page="0"/>
|
||||||
|
<char id="83" index="57" char="S" width="34" height="37" xoffset="-1" yoffset="3" xadvance="33" chnl="15" x="214" y="194" page="0"/>
|
||||||
|
<char id="84" index="58" char="T" width="34" height="37" xoffset="-1" yoffset="4" xadvance="32" chnl="15" x="238" y="152" page="0"/>
|
||||||
|
<char id="86" index="60" char="V" width="37" height="36" xoffset="-1" yoffset="4" xadvance="36" chnl="15" x="247" y="114" page="0"/>
|
||||||
|
<char id="90" index="64" char="Z" width="34" height="37" xoffset="-1" yoffset="4" xadvance="32" chnl="15" x="277" y="76" page="0"/>
|
||||||
|
<char id="105" index="79" char="i" width="17" height="37" xoffset="-1" yoffset="3" xadvance="16" chnl="15" x="307" y="38" page="0"/>
|
||||||
|
<char id="107" index="81" char="k" width="30" height="37" xoffset="-1" yoffset="4" xadvance="29" chnl="15" x="308" y="0" page="0"/>
|
||||||
|
<char id="108" index="82" char="l" width="16" height="37" xoffset="-1" yoffset="3" xadvance="15" chnl="15" x="249" y="190" page="0"/>
|
||||||
|
<char id="37" index="11" char="%" width="34" height="36" xoffset="-1" yoffset="4" xadvance="32" chnl="15" x="266" y="190" page="0"/>
|
||||||
|
<char id="47" index="21" char="/" width="28" height="36" xoffset="-1" yoffset="4" xadvance="27" chnl="15" x="273" y="151" page="0"/>
|
||||||
|
<char id="50" index="24" char="2" width="26" height="36" xoffset="-1" yoffset="4" xadvance="24" chnl="15" x="156" y="156" page="0"/>
|
||||||
|
<char id="51" index="25" char="3" width="28" height="36" xoffset="-1" yoffset="4" xadvance="26" chnl="15" x="285" y="114" page="0"/>
|
||||||
|
<char id="52" index="26" char="4" width="30" height="36" xoffset="-1" yoffset="4" xadvance="28" chnl="15" x="312" y="76" page="0"/>
|
||||||
|
<char id="53" index="27" char="5" width="25" height="36" xoffset="-1" yoffset="4" xadvance="24" chnl="15" x="325" y="38" page="0"/>
|
||||||
|
<char id="70" index="44" char="F" width="31" height="36" xoffset="-1" yoffset="4" xadvance="30" chnl="15" x="339" y="0" page="0"/>
|
||||||
|
<char id="92" index="66" char="\" width="28" height="36" xoffset="-1" yoffset="4" xadvance="26" chnl="15" x="301" y="188" page="0"/>
|
||||||
|
<char id="102" index="76" char="f" width="22" height="36" xoffset="-1" yoffset="4" xadvance="19" chnl="15" x="302" y="151" page="0"/>
|
||||||
|
<char id="121" index="95" char="y" width="28" height="36" xoffset="-1" yoffset="14" xadvance="27" chnl="15" x="314" y="113" page="0"/>
|
||||||
|
<char id="95" index="69" char="_" width="34" height="5" xoffset="-1" yoffset="35" xadvance="32" chnl="15" x="0" y="247" page="0"/>
|
||||||
|
<char id="116" index="90" char="t" width="19" height="33" xoffset="-1" yoffset="8" xadvance="17" chnl="15" x="325" y="150" page="0"/>
|
||||||
|
<char id="117" index="91" char="u" width="32" height="26" xoffset="-1" yoffset="14" xadvance="30" chnl="15" x="78" y="229" page="0"/>
|
||||||
|
<char id="120" index="94" char="x" width="32" height="26" xoffset="-1" yoffset="14" xadvance="30" chnl="15" x="249" y="228" page="0"/>
|
||||||
|
<char id="59" index="33" char=";" width="13" height="31" xoffset="-1" yoffset="15" xadvance="10" chnl="15" x="301" y="225" page="0"/>
|
||||||
|
<char id="97" index="71" char="a" width="31" height="27" xoffset="-1" yoffset="14" xadvance="29" chnl="15" x="315" y="225" page="0"/>
|
||||||
|
<char id="110" index="84" char="n" width="31" height="26" xoffset="-1" yoffset="14" xadvance="29" chnl="15" x="330" y="184" page="0"/>
|
||||||
|
<char id="118" index="92" char="v" width="29" height="26" xoffset="-1" yoffset="14" xadvance="27" chnl="15" x="347" y="211" page="0"/>
|
||||||
|
<char id="101" index="75" char="e" width="26" height="28" xoffset="-1" yoffset="14" xadvance="24" chnl="15" x="343" y="75" page="0"/>
|
||||||
|
<char id="99" index="73" char="c" width="26" height="27" xoffset="-1" yoffset="14" xadvance="24" chnl="15" x="351" y="37" page="0"/>
|
||||||
|
<char id="111" index="85" char="o" width="26" height="27" xoffset="-1" yoffset="14" xadvance="24" chnl="15" x="371" y="0" page="0"/>
|
||||||
|
<char id="43" index="17" char="+" width="22" height="26" xoffset="-1" yoffset="14" xadvance="20" chnl="15" x="343" y="104" page="0"/>
|
||||||
|
<char id="58" index="32" char=":" width="12" height="26" xoffset="-1" yoffset="14" xadvance="10" chnl="15" x="282" y="227" page="0"/>
|
||||||
|
<char id="114" index="88" char="r" width="24" height="26" xoffset="-1" yoffset="14" xadvance="23" chnl="15" x="345" y="131" page="0"/>
|
||||||
|
<char id="115" index="89" char="s" width="23" height="26" xoffset="-1" yoffset="14" xadvance="22" chnl="15" x="366" y="104" page="0"/>
|
||||||
|
<char id="122" index="96" char="z" width="25" height="26" xoffset="-1" yoffset="14" xadvance="23" chnl="15" x="370" y="65" page="0"/>
|
||||||
|
<char id="60" index="34" char="<" width="23" height="25" xoffset="-1" yoffset="15" xadvance="21" chnl="15" x="345" y="158" page="0"/>
|
||||||
|
<char id="62" index="36" char=">" width="23" height="25" xoffset="-1" yoffset="15" xadvance="21" chnl="15" x="362" y="184" page="0"/>
|
||||||
|
<char id="126" index="100" char="~" width="25" height="14" xoffset="-1" yoffset="3" xadvance="23" chnl="15" x="22" y="154" page="0"/>
|
||||||
|
<char id="94" index="68" char="^" width="23" height="12" xoffset="-1" yoffset="3" xadvance="21" chnl="15" x="347" y="238" page="0"/>
|
||||||
|
<char id="42" index="16" char="*" width="21" height="22" xoffset="-1" yoffset="4" xadvance="19" chnl="15" x="111" y="232" page="0"/>
|
||||||
|
<char id="61" index="35" char="=" width="21" height="13" xoffset="-1" yoffset="20" xadvance="19" chnl="15" x="56" y="192" page="0"/>
|
||||||
|
<char id="34" index="8" char=""" width="19" height="16" xoffset="-1" yoffset="2" xadvance="18" chnl="15" x="371" y="238" page="0"/>
|
||||||
|
<char id="45" index="19" char="-" width="19" height="10" xoffset="-1" yoffset="21" xadvance="18" chnl="15" x="62" y="143" page="0"/>
|
||||||
|
<char id="44" index="18" char="," width="13" height="16" xoffset="-2" yoffset="29" xadvance="10" chnl="15" x="133" y="232" page="0"/>
|
||||||
|
<char id="39" index="13" char="'" width="12" height="15" xoffset="-1" yoffset="3" xadvance="10" chnl="15" x="92" y="39" page="0"/>
|
||||||
|
<char id="96" index="70" char="`" width="14" height="15" xoffset="-1" yoffset="3" xadvance="12" chnl="15" x="147" y="232" page="0"/>
|
||||||
|
<char id="46" index="20" char="." width="12" height="11" xoffset="-1" yoffset="29" xadvance="10" chnl="15" x="370" y="92" page="0"/>
|
||||||
|
<char id="32" index="6" char=" " width="0" height="0" xoffset="-2" yoffset="36" xadvance="15" chnl="15" x="76" y="105" page="0"/>
|
||||||
|
</chars>
|
||||||
|
<kernings count="96">
|
||||||
|
<kerning first="39" second="115" amount="-4"/>
|
||||||
|
<kerning first="39" second="116" amount="-2"/>
|
||||||
|
<kerning first="65" second="34" amount="-4"/>
|
||||||
|
<kerning first="65" second="39" amount="-4"/>
|
||||||
|
<kerning first="65" second="84" amount="-3"/>
|
||||||
|
<kerning first="65" second="86" amount="-4"/>
|
||||||
|
<kerning first="65" second="87" amount="-5"/>
|
||||||
|
<kerning first="65" second="89" amount="-4"/>
|
||||||
|
<kerning first="65" second="118" amount="-4"/>
|
||||||
|
<kerning first="65" second="119" amount="-3"/>
|
||||||
|
<kerning first="65" second="121" amount="-2"/>
|
||||||
|
<kerning first="70" second="44" amount="-5"/>
|
||||||
|
<kerning first="70" second="46" amount="-5"/>
|
||||||
|
<kerning first="70" second="65" amount="-3"/>
|
||||||
|
<kerning first="76" second="39" amount="-2"/>
|
||||||
|
<kerning first="76" second="84" amount="-2"/>
|
||||||
|
<kerning first="76" second="86" amount="-3"/>
|
||||||
|
<kerning first="76" second="87" amount="-3"/>
|
||||||
|
<kerning first="76" second="89" amount="-3"/>
|
||||||
|
<kerning first="80" second="44" amount="-6"/>
|
||||||
|
<kerning first="80" second="46" amount="-6"/>
|
||||||
|
<kerning first="80" second="65" amount="-4"/>
|
||||||
|
<kerning first="84" second="44" amount="-5"/>
|
||||||
|
<kerning first="84" second="45" amount="-5"/>
|
||||||
|
<kerning first="84" second="46" amount="-6"/>
|
||||||
|
<kerning first="84" second="65" amount="-4"/>
|
||||||
|
<kerning first="84" second="79" amount="-1"/>
|
||||||
|
<kerning first="84" second="97" amount="-3"/>
|
||||||
|
<kerning first="84" second="99" amount="-3"/>
|
||||||
|
<kerning first="84" second="101" amount="-2"/>
|
||||||
|
<kerning first="84" second="105" amount="-1"/>
|
||||||
|
<kerning first="84" second="111" amount="-2"/>
|
||||||
|
<kerning first="84" second="114" amount="-1"/>
|
||||||
|
<kerning first="84" second="115" amount="-2"/>
|
||||||
|
<kerning first="84" second="117" amount="-1"/>
|
||||||
|
<kerning first="84" second="119" amount="-1"/>
|
||||||
|
<kerning first="86" second="44" amount="-4"/>
|
||||||
|
<kerning first="86" second="45" amount="-6"/>
|
||||||
|
<kerning first="86" second="46" amount="-5"/>
|
||||||
|
<kerning first="86" second="58" amount="-2"/>
|
||||||
|
<kerning first="86" second="59" amount="-3"/>
|
||||||
|
<kerning first="86" second="65" amount="-4"/>
|
||||||
|
<kerning first="86" second="67" amount="-2"/>
|
||||||
|
<kerning first="86" second="79" amount="-1"/>
|
||||||
|
<kerning first="86" second="97" amount="-6"/>
|
||||||
|
<kerning first="86" second="99" amount="-6"/>
|
||||||
|
<kerning first="86" second="101" amount="-5"/>
|
||||||
|
<kerning first="86" second="105" amount="-3"/>
|
||||||
|
<kerning first="86" second="111" amount="-5"/>
|
||||||
|
<kerning first="86" second="114" amount="-4"/>
|
||||||
|
<kerning first="86" second="117" amount="-3"/>
|
||||||
|
<kerning first="86" second="121" amount="-4"/>
|
||||||
|
<kerning first="87" second="44" amount="-6"/>
|
||||||
|
<kerning first="87" second="45" amount="-5"/>
|
||||||
|
<kerning first="87" second="46" amount="-7"/>
|
||||||
|
<kerning first="87" second="58" amount="-3"/>
|
||||||
|
<kerning first="87" second="59" amount="-3"/>
|
||||||
|
<kerning first="87" second="65" amount="-5"/>
|
||||||
|
<kerning first="87" second="67" amount="-2"/>
|
||||||
|
<kerning first="87" second="79" amount="-1"/>
|
||||||
|
<kerning first="87" second="97" amount="-5"/>
|
||||||
|
<kerning first="87" second="99" amount="-5"/>
|
||||||
|
<kerning first="87" second="101" amount="-5"/>
|
||||||
|
<kerning first="87" second="105" amount="-3"/>
|
||||||
|
<kerning first="87" second="111" amount="-5"/>
|
||||||
|
<kerning first="87" second="114" amount="-3"/>
|
||||||
|
<kerning first="87" second="117" amount="-3"/>
|
||||||
|
<kerning first="87" second="121" amount="-3"/>
|
||||||
|
<kerning first="89" second="44" amount="-6"/>
|
||||||
|
<kerning first="89" second="45" amount="-6"/>
|
||||||
|
<kerning first="89" second="46" amount="-6"/>
|
||||||
|
<kerning first="89" second="58" amount="-2"/>
|
||||||
|
<kerning first="89" second="59" amount="-3"/>
|
||||||
|
<kerning first="89" second="65" amount="-4"/>
|
||||||
|
<kerning first="89" second="97" amount="-6"/>
|
||||||
|
<kerning first="89" second="101" amount="-6"/>
|
||||||
|
<kerning first="89" second="105" amount="-3"/>
|
||||||
|
<kerning first="89" second="111" amount="-5"/>
|
||||||
|
<kerning first="89" second="112" amount="-4"/>
|
||||||
|
<kerning first="89" second="113" amount="-6"/>
|
||||||
|
<kerning first="89" second="114" amount="-3"/>
|
||||||
|
<kerning first="89" second="117" amount="-4"/>
|
||||||
|
<kerning first="89" second="118" amount="-4"/>
|
||||||
|
<kerning first="96" second="65" amount="-3"/>
|
||||||
|
<kerning first="102" second="39" amount="2"/>
|
||||||
|
<kerning first="114" second="44" amount="-2"/>
|
||||||
|
<kerning first="114" second="46" amount="-3"/>
|
||||||
|
<kerning first="114" second="103" amount="-1"/>
|
||||||
|
<kerning first="114" second="104" amount="-3"/>
|
||||||
|
<kerning first="114" second="120" amount="-1"/>
|
||||||
|
<kerning first="118" second="44" amount="-3"/>
|
||||||
|
<kerning first="118" second="46" amount="-4"/>
|
||||||
|
<kerning first="119" second="44" amount="-4"/>
|
||||||
|
<kerning first="119" second="46" amount="-4"/>
|
||||||
|
<kerning first="121" second="44" amount="-5"/>
|
||||||
|
<kerning first="121" second="46" amount="-5"/>
|
||||||
|
</kernings>
|
||||||
|
</font>
|
||||||
108
data/font/Lucida Console.fnt
Normal file
|
|
@ -0,0 +1,108 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<font>
|
||||||
|
<info face="Lucida Console" size="42" bold="0" italic="0" charset="" unicode="1" stretchH="100" smooth="1" aa="1" padding="2,2,2,2" spacing="0,0" outline="0"/>
|
||||||
|
<common lineHeight="45" base="35" scaleW="512" scaleH="256" pages="1" packed="0" alphaChnl="0" redChnl="0" greenChnl="0" blueChnl="0"/>
|
||||||
|
<pages>
|
||||||
|
<page id="0" file="LucidaConsole.png"/>
|
||||||
|
</pages>
|
||||||
|
<distanceField fieldType="msdf" distanceRange="4"/>
|
||||||
|
<chars count="96">
|
||||||
|
<char id="106" index="77" char="j" width="19" height="45" xoffset="1" yoffset="3" xadvance="25" chnl="15" x="0" y="0" page="0"/>
|
||||||
|
<char id="40" index="11" char="(" width="19" height="42" xoffset="5" yoffset="3" xadvance="25" chnl="15" x="0" y="46" page="0"/>
|
||||||
|
<char id="41" index="12" char=")" width="19" height="42" xoffset="1" yoffset="3" xadvance="25" chnl="15" x="0" y="89" page="0"/>
|
||||||
|
<char id="91" index="62" char="[" width="17" height="42" xoffset="7" yoffset="3" xadvance="25" chnl="15" x="0" y="132" page="0"/>
|
||||||
|
<char id="93" index="64" char="]" width="17" height="42" xoffset="2" yoffset="3" xadvance="25" chnl="15" x="0" y="175" page="0"/>
|
||||||
|
<char id="92" index="63" char="\" width="26" height="42" xoffset="0" yoffset="3" xadvance="25" chnl="15" x="18" y="132" page="0"/>
|
||||||
|
<char id="123" index="94" char="{" width="20" height="42" xoffset="3" yoffset="3" xadvance="25" chnl="15" x="18" y="175" page="0"/>
|
||||||
|
<char id="125" index="96" char="}" width="20" height="42" xoffset="2" yoffset="3" xadvance="25" chnl="15" x="39" y="175" page="0"/>
|
||||||
|
<char id="124" index="95" char="|" width="7" height="42" xoffset="9" yoffset="3" xadvance="25" chnl="15" x="20" y="0" page="0"/>
|
||||||
|
<char id="47" index="18" char="/" width="26" height="42" xoffset="0" yoffset="3" xadvance="25" chnl="15" x="20" y="43" page="0"/>
|
||||||
|
<char id="36" index="7" char="$" width="21" height="39" xoffset="2" yoffset="2" xadvance="25" chnl="15" x="28" y="0" page="0"/>
|
||||||
|
<char id="81" index="52" char="Q" width="28" height="38" xoffset="-1" yoffset="8" xadvance="25" chnl="15" x="0" y="218" page="0"/>
|
||||||
|
<char id="194" index="198" char="Â" width="29" height="37" xoffset="-2" yoffset="2" xadvance="25" chnl="15" x="29" y="218" page="0"/>
|
||||||
|
<char id="100" index="71" char="d" width="23" height="37" xoffset="1" yoffset="3" xadvance="25" chnl="15" x="59" y="218" page="0"/>
|
||||||
|
<char id="102" index="73" char="f" width="26" height="37" xoffset="1" yoffset="2" xadvance="25" chnl="15" x="20" y="86" page="0"/>
|
||||||
|
<char id="98" index="69" char="b" width="23" height="37" xoffset="2" yoffset="3" xadvance="25" chnl="15" x="45" y="124" page="0"/>
|
||||||
|
<char id="51" index="22" char="3" width="21" height="36" xoffset="3" yoffset="4" xadvance="25" chnl="15" x="60" y="162" page="0"/>
|
||||||
|
<char id="54" index="25" char="6" width="24" height="36" xoffset="1" yoffset="4" xadvance="25" chnl="15" x="47" y="40" page="0"/>
|
||||||
|
<char id="56" index="27" char="8" width="23" height="36" xoffset="1" yoffset="4" xadvance="25" chnl="15" x="50" y="0" page="0"/>
|
||||||
|
<char id="57" index="28" char="9" width="24" height="36" xoffset="1" yoffset="4" xadvance="25" chnl="15" x="47" y="77" page="0"/>
|
||||||
|
<char id="48" index="19" char="0" width="25" height="36" xoffset="0" yoffset="4" xadvance="25" chnl="15" x="69" y="114" page="0"/>
|
||||||
|
<char id="64" index="35" char="@" width="28" height="36" xoffset="0" yoffset="4" xadvance="25" chnl="15" x="82" y="151" page="0"/>
|
||||||
|
<char id="37" index="8" char="%" width="29" height="36" xoffset="-2" yoffset="4" xadvance="25" chnl="15" x="83" y="188" page="0"/>
|
||||||
|
<char id="38" index="9" char="&" width="29" height="36" xoffset="-2" yoffset="4" xadvance="25" chnl="15" x="72" y="37" page="0"/>
|
||||||
|
<char id="105" index="76" char="i" width="17" height="36" xoffset="2" yoffset="3" xadvance="25" chnl="15" x="74" y="0" page="0"/>
|
||||||
|
<char id="104" index="75" char="h" width="22" height="36" xoffset="2" yoffset="3" xadvance="25" chnl="15" x="92" y="0" page="0"/>
|
||||||
|
<char id="107" index="78" char="k" width="24" height="36" xoffset="2" yoffset="3" xadvance="25" chnl="15" x="72" y="74" page="0"/>
|
||||||
|
<char id="108" index="79" char="l" width="17" height="36" xoffset="2" yoffset="3" xadvance="25" chnl="15" x="95" y="111" page="0"/>
|
||||||
|
<char id="49" index="20" char="1" width="24" height="35" xoffset="2" yoffset="4" xadvance="25" chnl="15" x="97" y="74" page="0"/>
|
||||||
|
<char id="50" index="21" char="2" width="21" height="35" xoffset="1" yoffset="4" xadvance="25" chnl="15" x="102" y="37" page="0"/>
|
||||||
|
<char id="53" index="24" char="5" width="20" height="35" xoffset="4" yoffset="5" xadvance="25" chnl="15" x="115" y="0" page="0"/>
|
||||||
|
<char id="63" index="34" char="?" width="23" height="35" xoffset="1" yoffset="4" xadvance="25" chnl="15" x="111" y="148" page="0"/>
|
||||||
|
<char id="113" index="84" char="q" width="23" height="35" xoffset="0" yoffset="12" xadvance="25" chnl="15" x="113" y="110" page="0"/>
|
||||||
|
<char id="112" index="83" char="p" width="23" height="35" xoffset="2" yoffset="12" xadvance="25" chnl="15" x="122" y="73" page="0"/>
|
||||||
|
<char id="103" index="74" char="g" width="24" height="35" xoffset="1" yoffset="12" xadvance="25" chnl="15" x="124" y="36" page="0"/>
|
||||||
|
<char id="52" index="23" char="4" width="24" height="34" xoffset="0" yoffset="5" xadvance="25" chnl="15" x="136" y="0" page="0"/>
|
||||||
|
<char id="55" index="26" char="7" width="22" height="34" xoffset="2" yoffset="5" xadvance="25" chnl="15" x="113" y="184" page="0"/>
|
||||||
|
<char id="33" index="4" char="!" width="9" height="34" xoffset="8" yoffset="5" xadvance="25" chnl="15" x="113" y="219" page="0"/>
|
||||||
|
<char id="35" index="6" char="#" width="27" height="34" xoffset="-1" yoffset="5" xadvance="25" chnl="15" x="135" y="146" page="0"/>
|
||||||
|
<char id="121" index="92" char="y" width="26" height="34" xoffset="0" yoffset="13" xadvance="25" chnl="15" x="137" y="109" page="0"/>
|
||||||
|
<char id="59" index="30" char=";" width="10" height="33" xoffset="8" yoffset="13" xadvance="25" chnl="15" x="146" y="72" page="0"/>
|
||||||
|
<char id="79" index="50" char="O" width="27" height="32" xoffset="-1" yoffset="8" xadvance="25" chnl="15" x="149" y="35" page="0"/>
|
||||||
|
<char id="83" index="54" char="S" width="24" height="32" xoffset="1" yoffset="8" xadvance="25" chnl="15" x="161" y="0" page="0"/>
|
||||||
|
<char id="71" index="42" char="G" width="26" height="32" xoffset="0" yoffset="8" xadvance="25" chnl="15" x="123" y="219" page="0"/>
|
||||||
|
<char id="67" index="38" char="C" width="26" height="32" xoffset="0" yoffset="8" xadvance="25" chnl="15" x="136" y="181" page="0"/>
|
||||||
|
<char id="85" index="56" char="U" width="23" height="31" xoffset="1" yoffset="9" xadvance="25" chnl="15" x="83" y="225" page="0"/>
|
||||||
|
<char id="74" index="45" char="J" width="19" height="31" xoffset="2" yoffset="9" xadvance="25" chnl="15" x="157" y="68" page="0"/>
|
||||||
|
<char id="116" index="87" char="t" width="24" height="31" xoffset="1" yoffset="8" xadvance="25" chnl="15" x="150" y="214" page="0"/>
|
||||||
|
<char id="87" index="58" char="W" width="29" height="30" xoffset="-2" yoffset="9" xadvance="25" chnl="15" x="163" y="144" page="0"/>
|
||||||
|
<char id="69" index="40" char="E" width="23" height="30" xoffset="2" yoffset="9" xadvance="25" chnl="15" x="163" y="175" page="0"/>
|
||||||
|
<char id="82" index="53" char="R" width="25" height="30" xoffset="2" yoffset="9" xadvance="25" chnl="15" x="164" y="100" page="0"/>
|
||||||
|
<char id="84" index="55" char="T" width="28" height="30" xoffset="-1" yoffset="9" xadvance="25" chnl="15" x="175" y="206" page="0"/>
|
||||||
|
<char id="89" index="60" char="Y" width="29" height="30" xoffset="-1" yoffset="9" xadvance="25" chnl="15" x="187" y="175" page="0"/>
|
||||||
|
<char id="73" index="44" char="I" width="22" height="30" xoffset="2" yoffset="9" xadvance="25" chnl="15" x="204" y="206" page="0"/>
|
||||||
|
<char id="80" index="51" char="P" width="23" height="30" xoffset="3" yoffset="9" xadvance="25" chnl="15" x="177" y="33" page="0"/>
|
||||||
|
<char id="65" index="36" char="A" width="29" height="30" xoffset="-2" yoffset="9" xadvance="25" chnl="15" x="186" y="0" page="0"/>
|
||||||
|
<char id="68" index="39" char="D" width="25" height="30" xoffset="1" yoffset="9" xadvance="25" chnl="15" x="177" y="64" page="0"/>
|
||||||
|
<char id="70" index="41" char="F" width="23" height="30" xoffset="3" yoffset="9" xadvance="25" chnl="15" x="201" y="31" page="0"/>
|
||||||
|
<char id="72" index="43" char="H" width="23" height="30" xoffset="1" yoffset="9" xadvance="25" chnl="15" x="216" y="0" page="0"/>
|
||||||
|
<char id="75" index="46" char="K" width="25" height="30" xoffset="1" yoffset="9" xadvance="25" chnl="15" x="190" y="95" page="0"/>
|
||||||
|
<char id="76" index="47" char="L" width="22" height="30" xoffset="3" yoffset="9" xadvance="25" chnl="15" x="203" y="62" page="0"/>
|
||||||
|
<char id="90" index="61" char="Z" width="25" height="30" xoffset="0" yoffset="9" xadvance="25" chnl="15" x="225" y="31" page="0"/>
|
||||||
|
<char id="88" index="59" char="X" width="29" height="30" xoffset="-2" yoffset="9" xadvance="25" chnl="15" x="240" y="0" page="0"/>
|
||||||
|
<char id="86" index="57" char="V" width="29" height="30" xoffset="-2" yoffset="9" xadvance="25" chnl="15" x="193" y="126" page="0"/>
|
||||||
|
<char id="66" index="37" char="B" width="23" height="30" xoffset="2" yoffset="9" xadvance="25" chnl="15" x="216" y="93" page="0"/>
|
||||||
|
<char id="78" index="49" char="N" width="23" height="30" xoffset="1" yoffset="9" xadvance="25" chnl="15" x="226" y="62" page="0"/>
|
||||||
|
<char id="77" index="48" char="M" width="25" height="30" xoffset="0" yoffset="9" xadvance="25" chnl="15" x="217" y="157" page="0"/>
|
||||||
|
<char id="95" index="66" char="_" width="29" height="7" xoffset="-2" yoffset="35" xadvance="25" chnl="15" x="150" y="246" page="0"/>
|
||||||
|
<char id="119" index="90" char="w" width="29" height="26" xoffset="-2" yoffset="13" xadvance="25" chnl="15" x="223" y="124" page="0"/>
|
||||||
|
<char id="94" index="65" char="^" width="26" height="28" xoffset="0" yoffset="5" xadvance="25" chnl="15" x="240" y="93" page="0"/>
|
||||||
|
<char id="101" index="72" char="e" width="24" height="27" xoffset="1" yoffset="12" xadvance="25" chnl="15" x="250" y="62" page="0"/>
|
||||||
|
<char id="114" index="85" char="r" width="20" height="27" xoffset="4" yoffset="12" xadvance="25" chnl="15" x="251" y="31" page="0"/>
|
||||||
|
<char id="117" index="88" char="u" width="22" height="27" xoffset="2" yoffset="13" xadvance="25" chnl="15" x="270" y="0" page="0"/>
|
||||||
|
<char id="111" index="82" char="o" width="25" height="27" xoffset="0" yoffset="12" xadvance="25" chnl="15" x="272" y="28" page="0"/>
|
||||||
|
<char id="97" index="68" char="a" width="25" height="27" xoffset="1" yoffset="12" xadvance="25" chnl="15" x="293" y="0" page="0"/>
|
||||||
|
<char id="115" index="86" char="s" width="22" height="27" xoffset="2" yoffset="12" xadvance="25" chnl="15" x="227" y="188" page="0"/>
|
||||||
|
<char id="99" index="70" char="c" width="23" height="27" xoffset="1" yoffset="12" xadvance="25" chnl="15" x="243" y="151" page="0"/>
|
||||||
|
<char id="118" index="89" char="v" width="27" height="26" xoffset="-1" yoffset="13" xadvance="25" chnl="15" x="253" y="122" page="0"/>
|
||||||
|
<char id="110" index="81" char="n" width="22" height="27" xoffset="2" yoffset="12" xadvance="25" chnl="15" x="267" y="90" page="0"/>
|
||||||
|
<char id="109" index="80" char="m" width="26" height="27" xoffset="0" yoffset="12" xadvance="25" chnl="15" x="275" y="56" page="0"/>
|
||||||
|
<char id="61" index="32" char="=" width="26" height="15" xoffset="0" yoffset="19" xadvance="25" chnl="15" x="180" y="237" page="0"/>
|
||||||
|
<char id="43" index="14" char="+" width="26" height="26" xoffset="0" yoffset="13" xadvance="25" chnl="15" x="298" y="28" page="0"/>
|
||||||
|
<char id="126" index="97" char="~" width="26" height="11" xoffset="0" yoffset="20" xadvance="25" chnl="15" x="164" y="131" page="0"/>
|
||||||
|
<char id="58" index="29" char=":" width="10" height="26" xoffset="8" yoffset="13" xadvance="25" chnl="15" x="319" y="0" page="0"/>
|
||||||
|
<char id="60" index="31" char="<" width="26" height="26" xoffset="0" yoffset="13" xadvance="25" chnl="15" x="227" y="216" page="0"/>
|
||||||
|
<char id="62" index="33" char=">" width="26" height="26" xoffset="0" yoffset="13" xadvance="25" chnl="15" x="250" y="179" page="0"/>
|
||||||
|
<char id="122" index="93" char="z" width="24" height="26" xoffset="1" yoffset="13" xadvance="25" chnl="15" x="267" y="149" page="0"/>
|
||||||
|
<char id="120" index="91" char="x" width="26" height="26" xoffset="0" yoffset="13" xadvance="25" chnl="15" x="281" y="118" page="0"/>
|
||||||
|
<char id="42" index="13" char="*" width="23" height="22" xoffset="1" yoffset="5" xadvance="25" chnl="15" x="290" y="84" page="0"/>
|
||||||
|
<char id="45" index="16" char="-" width="21" height="7" xoffset="2" yoffset="21" xadvance="25" chnl="15" x="20" y="124" page="0"/>
|
||||||
|
<char id="34" index="5" char=""" width="19" height="15" xoffset="3" yoffset="3" xadvance="25" chnl="15" x="207" y="237" page="0"/>
|
||||||
|
<char id="39" index="10" char="'" width="10" height="17" xoffset="8" yoffset="3" xadvance="25" chnl="15" x="193" y="157" page="0"/>
|
||||||
|
<char id="44" index="15" char="," width="10" height="17" xoffset="8" yoffset="29" xadvance="25" chnl="15" x="204" y="157" page="0"/>
|
||||||
|
<char id="96" index="67" char="`" width="14" height="9" xoffset="6" yoffset="2" xadvance="25" chnl="15" x="45" y="162" page="0"/>
|
||||||
|
<char id="46" index="17" char="." width="10" height="10" xoffset="8" yoffset="29" xadvance="25" chnl="15" x="69" y="151" page="0"/>
|
||||||
|
<char id="32" index="3" char=" " width="0" height="0" xoffset="-2" yoffset="35" xadvance="25" chnl="15" x="82" y="188" page="0"/>
|
||||||
|
</chars>
|
||||||
|
<kernings count="0"/>
|
||||||
|
</font>
|
||||||
BIN
data/font/LucidaConsole.png
Normal file
|
After Width: | Height: | Size: 86 KiB |
108
data/font/MarkerFelt.fnt
Normal file
|
|
@ -0,0 +1,108 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<font>
|
||||||
|
<info face="MarkerFelt" size="42" bold="0" italic="0" charset="" unicode="1" stretchH="100" smooth="1" aa="1" padding="2,2,2,2" spacing="0,0" outline="0"/>
|
||||||
|
<common lineHeight="54" base="47" scaleW="512" scaleH="256" pages="1" packed="0" alphaChnl="0" redChnl="0" greenChnl="0" blueChnl="0"/>
|
||||||
|
<pages>
|
||||||
|
<page id="0" file="MarkerFelt.png"/>
|
||||||
|
</pages>
|
||||||
|
<distanceField fieldType="msdf" distanceRange="4"/>
|
||||||
|
<chars count="96">
|
||||||
|
<char id="194" index="130" char="Â" width="28" height="50" xoffset="-1" yoffset="2" xadvance="26" chnl="15" x="0" y="0" page="0"/>
|
||||||
|
<char id="124" index="95" char="|" width="8" height="46" xoffset="2" yoffset="14" xadvance="11" chnl="15" x="0" y="51" page="0"/>
|
||||||
|
<char id="87" index="58" char="W" width="43" height="42" xoffset="-2" yoffset="12" xadvance="40" chnl="15" x="0" y="98" page="0"/>
|
||||||
|
<char id="36" index="7" char="$" width="23" height="43" xoffset="-2" yoffset="11" xadvance="20" chnl="15" x="9" y="51" page="0"/>
|
||||||
|
<char id="106" index="77" char="j" width="14" height="43" xoffset="-5" yoffset="15" xadvance="9" chnl="15" x="29" y="0" page="0"/>
|
||||||
|
<char id="81" index="52" char="Q" width="28" height="41" xoffset="-1" yoffset="13" xadvance="24" chnl="15" x="33" y="44" page="0"/>
|
||||||
|
<char id="72" index="43" char="H" width="23" height="41" xoffset="-1" yoffset="12" xadvance="21" chnl="15" x="44" y="0" page="0"/>
|
||||||
|
<char id="92" index="63" char="\" width="18" height="41" xoffset="-2" yoffset="12" xadvance="13" chnl="15" x="0" y="141" page="0"/>
|
||||||
|
<char id="102" index="73" char="f" width="20" height="41" xoffset="-2" yoffset="12" xadvance="15" chnl="15" x="0" y="183" page="0"/>
|
||||||
|
<char id="104" index="75" char="h" width="21" height="41" xoffset="0" yoffset="12" xadvance="20" chnl="15" x="19" y="141" page="0"/>
|
||||||
|
<char id="69" index="40" char="E" width="20" height="40" xoffset="0" yoffset="12" xadvance="18" chnl="15" x="21" y="183" page="0"/>
|
||||||
|
<char id="84" index="55" char="T" width="24" height="40" xoffset="-2" yoffset="12" xadvance="20" chnl="15" x="41" y="141" page="0"/>
|
||||||
|
<char id="89" index="60" char="Y" width="29" height="40" xoffset="-1" yoffset="13" xadvance="24" chnl="15" x="44" y="86" page="0"/>
|
||||||
|
<char id="85" index="56" char="U" width="25" height="40" xoffset="-1" yoffset="13" xadvance="23" chnl="15" x="62" y="42" page="0"/>
|
||||||
|
<char id="80" index="51" char="P" width="22" height="40" xoffset="0" yoffset="12" xadvance="18" chnl="15" x="68" y="0" page="0"/>
|
||||||
|
<char id="83" index="54" char="S" width="23" height="40" xoffset="-2" yoffset="12" xadvance="20" chnl="15" x="42" y="182" page="0"/>
|
||||||
|
<char id="68" index="39" char="D" width="22" height="40" xoffset="0" yoffset="13" xadvance="20" chnl="15" x="66" y="127" page="0"/>
|
||||||
|
<char id="74" index="45" char="J" width="22" height="40" xoffset="-2" yoffset="13" xadvance="18" chnl="15" x="74" y="83" page="0"/>
|
||||||
|
<char id="75" index="46" char="K" width="27" height="40" xoffset="-1" yoffset="12" xadvance="23" chnl="15" x="88" y="41" page="0"/>
|
||||||
|
<char id="76" index="47" char="L" width="21" height="40" xoffset="-1" yoffset="13" xadvance="18" chnl="15" x="91" y="0" page="0"/>
|
||||||
|
<char id="90" index="61" char="Z" width="29" height="40" xoffset="-2" yoffset="12" xadvance="25" chnl="15" x="113" y="0" page="0"/>
|
||||||
|
<char id="88" index="59" char="X" width="29" height="40" xoffset="-2" yoffset="12" xadvance="25" chnl="15" x="66" y="168" page="0"/>
|
||||||
|
<char id="86" index="57" char="V" width="27" height="40" xoffset="-2" yoffset="13" xadvance="23" chnl="15" x="89" y="124" page="0"/>
|
||||||
|
<char id="78" index="49" char="N" width="27" height="40" xoffset="0" yoffset="12" xadvance="25" chnl="15" x="97" y="82" page="0"/>
|
||||||
|
<char id="77" index="48" char="M" width="40" height="40" xoffset="0" yoffset="13" xadvance="39" chnl="15" x="116" y="41" page="0"/>
|
||||||
|
<char id="50" index="21" char="2" width="26" height="40" xoffset="-1" yoffset="12" xadvance="24" chnl="15" x="143" y="0" page="0"/>
|
||||||
|
<char id="52" index="23" char="4" width="28" height="40" xoffset="-2" yoffset="12" xadvance="24" chnl="15" x="66" y="209" page="0"/>
|
||||||
|
<char id="53" index="24" char="5" width="26" height="40" xoffset="-1" yoffset="13" xadvance="24" chnl="15" x="95" y="209" page="0"/>
|
||||||
|
<char id="55" index="26" char="7" width="25" height="40" xoffset="0" yoffset="12" xadvance="24" chnl="15" x="96" y="165" page="0"/>
|
||||||
|
<char id="48" index="19" char="0" width="23" height="40" xoffset="1" yoffset="13" xadvance="24" chnl="15" x="117" y="123" page="0"/>
|
||||||
|
<char id="91" index="62" char="[" width="14" height="40" xoffset="-1" yoffset="12" xadvance="11" chnl="15" x="125" y="82" page="0"/>
|
||||||
|
<char id="93" index="64" char="]" width="14" height="40" xoffset="-1" yoffset="12" xadvance="11" chnl="15" x="140" y="82" page="0"/>
|
||||||
|
<char id="123" index="94" char="{" width="15" height="40" xoffset="-1" yoffset="12" xadvance="12" chnl="15" x="122" y="164" page="0"/>
|
||||||
|
<char id="125" index="96" char="}" width="15" height="40" xoffset="-1" yoffset="12" xadvance="12" chnl="15" x="122" y="205" page="0"/>
|
||||||
|
<char id="108" index="79" char="l" width="11" height="40" xoffset="-1" yoffset="13" xadvance="9" chnl="15" x="138" y="164" page="0"/>
|
||||||
|
<char id="82" index="53" char="R" width="28" height="39" xoffset="-1" yoffset="13" xadvance="24" chnl="15" x="141" y="123" page="0"/>
|
||||||
|
<char id="73" index="44" char="I" width="12" height="39" xoffset="-1" yoffset="13" xadvance="10" chnl="15" x="155" y="82" page="0"/>
|
||||||
|
<char id="79" index="50" char="O" width="24" height="39" xoffset="-1" yoffset="13" xadvance="23" chnl="15" x="157" y="41" page="0"/>
|
||||||
|
<char id="65" index="36" char="A" width="28" height="39" xoffset="-1" yoffset="13" xadvance="26" chnl="15" x="170" y="0" page="0"/>
|
||||||
|
<char id="70" index="41" char="F" width="19" height="39" xoffset="0" yoffset="13" xadvance="18" chnl="15" x="168" y="81" page="0"/>
|
||||||
|
<char id="71" index="42" char="G" width="24" height="39" xoffset="-1" yoffset="13" xadvance="20" chnl="15" x="182" y="40" page="0"/>
|
||||||
|
<char id="67" index="38" char="C" width="22" height="39" xoffset="-1" yoffset="13" xadvance="19" chnl="15" x="199" y="0" page="0"/>
|
||||||
|
<char id="66" index="37" char="B" width="23" height="39" xoffset="-1" yoffset="14" xadvance="21" chnl="15" x="138" y="205" page="0"/>
|
||||||
|
<char id="49" index="20" char="1" width="16" height="39" xoffset="4" yoffset="13" xadvance="24" chnl="15" x="150" y="163" page="0"/>
|
||||||
|
<char id="51" index="22" char="3" width="24" height="39" xoffset="0" yoffset="13" xadvance="24" chnl="15" x="162" y="203" page="0"/>
|
||||||
|
<char id="54" index="25" char="6" width="23" height="39" xoffset="1" yoffset="13" xadvance="24" chnl="15" x="167" y="163" page="0"/>
|
||||||
|
<char id="56" index="27" char="8" width="21" height="39" xoffset="1" yoffset="13" xadvance="24" chnl="15" x="170" y="121" page="0"/>
|
||||||
|
<char id="57" index="28" char="9" width="23" height="39" xoffset="1" yoffset="13" xadvance="24" chnl="15" x="188" y="80" page="0"/>
|
||||||
|
<char id="33" index="4" char="!" width="10" height="39" xoffset="-1" yoffset="13" xadvance="9" chnl="15" x="207" y="40" page="0"/>
|
||||||
|
<char id="37" index="8" char="%" width="32" height="39" xoffset="-1" yoffset="13" xadvance="29" chnl="15" x="187" y="203" page="0"/>
|
||||||
|
<char id="40" index="11" char="(" width="13" height="39" xoffset="-1" yoffset="12" xadvance="11" chnl="15" x="191" y="161" page="0"/>
|
||||||
|
<char id="41" index="12" char=")" width="13" height="39" xoffset="-1" yoffset="12" xadvance="11" chnl="15" x="192" y="120" page="0"/>
|
||||||
|
<char id="47" index="18" char="/" width="25" height="39" xoffset="-2" yoffset="13" xadvance="22" chnl="15" x="205" y="160" page="0"/>
|
||||||
|
<char id="63" index="34" char="?" width="20" height="39" xoffset="-2" yoffset="13" xadvance="17" chnl="15" x="206" y="120" page="0"/>
|
||||||
|
<char id="107" index="78" char="k" width="24" height="39" xoffset="-1" yoffset="13" xadvance="20" chnl="15" x="212" y="80" page="0"/>
|
||||||
|
<char id="38" index="9" char="&" width="28" height="38" xoffset="-1" yoffset="14" xadvance="23" chnl="15" x="227" y="120" page="0"/>
|
||||||
|
<char id="105" index="76" char="i" width="11" height="38" xoffset="-1" yoffset="15" xadvance="9" chnl="15" x="218" y="40" page="0"/>
|
||||||
|
<char id="113" index="84" char="q" width="20" height="37" xoffset="-1" yoffset="23" xadvance="18" chnl="15" x="222" y="0" page="0"/>
|
||||||
|
<char id="112" index="83" char="p" width="20" height="37" xoffset="-1" yoffset="23" xadvance="18" chnl="15" x="230" y="38" page="0"/>
|
||||||
|
<char id="100" index="71" char="d" width="20" height="37" xoffset="-1" yoffset="15" xadvance="18" chnl="15" x="243" y="0" page="0"/>
|
||||||
|
<char id="98" index="69" char="b" width="20" height="37" xoffset="-1" yoffset="15" xadvance="18" chnl="15" x="237" y="76" page="0"/>
|
||||||
|
<char id="119" index="90" char="w" width="36" height="30" xoffset="-3" yoffset="23" xadvance="30" chnl="15" x="0" y="225" page="0"/>
|
||||||
|
<char id="116" index="87" char="t" width="21" height="36" xoffset="-3" yoffset="17" xadvance="15" chnl="15" x="251" y="38" page="0"/>
|
||||||
|
<char id="121" index="92" char="y" width="24" height="36" xoffset="-2" yoffset="23" xadvance="20" chnl="15" x="264" y="0" page="0"/>
|
||||||
|
<char id="103" index="74" char="g" width="20" height="36" xoffset="-1" yoffset="23" xadvance="18" chnl="15" x="220" y="200" page="0"/>
|
||||||
|
<char id="59" index="30" char=";" width="13" height="32" xoffset="-4" yoffset="24" xadvance="8" chnl="15" x="37" y="224" page="0"/>
|
||||||
|
<char id="109" index="80" char="m" width="32" height="30" xoffset="-1" yoffset="23" xadvance="30" chnl="15" x="231" y="159" page="0"/>
|
||||||
|
<char id="114" index="85" char="r" width="20" height="30" xoffset="-1" yoffset="23" xadvance="16" chnl="15" x="256" y="114" page="0"/>
|
||||||
|
<char id="117" index="88" char="u" width="19" height="30" xoffset="-1" yoffset="23" xadvance="17" chnl="15" x="258" y="75" page="0"/>
|
||||||
|
<char id="122" index="93" char="z" width="23" height="30" xoffset="-2" yoffset="23" xadvance="20" chnl="15" x="273" y="37" page="0"/>
|
||||||
|
<char id="120" index="91" char="x" width="21" height="30" xoffset="-2" yoffset="23" xadvance="17" chnl="15" x="289" y="0" page="0"/>
|
||||||
|
<char id="110" index="81" char="n" width="23" height="30" xoffset="-1" yoffset="23" xadvance="21" chnl="15" x="241" y="190" page="0"/>
|
||||||
|
<char id="101" index="72" char="e" width="19" height="29" xoffset="-1" yoffset="23" xadvance="16" chnl="15" x="241" y="221" page="0"/>
|
||||||
|
<char id="111" index="82" char="o" width="20" height="29" xoffset="-1" yoffset="23" xadvance="17" chnl="15" x="261" y="221" page="0"/>
|
||||||
|
<char id="97" index="68" char="a" width="25" height="29" xoffset="-2" yoffset="24" xadvance="22" chnl="15" x="264" y="145" page="0"/>
|
||||||
|
<char id="115" index="86" char="s" width="18" height="29" xoffset="-2" yoffset="23" xadvance="15" chnl="15" x="277" y="106" page="0"/>
|
||||||
|
<char id="99" index="70" char="c" width="19" height="29" xoffset="-1" yoffset="23" xadvance="16" chnl="15" x="278" y="68" page="0"/>
|
||||||
|
<char id="118" index="89" char="v" width="24" height="29" xoffset="-3" yoffset="23" xadvance="19" chnl="15" x="297" y="31" page="0"/>
|
||||||
|
<char id="64" index="35" char="@" width="27" height="28" xoffset="0" yoffset="23" xadvance="26" chnl="15" x="311" y="0" page="0"/>
|
||||||
|
<char id="58" index="29" char=":" width="11" height="28" xoffset="-1" yoffset="24" xadvance="10" chnl="15" x="51" y="223" page="0"/>
|
||||||
|
<char id="95" index="66" char="_" width="25" height="7" xoffset="-2" yoffset="49" xadvance="21" chnl="15" x="278" y="98" page="0"/>
|
||||||
|
<char id="35" index="6" char="#" width="22" height="23" xoffset="-1" yoffset="19" xadvance="20" chnl="15" x="298" y="61" page="0"/>
|
||||||
|
<char id="94" index="65" char="^" width="22" height="20" xoffset="0" yoffset="25" xadvance="21" chnl="15" x="265" y="175" page="0"/>
|
||||||
|
<char id="60" index="31" char="<" width="20" height="22" xoffset="0" yoffset="25" xadvance="21" chnl="15" x="265" y="196" page="0"/>
|
||||||
|
<char id="62" index="33" char=">" width="20" height="22" xoffset="0" yoffset="25" xadvance="21" chnl="15" x="282" y="219" page="0"/>
|
||||||
|
<char id="43" index="14" char="+" width="21" height="21" xoffset="-1" yoffset="21" xadvance="19" chnl="15" x="286" y="196" page="0"/>
|
||||||
|
<char id="126" index="97" char="~" width="21" height="11" xoffset="0" yoffset="34" xadvance="21" chnl="15" x="44" y="127" page="0"/>
|
||||||
|
<char id="61" index="32" char="=" width="18" height="17" xoffset="0" yoffset="23" xadvance="17" chnl="15" x="220" y="237" page="0"/>
|
||||||
|
<char id="42" index="13" char="*" width="18" height="17" xoffset="-1" yoffset="14" xadvance="16" chnl="15" x="288" y="175" page="0"/>
|
||||||
|
<char id="45" index="16" char="-" width="17" height="11" xoffset="0" yoffset="30" xadvance="17" chnl="15" x="138" y="245" page="0"/>
|
||||||
|
<char id="34" index="5" char=""" width="15" height="15" xoffset="-1" yoffset="13" xadvance="13" chnl="15" x="303" y="218" page="0"/>
|
||||||
|
<char id="39" index="10" char="'" width="9" height="14" xoffset="-1" yoffset="13" xadvance="7" chnl="15" x="282" y="242" page="0"/>
|
||||||
|
<char id="96" index="67" char="`" width="12" height="13" xoffset="1" yoffset="13" xadvance="16" chnl="15" x="162" y="243" page="0"/>
|
||||||
|
<char id="44" index="15" char="," width="12" height="13" xoffset="-3" yoffset="43" xadvance="8" chnl="15" x="175" y="243" page="0"/>
|
||||||
|
<char id="46" index="17" char="." width="10" height="11" xoffset="-1" yoffset="40" xadvance="8" chnl="15" x="33" y="86" page="0"/>
|
||||||
|
<char id="32" index="3" char=" " width="0" height="0" xoffset="-2" yoffset="47" xadvance="11" chnl="15" x="41" y="182" page="0"/>
|
||||||
|
</chars>
|
||||||
|
<kernings count="0"/>
|
||||||
|
</font>
|
||||||
BIN
data/font/MarkerFelt.png
Normal file
|
After Width: | Height: | Size: 120 KiB |
BIN
data/icon.png
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 25 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 35 KiB |
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 55 KiB |
|
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 5.1 KiB After Width: | Height: | Size: 4.4 KiB |
|
Before Width: | Height: | Size: 224 KiB After Width: | Height: | Size: 83 KiB |
|
Before Width: | Height: | Size: 7.6 KiB After Width: | Height: | Size: 6.9 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 13 KiB |
BIN
data/interiors/8trim.dif
Normal file
BIN
data/interiors/9trim.dif
Normal file
BIN
data/interiors/ADatL1.dif
Normal file
BIN
data/interiors/ADatL2.dif
Normal file
BIN
data/interiors/ADatL3.dif
Normal file
BIN
data/interiors/ADatL4.dif
Normal file
BIN
data/interiors/ADatL5.dif
Normal file
BIN
data/interiors/ADatL6.dif
Normal file
BIN
data/interiors/ADatL7.dif
Normal file
BIN
data/interiors/ADatL8.dif
Normal file
BIN
data/interiors/ADatL9.dif
Normal file
BIN
data/interiors/AFRICAN002.jpg
Normal file
|
After Width: | Height: | Size: 95 KiB |
BIN
data/interiors/AMERICA011_RESIZE.jpg
Normal file
|
After Width: | Height: | Size: 87 KiB |
BIN
data/interiors/AMERICA022_RESIZE.jpg
Normal file
|
After Width: | Height: | Size: 178 KiB |
BIN
data/interiors/AZTEC002.jpg
Normal file
|
After Width: | Height: | Size: 61 KiB |
BIN
data/interiors/AZTEC029.jpg
Normal file
|
After Width: | Height: | Size: 183 KiB |
BIN
data/interiors/AlleyMechanics.dif
Normal file
BIN
data/interiors/Allthewayupbuzz.dif
Normal file
BIN
data/interiors/AroundTheRoomIn40Seconds.dif
Normal file
BIN
data/interiors/Autonomous.dif
Normal file
BIN
data/interiors/BRICKS__003_RESIZE.jpg
Normal file
|
After Width: | Height: | Size: 118 KiB |
BIN
data/interiors/BigPitChallenge.dif
Normal file
BIN
data/interiors/Black.png
Normal file
|
After Width: | Height: | Size: 605 B |
BIN
data/interiors/CELTIC_001.jpg
Normal file
|
After Width: | Height: | Size: 136 KiB |
BIN
data/interiors/CELTIC_002.jpg
Normal file
|
After Width: | Height: | Size: 98 KiB |
BIN
data/interiors/CK1final2.dif
Normal file
BIN
data/interiors/Camo-tropic2.jpg
Normal file
|
After Width: | Height: | Size: 380 KiB |
BIN
data/interiors/Ceiling1.JPG
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
data/interiors/Ceiling1.PNG
Normal file
|
After Width: | Height: | Size: 508 B |
BIN
data/interiors/Cycle.dif
Normal file
BIN
data/interiors/DOOR04.jpg
Normal file
|
After Width: | Height: | Size: 146 KiB |
BIN
data/interiors/DeterminationRace.dif
Normal file
BIN
data/interiors/Doors01.dif
Normal file
BIN
data/interiors/Doors02.dif
Normal file
BIN
data/interiors/Doors02_MPs.dif
Normal file
BIN
data/interiors/Doors03.dif
Normal file
BIN
data/interiors/Doors03_MPs.dif
Normal file
BIN
data/interiors/Doors04.dif
Normal file
BIN
data/interiors/Doors04_MPs.dif
Normal file
BIN
data/interiors/Doors05.dif
Normal file
BIN
data/interiors/Doors05_MPs.dif
Normal file
BIN
data/interiors/Doors06.dif
Normal file
BIN
data/interiors/Doors06_MPs.dif
Normal file
BIN
data/interiors/Doors07.dif
Normal file
BIN
data/interiors/Doors07_MPs.dif
Normal file
BIN
data/interiors/Doors08.dif
Normal file
BIN
data/interiors/Doors08_MPs.dif
Normal file
BIN
data/interiors/Doors09.dif
Normal file
BIN
data/interiors/Doors09_MPs.dif
Normal file
BIN
data/interiors/Doors_Tut2.dif
Normal file
BIN
data/interiors/EDGE_RED.jpg
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
data/interiors/EGYPTIAN002.jpg
Normal file
|
After Width: | Height: | Size: 76 KiB |
BIN
data/interiors/EGYPTIAN004.jpg
Normal file
|
After Width: | Height: | Size: 126 KiB |
BIN
data/interiors/EGYPTIAN005.jpg
Normal file
|
After Width: | Height: | Size: 76 KiB |
BIN
data/interiors/EGYPTIAN014.jpg
Normal file
|
After Width: | Height: | Size: 301 KiB |
BIN
data/interiors/EGYPTIAN022.jpg
Normal file
|
After Width: | Height: | Size: 366 KiB |
BIN
data/interiors/Egueecommlevel.dif
Normal file
BIN
data/interiors/FLOOR02.jpg
Normal file
|
After Width: | Height: | Size: 99 KiB |
BIN
data/interiors/FLOOR07.jpg
Normal file
|
After Width: | Height: | Size: 53 KiB |
BIN
data/interiors/FLOOR2.jpg
Normal file
|
After Width: | Height: | Size: 127 KiB |
BIN
data/interiors/FLOOR4.jpg
Normal file
|
After Width: | Height: | Size: 129 KiB |
BIN
data/interiors/FizzyCherrySoda.dif
Normal file
BIN
data/interiors/FizzyCherrySoda2.dif
Normal file
BIN
data/interiors/Full128x128.png
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
BIN
data/interiors/Full128x128W.png
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
BIN
data/interiors/FunWithFriction.dif
Normal file
BIN
data/interiors/GCLCawDedicate.dif
Normal file
BIN
data/interiors/GREEK_ROMAN002.jpg
Normal file
|
After Width: | Height: | Size: 298 KiB |
BIN
data/interiors/GREEK_ROMAN003.jpg
Normal file
|
After Width: | Height: | Size: 97 KiB |
BIN
data/interiors/GREEK_ROMAN008.jpg
Normal file
|
After Width: | Height: | Size: 77 KiB |