Compare commits

...
1184 Commits
Author SHA1 Message Date
Anuken 69944a2b63 Crash fixes 2019-09-17 19:29:38 -04:00
Anuken 0ceb58a105 Bugfixes 2019-09-17 19:25:37 -04:00
Anuken 5e8da856e7 Conclusively fixed status effect null issue 2019-09-17 18:54:30 -04:00
Anuken ee412e1994 passbackback 2019-09-17 17:39:20 -04:00
Anuken 02736524bd Update Tutorial.java 2019-09-17 12:27:18 -04:00
Anuken c357b97b3b Update Control.java 2019-09-17 11:00:57 -04:00
Anuken dbe7251c6b Update Statuses.java 2019-09-17 10:59:40 -04:00
Anuken 7ae90f655c Merge remote-tracking branch 'origin/master' 2019-09-16 23:25:14 -04:00
Anuken 669ce6dfbb launch pad fix 2019-09-16 23:25:09 -04:00
David Held 4dc55e5594 Fixes bug which let phase conveyor operate with any non-zero power; now requires full power to work (#672)
* Fixes bug which let phase conveyor operate with any non-zero power; now requires full power to work

* Fixed normal bridge, deprecated method
2019-09-16 19:00:06 -04:00
Anuken 4b824f7a4c Crash fixes 2019-09-16 17:26:39 -04:00
Anuken 3435132e87 Status nullcheck 2019-09-16 08:38:49 -04:00
Anuken d49b15b2a0 Fixed some things 2019-09-16 08:24:10 -04:00
Anuken 0c59553b3d Fixed dialog padding 2019-09-15 21:57:19 -04:00
Anuken 4a50192937 Docs 2019-09-15 21:30:42 -04:00
Anuken f65ab00250 Merge remote-tracking branch 'origin/master' 2019-09-15 21:03:45 -04:00
Anuken f71c3af2e1 Plugin config file creation 2019-09-15 21:03:41 -04:00
JopoJP 77fb9e3d3e Fixed translation (#627)
The translation stated that storage is combined if placed beside each other but that isn't true.
2019-09-15 20:40:34 -04:00
osoitz c1d6674797 Create bundle_eu.properties (#629)
Basque translation
2019-09-15 20:40:20 -04:00
itskatt 659aaba0b9 Update the French translation (#631)
* sync bundle and translate newest additions

* translate a few things

* Respect Capitalisaton & further the translation effort.

* Apply suggestions from code review

Apply review.

Co-Authored-By: itskatt <48765398+itskatt@users.noreply.github.com>

* Apply suggestions from code review

Revert changes to English version

Co-Authored-By: itskatt <48765398+itskatt@users.noreply.github.com>

* Add amrsoll to the contributors

* Update bundle_fr.properties.

* Add message.

* Sync with bundle.properties

* sync

* Translate newest additions
2019-09-15 20:39:59 -04:00
DeltaRays a3816f6355 Completed the Italian (it) translation (#632)
Completed the Italian (it) translation, edited some partially incorrect translations (thanks Militare11). If you find any more incorrect translations make sure to tell us in the translations channel 😉
2019-09-15 20:39:50 -04:00
laohuaji233 4829f040c2 Update bundle_zh_CN.properties (#642)
* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties
2019-09-15 20:37:55 -04:00
VizardAlpha 59826f5189 Updates bundle_fr_BE.properties (#644)
* Updates bundle_fr_BE.properties

* Update bundle_fr_BE.properties
2019-09-15 20:37:45 -04:00
Prosta4okua a6fac9e56a Translation (#645)
* Fixes

* Капіталізація це зло.

* Update bundle_ru.properties

* Update bundle_uk_UA.properties

* .-.

* Gm

Description

* Oof

* ЈҮУКЕНГШҺЗХҸЖДЛОРПАВЫӘЧСМИТҒБӨ

* dada

* Translate new descriptions

* й

* Ukrainian finished. Fixed some errors.

* Translated everything. Maybe.

* /

* 1

* Added tutorial. Thank to Slava0135 and ymomfe.

* 1

* 1

* WATER

WATER

* [[]]

* 1

* gmmm

/-/-/-/

* idk what i changed

* Обновление и корректировка строк с 1 по 90

* router

* Обновление и корректировка строк с 87 по 252

Обновление и корректировка строк с 87 по 252, а так же правка предыдущих.
- 35 строку лучше привести в соответствии с оригинальным текстом, без дополнений и пояснений.
- 103 строка не переводится в соответствии с https://semver.org/lang/ru/ , хотя это не жёсткое правило, поскольку не влияет непосредственно на алгоритм работы с версиями.
- 187 Предлагаю эту строку перевести как 'Настройки карты', не смотря на оригинальный текст (соответственно и 230, 231).

* router

* Обновление и корректировка строк с 253 по 321 - "WorldEditor Update"

Обновление и корректировка строк с 253 по 321, а так же предыдущих.
- Разобраться с 297 строкой ("filter.option.percentile").
- Разобраться с местами применения 322 строки.

* озарение в переводе ;D

* Fixed "В"

* Unfinished Ukrainian language.

* Small fixes.

* Обновление и корректировка строк с 322 по 377 - "Campaign Update"

Обновление и корректировка строк с 322 по 377, а так же предыдущих.
- По прежнему нужно разобраться с 297 строкой ("filter.option.percentile"). Добавил метку для отличия функционала. Проверю и уберу к следующей сборке.

* Мелкие правки

* From additional improvements.

* hmmm

* hm

* 123

* Небольшие правки "КАК СОЗДАТЬ СЕРВЕР С ДРУГОМ Update"

* Рефакторинг и добавление новых строк с 1 по 136

- Приведение положения строк в бандле в соответствии с референсным файлом
- Добавление и перевод новых (отсутствующих) строк из референсного файла

* Рефакторинг и добавление новых строк с 137 по 380

- Приведение положения строк в бандле в соответствии с референсным файлом
- Добавление и перевод новых (отсутствующих) строк из референсного файла
- Мелкие правки

* Second pack of changes by Vanguard.

* ru_ri

* Небольшие правки

* 313131

* Рефакторинг, корректировка и добавление новых строк с 381 по 600

Рефакторинг, корректировка и добавление новых строк с 381 по 600
- Приведение положения строк в бандле в соответствии с референсным файлом
- Добавление и перевод новых (отсутствующих) строк из референсного файла
- Корректировка существующих строк

* Перші сто рядків українського перекладу відредаговано.

* 121

* 212122

* правки в редакторе

* ещё правки в редакторе

* мелкие правки

* правка

* Рефакторинг, корректировка и добавление новых строк с 601 по 800

Рефакторинг, корректировка и добавление новых строк с 601 по 800
- Приведение положения строк в бандле в соответствии с референсным файлом
- Добавление и перевод новых (отсутствующих) строк из референсного файла
- Корректировка существующих строк

* Рефакторинг, корректировка и добавление новых строк с 801 по 912

Рефакторинг, корректировка и добавление новых строк с 801 по 912
- Приведение положения строк в бандле в соответствии с референсным файлом
- Добавление и перевод новых (отсутствующих) строк из референсного файла
- Корректировка существующих строк

* мелкие правки
2019-09-15 20:37:38 -04:00
AmateurPotion 68f0ef1bd2 Update bundle_ko.properties (#650)
* Update bundle_ko.properties

* Update bundle_ko.properties
2019-09-15 20:35:07 -04:00
east d53882a086 Update bundle_tr.properties (#657)
Translated some still-English parts (will continue) and added some missing lines.
2019-09-15 20:33:34 -04:00
CinExPL 7c7306d37b Update bundle_pl.properties (#659)
Merge https://github.com/Anuken/Mindustry/pull/633 as first.
This file contains @Dr4coDragon's edits with some changes.
+ improvements based on comparison with original bundle file.
2019-09-15 20:32:40 -04:00
Draco d5a9938354 Updated Polish translation (done) (#633)
* Updated polish translation

Added some of the missing translations for map descriptions, tutorial and few others

* Fixed typos and added more translations

* Added most of remaining translations (almost done)

There's only a few untranslated strings left which i'm not sure about proper translation or meaning

* Last few changes and translations added (done)

Translation update is ready
2019-09-15 20:30:54 -04:00
Anuken 3fad378b69 List fix 2019-09-15 18:24:18 -04:00
Anuken afb47344c6 Arc update trigger 2019-09-15 17:55:33 -04:00
Anuken 5ba7e1d08b fixed #665 2019-09-15 16:54:58 -04:00
Anuken 681347e933 Mobile scrolling fix 2019-09-15 15:47:42 -04:00
Anuken f1bf8a0f1a Equality comparison fix 2019-09-15 14:38:00 -04:00
Anuken 874b41cb46 Fixed disconnect not triggering 2019-09-15 14:24:00 -04:00
Anuken d3876b6376 Fixed lobby joining 2019-09-15 14:01:27 -04:00
Anuken f72f2bdf5d Fixed servers not discovering 2019-09-15 13:52:56 -04:00
Anuken af91e17b13 2 2019-09-15 13:13:21 -04:00
Anuken 69bfd8f54d Static steam names 2019-09-15 13:03:29 -04:00
Anuken 369c3b569c Bugfixes, game startup connection 2019-09-15 12:44:30 -04:00
Anuken 8480e656b9 More steam stuff 2019-09-15 10:38:36 -04:00
Anuken fb29324905 Steam stuff 2019-09-15 09:27:31 -04:00
Anuken ed88633712 More bugfixes 2019-09-14 21:36:32 -04:00
Anuken cd456f80a4 Bugfixes 2019-09-14 20:57:10 -04:00
Anuken 6d61515e28 Compile fix 2019-09-14 20:30:26 -04:00
Anuken 38af936e3f Bugfix 2019-09-14 19:14:22 -04:00
Anuken d59f5ddc59 Achievement work, cleanup 2019-09-14 19:01:27 -04:00
Anuken 6c07c5006a Added client implementation for 50 achievemenets 2019-09-13 22:02:13 -04:00
Anuken d4d060a500 'then' 2019-09-13 14:01:31 -04:00
Anuken 55e43761e9 Auto-tag Arc commits at release time 2019-09-13 13:53:15 -04:00
Anuken b1edaa1408 Testing arc hash script 4 2019-09-13 13:12:34 -04:00
Anuken d8d9762998 Testing arc hash script 3 2019-09-13 13:08:21 -04:00
Anuken dd93284062 Merge remote-tracking branch 'origin/master' 2019-09-13 13:04:20 -04:00
Anuken 19c76fc741 Testing arc hash script 2019-09-13 13:03:02 -04:00
Anuken 1013455b0f Update ItemBridge.java 2019-09-13 08:56:53 -04:00
Anuken 066e4380e1 Crash fix 2019-09-13 08:17:47 -04:00
Anuken 55da9df2a1 Fixed #655 2019-09-13 08:13:40 -04:00
Anuken 4b26c57a20 Added direct core-vault chaining 2019-09-12 21:14:09 -04:00
Anuken d0491dd68a 8 2019-09-12 19:00:31 -04:00
Anuken cd8cc34c31 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	.travis.yml
2019-09-12 18:56:30 -04:00
Anuken 0249ebf718 7 2019-09-12 18:56:03 -04:00
Anuken 7fb4eeb998 Update .travis.yml 2019-09-12 18:29:10 -04:00
Anuken 0cd7313523 5 2019-09-12 17:48:41 -04:00
Anuken 5c3fc2a6ba 4 2019-09-12 17:45:53 -04:00
Anuken 19f888061f 3 2019-09-12 17:39:45 -04:00
Anuken 4e8a02be7d 2 2019-09-12 17:33:15 -04:00
Anuken 2231062c19 Travis testing 2019-09-12 17:19:01 -04:00
Anuken fb4faa15bb Merge remote-tracking branch 'origin/master' 2019-09-12 13:03:49 -04:00
Anuken e6d05926dd Bugfix 2019-09-12 13:02:48 -04:00
Anuken ca9f18325c Fixed #583 2019-09-12 12:40:52 -04:00
Anuken bd96ae5a48 Nestable array iterators + unit tests 2019-09-12 12:17:28 -04:00
east cf1cc2ca49 Typo fix (#653)
Corrected "Prepating"
2019-09-12 10:41:22 -04:00
Anuken bbaaa91575 Fixed black styles on game reload (Android) 2019-09-12 09:06:25 -04:00
Anuken 41b21c81a0 Fixed mass driver deadlock 2019-09-12 08:42:19 -04:00
Anuken 44842d3221 Deploy animation 2019-09-11 16:54:18 -04:00
Anuken d9c7665aca Events 2019-09-11 12:37:58 -04:00
Anuken 565b79d1b2 Events, triggers 2019-09-10 22:50:00 -04:00
Anuken f30dc7dcd9 Cleanup 2019-09-10 21:20:28 -04:00
Anuken e4cdf515c9 More workshop implementation 2019-09-10 20:53:31 -04:00
Anuken ad3463cbc4 Merge remote-tracking branch 'origin/master' 2019-09-10 15:05:06 -04:00
Anuken db733bced6 Stats 2019-09-10 15:05:02 -04:00
Anuken 7aa71a7201 Steam workshop publishing 2019-09-10 14:25:34 -04:00
Anuken 6fe55661ed Bugfixes / Fixed #639 2019-09-09 19:06:11 -04:00
Anuken af89efcfc4 Update links to match Steam policy 2019-09-09 17:05:36 -04:00
Anuken 82493c596d Merge remote-tracking branch 'origin/master' 2019-09-09 16:22:40 -04:00
Anuken 5a3fbf33df Made all color names lowercase for consistent style 2019-09-09 16:22:29 -04:00
Anuken 5bed0f3bcc Update LoadDialog.java 2019-09-09 00:03:55 -04:00
Anuken 87f6ff7be6 Update IOSLauncher.java 2019-09-09 00:01:48 -04:00
Anuken fa56996e10 Update AndroidLauncher.java 2019-09-09 00:01:07 -04:00
Anuken b867cdb8b9 Map fix 2019-09-08 23:33:21 -04:00
Anuken 3bac32e04a Dialog fix 2019-09-08 23:30:15 -04:00
Anuken c4c0f45228 cleaning up what remains 2019-09-08 22:55:36 -04:00
Anuken d981bb95b9 it is gone 2019-09-08 22:32:47 -04:00
Anuken c9f0a59339 time for a crusade against dialogs 2019-09-08 15:08:55 -04:00
Anuken ec58e868fd Update bundle.properties 2019-09-08 11:35:38 -04:00
Ulysses2 aa5152ac70 Update Router.java (#643) 2019-09-08 09:31:49 -04:00
Anuken 2cc627e7d0 Merged net module 2019-09-07 16:55:09 -04:00
Anuken 8653e7bbb1 Cleanup 2019-09-07 16:03:20 -04:00
Anuken 4fb7430fb7 More cleanup, removed connection IDs 2019-09-07 15:23:13 -04:00
Anuken e90c8c4d3e Extensive network refactor 2019-09-07 14:11:50 -04:00
Anuken 06e6deae42 More cleanup 2019-09-07 12:10:26 -04:00
Anuken 38fe99f10e Android cleanup 2019-09-07 12:04:28 -04:00
Anuken 05ab62f038 merge 2019-09-06 22:51:35 -04:00
Anuken 168011586b More file chooser fixes 2019-09-06 22:09:54 -04:00
Anuken b5f1e566b2 New Android file chooser implementation 2019-09-06 21:21:30 -04:00
Anuken 9b6fb2f382 cleanup 2019-09-06 15:20:30 -04:00
Anuken 24bb2428e7 Bugfixes 2019-09-06 14:05:13 -04:00
Anuken 75ba33abc0 Compile fix 2019-09-06 14:02:42 -04:00
Anuken ff54629550 Merge 2019-09-06 13:58:32 -04:00
Anuken b492c7ae27 Bugfixes 2019-09-05 21:44:49 -04:00
Anuken 5d04f93a88 Merge remote-tracking branch 'origin/master' 2019-09-05 19:23:25 -04:00
Anuken 5651d1b023 Support for built-in servers 2019-09-05 19:23:17 -04:00
Axel Soll 6822e3f5b8 Add French app description for the Play Store. (#635)
* Add French app description for the Play Store.

* Add "Features include" line

* Update full_description.txt
2019-09-05 10:01:25 -04:00
Anuken 3cbb02f9fb Merge remote-tracking branch 'origin/master' 2019-09-04 23:16:33 -04:00
Anuken 0f79298c28 Many various fixes 2019-09-04 23:16:26 -04:00
Anuken 8f4bd09635 Update Blocks.java 2019-09-04 10:00:16 -04:00
Anuken 0a9cad2ea6 net fix 2019-09-03 22:59:10 -04:00
Anuken dc21adfda5 Better spawn animations 2019-09-03 22:55:46 -04:00
Anuken a7bfe18f4a Player limit / Server mode display / Crash fixes / More save info 2019-09-03 19:14:33 -04:00
Anuken 9cc76a148b Utility methods 2019-09-03 08:36:59 -04:00
Anuken 1d95a255bc Bugfixes 2019-09-03 08:21:23 -04:00
Anuken 3f8d412d1c Merge remote-tracking branch 'origin/master' 2019-09-02 21:07:45 -04:00
Anuken b2c35d45c3 merge 2 2019-09-02 21:07:40 -04:00
Anuken 35ab90e445 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	core/src/io/anuke/mindustry/core/NetServer.java
2019-09-02 21:07:15 -04:00
Anuken 9bfb5216f9 Merge remote-tracking branch 'origin/master' 2019-09-02 20:59:44 -04:00
Anuken b10656294e Merge 2019-09-02 20:59:35 -04:00
Anuken 316f4d471f Fixed iOS crash 2019-09-02 20:58:15 -04:00
J-VdS ef0b56eb22 Extra events (#630)
* eventype player join

* playerjoin event

* player leave

* player leave event

* typo

* remove

* leave fix
2019-09-02 19:37:38 -04:00
Anuken e640042e5d Update build.gradle 2019-09-02 12:40:52 -04:00
Anuken 2c0d2c5e22 Update NetServer.java 2019-09-02 12:37:25 -04:00
Anuken 9eed39c2ae Update NetServer.java 2019-09-02 12:34:15 -04:00
Anuken e8d89b6c43 Bugfixes 2019-09-01 15:52:07 -04:00
Anuken 494c3ffbc4 💥 2019-09-01 13:34:20 -04:00
Anuken 40d27c787c Fixed drones not finding blocked ores 2019-09-01 13:21:20 -04:00
Anuken 2fe5b44698 Java 8+ plugin load fix 2019-09-01 11:01:04 -04:00
Anuken 5cc32b9001 Fixed map loading bugs 2019-09-01 10:46:44 -04:00
Anuken d481af43c7 Fixed "disconnected" bug / Updated menu music 2019-09-01 10:19:13 -04:00
Anuken 1cd43f938f Bugfixes 2019-09-01 00:45:54 -04:00
Anuken 528f5295c2 Slightly more informative D/C messages 2019-09-01 00:39:08 -04:00
Anuken aaedeea870 console 2019-08-31 20:08:48 -04:00
Anuken c684c32abe Merge branch 'master' of https://github.com/Anuken/Mindustry into steam 2019-08-31 17:04:23 -04:00
Anuken 34df9cca2c Fixed Java 8+ compatibility 2019-08-31 16:54:29 -04:00
Anuken c678b53d3f Merge remote-tracking branch 'origin/master' 2019-08-31 14:49:33 -04:00
Anuken ea30cc7d19 Renamed folder to use correct locale 2019-08-31 14:49:29 -04:00
DeltaRays a2772d09f3 Update bundle_it.properties (#626) 2019-08-31 13:59:52 -04:00
Anuken a0016f001c Updated bundles 2019-08-31 13:08:06 -04:00
Prosta4okua ca532f271f [WIP] Ukr&Rus Translation (#607)
* Fixes

* Капіталізація це зло.

* Update bundle_ru.properties

* Update bundle_uk_UA.properties

* .-.

* Gm

Description

* Oof

* ЈҮУКЕНГШҺЗХҸЖДЛОРПАВЫӘЧСМИТҒБӨ

* dada

* Translate new descriptions

* й

* Ukrainian finished. Fixed some errors.

* Translated everything. Maybe.

* /

* 1

* Added tutorial. Thank to Slava0135 and ymomfe.

* 1

* 1

* WATER

WATER

* [[]]

* 1

* gmmm

/-/-/-/

* idk what i changed

* Обновление и корректировка строк с 1 по 90

* router

* Обновление и корректировка строк с 87 по 252

Обновление и корректировка строк с 87 по 252, а так же правка предыдущих.
- 35 строку лучше привести в соответствии с оригинальным текстом, без дополнений и пояснений.
- 103 строка не переводится в соответствии с https://semver.org/lang/ru/ , хотя это не жёсткое правило, поскольку не влияет непосредственно на алгоритм работы с версиями.
- 187 Предлагаю эту строку перевести как 'Настройки карты', не смотря на оригинальный текст (соответственно и 230, 231).

* router

* Обновление и корректировка строк с 253 по 321 - "WorldEditor Update"

Обновление и корректировка строк с 253 по 321, а так же предыдущих.
- Разобраться с 297 строкой ("filter.option.percentile").
- Разобраться с местами применения 322 строки.

* озарение в переводе ;D

* Fixed "В"

* Unfinished Ukrainian language.

* Small fixes.

* Обновление и корректировка строк с 322 по 377 - "Campaign Update"

Обновление и корректировка строк с 322 по 377, а так же предыдущих.
- По прежнему нужно разобраться с 297 строкой ("filter.option.percentile"). Добавил метку для отличия функционала. Проверю и уберу к следующей сборке.

* Мелкие правки

* From additional improvements.
2019-08-31 13:07:02 -04:00
Anuken 89402fd097 removeCommand() 2019-08-31 13:00:34 -04:00
ichthyosaurus 75451743aa Update bundle_de.properties (#620) 2019-08-31 12:12:07 -04:00
AmateurPotion b4d9a6a507 Update bundle_ko.properties (#618)
* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties
2019-08-31 12:11:01 -04:00
VizardAlpha 335afa56a1 bundle_fr_BE.properties (#617)
* bundle_fr_BE.properties

* Small fix

https://fr.m.wikipedia.org/wiki/Flou_lumineux
2019-08-31 12:10:54 -04:00
laohuaji233 485592bdac Update bundle_zh_CN.properties (#612)
* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties
2019-08-31 12:05:49 -04:00
FranLamark ee9289fc24 Update bundle_es.propierties (Spanish trasnlation to the game) (#611)
* Update bundle_es.propierties

Translated mostly (i hope every) stuff in english, and edit some spanish stuff too. Gaven specially to some ores more descriptive names, and bring specially translation in spanish to newer things like draugs factories, information about this one, and related newer things.

* Update bundle_es.properties
2019-08-31 12:05:42 -04:00
Spico (Spirit Guy) a0c281a0a9 Update to Turkish Translation (#610)
Updated lines between 1 to 100.
Some tutorial messages are missing, going to translate them later on.
2019-08-31 12:05:08 -04:00
Dominik ad0b0858f6 Update bundle_pl.properties (#608)
* Update bundle_pl.properties

* Update bundle_pl.properties

* Update bundle_pl.properties

* Update bundle_pl.properties
2019-08-31 12:05:00 -04:00
itskattandAzarias Boutin c2191872ac [READY TO MERGE] French translation (#594)
* first step

* More progress

* Translate zones

* More translating

* Remove redundant part

* Translate ~100 lines

* Update bundle_fr.properties

* Update bundle_fr.properties

* More translating

* Translate over 1k lines, start translating the tutorial

* Rearange the french bundle like the original one

* Translate more lines from the tutorial

* Finish translating the tutorial + few adjustments

* Start translating the item descriptions

* More item description translating

* few parts that i've missed

* sync files + few changes

* not much

* Apply suggestions from AzariasB's code review

Co-Authored-By: Azarias Boutin <AzariasB@users.noreply.github.com>

* Few changes + add AzariasB to the contributors

* Translate new additions

* small fixes

* More small fixes
2019-08-31 12:04:52 -04:00
Anuken 5f361413bb /sync command 2019-08-31 10:14:26 -04:00
Anuken 3414026828 Crash fix 2019-08-31 09:50:05 -04:00
Anuken 7089fae0d5 Map fixes 2019-08-31 09:45:27 -04:00
Anuken 80bdf1e19c Bugfix 2019-08-31 08:47:53 -04:00
Anuken e0c1f2a31a Minor save fixes 2019-08-30 23:39:29 -04:00
Anuken 92cfa2b033 1x deconstruction speed 2019-08-30 22:16:18 -04:00
Anuken 877cd5968c Tweaks 2019-08-30 21:37:10 -04:00
Anuken b39464a7d1 Merged save previews 2019-08-30 20:13:03 -04:00
Anuken 52332e5821 Bugfixes 2019-08-30 20:11:48 -04:00
Anuken 7f2c7685b4 Lobby prefs 2019-08-30 19:49:36 -04:00
Anuken 7e80a60e65 More cleanup 2019-08-30 17:44:28 -04:00
Anuken 44544020ec Platform cleanup 2019-08-30 17:35:26 -04:00
Anuken 3b9d3fd233 Platform cleanup 2019-08-30 17:32:49 -04:00
Anuken 4e2d2ee378 Steam cleanup 2019-08-30 17:25:37 -04:00
Anuken 7aafa8b150 Merge 2019-08-30 16:39:40 -04:00
Anuken 6d9a59c60b More cleanup 2019-08-30 16:37:04 -04:00
Anuken 39e0977231 Entity cleanup 2019-08-30 16:00:09 -04:00
Anuken f8f140090f Fixed #623 2019-08-30 15:52:55 -04:00
Anuken f063f7b2d3 Minor tweaks 2019-08-30 15:17:05 -04:00
Anuken 60306f146f Campaign slot preview 2019-08-30 15:08:43 -04:00
Anuken 3b873b7cb2 Merge branches 'master' and 'save-preview' of https://github.com/Anuken/Mindustry into save-preview 2019-08-30 15:01:48 -04:00
Anuken 26d44ea030 Save slot previews 2019-08-30 15:01:38 -04:00
Anuken b369751a75 Bugfixes 2019-08-30 13:56:33 -04:00
Anuken 6e2cd81c9f Save previews 2019-08-30 13:53:19 -04:00
Anuken e953bd40eb PR build fix 2019-08-30 12:41:43 -04:00
Anuken 233ae99d3f Added teamchat 2019-08-29 23:22:47 -04:00
Anuken ddca5ef25a Data export/import 2019-08-29 22:04:01 -04:00
Anuken ae88f286a6 Merge remote-tracking branch 'origin/master' 2019-08-29 19:07:05 -04:00
Anuken 25af0c4302 Added bleeding edge info 2019-08-29 19:07:00 -04:00
Poussinou 96b398867b Update README.md (#622) 2019-08-29 18:57:54 -04:00
Anuken 97d1c49a3c ... 2019-08-29 18:53:46 -04:00
Anuken e83dfd3d5a ... 2019-08-29 18:45:03 -04:00
Anuken 1142af853d ... 2019-08-29 18:37:27 -04:00
Anuken 4d502fe073 Updated travis.yml 2019-08-29 18:31:55 -04:00
Anuken b022333df1 sadness 2019-08-29 18:27:42 -04:00
Anuken 725b2188aa Updated travis.yml 2019-08-29 18:09:03 -04:00
Anuken 1f20d19aea Updated travis.yml 2019-08-29 18:04:39 -04:00
Anuken ec9f91519d Updated travis.yml 2019-08-29 17:23:50 -04:00
Anuken ae4e3e2d33 Updated travis.yml 2019-08-29 17:07:58 -04:00
Anuken b931493d2f Updated travis.yml 2019-08-29 17:04:05 -04:00
Anuken 7b0c07533b Updated travis.yml 2019-08-29 16:52:52 -04:00
Anuken 33f0d64971 Update .travis.yml 2019-08-29 16:49:07 -04:00
Anuken d10592a397 Testing builds 2019-08-29 10:01:01 -04:00
Anuken 641937f952 Automatic custom game saves 2019-08-29 08:53:41 -04:00
Anuken b5ed309405 Page fix 2019-08-28 22:44:19 -04:00
Anuken 9bfbd7c953 Typo fix 2019-08-28 22:34:55 -04:00
Anuken 57924afa3f Moved plugin files 2019-08-28 22:12:25 -04:00
Anuken 76f11099b7 Merge branch 'plugins' of https://github.com/Anuken/Mindustry 2019-08-28 22:07:31 -04:00
Anuken efcf802682 JITPack fixes 2019-08-28 22:07:08 -04:00
Anuken b095840dc8 Votekick 2019-08-28 21:57:09 -04:00
Anuken 5f9370da9a Server plugins + clientside commands 2019-08-28 20:38:12 -04:00
Anuken 7a6eb08e53 Updated descriptions on GP 2019-08-28 18:26:36 -04:00
Anuken 865c3f28d5 Server plugins branch 2019-08-28 18:23:43 -04:00
Anuken d5916f3bc3 hmmm 2019-08-28 16:18:53 -04:00
Anuken 3ce870fb19 Building fix 2019-08-28 16:17:04 -04:00
Anuken a575284bfe Fixed unit tests 2019-08-28 14:12:11 -04:00
Anuken 89d79fdc65 Merge remote-tracking branch 'origin/master' 2019-08-28 13:18:31 -04:00
Anuken 05c0fd2f40 Bugfixes 2019-08-28 13:18:27 -04:00
Anuken bc3c2c46a8 iOS crash fix 2019-08-28 13:08:28 -04:00
Anuken 3d69e9c763 Fixed incorrect asset loading 2019-08-27 22:53:24 -04:00
Anuken 9f5a0ca4e9 Fixed crash on load 2019-08-27 21:11:39 -04:00
Anuken 43245681fe Merge branches 'asset-manager' and 'master' of https://github.com/Anuken/Mindustry 2019-08-27 19:40:13 -04:00
Anuken 9d214a77d7 Test fixes 2019-08-27 19:37:13 -04:00
Anuken 5134aca723 Put zone previews into atlas 2019-08-27 19:33:41 -04:00
Anuken 40405332ec Additional improvements 2019-08-27 18:34:38 -04:00
Anuken 8d61f3b479 Fixed some crashes 2019-08-27 18:25:38 -04:00
Anuken bd15287420 Better loading screen / Fixed unit tests 2019-08-27 17:44:25 -04:00
Anuken 5dfc3fd576 Functional loading 2019-08-27 16:32:22 -04:00
Anuken 1e80bdf19f Functional loading 2019-08-27 09:27:09 -04:00
Anuken 76cd7ba8d1 non-functional loading screen 2019-08-26 22:53:11 -04:00
Anuken 1dfa0d08de Testing out Github Actions workflow 2019-08-26 16:55:22 -04:00
Anuken 1fc9c82aaf Attempts to improve the loading system 2019-08-26 13:15:53 -04:00
Anuken 600a2b5ad7 Fixed mend projector place offset 2019-08-26 12:24:42 -04:00
Anuken cb60556ac0 Disabled structure mirroring 2019-08-26 12:23:09 -04:00
Anuken 62f683b871 Game load time breakdown 2019-08-26 08:10:27 -04:00
Anuken f22d32c15e more balance 2019-08-25 22:12:11 -04:00
Anuken a3d8586199 Improvements to version scripts 2019-08-25 22:02:00 -04:00
Anuken 0a471441cc Balance 2019-08-25 14:23:43 -04:00
Anuken 73149123b4 Fullscreen key / Bugfixes 2019-08-25 12:02:51 -04:00
Anuken 5c6f2171f4 Fixed black tile issue 2019-08-25 11:16:38 -04:00
Anuken fd973038bb mnet was a mistake 2019-08-24 18:29:21 -04:00
Anuken b7dff91d01 Merge remote-tracking branch 'origin/master' 2019-08-24 15:39:22 -04:00
Anuken e314d199f0 By popular demand, re-added command center 2019-08-24 15:39:01 -04:00
Spico (Spirit Guy) 3938c199f6 Request to Reseting the Turkish Translation File (#609)
There were some conflicting duplicated lines and someone put the file onto google translate, so some of the coloured lines were broken, and since (I think) Im the only one who edits this file (My brother didnt started translating yet) It would be easier for me to start from scratch.
2019-08-24 14:41:59 -04:00
Anuken 962eef4a1d or not 2019-08-24 13:06:39 -04:00
Anuken 97443a86cb fixed a crash that shouldn't even happen 2019-08-24 11:52:14 -04:00
Anuken 7137616224 Merge remote-tracking branch 'origin/master' 2019-08-24 10:45:36 -04:00
Anuken 444825a5c1 Bugfix 2019-08-24 10:45:25 -04:00
Anuken 986deaa6c7 Various fixes 2019-08-24 10:32:29 -04:00
Anuken 7b27903de2 Fixed some static library issues 2019-08-24 10:00:04 -04:00
Anuken bbadf6795e . 2019-08-23 19:16:43 -04:00
Anuken 8b9be6eafe Removed arcnet as dependency 2019-08-23 18:18:14 -04:00
Anuken da336ea412 Updated bundle texts 2019-08-23 18:14:27 -04:00
Anuken f1cf95d412 Merge remote-tracking branch 'origin/master' 2019-08-23 18:13:30 -04:00
Anuken 6642a3e9ad Added temp changelog to ignore 2019-08-23 18:13:26 -04:00
Dominik 49db7773e8 Update bundle_pl.properties (#586)
* Update bundle_pl.properties

* Update bundle_pl.properties

* Update bundle_pl.properties

* Update bundle_pl.properties

* Update bundle_pl.properties
2019-08-23 18:13:00 -04:00
AmateurPotion 9372819fb8 Update bundle_ko.properties (#588)
* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties
2019-08-23 18:12:53 -04:00
VizardAlpha 9d07d81551 bundle_fr_BE.properties (#595)
* bundle_fr_BE.properties

* bundle_fr_BE.properties

* bundle_fr_BE.properties
2019-08-23 18:12:45 -04:00
JasonD157 3c9bcf05e2 Update bundle_nl_BE.properties (#596) 2019-08-23 18:12:38 -04:00
Prosta4okua 3338da2a91 Patch 1 (#597)
* Fixes

* Капіталізація це зло.

* Update bundle_ru.properties

* Update bundle_uk_UA.properties

* .-.

* Gm

Description

* Oof

* ЈҮУКЕНГШҺЗХҸЖДЛОРПАВЫӘЧСМИТҒБӨ

* dada

* Translate new descriptions

* й

* Ukrainian finished. Fixed some errors.

* Translated everything. Maybe.

* /

* 1

* Added tutorial. Thank to Slava0135 and ymomfe.

* 1

* 1

* WATER

WATER

* [[]]

* 1

* gmmm

/-/-/-/

* idk what i changed

* Обновление и корректировка строк с 1 по 90

* router

* Обновление и корректировка строк с 87 по 252

Обновление и корректировка строк с 87 по 252, а так же правка предыдущих.
- 35 строку лучше привести в соответствии с оригинальным текстом, без дополнений и пояснений.
- 103 строка не переводится в соответствии с https://semver.org/lang/ru/ , хотя это не жёсткое правило, поскольку не влияет непосредственно на алгоритм работы с версиями.
- 187 Предлагаю эту строку перевести как 'Настройки карты', не смотря на оригинальный текст (соответственно и 230, 231).

* router

* Обновление и корректировка строк с 253 по 321 - "WorldEditor Update"

Обновление и корректировка строк с 253 по 321, а так же предыдущих.
- Разобраться с 297 строкой ("filter.option.percentile").
- Разобраться с местами применения 322 строки.

* озарение в переводе ;D
2019-08-23 18:12:30 -04:00
Daniel-Chin b31858a64f Update bundle_zh_CN.properties (#598)
Improved some word choice.  
Changed some translations to fit the English counterpart.  
In the weapon descriptions, the Chinese text misses some info. I added them according to the current English descriptions.
2019-08-23 18:11:10 -04:00
Kylof61034 8f2a8dc9ba Add my name to contributors (#602) 2019-08-23 18:10:58 -04:00
Kylof61034 44e54cd4df German translations (#600)
* german translation update 1

* german translation update 2

* german translation update 3

* german translation update 4

* german translation update 5

* german translation update 6

* fixed some little mistakes
2019-08-23 18:10:50 -04:00
Spico (Spirit Guy) 36c41557ea 1 change on the names (#605)
Changed CrazyBearTR onto Spico The Spirit Guy
CrazyBearTR was my old username and I dont use it anymore, so i dont think it needs to be there
2019-08-23 18:10:33 -04:00
Anuken d0d72101ab Fixed game6.ogg ending abruptly 2019-08-23 18:05:06 -04:00
Anuken 7b41d65fa6 Fixed issues with multithreaded serializer access 2019-08-23 16:13:46 -04:00
Anuken 5f9000db92 MNet cleanup 2019-08-23 15:04:31 -04:00
Anuken de031b1ddb Merge branches 'master' and 'mnet' of https://github.com/Anuken/Mindustry 2019-08-23 14:29:53 -04:00
Anuken 58f46bb75f Merge remote-tracking branch 'origin/master' 2019-08-23 14:17:01 -04:00
Anuken d1e07ec0a2 Fixed OpenAL not loading correctly 2019-08-23 17:17:45 -06:00
Anuken 0d4716f3b4 Fallback shield shader 2019-08-23 14:16:51 -04:00
Anuken 9ddfd650dd . 2019-08-23 14:16:25 -04:00
Anuken cf9cda4936 Merge branch 'master' of https://github.com/Anuken/Mindustry into steam 2019-08-23 14:05:46 -04:00
Anuken 1880c32f90 Experimental MNet-2 backend 2019-08-22 22:49:22 -04:00
Anuken 6d72c08d63 ignore some files 2019-08-22 21:52:51 -04:00
Anuken 95ac1b2c21 Merge remote-tracking branch 'origin/master' 2019-08-22 21:52:06 -04:00
Anuken a33fd45136 bugfixes 2019-08-22 21:51:56 -04:00
Anuken 4e43d2a96b . 2019-08-22 21:09:33 -04:00
Anuken d68c8fe72c Merge remote-tracking branch 'origin/steam' into steam
# Conflicts:
#	desktop/src/io/anuke/mindustry/desktop/steam/SteamNetImpl.java
2019-08-22 21:08:58 -04:00
Anuken c9d0619289 . 2019-08-22 21:08:44 -04:00
Anuken 8ea33946c4 proper discovery 2019-08-22 21:08:01 -04:00
Anuken bef7394004 Merge remote-tracking branch 'origin/steam' into steam
# Conflicts:
#	desktop/src/io/anuke/mindustry/desktop/DesktopPlatform.java
2019-08-22 20:50:43 -04:00
Anuken 4042bf042e . 2019-08-22 20:50:16 -04:00
Anuken 643b698c30 discovery 2019-08-22 20:49:27 -04:00
Anuken aba3e3985a . 2019-08-22 19:53:44 -04:00
Anuken 91f679f762 disconnection 2019-08-22 19:49:29 -04:00
Anuken 3eeed507cc Merge remote-tracking branch 'origin/steam' into steam 2019-08-22 17:38:04 -04:00
Anuken 988e1d6e30 . 2019-08-22 17:38:00 -04:00
Anuken 04b4aabcf6 . 2019-08-22 17:37:16 -04:00
Anuken d97fe47206 . 2019-08-22 17:16:13 -04:00
Anuken 0d8748a6ce autoclip 2019-08-22 17:02:41 -04:00
Anuken b360a39fcf debug 2019-08-22 16:59:39 -04:00
Anuken 70b071fa26 fixes 2019-08-22 16:51:26 -04:00
Anuken 64badb2cb7 Cleanup 2019-08-22 16:44:32 -04:00
Anuken 3da6634242 things 2019-08-22 16:19:29 -04:00
Anuken 4b8d072854 testing 2019-08-22 16:13:39 -04:00
Anuken a1ea393f35 Update MirrorFilter.java 2019-08-22 15:45:14 -04:00
Anuken 32abd991e7 steam debugging 2019-08-22 09:27:59 -04:00
Anuken 3294f800be Steam things 2019-08-21 21:20:44 -04:00
Anuken 74e3dc2d7d ? 2019-08-21 20:12:00 -04:00
Anuken a7a49a823b Merge 2019-08-21 20:10:54 -04:00
Anuken 14c943adfe fix of uninteresting variety 2019-08-21 19:04:26 -04:00
Anuken fb84b4b7c1 Added fastlane integration 2019-08-21 18:46:46 -04:00
Anuken 4089ee424c Removed pointless platform-specific dists 2019-08-21 15:50:58 -04:00
Anuken 9bf010e222 Removed lwjgl3 desktop module, sdl promoted to main module 2019-08-21 15:41:38 -04:00
Anuken 0553fb6b79 Finalized build scripts 2019-08-21 15:34:01 -04:00
Anuken 4bb6a25055 Added deployment scripts 2019-08-21 14:46:36 -04:00
Anuken 66ff7b1592 Fixed minimization 2019-08-20 20:47:28 -04:00
Anuken be32810608 on second thought, no 2019-08-20 19:57:42 -04:00
Anuken 88f48599a0 Names updated 2019-08-20 19:52:08 -04:00
Anuken 014e2ac8b8 Bugfixes 2019-08-20 19:42:39 -04:00
Anuken bae88ec416 iPhone X splash images 2019-08-20 19:14:30 -04:00
Anuken 46230ad307 nothing 2019-08-20 18:31:56 -04:00
Anuken 963a207194 New power node link system 2019-08-20 10:52:06 -04:00
Anuken 59419e13d9 Networking fixes 2019-08-20 10:23:22 -04:00
Anuken 82f43a362f merge 2019-08-19 22:36:28 -04:00
Anuken b370e04035 UI fix 2019-08-19 22:21:22 -04:00
Anuken dfd6e7a07b Merge remote-tracking branch 'origin/master' 2019-08-19 22:16:51 -04:00
Anuken a873560d4e Multiplayer: Smooth building + rotation / Disabled UDP / Cleanup 2019-08-19 22:16:43 -04:00
Anuken f7eea51066 further progress 2019-08-19 21:32:33 -04:00
Anuken c6777bd219 Update bundle.properties 2019-08-19 18:03:21 -04:00
Anuken 8eb4d25638 Fixed error on exiting with custom map on server 2019-08-19 09:42:45 -04:00
Anuken 98c35c5291 steam init 2019-08-19 09:40:59 -04:00
Anuken 191c6e9016 crash fix 2019-08-19 09:23:16 -04:00
Anuken 33c1579e9c Progress 2019-08-19 08:39:38 -04:00
Anuken 52af0b1db9 Merge remote-tracking branch 'origin/master' 2019-08-18 22:52:50 -04:00
Anuken 492cb49805 bugfixes 2019-08-18 22:52:46 -04:00
Anuken e482c2c318 Steam client init 2019-08-18 15:26:06 -04:00
Anuken 5b387e7e17 Merge branches 'master' and 'steam' of https://github.com/Anuken/Mindustry into steam 2019-08-18 13:34:04 -04:00
Anuken b2e70a44be Update TRANSLATING.md 2019-08-18 12:31:54 -04:00
Anuken 452a8aaa0c Fixed dialog scrolling 2019-08-18 10:16:31 -04:00
Anuken c3f392a01c Merge remote-tracking branch 'origin/master' 2019-08-17 20:26:30 -04:00
Anuken 7d9b6a41fc Actual prediction fix 2019-08-17 20:26:17 -04:00
Samuele Esposito f4f4cf3947 Possibly a small typo? (#592) 2019-08-17 17:00:20 -04:00
Anuken 28e930eb4b Merge remote-tracking branch 'origin/master' 2019-08-17 15:39:45 -04:00
Anuken 301387fb32 Fixed low rank on attack map completion 2019-08-17 15:39:41 -04:00
Anuken 5955387bdd map tweaks 2019-08-17 14:08:13 -04:00
Anuken 150491ff2c bugfixes 2019-08-17 12:09:18 -04:00
Anuken c7d735bf56 Fixed moving unit target prediction 2019-08-17 11:23:49 -04:00
Anuken 1f4dbd0024 fixed #587 2019-08-16 23:11:14 -04:00
Anuken ddef78c7d8 Merge remote-tracking branch 'origin/master' 2019-08-16 14:50:04 -04:00
Anuken dc435d88f4 Fixed massive music files on iOS, now using MP3 2019-08-16 14:49:35 -04:00
Anuken 84aff0112d small map fix 2019-08-16 14:17:23 -04:00
Anuken a13f8ed05f more frequent music 2019-08-16 12:53:18 -04:00
Anuken 0429abbb28 Balance 2019-08-16 12:31:44 -04:00
AmateurPotion 562d3e6528 Update bundle_ko.properties (#585) 2019-08-16 12:08:42 -04:00
Anuken ac27b484fa Updated Mac icon 2019-08-16 12:05:00 -04:00
Anuken 3c57c3e492 Merge remote-tracking branch 'origin/master' 2019-08-16 11:14:22 -04:00
Anuken 83f9f5d34a zipzip 2019-08-16 11:14:18 -04:00
Prosta4okua c659e4f0aa Fixes (#584)
* Fixes

* Капіталізація це зло.

* Update bundle_ru.properties

* Update bundle_uk_UA.properties

* .-.

* Gm

Description

* Oof

* ЈҮУКЕНГШҺЗХҸЖДЛОРПАВЫӘЧСМИТҒБӨ

* dada

* Translate new descriptions

* й

* Ukrainian finished. Fixed some errors.

* Translated everything. Maybe.

* /

* 1

* Added tutorial. Thank to Slava0135 and ymomfe.

* 1

* 1

* WATER

WATER

* [[]]

* 1
2019-08-16 11:13:52 -04:00
AmateurPotion 723ee3c647 Update bundle_ko.properties (#579)
* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties
2019-08-16 11:10:38 -04:00
Kylof61034 32baa279e2 added some german translations (#582) 2019-08-16 11:10:27 -04:00
Anuken 17b17979ab Release preparations 2019-08-16 11:00:15 -04:00
Anuken c94ab5b05a Merge remote-tracking branch 'origin/master' 2019-08-16 09:58:34 -04:00
Anuken 625a0125cb Various tweaks 2019-08-16 09:58:25 -04:00
Anuken 9f8c1b3d20 ios landscape fix 2019-08-16 09:01:28 -04:00
Anuken cc6ed88878 aaaaaaAAAAAAAAAAAa 2019-08-16 00:00:49 -04:00
Anuken 73523a96fa Merge remote-tracking branch 'origin/master' 2019-08-15 22:58:52 -04:00
Anuken 62e3bc86eb hhh 2019-08-15 22:58:48 -04:00
Anuken a12af852ab more iOS mess-fixing 2019-08-15 22:44:37 -04:00
Anuken 6f2fc00045 Icons/splash screen updated for iOS 2019-08-15 22:25:08 -04:00
Anuken 9e0de644c4 more iOS fixes 2019-08-15 20:59:45 -04:00
Anuken 393bdfccaf iOS map export 2019-08-15 20:45:30 -04:00
Anuken 56c39799c8 things 2019-08-15 20:02:35 -04:00
Anuken 7f2a1374e4 Fixed truncated sounds 2019-08-15 14:16:41 -04:00
Anuken 6fa0ac56ac files 2019-08-15 13:33:23 -04:00
Anuken 89ee04c942 Machine ambient sounds 2019-08-15 13:32:36 -04:00
Anuken c058163ab4 no 2019-08-15 00:12:06 -04:00
Anuken 2832dc69ef Random shoot sound pitch 2019-08-14 23:27:24 -04:00
Anuken cb2e2ab9b2 OpenAL cleanup+refactor 2019-08-14 23:01:51 -04:00
Anuken f342c38c62 openal stuff 2019-08-14 21:48:36 -04:00
Anuken 811e456f8f OpenAL audio backend for SDL 2019-08-14 20:50:26 -04:00
Anuken 000503d674 Update build.gradle 2019-08-14 13:53:23 -04:00
Anuken d0bd29cfa0 fixed unnecessary asset copying 2019-08-14 13:47:16 -04:00
Anuken d56565990e Fixed iOS audio issues 2019-08-14 13:10:29 -04:00
Anuken b68734d679 iOS-specific format loading 2019-08-14 11:03:36 -04:00
Anuken bf21c94bd7 Bugfixes 2019-08-14 10:27:10 -04:00
Anuken b6b9685d57 wiki build script update 2019-08-13 23:53:22 -04:00
Anuken f8adbda9c5 updated roboVM to 2.3.7 2019-08-13 23:26:25 -04:00
Anuken c9178c3f2f Fixed power nodes in multiplayer 2019-08-13 22:47:31 -04:00
Anuken 84786c12d8 Bugfixes 2019-08-13 18:15:40 -04:00
Anuken 335b6ae0cc bundle 2019-08-13 17:48:19 -04:00
Anuken 9bde68a86f Merge remote-tracking branch 'origin/master' 2019-08-13 16:51:10 -04:00
Anuken c3201178ae typo 2019-08-13 16:51:03 -04:00
Teamblur 366636ef7d Create bundle_et.properties (#498)
* Create bundle_et.properties

* Update bundle_et.properties

lisasin mõne tõlke eest poolt

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties

* Update bundle_et.properties
2019-08-13 16:49:10 -04:00
Dominik 47112e233e Update bundle_pl.properties (#566)
* Update bundle_pl.properties

Updated names of blocks in editor and some more

* Update bundle_pl.properties

* Update bundle_pl.properties

* Update bundle_pl.properties

* Update bundle_pl.properties

* Update bundle_pl.properties

* Update bundle_pl.properties
2019-08-13 16:48:02 -04:00
laohuaji233 88f005be0c Update bundle_zh_CN.properties (#568)
* Update bundle_zh_CN.properties

* Update bundle_zh_CN.properties
2019-08-13 16:47:48 -04:00
Prosta4okua f454cd3291 Patch 1 (#569)
* Fixes

* Капіталізація це зло.

* Update bundle_ru.properties

* Update bundle_uk_UA.properties

* .-.

* Gm

Description

* Oof

* ЈҮУКЕНГШҺЗХҸЖДЛОРПАВЫӘЧСМИТҒБӨ

* dada

* Translate new descriptions

* й

* Ukrainian finished. Fixed some errors.

* Translated everything. Maybe.

* /

* 1

* Added tutorial. Thank to Slava0135 and ymomfe.

* 1
2019-08-13 16:46:12 -04:00
AmateurPotion 23038dc6f7 Update bundle_ko.properties (#577)
* Update bundle_ko.properties

Update!

* Update bundle_ko.properties

error xd

* Update bundle_ko.properties

third edit...

* Update bundle_ko.properties

one change

* Update bundle_ko.properties
2019-08-13 16:36:19 -04:00
Anuken 58b4f64125 Tutorial fixes 2019-08-13 16:26:02 -04:00
Anuken 974ab59fd2 Classic data backup dialog 2019-08-13 15:14:03 -04:00
Anuken f2f6dc89a2 fire 2019-08-13 12:04:09 -04:00
Anuken bff9d89232 more sounds 2019-08-13 11:42:01 -04:00
Anuken a818da5eb7 some bad sounds 2019-08-12 23:29:24 -04:00
Anuken a1269c05c5 Updated discord presence 2019-08-12 13:50:09 -04:00
Anuken d0ff0307f5 New icon 2019-08-12 13:29:02 -04:00
Anuken c4aa0b2863 New discord app ID / New testing sounds 2019-08-12 12:32:13 -04:00
Anuken 85fd2ad804 Various things 2019-08-11 18:01:32 -04:00
Anuken 0770574f17 Sound things 2019-08-11 16:55:32 -04:00
Anuken 6314bf51df audio cleanup 2019-08-11 13:46:14 -04:00
Anuken 4c08c98f8c Work on sound effects 2019-08-11 10:47:22 -04:00
Anuken 2341da995e Random in-game music, untested 2019-08-10 18:56:20 -04:00
Anuken 4ef60af4a8 Fixed maps not being able to override gamemode-specific settings 2019-08-10 11:43:28 -04:00
Anuken 16f6b51857 Various tweaks, new music tracks 2019-08-09 23:23:45 -04:00
Anuken 59e53eb672 mandatory hosting/joining info 2019-08-09 14:01:25 -04:00
Anuken c7724e9122 Converted sounds to ogg 2019-08-09 13:51:24 -04:00
Anuken 2c4379acd1 Tutorial improvements 2019-08-09 12:18:08 -04:00
Anuken 69e7b442e2 made pause/tutorial panes not touchable 2019-08-08 21:57:13 -04:00
Anuken 70a4c2f3ed slightly less of a mess 2019-08-08 21:45:55 -04:00
Anuken 83c86b3883 more tutorial 2019-08-08 21:26:50 -04:00
Anuken 9924796ad9 A somewhat complete tutorial 2019-08-08 20:50:15 -04:00
Anuken b587b6bb4d More tutorial 2019-08-08 17:26:20 -04:00
Anuken 4811578c95 Incomplete tutorial basics 2019-08-08 17:03:45 -04:00
Anuken 0a07c62b63 Merge branch 'master' of https://github.com/Anuken/Mindustry into tutorial 2019-08-08 11:26:29 -04:00
Anuken c1ff370923 Fixed scaling / Improved power node visuals / Balancing 2019-08-08 10:48:35 -04:00
Anuken e55575f093 Editor music updated 2019-08-07 19:21:50 -04:00
Anuken 703f034054 Bugfixes 2019-08-07 18:16:51 -04:00
Anuken 2d504521b1 Bugfixes 2019-08-07 08:39:59 -04:00
Anuken 8359789d4f Bugfixes 2019-08-06 19:10:32 -04:00
Anuken 8162e13f04 Balancing, fixes, general improvements 2019-08-06 18:05:17 -04:00
Anuken 282aab5939 Zone improvements 2019-08-06 13:01:54 -04:00
Anuken 5c6bcbf9cd Renamed layout/Unit to UnitScl to prevent name conflicts 2019-08-06 11:04:58 -04:00
Anuken 8ef1d54a16 Bugfixes 2019-08-06 09:17:26 -04:00
Anuken e8bbc2bf4c Sound re-organized 2019-08-05 20:39:16 -04:00
Anuken b02053a70c Added support for Alt keys 2019-08-05 16:54:42 -04:00
Anuken 99f2b8f536 Deploy music 2019-08-05 14:49:37 -04:00
Anuken 8346d5fc13 Fixed connection not resetting on game load / Experimental click changes 2019-08-05 10:26:24 -04:00
Anuken 3a841c6c0f stuff and things 2019-08-04 20:02:07 -04:00
Anuken ecd30094b1 Cursor antialiasing 2019-08-04 09:41:25 -04:00
Anuken 81909bd1a9 Moved launch controls to wave button 2019-08-04 08:58:51 -04:00
Anuken 1cb01af77b Structure 2019-08-04 08:13:16 -04:00
Anuken a65592d511 Added Tutorial class 2019-08-03 19:47:57 -04:00
Anuken 4ee6f60531 Merge branches 'master' and 'tutorial' of https://github.com/Anuken/Mindustry into tutorial 2019-08-03 19:38:26 -04:00
Anuken 319d65f9a3 New re-balanced attack map 2019-08-03 11:29:37 -04:00
Anuken bc8c99df15 Tech tree balance 2019-08-03 09:54:56 -04:00
Anuken aef3a719fe merge 2019-08-03 00:21:16 -04:00
Anuken 2726ebe191 Re-balanced starting item amount 2019-08-03 00:04:33 -04:00
Anuken 85767d4946 Improved drill item selection 2019-08-02 23:48:39 -04:00
Anuken 86a78b206a autolink 2 2019-08-02 23:40:08 -04:00
Anuken 4e308d6600 autolink 2 2019-08-02 23:23:04 -04:00
Anuken 7f2cc59b3c autolink 2019-08-02 20:48:26 -04:00
Anuken 878901d05d more ores 2019-08-02 20:30:15 -04:00
Anuken d1304abb9e Increased node limit 2019-08-02 20:18:42 -04:00
Anuken 4ae39e851d Optional core spawn mech support 2019-08-02 20:03:04 -04:00
Anuken 06c5c92d2c Updated previews 2019-08-02 19:46:18 -04:00
Anuken fc6e529049 mixer. 2019-08-02 18:37:06 -04:00
Anuken 438f128e2e New map ore balancing / Reduced item burn rate 2019-08-02 18:32:33 -04:00
Anuken 878af1ea28 1/2 cost rebalance 2019-08-02 13:22:45 -04:00
Anuken 8e84e7284e Added ore median filter 2019-08-02 12:56:21 -04:00
Anuken 77d4b0972d Balancing 2019-08-02 12:39:21 -04:00
Anuken 2a518fa7c9 Merge remote-tracking branch 'origin/master' 2019-08-02 10:10:48 -04:00
Anuken 04c8ecf4af New team colors 2019-08-02 10:10:37 -04:00
AmateurPotion 67743dded5 add my nickname (#571)
I'm Korean translater& r-e server owner. May I be added here?
2019-08-02 08:23:18 -04:00
Anuken 5acda423d8 UI polish 2019-08-01 22:40:15 -04:00
Anuken 8b3995686f Misc. in-game UI polish 2019-08-01 20:49:03 -04:00
Anuken f388ca298e Better carried item display 2019-08-01 17:49:10 -04:00
Anuken 636b92205b Implemented sound volume 2019-08-01 16:54:36 -04:00
Anuken 26d26b5e7a Drill output/speed display 2019-08-01 13:32:38 -04:00
Anuken 01efb59d25 Fixed high sound memory usage / Basic drill output speed display 2019-08-01 13:08:50 -04:00
Anuken b1980a17ac Fixed editor not showing after second view 2019-08-01 11:26:28 -04:00
Anuken 69ee5257f2 Display current ammo type in turret info 2019-08-01 11:03:20 -04:00
Anuken 5573031d07 Created tutorial branch 2019-08-01 10:43:41 -04:00
Anuken b812fcddf8 Merge branch 'sound' of https://github.com/Anuken/Mindustry 2019-08-01 10:38:16 -04:00
Anuken 8393639735 Moved music control 2019-08-01 10:37:04 -04:00
Anuken dafbba0907 Fixed more things 2019-07-31 22:49:41 -04:00
Anuken 28ab2b3917 Fixed crashes not saving or displaying 2019-08-01 02:28:01 -06:00
Anuken 2be3cc2f1e a mess 2019-07-31 18:59:28 -04:00
Anuken d8085d88a8 Re-added classic sound effects for testing 2019-07-31 16:25:25 -04:00
Anuken d6b023709d Initial menu music test 2019-07-30 22:50:15 -04:00
Anuken 2459fb23ae cleanup 2019-07-30 22:06:21 -04:00
Anuken 4bd3f415a9 Smooth menu fade 2019-07-30 20:04:25 -04:00
Anuken 4414ee6d38 Fade-in effect / Fixed mobile scaling 2019-07-30 19:48:06 -04:00
Anuken fdd84066f5 format 2019-07-30 16:00:32 -04:00
Anuken 4ebf39449e . 2019-07-30 15:52:20 -04:00
Anuken d4f26e0340 Fixed sound crackle 2019-07-30 14:15:10 -04:00
Anuken a00a208ff8 Annotation processor for sound asset generation 2019-07-30 12:05:59 -04:00
Anuken bc77fd619d Spatial sound / Minor refactoring 2019-07-30 11:38:02 -04:00
Anuken 5eadd6608d Updated bundles 2019-07-30 10:23:29 -04:00
Anuken 1340b8d4d8 Better consumption display 2019-07-30 10:20:49 -04:00
Anuken 9db86f212f Typos 2019-07-30 10:12:58 -04:00
Anuken 697894274f Fixed editor restoring incorrect orientation 2019-07-30 01:02:08 -04:00
Anuken 7292479d9c Added turret ammo deficiency display 2019-07-30 00:44:41 -04:00
Anuken 301c11c208 possible oregen fix 2019-07-29 22:12:39 -04:00
Anuken 71b218ad62 just in case 2019-07-29 22:11:59 -04:00
Anuken ec2f21b944 Fixed crash on loading some older maps 2019-07-29 22:07:25 -04:00
Anuken c65b3f3aca Sound. 2019-07-29 21:59:59 -04:00
Anuken 43280ee077 Fixed numerical rules resetting on Android 2019-07-29 17:19:17 -04:00
Anuken c7e4fb8021 Audio progress 2019-07-29 17:01:55 -04:00
Anuken 132d058098 SDL input fixes 2019-07-29 15:17:10 -04:00
AmateurPotion c678a5502d Update bundle_ko.properties (#563)
* Update bundle_ko.properties

현수님 보시면 빨리 공식 업데이트 하시기 전에 이전 버전으로 돌리시고 괜찮다 싶은 것만 번역 업데이트 해주세요

* Second mistranslation correction

One more mistranslation correction remaining.
2019-07-29 10:51:36 -06:00
laohuaji233 0ee35721b0 Update bundle_zh_CN.properties (#556)
Many minor modifications
2019-07-29 10:51:15 -06:00
Prosta4okua 1932f9a9c3 Fixes (#554)
* Fixes

* Капіталізація це зло.

* Update bundle_ru.properties

* Update bundle_uk_UA.properties

* .-.

* Gm

Description
2019-07-29 10:50:52 -06:00
Anuken 8e85b71669 Fixed mobile layout 2019-07-29 12:49:09 -04:00
Anuken f439afae9e Descriptions for nearly everything 2019-07-29 12:33:11 -04:00
Anuken fdd749be18 Pre-description change 2019-07-29 10:15:44 -04:00
Anuken 666e3e51a3 Bugfixes 2019-07-28 10:53:26 -04:00
Anuken b930d5a1f9 might as well merge bloom 2019-07-27 16:16:22 -04:00
Anuken 5c10a2662d Moved clear color 2019-07-27 16:12:51 -04:00
Anuken 214f451cc1 Tweak 2019-07-27 16:10:17 -04:00
Anuken 67b4fa6f68 Map tweaks 2019-07-27 12:21:32 -04:00
Anuken aa3e7a8ef5 Finalized map number 2019-07-27 10:52:46 -04:00
Anuken 7bf6099528 Added 2 new maps 2019-07-27 09:27:03 -04:00
Anuken e90a4eb71d SDL tools 2019-07-26 21:24:07 -04:00
Anuken 7b83406ee4 Blend filter parameters / New map 2019-07-26 20:46:06 -04:00
Anuken c4157d2ec8 New map / Better filters / Sand boulders 2019-07-26 18:59:33 -04:00
Anuken 2bdfaef2d9 Fixed ores generating over spawnpoints 2019-07-26 00:11:31 -04:00
Anuken 2b0fbd9904 """better""" map generation dialog 2019-07-26 00:04:36 -04:00
Anuken 0ffa0351b5 Removed ores from existing built-in maps / Default oregen 2019-07-25 23:24:12 -04:00
Anuken 951cbf3d16 Fixed some generation issues 2019-07-25 22:18:45 -04:00
Anuken 69454048ad ??? 2019-07-25 21:27:34 -04:00
Anuken c4ceb89240 Implemented random map load filters 2019-07-25 21:27:16 -04:00
Anuken 4a638cba79 Merge remote-tracking branch 'origin/master' 2019-07-25 19:18:14 -04:00
Anuken c209528271 Cleaned up generation filter code 2019-07-25 19:18:04 -04:00
Anuken 0d1f590937 Update CrashSender.java 2019-07-25 17:44:33 -04:00
Anuken b59b839029 OpenGL 2.1 -> 2.0 2019-07-25 13:55:57 -04:00
Anuken 513243ba0f Fixed version not parsing on crash 2019-07-25 13:21:55 -04:00
Anuken 795e774119 Canyon map 2019-07-25 13:08:07 -04:00
Anuken d02d419729 Fixed SDL crash 2019-07-25 12:46:31 -04:00
Anuken 518bffe644 SDL backend / Valid mode sprites / Better layout 2019-07-25 11:45:49 -04:00
Anuken 88d1b31aff SDL module 1 2019-07-25 10:14:01 -04:00
Anuken 4db2dbff44 Merge remote-tracking branch 'origin/master' 2019-07-25 10:09:25 -04:00
Anuken 32ad577f6d Added IKVM-specific dist command 2019-07-25 10:09:21 -04:00
Anuken 3310f49f68 steamed generators 2019-07-25 00:22:33 -04:00
Anuken bf7803d554 Implemented gamemode validation 2019-07-24 23:05:16 -04:00
Anuken c9bd253960 Fixed drones being idiots / Added another PvP map 2019-07-24 21:25:33 -04:00
Anuken 859591cea5 Added pvp/attack map 2019-07-24 16:23:56 -04:00
Anuken b99b13a6e4 Added mirror tool for attack/PvP maps 2019-07-24 12:07:12 -04:00
Anuken c80be4940f Fixed unit tests / Fixed some major tile loading flaws 2019-07-23 23:29:48 -04:00
Anuken 52374ce06d Zone changes 2019-07-23 11:45:46 -04:00
Anuken 5a594f7d9a Bugfixes / unfinished new zones 2019-07-22 18:47:23 -04:00
Anuken aff87a26ce Merge branch 'master' of https://github.com/Anuken/Mindustry 2019-07-22 17:01:55 -04:00
Anuken 18aae0cfa5 Zones 2019-07-22 16:09:50 -04:00
Anuken 6f0bc2ecf8 Minor build fixes 2019-07-22 12:42:42 -04:00
Anuken 8d2a637bd8 Fixed build errors 2019-07-22 00:56:00 -04:00
Anuken 54180c4768 Menu fix 2019-07-22 00:45:09 -04:00
Anuken 4e22384ed1 Merge branches 'master' and 'uiscale' of https://github.com/Anuken/Mindustry 2019-07-17 21:19:16 -04:00
Anuken 029f801159 Added UI scale slider 2019-07-17 17:20:21 -04:00
L5474 fd53671430 Removed duplicate of my name (#558)
just saw #557 and got reminded of this file and checked it out. Why is my name on here twice lol.
2019-07-14 15:25:42 -06:00
Anuken 7b09548261 Merge remote-tracking branch 'origin/master' 2019-07-14 15:25:38 -04:00
Anuken 63e1311656 Bugfixes / Incomplete zone description field 2019-07-14 15:25:30 -04:00
Arkanic 36a303a86f I meekly request (#557) 2019-07-14 12:19:35 -06:00
Anuken 61f903dcf1 Update InputHandler.java 2019-07-14 12:54:24 -04:00
Anuken 2a10562e9e Merge remote-tracking branch 'origin/master' 2019-07-13 14:04:06 -04:00
Anuken d64796f32a Clamping of tree views 2019-07-13 14:04:01 -04:00
Franciszek Zaranowicz f2d67d0a5d Loadout for non-zones maps (#535)
* Loadout for non-zones maps

* Requested Changes

* Fixed Import

* Requested Changes #2
2019-07-13 10:28:04 -06:00
Anuken ad39a51fe8 nothing 2019-07-12 23:52:31 -04:00
Anuken 14d0927fb6 Basic deploy background 2019-07-12 01:03:01 -04:00
Anuken 1697465d0d Core balancing 2019-07-11 23:30:11 -04:00
Anuken e52965d039 Bugfixes 2019-07-10 09:55:31 -04:00
Anuken a8d957bf7d Update OverdriveProjector.java 2019-07-10 09:05:47 -04:00
Anuken b6b5343e04 Cleanup 2019-07-09 15:43:11 -04:00
Anuken d4c318438d Removed buggy limited respawns 2019-07-09 12:12:43 -04:00
Anuken d8d04f2ac3 Moved block icons to UI atlas 2019-07-08 15:49:47 -04:00
Anuken 1c38e73290 a warning 2019-07-08 11:07:45 -04:00
Anuken 7fc6b9b940 Removed quit button on iOS as per guidelines 2019-07-08 10:54:02 -04:00
Prosta4okua ed50ed8550 Update bundle.properties (#553)
* Update bundle.properties

* Update bundle.properties

* Update bundle.properties

* Update bundle.properties
2019-07-08 07:20:08 -06:00
Anuken fb4c65dae0 Update AboutDialog.java 2019-07-08 08:58:31 -04:00
Anuken fc9543baa7 Updated sprites/UI colors 2019-07-07 14:11:57 -04:00
Anuken b0eaca091a Merge pull request #541 from CinExPL/patch-8
Update bundle_pl.properties
2019-07-06 17:13:12 -06:00
Anuken aab13a5582 Merge branch 'master' into patch-8 2019-07-06 17:13:06 -06:00
Anuken f852ba02d8 Merge pull request #546 from Natchuz/polish-translation
Updated bundle_pl.properties
2019-07-06 17:12:35 -06:00
Anuken 4aa074b9fc Merge pull request #547 from etaoinshrdlcumwfgypbvkjxqz/zh-TW
Update Chinese (Taiwan) translation
2019-07-06 17:12:19 -06:00
Anuken 2f7503c752 Merge pull request #548 from Prosta4okua/patch-3
Update bundle_uk_UA.properties
2019-07-06 17:12:03 -06:00
Anuken d754593c2b Merge pull request #549 from Prosta4okua/patch-4
Update bundle_ru.properties
2019-07-06 17:11:43 -06:00
Anuken 07ea938885 Mobile fix / Readme updated 2019-07-06 19:08:16 -04:00
Anuken ac87930672 Balancing 2019-07-06 19:02:28 -04:00
Anuken 3dfef06bba Bugfixes 2019-07-06 18:42:05 -04:00
Prosta4okua 120faf3806 Update bundle_ru.properties 2019-07-06 21:31:01 +03:00
Prosta4okua f51f04d170 Update bundle_uk_UA.properties 2019-07-06 21:30:38 +03:00
Anuken ec7bb78ee4 Basic UI improvements 2019-07-06 14:08:43 -04:00
Anuken 5ae1e59b5c UI 2019-07-06 12:22:10 -04:00
Anuken e3956ebcf2 Regression fixes 2019-07-06 11:02:55 -04:00
Anuken bb75e8f2e0 Removed loading screen 2019-07-06 10:15:21 -04:00
Anuken a77b1416e5 Merge branches 'master' and 'new-ui' of https://github.com/Anuken/Mindustry 2019-07-06 10:13:11 -04:00
Anuken 121e0a433b Final tweaks before merge 2019-07-06 10:12:22 -04:00
Anuken 988aee3078 Fixed editor saving incorrect map size 2019-07-05 23:34:04 -04:00
William So 2bb99bb100 Update Chinese (Taiwan) translation 2019-07-06 10:55:14 +08:00
Anuken 4e7ddc7e71 Fill tool fix 2019-07-05 14:39:45 -04:00
Anuken 174caef7ca Added turret damage / Removed changelog dialog 2019-07-05 14:01:54 -04:00
Anuken d2bb3800e3 Added version display, info dialog back 2019-07-05 13:41:22 -04:00
Anuken f0959ab356 More UI and layout changes 2019-07-05 12:02:02 -04:00
Anuken 2c5546c6fb Slight cleanup 2019-07-04 23:40:19 -04:00
Anuken a7a565b93e Hacky pad fix 2019-07-04 17:29:31 -04:00
Anuken ed074bd08b UI stuff 2019-07-04 17:11:30 -04:00
Anuken d938b22729 Fixed incorrect blend/median previews on mobile 2019-07-04 09:22:13 -04:00
Natchuz bd88a2378f Updated bundle_pl.properties 2019-07-04 13:21:44 +02:00
Anuken 0371126ccf Various menu fixes 2019-07-04 00:51:42 -04:00
Anuken ab36b6a2e1 Random flyers 2019-07-03 23:46:55 -04:00
Anuken d43d4a1773 Cleanup, main menu progress 2019-07-03 23:36:51 -04:00
Anuken 0837c476a1 T 2019-07-03 20:24:11 -04:00
Anuken 77a41b1783 Actually fixed FPS cap 2019-07-03 19:11:22 -04:00
Anuken 0d39400f8b Fixed performance regression / Removed useless fallback sprites 2019-07-03 17:07:22 -04:00
Anuken d3c8678f80 Splitting UI atlas 2019-07-03 15:59:50 -04:00
Anuken b7008072f8 Rendering cleanup 2019-07-03 15:35:10 -04:00
Anuken 15737810f0 Fixed unit tests 2019-07-03 13:06:18 -04:00
Anuken 5036c57372 Fixed incorrect fps cap 2019-07-03 13:00:57 -04:00
Anuken 5799e6f567 Laser optimization 2019-07-03 10:41:16 -04:00
Anuken 310e8afc25 Fixed loading of older saves 2019-07-03 10:11:22 -04:00
Anuken 78215363dc Work on fixing entity ID mapping 2019-07-03 09:50:33 -04:00
Anuken 4e873f8bf3 oh no it's broken 2019-07-02 22:44:55 -04:00
Anuken 79dc116e6a Nothing interesting 2019-07-02 22:38:25 -04:00
Anuken a7480ae656 Merge branch 'master' of https://github.com/Anuken/Mindustry 2019-07-02 18:53:43 -04:00
Anuken 62e310a776 Updated gradle to 5.5 2019-07-02 18:53:27 -04:00
Anuken bb398a2f1e Crash fixes 2019-07-02 18:52:04 -04:00
Anuken 79ab2d122d Changed layout structure 2019-07-02 18:40:39 -04:00
Anuken 3a2f73a176 Merge branches 'master' and 'new-ui' of https://github.com/Anuken/Mindustry into new-ui 2019-07-02 18:40:14 -04:00
Anuken 217237b57e New menu background, unfinished 2019-07-02 14:42:24 -04:00
Anuken cb7b6eb3f8 More menu 2019-07-02 10:01:34 -04:00
Anuken 6e21d7f560 menu 2019-07-01 14:30:46 -04:00
CinExPL 09d905b96f Update bundle_pl.properties
few changes ;)
2019-07-01 17:55:16 +02:00
Anuken 8f29d4871d Moved version info 2019-07-01 10:27:56 -04:00
Anuken 94f175e2cd Moved map dialog 2019-07-01 09:31:39 -04:00
Anuken 5e15c5574a menu stuff 2019-06-30 16:52:34 -04:00
Anuken 1c530a6c7a Merge + update 2019-06-30 14:13:13 -04:00
Anuken 8fc0872b90 Merge pull request #540 from xslendix/master
Fixed gradlew
2019-06-30 12:17:46 -04:00
Anuken 3021cc29da Fixed tops of some generator blocks 2019-06-30 11:25:39 -04:00
Anuken c77f51b7ae Bugfixes 2019-06-30 10:09:20 -04:00
xSlendiX aa39d36663 Merge pull request #1 from xslendix/xslendix-patch-1
Update gradlew
2019-06-30 13:14:58 +03:00
xSlendiX 40907db32d Update gradlew 2019-06-30 13:13:05 +03:00
Anuken 12bff75586 Various fixes 2019-06-30 00:07:04 -04:00
Anuken 8bc59fb67c Fixed startup logo not fitting on screen 2019-06-29 13:50:59 -04:00
Anuken ab5319f3d1 Merge pull request #515 from Kieaer/patch-6
Update bundle_ko.properties
2019-06-29 13:31:49 -04:00
Anuken 6128df0062 Merge pull request #517 from DVanatic/patch-1
Request Update (bundle.in_ID.properties)
2019-06-29 13:31:40 -04:00
Anuken 142938cdca Merge pull request #521 from Prosta4okua/patch-1
Patch 1. Fight!
2019-06-29 13:31:24 -04:00
Anuken b32efe129e Merge pull request #523 from Predator127/patch-8
Update bundle_pt_BR.properties
2019-06-29 13:31:14 -04:00
Anuken 2b20272a61 Merge pull request #525 from VizardAlpha/patch-22
Updates bundle_fr_BE.properties
2019-06-29 13:31:01 -04:00
Anuken d9ef79a7b5 Regression fix / Slightly better server dialog 2019-06-29 13:19:53 -04:00
Anuken 576f0be4ab Fixed incorrect game-overs on zone attack maps 2019-06-29 11:02:27 -04:00
Anuken 89a4e6506f Bloom option 2019-06-29 10:40:52 -04:00
키에르 47099a8a9b Update bundle_ko.properties 2019-06-29 15:00:06 +09:00
Anuken 04dfda0c55 Some minor map tweaks and fixes 2019-06-28 23:47:43 -04:00
Anuken 22656a40b2 Bloom fix 2019-06-28 23:31:34 -04:00
Anuken b6df916700 Map updates 2019-06-28 23:16:26 -04:00
Anuken 6fa9abd896 discard 2019-06-28 23:04:43 -04:00
Prosta4ok_ua e239406199 Нові переклади 2019-06-25 23:16:07 +03:00
Anuken b7a0ebad17 Merge branch 'master' of https://github.com/Anuken/Mindustry into bloom 2019-06-24 19:45:13 -04:00
Anuken 266744b1dd Fixed salvo range 2019-06-24 19:44:57 -04:00
Anuken f8526e1ac7 Bloom 2019-06-24 19:39:57 -04:00
Anuken ab716e96e2 Bugfixes 2019-06-24 16:54:50 -04:00
Anuken 649d527dcf Temporary loading screen 2019-06-23 14:09:29 -04:00
Anuken c5e7ddaf7a Added option to set TextField length for showTextInput() (#534)
* Add files via upload

* Added option to set TextField length for showTextInput()

the character length default was 12, and unchangeable afaik, so I added an option to change the character length, as well as suggesting a new character length for save file's name.
(I actually have no idea if this PR can be delivered correctly, wish me luck.)

* Rename UI.java to core\src\io\anuke\mindustry\ui/UI.java

* Rename SaveDialog.java to core\src\io\anuke\mindustry\ui\dialogs\SaveDialog.java

* Delete UI.java

* Added option to set TextField length for showTextInput()

the character length default was 12, and unchangeable afaik, so I added an option to change the character length, as well as suggesting a new character length for save file's name. (I actually have no idea if this PR can be delivered correctly, wish me luck.)

* Delete UI.java

* Delete SaveDialog.java

* Add files via upload

* Add files via upload

* Delete UI.java

* Delete SaveDialog.java

* Delete core\src\io\anuke\mindustry\ui\dialogs\SaveDialog.java

* Delete Mindustry-64.zip
2019-06-23 12:45:37 -04:00
Anuken b2a4cb42cf Sprite updates 2019-06-23 12:36:13 -04:00
Anuken 3fc5941f54 Wiki whitespace fix 2019-06-23 11:16:11 -04:00
Anuken 741360022b Typo 2019-06-23 11:03:05 -04:00
Anuken 86e2f62aed Fixed locales not generating 2019-06-23 10:52:03 -04:00
Anuken e552915637 Test 2 2019-06-23 10:33:25 -04:00
Anuken 98a51c1f61 Testing improved deployment script 2019-06-23 10:29:22 -04:00
(G_H) aa84eefa8f Merge branch 'master' into GH-v80 2019-06-23 21:07:06 +08:00
(G_H) 22e12ce3e5 Delete Mindustry-64.zip 2019-06-23 20:22:22 +08:00
(G_H) f4a82b5c01 Delete core\src\io\anuke\mindustry\ui\dialogs\SaveDialog.java 2019-06-23 20:22:13 +08:00
(G_H) 60520ea855 Delete SaveDialog.java 2019-06-23 17:59:36 +08:00
(G_H) b70a0869cd Delete UI.java 2019-06-23 17:59:24 +08:00
(G_H) 7bdd21bb75 Add files via upload 2019-06-23 17:59:14 +08:00
(G_H) 0dd3736f2a Add files via upload 2019-06-23 17:58:42 +08:00
(G_H) deb2d30706 Delete SaveDialog.java 2019-06-23 17:57:30 +08:00
(G_H) c416e1546d Delete UI.java 2019-06-23 17:57:16 +08:00
(G_H) 6d3a67ae59 Added option to set TextField length for showTextInput()
the character length default was 12, and unchangeable afaik, so I added an option to change the character length, as well as suggesting a new character length for save file's name. (I actually have no idea if this PR can be delivered correctly, wish me luck.)
2019-06-23 17:55:12 +08:00
(G_H) 6b60147152 Delete UI.java 2019-06-23 17:52:45 +08:00
Anuken 8c91aca838 New maps / New generation filter(s) and tweaks 2019-06-22 20:40:53 -04:00
Anuken b47e282747 Merge branch 'master' of https://github.com/Anuken/Mindustry 2019-06-21 16:16:28 -04:00
(G_H) 134d0e7e4a Rename SaveDialog.java to core\src\io\anuke\mindustry\ui\dialogs\SaveDialog.java 2019-06-22 00:50:46 +08:00
(G_H) 26b596760b Rename UI.java to core\src\io\anuke\mindustry\ui/UI.java 2019-06-22 00:49:39 +08:00
(G_H) 8a5e15e82d Added option to set TextField length for showTextInput()
the character length default was 12, and unchangeable afaik, so I added an option to change the character length, as well as suggesting a new character length for save file's name.
(I actually have no idea if this PR can be delivered correctly, wish me luck.)
2019-06-22 00:32:17 +08:00
Anuken ffb5eee62a Update BuilderTrait.java 2019-06-21 09:11:17 -04:00
Anuken 387d9b39da Icon fixes 2019-06-20 22:20:25 -04:00
Anuken 43b5cb62bb Fixed #530 / Better icons / Server list ordering 2019-06-20 22:12:17 -04:00
Anuken 580923a646 Render tests 2019-06-20 16:27:57 -04:00
Anuken 06444f497b Internal tool changes 2019-06-20 15:34:48 -04:00
Anuken 1676ad5f1b Bugfixes 2019-06-20 09:14:47 -04:00
Anuken 478d86677d Fixed boulder sprites 2019-06-20 00:16:22 -04:00
Anuken c5e0db8de9 Why are these synced? 2019-06-19 22:59:28 -04:00
Anuken 228690b400 Fixed net disconnect error 2019-06-19 22:20:45 -04:00
Anuken 1fe30bc466 Branch created 2019-06-19 22:20:17 -04:00
Anuken 8e95be0ac2 Crash fix + drill balance 2019-06-19 21:41:49 -04:00
Anuken 47b1e700ea Fixed travis syntax error 2019-06-19 18:11:08 -04:00
Anuken 3ad1949727 Minor tweaks before release 2019-06-19 18:04:31 -04:00
Anuken 441680861e Player spawning bugfix 2019-06-19 13:32:38 -04:00
키에르 5e848ecbb3 Update bundle_ko.properties 2019-06-19 19:38:55 +09:00
Anuken c9520e607f Implemented craters map, again / Disabled unit editing 2019-06-18 20:45:21 -04:00
Anuken 40a8c52ba1 Testing travis build again 2019-06-18 18:41:03 -04:00
Anuken cb6ffd7810 Testing travis wiki building 2019-06-18 18:30:43 -04:00
Anuken 185a7bb7d8 Bugfixes / Sprite update / Multiplayer in-game editor / Drone tweaks 2019-06-17 21:35:19 -04:00
Anuken bc3405d11d Bugfixes 2019-06-17 15:45:10 -04:00
Anuken 2804361436 Bugfix 2019-06-17 12:18:10 -04:00
Anuken 4f40f3c4b2 More sprite updates 2019-06-17 10:08:24 -04:00
Anuken 897c55c410 Bugfixes 2019-06-16 23:38:50 -04:00
Anuken 9e97b5851e Where did that go? 2019-06-16 19:11:41 -04:00
Anuken 625fbdb2d7 Auto-rebuilding enemy drones / GC improvements 2019-06-16 18:50:51 -04:00
키에르 0f32d3f619 Update bundle_ko.properties 2019-06-16 13:31:16 +09:00
Anuken 273c74b275 Many things 2019-06-15 23:26:43 -04:00
Anuken 2500d0a930 Fixed maps getting rejected even with cores 2019-06-14 23:03:19 -04:00
Anuken 25bf3be009 Merge remote-tracking branch 'origin/master' 2019-06-14 21:07:10 -04:00
Anuken 910dab1896 More drone changes 2019-06-14 21:06:58 -04:00
Arkanic 6198ad557a English bundle graphite description (#528)
* added graphite description

graphite now has a description
Yay. my fist commit

* fixed grammar

thanks @anuken
2019-06-14 18:40:05 -04:00
Anuken 89b3d3b670 Removed difficulty 2019-06-14 15:53:09 -04:00
Anuken 122f43ddb9 Fixed unit tests 2019-06-14 15:07:39 -04:00
Anuken 50104d2532 Fixed door toggle 2019-06-14 13:29:40 -04:00
Prosta4ok_ua f5f30d6026 Add new strings 2019-06-14 14:35:15 +03:00
Anuken 114cd48521 Actually functional builder drones 2019-06-13 22:34:24 -04:00
Anuken 548da3ea5f Further drone splitting / Even drone player distribution 2019-06-13 22:22:25 -04:00
Anuken 2a8b8d040b Fixed deconstruction exploit 2019-06-13 20:17:48 -04:00
Nathan R 0dc2d4445b Fixed download image (#526) 2019-06-13 19:00:52 -04:00
Anuken 8ac497354a Miner drone / Editor bugfixes 2019-06-12 22:09:24 -04:00
Anuken 0cbbcc00a5 Zone rules moved to maps 2019-06-12 19:25:22 -04:00
Anuken 5cfab33ada Fixed unit tests / Fixed zones having incorrect waves 2019-06-12 18:42:12 -04:00
Anuken 18328320c1 Fixed black blocks/units after quit / Fixed intense wave spawn lag 2019-06-12 18:07:19 -04:00
Anuken 73c48afc99 Save loading regression tests 2019-06-12 15:52:47 -04:00
Anuken 62bd0442df Testing loading of old saves 2019-06-12 15:29:41 -04:00
Anuken 0aee75c1c1 Splitting of building+mining into separate traits 2019-06-12 14:03:50 -04:00
Anuken dc3c27297f Team drawing 2019-06-12 10:28:38 -04:00
Anuken 9363946874 Fixed terminology 2019-06-11 23:39:01 -04:00
Anuken df78412896 Desktop/mobile descriptive tool modes 2019-06-11 23:31:57 -04:00
Anuken 16190aa878 Better server discovery 2019-06-11 13:01:28 -04:00
VizardAlpha e6e5b95adc Update bundle_fr_BE.properties 2019-06-11 16:34:08 +02:00
VizardAlpha 990adcd3b3 Updates bundle_fr_BE.properties 2019-06-11 16:23:50 +02:00
Anuken 75a5bbdbb1 Start on multicast 2019-06-11 10:05:35 -04:00
Anuken af1746932f Fixed incorrect scaling 2019-06-11 08:47:16 -04:00
Predator127 56ff5689f4 Update bundle_pt_BR.properties
Revised translation with a better vocabulary
2019-06-10 22:02:15 -03:00
Anuken 0dd15f3141 Fixed build errors 2019-06-10 18:51:06 -04:00
Anuken 72fb7b9df7 Net refactor 2019-06-10 18:46:58 -04:00
Anuken d7e1297cce Tweaks 2019-06-10 15:14:57 -04:00
Anuken 3c9d4ee38f Merge remote-tracking branch 'origin/master' 2019-06-10 13:55:40 -04:00
Anuken 828e6bb1b7 New changes, possible fixes to UI layout bugs 2019-06-10 13:55:18 -04:00
Zachary 6e42d59716 Update README.md (#522)
fixed the google play store image L0L uWu
2019-06-10 11:29:05 -04:00
Prosta4ok_ua 6f589b5c84 Hello everyone 2019-06-10 18:20:08 +03:00
Anuken 6d1b8b81fa Bugfixes 2019-06-10 10:11:28 -04:00
키에르 cddd7e0e94 Update bundle_ko.properties 2019-06-10 19:42:12 +09:00
Anuken 340bc5f2f7 Ground zero map updated 2019-06-09 23:29:10 -04:00
DVanatic ecd117cd58 Request Update (bundle.in_ID.properties)
I have read the guides and yes, i know the consequence of translating all lines despite it going to change soon-ish. i've been a diehard fan of this game since i saw it and really interested in following and working with this game's development!
2019-06-10 08:39:00 +07:00
Anuken ea0788f56c Better wave timer / Sprite tweaks / Core wave spawns 2019-06-09 21:09:29 -04:00
Anuken 4199702b9b Updated turret sprites 2019-06-09 14:46:48 -04:00
Anuken 5946aaa31f Merge remote-tracking branch 'origin/master' 2019-06-09 12:04:49 -04:00
Anuken 444b5dbd97 Turret balance / Bugfixes 2019-06-09 12:04:45 -04:00
키에르 695ccfcc4d Update bundle_ko.properties 2019-06-09 18:34:45 +09:00
Fenr1r a6d5bdd001 Fix some mistyping and refactoring (#503)
* remove unused import

* fix mixtyping (duplicated ;)

* remove redundant type casting
detail: item's type is defined as short.

* Revert "remove redundant type casting"

This reverts commit 39bf91d9ff.
2019-06-08 23:20:47 -04:00
Anuken bd4d8efd78 Fixed invisible ship bug 2019-06-08 22:20:30 -04:00
Anuken 53baad766f More balancing and cleanup 2019-06-08 17:34:29 -04:00
Anuken 8ac746188b Unit pad balance 2019-06-08 17:22:46 -04:00
Prosta4okua 62dbce089f Update bundle_ru.properties 2019-06-08 22:42:36 +03:00
Anuken fd5d0b2cbb Fixed PvP core assignment 2019-06-08 14:41:35 -04:00
Anuken 6226e0c5a3 Fixed old pathfinding targets not resetting on death 2019-06-08 13:04:26 -04:00
Anuken 01a9be835f what 2019-06-08 12:29:27 -04:00
Anuken 97eb66b0a5 Bundle update 2019-06-08 12:11:32 -04:00
Anuken 048c5e68f1 Crash fix 2019-06-08 11:28:33 -04:00
Anuken 8f39def993 Changed wiki link to point to unfinished 4.0 wiki 2019-06-08 10:56:47 -04:00
Anuken 0be674d7af Changed back overflow gate speed 2019-06-08 10:48:32 -04:00
Anuken e6499f7e5a Bugfixes 2019-06-08 10:41:22 -04:00
Anuken 10bd1d1969 Fixed #509 2019-06-08 10:05:08 -04:00
Anuken ec94267b8e Update ServerControl.java 2019-06-08 09:23:15 -04:00
Anuken d3ad113bf5 Update ServerControl.java
;
2019-06-08 09:18:39 -04:00
Anuken 8d7242a1ef Update ServerControl.java 2019-06-08 09:08:49 -04:00
Anuken 13879dd374 Fixed #513 2019-06-07 18:58:07 -04:00
Anuken 0f519fd358 Bugfixes for 78.1 2019-06-07 17:34:46 -04:00
Anuken e7fb128499 Fixed sorter loading 2019-06-07 16:13:48 -04:00
Anuken c2d619cb7f Save IO fixes 2019-06-07 16:06:23 -04:00
Anuken 78176cca90 unused -> unchecked 2019-06-07 15:06:17 -04:00
Anuken dbc49649c0 Merge remote-tracking branch 'origin/master' 2019-06-07 15:04:43 -04:00
Anuken 49ee821029 More stuff fixed / Contributor list 2019-06-07 15:03:01 -04:00
Anuken e1499330bc Merge pull request #508 from VizardAlpha/patch-21
Updates bundle_fr_BE.properties
2019-06-07 14:19:21 -04:00
Anuken 222175e005 Merge pull request #497 from ZacBytes/patch-5
Update bundle_zh_CN.properties
2019-06-07 14:18:40 -04:00
Anuken 388927715e Merge branch 'master' into patch-5 2019-06-07 14:18:33 -04:00
Anuken ac9e1febfb Merge pull request #492 from MrPickles14/patch-2
Update bundle_fr.properties
2019-06-07 14:16:08 -04:00
Anuken e47836cc64 Merge branch 'master' into patch-2 2019-06-07 14:16:00 -04:00
Anuken f8f48f1c88 Merge pull request #491 from MrPickles14/patch-1
Update bundle_fr.properties
2019-06-07 14:14:29 -04:00
Anuken 95e8a603a5 Merge pull request #489 from Kieaer/patch-5
bundle_ko
2019-06-07 14:14:03 -04:00
Anuken c400fd88f3 Merge pull request #487 from beito123/master
Update Japanese translations
2019-06-07 14:13:06 -04:00
Anuken 095d90fd22 Merge pull request #484 from Deyvid67/patch-2
Update bundle_pt_BR.properties
2019-06-07 14:11:47 -04:00
Anuken 797be92ddd Merge pull request #482 from laohuaji233/patch-7
Update bundle_zh_CN.properties
2019-06-07 14:11:32 -04:00
Anuken 7f23bd694c Merge pull request #480 from Prosta4okua/patch-1
Update bundle_uk_UA.properties
2019-06-07 14:11:15 -04:00
Anuken 1cbf8b960a Added clarifying mode descriptions 2019-06-07 14:10:23 -04:00
Anuken c8ce195522 Reverted buffers / Added Dexapnow's fixed zone maps [untested] 2019-06-07 14:07:32 -04:00
Anuken 4458ae042e hhh 2019-06-07 11:18:06 -04:00
Anuken 1c3d7c1c73 Merge branch 'master' of https://github.com/Anuken/Mindustry 2019-06-07 10:25:14 -04:00
Anuken cb3bbd169f Map temporarily removed 2019-06-07 08:57:51 -04:00
Anuken ab107bfc0d Additional default wave tweaks 2019-06-07 08:49:41 -04:00
Anuken d0b5b49bf8 Fixed many various bugs 2019-06-06 23:29:21 -04:00
Anuken 1b4b1d5c9f Maps updated / 100 starting copper in custom maps 2019-06-06 22:45:25 -04:00
Anuken aee800ab7a Changed turret outlines / Wall block tweaks 2019-06-06 21:18:54 -04:00
Anuken 895b46307a Sprite tweaks 2019-06-06 18:47:53 -04:00
Anuken d300d45f22 Fixed unit factory sprites 2019-06-06 15:38:19 -04:00
Anuken dd05f5278c Merge branch 'master' of https://github.com/Anuken/Mindustry 2019-06-06 12:05:46 -04:00
Anuken 1897008c72 Pump sprites 2019-06-06 10:27:11 -04:00
VizardAlpha 328cdac60f Update bundle_fr_BE.properties 2019-06-06 15:38:24 +02:00
Anuken 3942c6cd55 Even more sprites cleaned up 2019-06-06 00:28:09 -04:00
Anuken f0f7b5aaf7 Updated sprites 2019-06-05 21:29:34 -04:00
키에르 3ad9e44891 Update bundle_ko.properties 2019-06-05 23:05:01 +09:00
Anuken 80bdaa1edc Cleanup 2019-06-04 23:30:07 -04:00
Anuken 39acb224d1 Merged replacement sprites. Scaling is now disabled by default. 2019-06-04 22:54:01 -04:00
Anuken f51d565db8 Darker decals / map tweaks 2019-06-04 22:06:17 -04:00
Anuken d608cf6536 Fixed player respawning at editor location 2019-06-04 20:52:58 -04:00
Anuken 0b49bd1985 Pathfinding tweak / Doors now update pathfinding 2019-06-04 17:10:45 -04:00
Anuken fce69005a9 Islands map 2019-06-03 22:09:43 -04:00
Anuken b73420b156 Added map assets 2019-06-02 23:15:36 -04:00
Anuken fb863cb39b Editor bugfixes / Median filter 2019-06-02 17:45:44 -04:00
Anuken 8247ff15ed Fixed invalid phase weaver shader 2019-06-02 10:42:44 -04:00
Anuken af8db9062c Balance 2019-06-01 23:16:59 -04:00
VizardAlpha 9039d52817 Updates bundle_fr_BE.properties 2019-06-01 23:12:52 +02:00
Anuken 88d5e1cca8 Fixed low-FPS pad orbiting 2019-06-01 15:16:10 -04:00
Anuken 57544e615f Removed event inheritance 2019-06-01 14:24:52 -04:00
Anuken 61a92d55ae Balance / UUID logging in d/c messages 2019-05-31 19:55:09 -04:00
Anuken 940965f03d .mmap file importing / Better exception parsing 2019-05-31 10:24:51 -04:00
Anuken 30a254e9be decoupling editor/MapEditor from editor/OperationStack (#504) 2019-05-31 09:11:16 -04:00
Anuken 581782af28 Mass driver power fix / Bugfixes 2019-05-31 09:10:37 -04:00
Anuken 72cad1409f Bugfixes / Balance of fuse 2019-05-30 23:05:15 -04:00
Anuken e7e4985761 Fixed maps converting improperly / Minor balancing 2019-05-30 20:47:47 -04:00
Prosta4okua cdb3d29767 Update bundle_uk_UA.properties 2019-05-30 09:56:57 +03:00
Prosta4okua 90fe5329e3 Update bundle_uk_UA.properties 2019-05-30 09:53:37 +03:00
Prosta4okua 22e20cb2da Update bundle_ru.properties 2019-05-30 09:51:54 +03:00
Anuken a3454e50d7 Merge 2019-05-30 00:27:05 -04:00
Anuken 75b8f5e543 Properly rounded sprites for 'source/sorter' blocks 2019-05-29 23:42:03 -04:00
Anuken 1a0b22ef15 Overflow gate delay 2019-05-29 22:57:32 -04:00
Anuken bc78d1a561 Balancing 2019-05-29 22:29:49 -04:00
Anuken 00b953a04e Spawnpoint repultion 2019-05-29 21:41:56 -04:00
Doyoung Gwak aa0ef529f5 decoupling editor/MapEditor from editor/OperationStack 2019-05-29 00:04:42 +09:00
Anuken bd134bf9c9 Cleanup 2019-05-28 09:24:13 -04:00
Anuken 752267c521 Fixed many various map bugs 2019-05-26 16:46:44 -04:00
Anuken 34635e3460 Fixed fire not syncing 2019-05-26 11:03:49 -04:00
Anuken ba0b4513f1 New tile transitions 2019-05-25 23:56:21 -04:00
Anuken 4764808450 Merge remote-tracking branch 'origin/master' 2019-05-25 21:10:47 -04:00
Anuken c66fd67510 Fixed #500 / Fixed units not appearing in edited maps 2019-05-25 21:10:42 -04:00
Fenr1r 3997ca6454 Minor fix - rename some variable on editor. (#495)
- editor/EditorTool.java
- editor/MapInfoDialog.java
- editor/MapRenderer.java
2019-05-25 12:08:00 -04:00
Anuken 4242100c53 More descriptive entity load errors 2019-05-25 12:01:55 -04:00
Anuken 32adcc3676 Merge remote-tracking branch 'origin/master' 2019-05-22 21:07:13 -04:00
Anuken 80c26606f0 Fixed unit duplication 2019-05-22 21:07:08 -04:00
Fenr1r a7852098f1 Remove code duplication and rename set/get method on editor/DrawOperation.java (#496)
- remove code duplication in undo and redo method
- rename set/get method to setTile/getTile
2019-05-22 10:06:43 -04:00
Anuken 72638fc215 Merge branch 'master' of https://github.com/Anuken/Mindustry 2019-05-21 13:19:27 -04:00
Zachary 65418529cd Update bundle_zh_CN.properties
Skrttt Skrrtt Vroom Vroom

Translated some new stuff
2019-05-21 23:00:01 +08:00
Prosta4ok_ua ceea0d1730 Hmmmm
Hmmmm
2019-05-20 21:25:16 +03:00
키에르 764ea699b1 Update bundle_ko.properties 2019-05-20 13:14:59 +09:00
Anuken bdb7f522fb Balancing / Item tweaks 2019-05-19 17:50:11 -04:00
Anuken 2461331e32 Fixed wave turret being sporadic / Fixed unnecessary fluid usage 2019-05-19 09:09:22 -04:00
Anuken 3464f40da3 Fixed unit pads, rule selection, gameover state 2019-05-18 10:02:36 -04:00
Anuken 3b2b79d539 Buffed impact reactor 2019-05-17 18:10:03 -04:00
Anuken 8616fc6b05 Made invalid legacy maps be properly discarded 2019-05-16 17:15:22 -04:00
Anuken 9e9c001422 Cleanup 2019-05-16 15:16:17 -04:00
Anuken 93bbd34055 ...except overflow gates 2019-05-16 11:44:02 -04:00
Anuken cac953e812 Buffers for everything 2019-05-16 11:43:02 -04:00
Anuken aeb3662414 Bugfixes 2019-05-15 17:40:31 -04:00
Prosta4ok_ua 1687ce3182 Added new translations 2019-05-14 23:59:24 +03:00
Anuken 2888e87bb8 Map conversion fix 2019-05-14 16:38:49 -04:00
Anuken 094ebb8020 Removed some TODOs 2019-05-14 13:18:05 -04:00
Anuken 54ad52edc2 Merging of map saves 2019-05-14 11:54:22 -04:00
Anuken 0e869f3cb5 Fixed rules not saving / Memory usage reduction 2019-05-14 11:48:14 -04:00
Anuken 4d40af6ac0 More helpful in-game edit button 2019-05-13 11:47:38 -04:00
Anuken 79a2f31056 Fixed unit tests 2019-05-13 11:32:57 -04:00
Anuken b2341bf75c Added map default rule editing 2019-05-13 11:31:25 -04:00
Anuken c4c4b473e5 Server cleanup 2019-05-13 00:43:06 -04:00
Anuken 6e26ccf25d Removed unnecessary inheritance 2019-05-12 23:50:33 -04:00
Anuken 83bfad3546 Fixed server compilation 2019-05-12 20:01:59 -04:00
Anuken 90f6fff1ae Layout fixes 2019-05-12 19:55:26 -04:00
Anuken 52f2b52990 Somewhat functional rule selection 2019-05-12 19:43:23 -04:00
Anuken 48ed4b0e49 Fixed startup crash / Fixed editor rule issue 2019-05-12 12:51:25 -04:00
Anuken c3c609e7b9 Fixed invisible enemies 2019-05-12 12:38:40 -04:00
Anuken 6cd8fa6b0c Removed unused support library dependency 2019-05-12 12:16:46 -04:00
Anuken ffb6d398d7 Layout fixes 2019-05-12 12:00:19 -04:00
Anuken 52674b4668 Mobile diagonal toggle / Cancel button moved 2019-05-12 11:19:31 -04:00
Anuken 4ae2370137 New WIP custom map selection 2019-05-12 10:32:08 -04:00
키에르 cee55afa5c Update bundle_ko.properties 2019-05-12 15:46:03 +09:00
키에르 f998bbbe4c Update bundle_ko.properties 2019-05-12 14:45:25 +09:00
Anuken e5d19a9819 Entity placement/removal 2019-05-11 21:42:06 -04:00
Anuken dd75d88d2f Unit creation, team switch 2019-05-11 12:32:13 -04:00
Anuken 65ea01218a Fixed core-less editor gameover, respawning 2019-05-11 00:58:13 -04:00
Anuken 7a2234cd25 Tweaks to improve in-game editing 2019-05-11 00:37:29 -04:00
Anuken 11ede2756e Functional in-game map edits and loading 2019-05-10 20:25:09 -04:00
Anuken 3e51fab387 In-game editing (broken) 2019-05-10 19:13:55 -04:00
Anuken 962f413421 Cleanup 2019-05-10 16:16:21 -04:00
Anuken ae6c938abb Merge remote-tracking branch 'origin/master' 2019-05-10 16:02:15 -04:00
Anuken 68faae69c5 Fixed compilation errors / Re-added basic trace dialog 2019-05-10 16:02:05 -04:00
MrPickles14andMath2128 08edce7906 Update core/assets/bundles/bundle_fr.properties
Co-Authored-By: Math2128 <math2128@gmail.com>
2019-05-10 14:32:24 -04:00
MrPickles14 55eb493d1f Update bundle_fr.properties
J'ai changé 2 ou 3 trucs et ajouté des traductions qui n'étaient pas faites
2019-05-10 14:30:38 -04:00
Anuken d6be07f1b8 Fixed crash 2019-05-10 13:42:04 -04:00
Anuken 064a012b25 Map previews functional 2019-05-10 12:57:45 -04:00
MrPickles14 df26148e7c Update bundle_fr.properties 2019-05-10 12:23:21 -04:00
Anuken d26f533111 Basic non-in-game editor functionality 2019-05-10 00:01:48 -04:00
Anuken 69575dbab3 Fixed multiblocks not drawing 2019-05-09 18:10:12 -04:00
Anuken 9f4a430412 Fixed tests 2019-05-09 14:39:52 -04:00
Anuken 23843be981 More bugfix stuff 2019-05-09 12:57:00 -04:00
Anuken 486e3ffc0a Actual map conversion, loading of saves 2019-05-09 10:53:52 -04:00
Anuken 8127e5a66f Made save format actually functional, many things still broken 2019-05-08 23:16:08 -04:00
Anuken 53167a3b52 Map conversion code 2019-05-07 17:30:37 -04:00
Anuken 1b77247c40 wow it builds 2019-05-07 11:56:17 -04:00
Leone25 24374cf7e3 Update bundle_it.properties (#490)
please merge as soon as possible
2019-05-07 09:34:42 -04:00
Anuken 88de54ec90 Further unfinished map tweaks 2019-05-06 18:32:18 -04:00
Anuken 3035d569cc Editor<->world data merging 2019-05-06 17:03:53 -04:00
Anuken 51f9ad5a2c many things 2019-05-06 14:34:21 -04:00
키에르 bb322f1bff Update bundle_ko.properties 2019-05-06 16:20:54 +09:00
키에르 72843e9c92 Update bundle_ko.properties 2019-05-06 16:19:20 +09:00
Anuken 20fbe2fbbe even less broken 2019-05-05 22:09:02 -04:00
Anuken bf073a84c8 a bit less broken but still broken 2019-05-05 19:05:46 -04:00
Anuken 35b158dba7 everything is borked 2019-05-05 14:16:34 -04:00
Anuken 465c0e7dc3 Merge branch 'master' of https://github.com/Anuken/Mindustry 2019-05-05 12:50:04 -04:00
Anuken eb4f6f2e9f Merge branch 'master' of https://github.com/Anuken/Mindustry into save-rewrite 2019-05-05 12:39:38 -04:00
Anuken 0ff56e3a68 Fixed meltdown not firing when cheating 2019-05-05 12:36:30 -04:00
Anuken 4ddc59589c Error display 2019-05-05 12:19:32 -04:00
Anuken 1e15d7a33e Fixed some power/save/pathfinding bugs 2019-05-05 12:14:42 -04:00
Prosta4ok_ua e4e2b6ab00 Hmmmmmm 2019-05-05 18:37:24 +03:00
Anuken af67690e75 WIP save refactoring 2019-05-05 11:36:38 -04:00
beito123 b37ae484c0 Update Japanese translations 2019-05-05 23:39:15 +09:00
Anuken 13969bdd29 Fixed shields not working / Fixed player text not fading 2019-05-04 22:33:08 -04:00
Anuken a3f5583326 Fixed tar fields 2019-05-04 22:17:17 -04:00
Anuken f137c11c6c Harder default waves 2019-05-04 17:14:47 -04:00
Anuken 8d6afbd80d Trim console output even more 2019-05-04 14:22:13 -04:00
Anuken c46fa206f6 Removed unnecessary logging 2019-05-04 14:01:06 -04:00
Anuken e8da206389 Enable heap dump on server crash 2019-05-04 13:17:31 -04:00
beito123 18f1b5f9d2 Update Japanese translations 2019-05-05 01:52:35 +09:00
Anuken b2b8cf2357 Server local command handling from sockets 2019-05-04 12:36:24 -04:00
Anuken a4fd88a440 Bugfixes 2019-05-04 10:44:21 -04:00
beito123 96a92fd85f Update Japanese translations 2019-05-04 18:42:05 +09:00
beito123 e5175d6309 Update Japanese translations 2019-05-04 18:37:44 +09:00
beito123 b5ceee3336 Merge remote-tracking branch 'upstream/master' 2019-05-04 16:42:48 +09:00
Anuken a1624f61ae Minor turret balancing 2019-05-03 22:58:06 -04:00
Anuken 5ee26fc3f4 Fixed power tests 2019-05-03 22:26:37 -04:00
Anuken 93ffb66e59 Fixed all known issues with power system 2019-05-03 21:19:41 -04:00
Anuken 4b9bcfb014 Crash fix 2019-05-03 10:26:56 -04:00
Anuken a161c09441 Switched default mech to dart / Bugfixes 2019-05-03 09:21:45 -04:00
Anuken 0c396f76b2 Fixed impact reactor warming up without satisfied power 2019-05-03 00:13:37 -04:00
Anuken b2408b1a7c New block stats / Junction bugfixes 2019-05-02 23:10:41 -04:00
Deyvid67 c97826ed29 Update bundle_pt_BR.properties 2019-05-02 14:33:29 -03:00
Anuken 9c653a46bc Merge remote-tracking branch 'origin/master'
# Conflicts:
#	core/src/io/anuke/mindustry/game/Version.java
2019-05-02 12:59:05 -04:00
Anuken eaa2ad4f05 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	core/assets/bundles/bundle.properties
2019-05-02 08:57:09 -04:00
Anuken 88ce7837a6 Partial power usage / Drill ID priority / Liquid source deselect 2019-05-02 08:56:29 -04:00
beito123 9f5a183793 Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	core/assets/bundles/bundle_ja.properties
2019-05-02 20:08:10 +09:00
Anuken c2a6690d24 Merge branch 'master' of https://github.com/Anuken/Mindustry 2019-05-01 20:52:02 -04:00
Anuken 5e5b719704 Added version toggle 2019-05-01 20:51:44 -04:00
L5474 4054c7d12d fix #481 + capitalization (#483)
hope you're happy based
2019-05-01 15:40:37 -04:00
laohuaji233 bb5e454b91 Update bundle_zh_CN.properties
Most of them have been translated into Chinese, but there are still some uncertainties.
2019-05-01 23:19:27 +08:00
Prosta4okua ffb12f9c0b Update bundle_ru.properties 2019-05-01 18:18:01 +03:00
Prosta4okua a89786d079 Update bundle_uk_UA.properties 2019-05-01 18:17:35 +03:00
Anuken 2d3fd513d8 1 2019-05-01 11:12:27 -04:00
Prosta4ok_ua 271d01dc9d Tar fields, Overgrowth, Dart Mech Pad 2019-05-01 13:16:12 +03:00
Prosta4okua d3ffaea042 Update bundle_uk_UA.properties 2019-05-01 11:36:13 +03:00
Anuken 404b593ab8 Merge remote-tracking branch 'origin/master' 2019-04-30 23:58:51 -04:00
Anuken b9f1dea914 Removed gen tweaks 2019-04-30 23:57:56 -04:00
Anuken f3385e6453 Pruned bundles 2019-04-30 23:34:41 -04:00
Anuken a2e55f7861 Removed creeptree for now 2019-04-30 13:09:40 -04:00
Anuken 761e0114a5 Apparent typo fix 2019-04-30 12:56:57 -04:00
laohuaji233 dcae128d06 Update bundle_zh_CN.properties (#475)
more translations
2019-04-30 12:49:39 -04:00
J-VdS a891a8badc NL_BE bundle progress (Fishbuilder) (#474)
* Create bundle_nl_BE.properties

work in progress, just to save the file

* tot 148
2019-04-30 12:47:54 -04:00
Zachary f3ec5b533e Update bundle_ja.properties (#473)
Translated like one name lmao
2019-04-30 12:47:42 -04:00
Zachary d50397edf1 Update bundle_zh_CN.properties (#472)
Translated more block names.
2019-04-30 12:47:32 -04:00
Deyvid67 49986f22c8 Update bundle_pt_BR.properties (#469) 2019-04-30 12:47:26 -04:00
Predator127 70f279d978 Update bundle_pt_BR.properties (#467)
This is an updated version of the Brazillian translation, Made by Hanko
2019-04-30 12:46:01 -04:00
VizardAlpha 84c5a75b6c Updates bundle_fr_BE.properties (#462)
* Updates bundle_fr_BE.properties

* Update bundle_fr_BE.properties

* Update bundle_fr_BE.properties
2019-04-30 12:45:38 -04:00
Paul T 97663e87a6 Update bundle_de.properties (#452)
* Update bundle_de.properties

* Update bundle_de.properties
2019-04-30 12:45:06 -04:00
laohuaji233 5956edcb8e Update bundle_zh_CN.properties (#453)
More translations
2019-04-30 12:44:57 -04:00
Prosta4okua 7e975f2134 Update bundle_uk_UA.properties and bundle_ru.properties (#454)
* Update bundle_uk_UA.properties

Виправив помилку, переклав Slag.

* Update bundle_uk_UA.properties

Додав переклад дьогтю

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_ru.properties

Commit from Github Desktop

* Update bundle_ru.properties

* New translations was added

Salt Rocks and Pebbles

* Update bundle_ru.properties

* Update bundle_ru.properties

* New text

* Fix error

* Update bundle_ru.properties

* Add new translations

* Add Solonchaki :D

* 1
2019-04-30 12:44:41 -04:00
키에르 40de13f9c7 Update bundle_ko.properties (#457)
* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

*  Apr 22, 2019

* fix typo

* Update bundle_ko.properties
2019-04-30 12:44:08 -04:00
Dominik 70946539e3 Update bundle_pl.properties (#458)
Translated: wave info, generate, ammo info, drill, power efficency
2019-04-30 12:43:20 -04:00
CinExPL 996c594dfc Update bundle_pl.properties (#460)
Improvements based on comparison with original bundle file.
2019-04-30 12:39:00 -04:00
Anuken d8eeb79b63 Un-debugged content 2019-04-30 12:29:19 -04:00
Anuken cf61dd0704 Removed antialiasing due to bugs / Improved default waves 2019-04-30 12:05:01 -04:00
Anuken 6fd5f1563a Fixed incorrect power source sprite 2019-04-30 00:07:38 -04:00
Anuken 3c643c917a Map bugfixes / Sprite tweak / Zone loadout moved to dialog 2019-04-29 23:58:16 -04:00
Anuken 378be0ef86 Better Discord presence 2019-04-29 13:34:27 -04:00
Anuken 29e90969eb Removed UIUtils 2019-04-29 11:50:49 -04:00
Anuken fb724514f3 Fixed portrait custom game dialog 2019-04-29 11:27:15 -04:00
Anuken 1f11da75d2 Push test 2019-04-29 08:34:40 -04:00
beito123 a2fa65330d Update Japanese translations 2019-04-29 17:40:03 +09:00
beito123 d3af66b7ed Merge remote-tracking branch 'upstream/master' 2019-04-29 17:18:16 +09:00
Anuken fcc433fe17 Zone balancing 2019-04-28 22:03:26 -04:00
Anuken 617bdf9910 New zone maps / Dark map border / Tweaks 2019-04-28 20:25:41 -04:00
Anuken 3b2aa92eb7 Visual server respawning fix 2019-04-28 10:51:14 -04:00
Anuken 4c17b56e28 Less messy respawning / Standard starter mech / Bugfixes 2019-04-28 10:34:53 -04:00
Anuken ad13c83f93 Fixed gen copying for earlier versions of IntelliJ 2019-04-27 09:58:14 -04:00
Anuken 768d67a8ae Updated desolate rift / Spawning fixes 2019-04-26 23:23:45 -04:00
Anuken d827cda395 Fixed dispose() causing crash 2019-04-26 11:32:38 -04:00
Anuken 106e6c98a3 Disabled liquid ore placement 2019-04-26 11:31:55 -04:00
Anuken e7ad797d4e Fixed unit tests 2019-04-26 11:23:41 -04:00
Anuken 6e1fb71194 Bugfixes 2019-04-25 21:53:17 -04:00
Anuken 9f5dc7f091 Fixed obscure zone test bug 2019-04-25 12:25:45 -04:00
Anuken 57b273639c Entity cleanup 2019-04-25 12:01:14 -04:00
Anuken 278d690a6b Even better avoidance 2019-04-24 23:16:18 -04:00
Anuken c91c0f7b47 "Fixed" unit collisions 2019-04-24 22:47:49 -04:00
Anuken 6a406f4d45 Removed SolidTrait#movable 2019-04-24 22:18:00 -04:00
Anuken eecaa850e0 Fixed minimap zoom not resetting after map load 2019-04-24 09:12:33 -04:00
Anuken f332332eaa Removed unused variables 2019-04-23 21:59:44 -04:00
Anuken 79b0e76be0 Bugfixes / Unit test fix 2019-04-23 11:59:07 -04:00
Anuken 30650efd98 Added unfinished zone map 2019-04-22 23:56:46 -04:00
Anuken b7759c8151 Better shared crash handling 2019-04-22 12:00:47 -04:00
Anuken 0382c35ac0 Settings menu layout improved / Rule dialog improvements 2019-04-21 22:39:56 -04:00
Anuken 819262c93f Removed GameMode requirements 2019-04-21 16:34:02 -04:00
Anuken db60f4bb1c Updated to Gradle 5.4 2019-04-20 23:09:28 -04:00
Anuken 7785ca55c2 New unstable mass driver code 2019-04-20 21:10:52 -04:00
Anuken 75dcceff43 Zone requirement changes / Bugfixes 2019-04-20 19:57:20 -04:00
Franciszek Zaranowicz af91979d4c New custom games and custom rules screen (#464)
* New waves and limited respawning option.

Added ability to manipulate number of respawns per wave. Added option to hold counting for next wave until all enemies are destroyed

* Critical bug fixed

Fixed frozen wave timer when rules.waitForWaveToEnd was enabled

* Requested changes

* Missed Import

* New custom game and custom rules screen

RulePreset is now a Gamemode (because each of them has a different goal).
New button under Gamemode selection which opens a dialog to modify rules of gamemode.
Now without any mutually exclusive options

* Requested changes

* Applied some text sugestions

* Wrong waveInProgress message displaying fixed

* Unwanted text

* Text changes

* I broke git

* Fixed chrash

* More fixes

New rule : manyCores; needed for sanbox mode

* Visual fix

* Requested changes #1 : small oversights

* Moved respawning logic to Player

and another imports cleanup

* manyCores in now attackMode

* UI changes

* Given back waves to sandbox and integer input in custom rules

* Renamed functions in CustomRulesScreen

* SPACES... Actually one space...
2019-04-20 14:19:17 -04:00
Anuken 52cd4a77dd MechPad deselect / Flyer patrol tweak 2019-04-20 14:14:34 -04:00
Anuken 8a1da3c0ed Added mobile camera clamping / Mech pad tap power validation 2019-04-19 23:32:46 -04:00
Anuken 9d67c36c32 Cleanup, bugfixes 2019-04-19 23:07:21 -04:00
Anuken f283709e62 Removed NumberUtils 2019-04-19 11:39:47 -04:00
Anuken 5035559b08 Net cleanup 2019-04-17 23:45:42 -04:00
Anuken 01e1438382 Switched to ArcNet networking extension 2019-04-17 21:59:26 -04:00
Anuken 4eee472043 Blend fix 2019-04-16 20:31:40 -04:00
Anuken 5f89a1b9ca Sprite updates 2019-04-16 20:30:47 -04:00
Anuken b9db5ad662 Added block cracks 2019-04-16 12:15:06 -04:00
beito123 4a7960d64b Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	core/assets/bundles/bundle_ja.properties
2019-04-16 19:10:18 +09:00
Anuken 5b8084e1fa Solid bush block 2019-04-16 00:49:14 -04:00
Anuken ab67b67e4c Updated environmental sprites 2019-04-15 22:52:44 -04:00
Anuken f825931f92 Consistent output timer 2019-04-15 18:53:31 -04:00
Anuken 6113edf2ce Made fortress mechs keep walking when attacking 2019-04-15 18:40:10 -04:00
Anuken 8413443c26 Tech tree usability improvements / Bugfixes 2019-04-15 18:32:32 -04:00
Anuken f67fb31bc5 Updated craters map 2019-04-14 21:44:01 -04:00
Anuken d321ec5ed1 Fixed impact reactor not requiring blast compound 2019-04-14 10:37:15 -04:00
Anuken 084ae184f9 Fixed core inventory persistence bug 2019-04-14 10:18:18 -04:00
Anuken d1ec652f7b More blasting 2019-04-13 19:55:06 -04:00
Anuken 7a2a6586be Fixed nuclear reactor not exploding properly 2019-04-13 17:45:53 -04:00
Anuken 392dcf3092 Made frozen forest less constricted / Tree block fix / Server crash fix 2019-04-13 17:32:49 -04:00
Anuken 8a983c784d Added missing jcenter repository 2019-04-13 14:57:26 -04:00
Anuken a443263439 Updated Discord RPC 2019-04-13 14:41:56 -04:00
Anuken 3e766b9f54 Merge branch 'remove-link-byte' of https://github.com/Anuken/Mindustry 2019-04-13 11:04:43 -04:00
Anuken 89b9501f35 Fixed tree color 2019-04-13 11:04:36 -04:00
Anuken 816ae84005 Overlay testing 2019-04-12 23:03:34 -04:00
Anuken c0e425cf46 Fixed drones being useless 2019-04-12 16:05:30 -04:00
Anuken 9ebb4c7d12 Removed link byte, replaced with rotation 2019-04-12 15:30:34 -04:00
Anuken 46c3b35028 Generic overlay tiles 2019-04-12 15:10:10 -04:00
Anuken ef2b8be726 Cleaned up some sprites 2019-04-11 22:52:29 -04:00
Anuken df51078858 New generation 2019-04-11 16:41:46 -04:00
Anuken 5783b61631 Bugfixes 2019-04-10 17:47:22 -04:00
Anuken 98a53381fb Testing more procedural generation 2019-04-09 23:40:29 -04:00
Anuken daccfa5fe3 Procedural zone generation 2019-04-09 22:52:38 -04:00
Anuken d82c24616f Fixed tests 2019-04-09 13:45:38 -04:00
Anuken 905ca3dcfc Balance 2019-04-09 13:19:55 -04:00
Anuken b4fb687c4f Coal centrifuge / In-game chat / Player health rule / Bugfixes 2019-04-09 12:44:07 -04:00
Anuken 39fb2ae5ab Net fixes 2019-04-08 18:33:22 -04:00
Anuken b40beb0d1d Source reformat 2019-04-08 09:03:18 -04:00
Anuken 4a96b9bb00 Force projector allocation fix 2019-04-08 08:38:36 -04:00
Anuken f83a178982 Removed useless net logging 2019-04-08 08:37:13 -04:00
Anuken 986b4276e1 Less snapshots per second 2019-04-07 18:19:38 -04:00
Anuken 6f6f418ec9 Fixed save/multiplayer sync bugs 2019-04-07 17:36:28 -04:00
Anuken 1463571cd7 Input fix 2019-04-07 16:58:22 -04:00
Anuken 7dfb0a81e3 Test fixes 2019-04-07 14:53:53 -04:00
Anuken 9699d9467a New tests / Bugfixes 2019-04-07 14:09:34 -04:00
Anuken 08a2872527 Bugfixes 2019-04-07 11:25:08 -04:00
Anuken 7c81a807ea Generator fixes 2019-04-06 10:04:00 -04:00
Anuken 3bf7031e6a Fixed cryofluid mixer 2019-04-05 20:48:13 -04:00
Anuken 503fc980f4 Bugfixes 2019-04-05 14:10:01 -04:00
Anuken efed11eb97 stuff 2019-04-05 09:26:31 -04:00
Anuken 330820062f Fixed multiblock exploit 2019-04-04 23:53:51 -04:00
Anuken 45d157fe3f Minimap fixes 2019-04-04 23:34:09 -04:00
Anuken 812dea385c more bugfixes 2019-04-04 22:05:12 -04:00
키에르 c582bdea46 Update bundle_ko.properties (#439)
* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* Update bundle_ko.properties

* match orignal bundle

* Update bundle_ko.properties

* Update bundle_ko.properties
2019-04-04 19:59:09 -06:00
laohuaji233 e6c6a9381b Update bundle_zh_CN.properties (#440)
* Update bundle_zh_CN.properties

More translations and fixed some wrong words

* Update bundle_zh_CN.properties
2019-04-04 19:58:05 -06:00
VXF 4b4c0755c6 Update bundle_zh_CN.properties (#441) 2019-04-04 19:53:34 -06:00
Prosta4okua aeb0539c91 Russian bundle (#443)
* Go build communism

* Update bundle_ru.properties

Last commit: minimap

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties
2019-04-04 19:53:02 -06:00
Prosta4okua 9feafa45f5 Ukrainian bundle (#444)
* No. Routernism is better.

Last commit: bugfixes

* Update bundle_uk_UA.properties

Last commit: minimap

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties
2019-04-04 19:52:09 -06:00
Math2128 927df391f3 Update bundle_fr.properties (#447)
* Update bundle_fr.properties

Haven't done much. If I have more time, I will work on it. If anyone else wants to contribute, make sure not to do the same as me ! :p

* Update bundle_fr.properties

* Update bundle_fr.properties

* Update bundle_fr.properties

Add a bit more. If anyone knows where to find all the filters in the game, please tell me. It'll help me get the word in context

* Update bundle_fr.properties

* Update bundle_fr.properties

* Update bundle_fr.properties

* Update bundle_fr.properties

* Update bundle_fr.properties
2019-04-04 19:50:59 -06:00
Anuken cbef6adeb1 Crafter bugfixes 2019-04-04 21:49:45 -04:00
Anuken 2dee221861 Crash fix 2019-04-04 20:39:04 -04:00
Anuken 0b175cb25d Fixed release script using wrong folder 2019-04-04 19:36:15 -04:00
Anuken 0820338b55 Moved FPS counter once more / Pulverizer sprite fix 2019-04-04 19:31:17 -04:00
Anuken a2b46eee6f Improved pixel zoom / Possible player duplicate glitch 2019-04-04 18:58:48 -04:00
Anuken 09a435320a Impact reactor display bugfix 2019-04-04 15:14:45 -04:00
Anuken bf56200c06 Power amount message for buffered blocks 2019-04-04 15:06:27 -04:00
Anuken 2d18df2011 Multiplayer bugfixes / Balancing 2019-04-04 14:46:41 -04:00
Anuken bab87c0da8 Default spawn limit bumped to 4 2019-04-04 00:05:59 -04:00
Anuken 148f272500 New rule modifiers 2019-04-04 00:03:19 -04:00
Anuken 6de4af727b JSON read/write generation 2019-04-03 22:24:14 -04:00
Anuken 75946b9d14 Explosion propagation 2019-04-03 09:39:11 -04:00
Anuken 1c63ee6743 Clean pixel zoom 2019-04-02 23:30:40 -04:00
Anuken efdaf0d986 Balancing, tweaks and bugfixes 2019-04-02 22:43:20 -04:00
Anuken 3f6aeac33d Cleanup of new graphical options 2019-04-02 17:18:55 -04:00
Anuken d9692004cc Shield optimization 2019-04-02 17:08:22 -04:00
Anuken 67a12eecad Bugfixes 2019-04-02 15:52:44 -04:00
Anuken 37999e0870 Risky building changes 2019-04-02 14:26:23 -04:00
Anuken 66dc1e94f5 Slight entity optimizations / Turret sprite fixes 2019-04-02 13:58:44 -04:00
Anuken ebcce194a0 Turret coolant use balancing 2019-04-02 11:26:02 -04:00
Anuken 95eab94c80 Fixed liquid blocks not accepting liquids 2019-04-02 10:51:52 -04:00
Anuken 41a6dbe06c Basic minimap 2019-04-01 21:16:22 -04:00
Anuken fa22b0ec12 Removed dead donations code 2019-04-01 18:51:49 -04:00
Anuken be60a367e8 Removed donations library and Android support libraries 2019-04-01 18:46:11 -04:00
Anuken 608de34205 Updated bundles 2019-04-01 13:32:49 -04:00
Anuken 0a8f2edb05 Block update unit tests 2019-04-01 11:57:43 -04:00
Anuken 41b08f38c5 Fixed tests 2019-04-01 11:34:10 -04:00
Anuken a83c0b2e9a "fixes" 2019-03-31 22:27:11 -04:00
Anuken 8f853c8f18 Back button cleanup 2019-03-31 18:26:52 -04:00
Anuken b4071f6dcb Merge 2019-03-31 18:24:25 -04:00
Anuken 6b70418861 Cleanup 2019-03-31 18:20:38 -04:00
Anuken de0235ad94 Sweeping rework 2019-03-31 17:49:15 -04:00
Anuken c278c632b3 Back button quitting 2019-03-31 13:16:43 -04:00
Anuken 6392330e70 Optimizations / Very broken changes 2019-03-31 13:11:12 -04:00
Anuken 160ae4e244 Fixed startup crashing 2019-03-31 10:37:52 -04:00
Anuken a6c9bd3182 Class cleanup 2019-03-30 23:23:57 -04:00
Anuken 801eadd8a8 Bugfixes 2019-03-30 19:10:06 -04:00
Anuken 211dab1297 Compilation cleanup 2019-03-30 18:48:54 -04:00
Anuken 0c3b39ffdc Merge branches 'avoidance-optimization' and 'master' of https://github.com/Anuken/Mindustry 2019-03-30 13:52:46 -04:00
Anuken c31f88a318 Fixes 2019-03-30 13:01:55 -04:00
Anuken e9eb981782 More optimization / Flying avoidance 2019-03-30 12:54:29 -04:00
Anuken 83bde8a781 Improved avoidance 2019-03-30 12:33:01 -04:00
Anuken 52f352bf94 Fixed nondeterministic drill item sorting 2019-03-30 10:16:48 -04:00
Anuken b419a96d69 Mech balance / Re-added map screenshot 2019-03-30 00:17:29 -04:00
Anuken eb3d5b62f5 Tweaks 2019-03-29 22:48:04 -04:00
Anuken 1c5f578d88 Initial implementation 2019-03-29 18:48:03 -04:00
Anuken db3aae1388 Merge remote-tracking branch 'origin/master' 2019-03-29 18:15:31 -04:00
Anuken 0b08eb72a6 Bugfixes 2019-03-29 18:15:22 -04:00
Skybbles // L5474 cbc81376be pulverizer pulverises scrap not stone (#442) 2019-03-29 13:55:45 -06:00
Anuken 27e9901d05 Removed unused shadow methods; minor tweaks 2019-03-29 09:07:46 -04:00
Anuken 532c36677c Map preview block shadows 2019-03-28 22:23:59 -04:00
Anuken 0c20c6ecb7 Removed greek bundle temporarily, as font does not support it 2019-03-28 20:48:34 -04:00
Anuken fbb3240ebb Hid 0-damage stat to prevent confusion 2019-03-28 19:20:09 -04:00
Anuken bffae90022 Crash fixes 2019-03-28 17:41:57 -04:00
Anuken 61f6368591 Bundle update 2019-03-28 17:31:22 -04:00
Valen. H 1027ca2a85 Greek (#394)
Made in 2018, might be a bit out of date but seems functional. (4-alpha-63)
**Not complete**
2019-03-28 15:29:11 -06:00
Prosta4okua 5acc42f739 @router & @xzimur Create a PR for the Russian language (#437)
Останній комміт — Code cleanup (https://github.com/Anuken/Mindustry/commit/97f5bf3cc4898cf3312efca9c05a63f2768515f3#diff-daade3141498d8856d75ec34b88bbb19)
2019-03-28 15:26:14 -06:00
laohuaji233 1edeaeb94e Update bundle_zh_CN.properties (#436)
more translations
2019-03-28 15:26:08 -06:00
키에르 879acc6077 Update bundle_ko.properties (#435)
* Update bundle_ko.properties

* Oops

* Oops 2

* Update bundle_ko.properties

* Update bundle_ko.properties
2019-03-28 15:25:35 -06:00
Anuken 4e5d87104c Unit AI fixes / Other general fixes 2019-03-28 17:12:49 -04:00
Anuken e6a24b8ba1 Balancing / Bugfixes / Decreased build duration slightly 2019-03-28 14:38:00 -04:00
Anuken fd190c7770 UI layout fixes 2019-03-28 12:50:22 -04:00
Anuken d56869aefa Unit shadows 2019-03-28 12:42:04 -04:00
Anuken c8a15bb7e4 Shadow optimization: 30 -> 60 FPS on phone tested 2019-03-28 12:19:54 -04:00
Anuken 07c28c3f6d Minor fixes 2019-03-28 11:00:34 -04:00
Anuken 855957b099 Broke all crafting 2019-03-27 23:24:07 -04:00
Anuken 50959317e9 New launch pad / Tech tree tweaks 2019-03-27 22:13:40 -04:00
Anuken 20a681a71f Zone unlocking tweak 2019-03-27 19:21:15 -04:00
Anuken 4e2d558b36 Merge remote-tracking branch 'origin/master' 2019-03-27 09:31:12 -04:00
Anuken 0430b908f4 New requirements for zone unlock, currently broken 2019-03-27 09:31:07 -04:00
Anuken a84e9f2aaa Updated RoboVM plugin 2019-03-26 20:35:29 -04:00
Anuken 7ce571e59c New tentative edge style / Zone tweaks 2019-03-26 20:10:01 -04:00
Anuken 545a64f7dc Merge remote-tracking branch 'origin/master' 2019-03-26 11:05:55 -04:00
Anuken 10c999a4a2 Bugfixes / Mender block / Extra stats / Balancing 2019-03-26 11:05:47 -04:00
Anuken d0e026d597 Bugfixes 2019-03-25 13:12:55 -04:00
Anuken 0b1e2bf19b Compile fixes 2019-03-24 21:54:01 -04:00
Anuken 71c2c7ad05 More code cleanup 2019-03-24 21:10:59 -04:00
Anuken 97f5bf3cc4 Code cleanup 2019-03-24 19:58:51 -04:00
Anuken bb9573b85a Build cost/speed rules 2019-03-24 18:33:07 -04:00
Anuken e1f53dfc67 Added bundle entries 2019-03-24 17:58:59 -04:00
Anuken 87481e0a4d Ammo stats 2019-03-24 17:55:41 -04:00
Anuken f7aa58e385 Many small tweaks / Custom rules / Server run files / Balance 2019-03-24 16:29:25 -04:00
Anuken ea5c78f814 UI scaling fixes 2019-03-23 22:00:41 -04:00
Anuken c93c016e9c more icons 2019-03-23 19:06:50 -04:00
Anuken 4bb6664c7e Merge remote-tracking branch 'origin/master' 2019-03-23 18:48:00 -04:00
Anuken 9578068a02 another menu attempt 2019-03-23 18:47:57 -04:00
Anuken 30e5f2b17d iOS building fix 2019-03-23 18:33:33 -04:00
Anuken f959760c07 More iOS icon stuff 2019-03-23 15:05:22 -04:00
Anuken e7db2350bc Merge remote-tracking branch 'origin/master' 2019-03-23 14:39:08 -04:00
Anuken 0585dabf7a iOS icons 2019-03-23 14:39:04 -04:00
William So a3c6e3f1df Update 'bundle_zh_TW.properties' (#433)
* Match 'bundle_zh_TW.properties' with 'bundle.properties'

* Update 'bundle_zh_TW.properties'
2019-03-23 11:48:55 -06:00
Prosta4okua 9f57278644 Update bundle_uk_UA.properties (#430)
* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* Update bundle_uk_UA.properties

* deleted Ыы

* Update bundle_uk_UA.properties
2019-03-23 11:48:50 -06:00
ScriptHosT12 afc35cf623 Update bundle_pt_BR.properties (#432) 2019-03-23 11:48:37 -06:00
Prosta4okua 6d8523054b Update bundle_ru.properties (#429)
* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties

* Update bundle_ru.properties
2019-03-23 11:48:31 -06:00
Anuken fdecd55278 Updated build files 2019-03-23 13:40:13 -04:00
Anuken 7e7f95916b Moved launch button to top right 2019-03-23 11:49:48 -04:00
Anuken ab52c65dcf Updated bundles 2019-03-23 11:08:46 -04:00
Anuken ed4d0eb5d0 Shadows setting / Server map text limit / Fallback spritesheet 2019-03-23 11:02:59 -04:00
Anuken 4bc9143306 New icon / Windows deployment fixes / Map fixes / Menu fix 2019-03-22 22:30:26 -04:00
Anuken a4f558c77a Code cleanup / Tainted water 2019-03-22 19:16:15 -04:00
Anuken e4f226a9c5 more menu table fighting 2019-03-22 13:58:51 -04:00
Anuken c7d34049fa Crash fix / Input tweak 2019-03-22 00:16:09 -04:00
Anuken ee06e620c6 Zone wave bugfix / New tests / More "encouragement" 2019-03-21 19:19:12 -04:00
Anuken b48110db3b Fixed #431 [item spacing not taken into account] 2019-03-21 17:13:46 -04:00
Anuken 8413046dd8 Crash/visual fixes 2019-03-21 15:37:36 -04:00
Anuken 83a5a82e18 Fixed server map find bug 2019-03-21 11:22:10 -04:00
Anuken 771c5fbe3d Better packr minimization 2019-03-21 11:15:03 -04:00
Anuken 74f16d0137 Reduced drone factory cost 2019-03-21 10:43:04 -04:00
Anuken 5d5d354f7d Balancing 2019-03-21 10:36:33 -04:00
Anuken 8f5f27755d Bugfixes / Allow placing blocks in shallow liquids 2019-03-21 10:16:37 -04:00
Anuken 4cb92cdb06 Fixed some deployment issues 2019-03-21 00:58:06 -04:00
Anuken c5226c9e59 Merge branch 'master' into master 2019-03-20 17:13:48 -06:00
beito123 3bad95b389 Update Japanese translations 2019-03-20 15:29:36 +09:00
beito123 54ef7760b9 Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	core/assets/bundles/bundle_ja.properties
2019-03-20 13:11:49 +09:00
beito123 2ed5d34192 Update Japanese 2019-03-19 21:20:29 +09:00
beito123 9336a2b4c5 Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	core/assets/bundles/bundle_ja.properties
2019-03-17 17:56:40 +09:00
beito123 eb92ca8cd7 Update Japanese 2019-03-17 16:44:51 +09:00
(G_H) d3922905c9 Add files via upload 2019-03-06 20:56:15 +08:00
beito123 f5866d7f72 Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	core/assets/bundles/bundle_ja.properties
2019-03-06 14:59:38 +09:00
beito123 dbbc72d00f Update Japanese translations 2019-03-06 14:49:12 +09:00
beito123 2b4bcf0b0a Oops! 2019-02-15 12:17:43 +09:00
beito123 0851f2d0e2 Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	core/assets/bundles/bundle_ja.properties
2019-02-13 12:23:26 +09:00
beito123 ea9ed841ee Update Japanese translations 2018-12-16 21:54:32 +09:00
beito123 567f3fd3cd Update Japanese translations 2018-12-15 17:26:26 +09:00
beito123 9dcd8dc419 Merge remote-tracking branch 'fork_master/master' 2018-12-15 15:48:39 +09:00
beito123 e19bd9d434 Update Japanese translation 2018-12-10 23:10:57 +09:00
beito123 35ecd26634 Update Japanese translations 2018-12-10 00:37:00 +09:00
beito123 ac3bb37c36 Update Japanese translations 2018-12-09 19:36:29 +09:00
beito123 17b8b285a3 Update Japanese translations 2018-12-09 19:10:41 +09:00
beito123 788bf383aa Update Japanese translations 2018-12-09 19:07:40 +09:00
beito123 8d0b889f3c Update Japanese translations 2018-12-09 15:09:37 +09:00
beito123 d250fb655d Merge remote-tracking branch 'fork_master/master' 2018-12-09 14:26:55 +09:00
beito123 74eb79de17 Merge remote-tracking branch 'fork_master/master' 2018-12-08 00:44:59 +09:00
beito123 e2eabfc141 Merge remote-tracking branch 'fork_master/master' 2018-12-01 17:08:54 +09:00
beito123 a3ee43b31c Update Japanese translations 2018-11-25 23:49:40 +09:00
beito123 12dd16d4bf Update Japanese 2018-11-25 23:40:33 +09:00
beito123 a5b9e57576 Update Japanese translations
Improve and update for new changes
2018-11-25 23:33:00 +09:00
beito123 6c194d257c merge from master 2018-11-25 22:39:04 +09:00
beito123 09598e0ced Update Japanese 2018-11-16 19:39:16 +09:00
beito123 6af2696f6a Update Japanese 2018-11-16 19:01:05 +09:00
beito123 69dac77932 Merge remote-tracking branch 'fork_master/master' 2018-11-16 18:44:14 +09:00
beito123 2764e0e5fa Upadte Japanese translations 2018-11-15 01:42:11 +09:00
beito123 fa5cdc3afa Update Japanese translation
Applies commit 7a51693. and small changes.
2018-11-15 01:07:39 +09:00
beito123 8dae5ec47a Add new japanese translation
It translated on commit 66810c8.
so it don't apply changes from commit 17e0489.
2018-11-15 00:39:37 +09:00
1593 changed files with 52628 additions and 31235 deletions
+17
View File
@@ -0,0 +1,17 @@
name: Java CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Run unit tests with gradle
run: ./gradlew test
+8
View File
@@ -10,6 +10,7 @@ logs/
/desktop/mindustry-maps/
/desktop/gifexport/
/core/lib/
/ios/assets/
/core/assets-raw/sprites/generated/
/core/assets-raw/sprites_out/
/annotations/build/
@@ -18,6 +19,11 @@ logs/
/tools/build/
/tests/build/
/server/build/
changelog
saves/
core/assets/saves/
/core/assets/saves/
steam_appid.txt
/test_files/
/annotations/build/
/android/assets/mindustry-maps/
@@ -30,7 +36,9 @@ logs/
ios/robovm.properties
packr-out/
config/
changelog
*.gif
/core/assets/saves/
version.properties
+28 -6
View File
@@ -1,21 +1,43 @@
jdk:
- openjdk8
dist: trusty
android:
components:
- android-29
- build-tools-29.0.2
script:
- "git clone --depth=1 --branch=master https://github.com/Anuken/Arc ../Arc"
- git clone --depth=1 --branch=master https://github.com/Anuken/MindustryBuilds ../MindustryBuilds
- cd ../MindustryBuilds
- echo ${TRAVIS_TAG}
- if [ -n "$TRAVIS_TAG" ]; then echo versionName=4-fdroid-${TRAVIS_TAG:1}$'\n'versionCode=${TRAVIS_TAG:1} > version_fdroid.txt; git add .; git commit -m "Updating to build ${TRAVIS_TAG}"; fi
- git tag ${TRAVIS_BUILD_NUMBER}
- git config --global user.name "Build Uploader"
- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then git push https://Anuken:${GH_PUSH_TOKEN}@github.com/Anuken/MindustryBuilds ${TRAVIS_BUILD_NUMBER}; git push https://Anuken:${GH_PUSH_TOKEN}@github.com/Anuken/MindustryBuilds; fi
- cd ../Mindustry
- git clone --depth=1 --branch=master https://github.com/Anuken/Arc ../Arc
- if [ -n "$TRAVIS_TAG" ]; then cd ../Arc; git tag ${TRAVIS_TAG}; git push https://Anuken:${GH_PUSH_TOKEN}@github.com/Anuken/Arc ${TRAVIS_TAG}; cd ../Mindustry; fi
- "./gradlew test"
- "./gradlew desktop:dist -Pbuildversion=${TRAVIS_TAG:1}"
- "./gradlew server:dist -Pbuildversion=${TRAVIS_TAG:1}"
deploy:
provider: releases
- provider: releases
skip_cleanup: true
draft: false
api_key:
secure: Cv5wFtWt62/A24EvSEQvMow7gKPbZ3oATEFPuSghhB2TQz1dA40Zee3Qvk4LFlpLrhYo4K0ZSczCZRGpR+hCd8+Dpww52bheYEvWuh3ZQfvu/fXtEx2j5PwP1qMpmIgSxETV/gkD7l9FImdh0VzktYiAvQfmi0bEocG9/D4QwjFpNat7iwBdcMiw1MvAygpdIWRsjiw0RKlB2mWarmoHhQ7Gu7qlU3j50uaEvcrtmU0pBUPggNQwQRv32i9NPvNFxrqqlUjDLIS8JFea99zCkp8BwYqbEvBIMzd+Qip1/stLJJA3+cDUClbsDtg8rAVetzpOrdLEEBmqShFe5MDl2yEHcsgpN9CFsyTaUfvB3P3rVjizvycMm42IsUkXQiarm5xTQ/TIA8Rd8AHiSKuweNCg1Fd5SFaRtKy8JVLXuxyfUccmyje6hhz2L4lS2Wfj3mAG7sqZUCXhWP79EKdGkiPOjKv4CwXEKmuH3BMVqPlNUZJr9Eg3sV1FG0h2l+MVOOnR635qdUbb49sYojYxVruMLX0BH1c4ZCu230m8CUoWA1Em1QNI75ya7+9Y5T6AsgWDVpBvdUo9fWNbdp+VQ0GskFQsJD5wtnxbcbHeFiERAgGBm7z6qt9u9LrQpBH+dsW52ADvYsu3L4nQEa+sdMHwTTwmGY+iUvsxu0DqxGg=
file:
- "desktop/build/libs/desktop-release.jar"
- "server/build/libs/server-release.jar"
- desktop/build/libs/Mindustry.jar
- server/build/libs/server-release.jar
on:
repo: Anuken/Mindustry
tags: true
- provider: script
script: bash update_wiki.sh
on:
repo: Anuken/Mindustry
tags: true
env:
global:
- secure: TqlUl/ojjkCMVOGbCTKz7Cnr4F08UyWzY/CiJ0vvUOGJGZ1qm7XavAlDf5XT0egU4mvr37THubFO8vojbqmrmy0oZnYh3njKFA8axgyZ8PyKkjGHOfd0i6qyEWsOr9H90/2X8r3LwEeLaDFyHpu3wljIGBjweg53g2qwmDwCFa9UR80FJZ+xDB+rD6B3cXT0DTEkCoLZXLqXm0Y3HvBdSuBL1LR/FNb2BSxNq+tNLGiz1kdQZV5erausbbZypBoGxzz63xAnyz2kkFz73A8xQYVTzGbFodTPz7HM13GVZ5s43I03Y+HYyHBgBaSLziO2hi2kzVJccOwzBp7wS4fs1MqsFY5+IeWJ9k+hm89NiYT7+6zlEgoUMlIniny1qLqWTzx7btUeuC/y/h5TVBNgaV+z0jmHycHfeSyq5I+vmX4J8qe3wmaN8TcdqYKU5nIznOTk3CM5Fzu0Bs9vkCkOxmormmcjMFW1RbdOLc/hpZWZggsBA88sNEAI8eq+r5QEeqzeCx8YKoZDjdrsqvgLMc3El3gS9oMGxkn0Y/TEcqs9Tc4BXtTkqIA68hD0DYzlAxYjVbbkAI9Hh9lHNvV3Dr/oCkGXQ/HflM143kj1L3tSBZpqeqQE2XhngB5nqpS3OZTmZbMTQ8qD2luU18yaTGMLF5tJS/fdKPRx0gQ1kL8=
- secure: VEskj/0TVX2o7iUVXuVPysj/VSWmPhDl57SrT7/nBNN/P/8N5jFAvx8PMzG7qT0S5FzKxuV20psE4WylUGRKdeRtK7/QNBV7T3YqYYM6BUB1VeRpxe5hLxTeuBK3izglFO8DkdDqjUtzQSjzkoYT75ilROjhBrBUPhVek7UlbBHbaklPWYFXHnJmYS1FpZTdzqIj+Y0Gd1PSL2MzK4X74aAHl0qaDgsTwYwtKs7IAz+kFaTZBRpi9VjQHAFhDlkDR3jo9wQjH8/F6x0lCgV/FulSc37Okdb40sLFG98xcEA6gWh1NPMkz8CulUdVE7mj7SJNxLbNvoMNrWOVRjmEsn59p/9LiNC1F9ncFz9vjQjAmi7rMFFGHGxe5nn8cIAkpTvHQQkZoWHAA9SNJTDMMf09m2pRy/vvzx+a6NVxyC9iNrhLlnBg4gxAqRh0S6NU0uL+fuygKixn7rqlnb7KMT7bAbfcuV+dng6c8V7hYKDCh7sJbH8iJump1xkwoM7ecnU8fxJF/oKOr/fbk0Bfxu+Q9qYLrV1+DEdm93Vl2Thq+DBKmI66jRGSva6HeCLFo81PEiEjP1nLv75+kvVfOqVqJrZD1BrvoG2eWT/3hVLrN2kEIWWlpvQVC7FL11yWmYtAuOBh/vfhI76zKr+YTS6ccG9rqW4XeYjJytshe8M=
+19 -4
View File
@@ -1,4 +1,4 @@
![Imgur](https://i.imgur.com/w4N0yhv.png)
![Logo](core/assets/sprites/logo.png)
[![Build Status](https://travis-ci.org/Anuken/Mindustry.svg?branch=master)](https://travis-ci.org/Anuken/Mindustry)
[![Discord](https://img.shields.io/discord/391020510269669376.svg)](https://discord.gg/mindustry)
@@ -29,6 +29,13 @@ _Building:_ `./gradlew desktop:dist`
Server builds are bundled with each released build (in Releases). If you'd rather compile on your own, replace 'desktop' with 'server', e.g. `gradlew server:dist`.
#### Android
1. Install the Android SDK [here.](https://developer.android.com/studio#downloads) Make sure you're downloading the "Command line tools only", as Android Studio is not required.
2. Create a file named `local.properties` inside the Mindustry directory, with its contents looking like this: `sdk.dir=<Path to Android SDK you just downloaded, without these bracket>`. For example, if you're on Windows and installed the tools to C:\\tools, your local.properties would contain `sdk.dir=C:\\tools` (*note the double backslashes are required instead of single ones!*).
3. Run `gradlew android:assembleDebug` (or `./gradlew` if on linux/mac). This will create an unsigned APK in `android/build/outputs/apk`.
4. (Optional) To debug the application on a connected phone, do `gradlew android:installDebug android:run`. It is **highly recommended** to use IntelliJ for this instead, however.
##### Troubleshooting
If the terminal returns `Permission denied` or `Command not found` on Mac/Linux, run `chmod +x ./gradlew` before running `./gradlew`. *This is a one-time procedure.*
@@ -36,10 +43,18 @@ If the terminal returns `Permission denied` or `Command not found` on Mac/Linux,
---
Gradle may take up to several minutes to download files. Be patient. <br>
After building, the output .JAR file should be in `/desktop/build/libs/desktop-release.jar` for desktop builds, and in `/server/build/libs/server-release.jar` for server builds.
After building, the output .JAR file should be in `/desktop/build/libs/Mindustry.jar` for desktop builds, and in `/server/build/libs/server-release.jar` for server builds.
### Downloads
<a href="https://anuke.itch.io/mindustry"><img src="https://i.imgur.com/sk26hTV.png" width="auto" height="75"></a>
[<img src="https://static.itch.io/images/badge.svg"
alt="Get it on Itch.io"
height="60">](https://anuke.itch.io/mindustry)
<a href="https://play.google.com/store/apps/details?id=io.anuke.mindustry&hl=en"><img src="https://i.imgur.com/8dF6l81.png" width="auto" height="75"></a>
[<img src="https://play.google.com/intl/en_us/badges/images/generic/en-play-badge.png"
alt="Get it on Google Play"
height="80">](https://play.google.com/store/apps/details?id=io.anuke.mindustry)
[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png"
alt="Get it on F-Droid"
height="80">](https://f-droid.org/packages/io.anuke.mindustry/)
-3
View File
@@ -1,8 +1,5 @@
## Translating for Mindustry
**DISCLAIMER:** *Currently, 4.0 is far from done, which means that things such as block names, descriptions, and core text will be changing often. If you begin translating now, you might have to re-do large chunks of the bundle before final release.*
To begin, log in to your GitHub account, or if you don't have one yet, create it [here](https://github.com/).
Consult [this list](https://www.science.co.il/language/Locale-codes.php) to find the locale code for your language. Once you've found it,
+14 -42
View File
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="io.anuke.mindustry">
package="io.anuke.mindustry">
<uses-feature android:glEsVersion="0x00020000" android:required="true" />
<uses-permission android:name="com.android.vending.BILLING" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-feature android:glEsVersion="0x00020000" android:required="true"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:resizeableActivity="false"
@@ -17,54 +16,27 @@
android:appCategory="game"
android:label="@string/app_name"
android:theme="@style/GdxTheme" android:fullBackupContent="@xml/backup_rules">
<meta-data android:name="android.max_aspect" android:value="2.1" />
<meta-data android:name="android.max_aspect" android:value="2.1"/>
<activity
android:name="io.anuke.mindustry.AndroidLauncher"
android:label="@string/app_name"
android:screenOrientation="user"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|screenLayout">
android:name="io.anuke.mindustry.AndroidLauncher"
android:label="@string/app_name"
android:screenOrientation="user"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize|screenLayout">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:mimeType="application/octet-stream"/>
<data android:scheme="file" android:host="*" android:pathPattern=".*\\.mmap" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:mimeType="application/octet-stream"/>
<data android:scheme="file" android:host="*" android:pathPattern=".*\\.msav" />
</intent-filter>
<intent-filter android:icon="@mipmap/ic_launcher"
android:label="Mindustry Map"
android:priority="1">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="file" android:host="*" android:pathPattern=".*\\.mmap" android:mimeType="*/*" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="file" android:host="*" android:pathPattern=".*\\.msav" android:mimeType="*/*" />
<data android:mimeType="application/octet-stream" />
<data android:scheme="file" android:host="*" android:pathPattern=".*\\.msav"/>
</intent-filter>
</activity>
<activity android:name=".DonationsActivity"
android:theme="@style/GdxTheme" />
</application>
</manifest>
+55 -94
View File
@@ -1,35 +1,31 @@
buildscript {
repositories {
buildscript{
repositories{
mavenLocal()
mavenCentral()
google()
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
maven{ url "https://oss.sonatype.org/content/repositories/snapshots/" }
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.3.2'
dependencies{
classpath 'com.android.tools.build:gradle:3.4.1'
}
}
apply plugin: "com.android.application"
configurations { natives }
configurations{ natives }
repositories {
mavenCentral()
repositories{
mavenCentral()
jcenter()
maven {
url "https://maven.google.com"
maven{
url "https://maven.google.com"
}
}
dependencies {
dependencies{
implementation project(":core")
implementation project(":net")
implementation 'com.android.support:support-v4:28.0.0'
implementation 'org.sufficientlysecure:donations:2.5'
implementation 'com.google.android.gms:play-services-auth:16.0.1'
implementation arcModule("backends:backend-android")
natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi"
@@ -47,16 +43,16 @@ dependencies {
task deploy(type: Copy){
dependsOn "assembleRelease"
from "build/outputs/apk/google/release/android-google-release.apk"
from "build/outputs/apk/release/android-release.apk"
into "../deploy/"
rename ("android-google-release.apk", appName + "-android-" + getVersionString() + ".apk")
rename("android-release.apk", "${generateDeployName('android')}.apk")
}
android {
buildToolsVersion '28.0.3'
compileSdkVersion 28
sourceSets {
main {
android{
buildToolsVersion '29.0.2'
compileSdkVersion 29
sourceSets{
main{
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
aidl.srcDirs = ['src']
@@ -68,50 +64,36 @@ android {
androidTest.setRoot('tests')
}
packagingOptions {
packagingOptions{
exclude 'META-INF/robovm/ios/robovm.xml'
}
defaultConfig {
def vfile = file('../core/assets/version.properties')
def code = 0
def versionNameResult = "unknown"
if(vfile.exists()){
def props = new Properties()
props.load(new FileInputStream(vfile))
code = (props['androidBuildCode'] == null ? 0 : props['androidBuildCode']).toInteger() + 1
props['androidBuildCode'] = code.toString()
props.store(vfile.newWriter(), "Autogenerated file. Do not modify.")
versionNameResult = "$versionNumber-$versionType-${props['build'].replace(" ", "-")}"
}
defaultConfig{
Properties props = new Properties().with{p -> p.load(file('../core/assets/version.properties').newReader()); return p }
Integer vcode = props['androidBuildCode']?.toInteger() ?: 1
def versionNameResult = "$versionNumber-$versionType-${getBuildVersion().replace(" ", "-")}"
applicationId "io.anuke.mindustry"
minSdkVersion 14
targetSdkVersion 28
versionCode code
targetSdkVersion 29
versionName versionNameResult
versionCode vcode
props['androidBuildCode'] = (vcode + 1).toString()
props.store(file('../core/assets/version.properties').newWriter(), null)
}
compileOptions {
compileOptions{
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
flavorDimensions "google"
productFlavors {
google {
buildConfigField "boolean", "DONATIONS_GOOGLE", "true"
}
}
signingConfigs {
release {
if(project.hasProperty("RELEASE_STORE_FILE")) {
signingConfigs{
release{
if(project.hasProperty("RELEASE_STORE_FILE")){
storeFile file(RELEASE_STORE_FILE)
storePassword RELEASE_STORE_PASSWORD
keyAlias RELEASE_KEY_ALIAS
@@ -122,31 +104,33 @@ android {
}
}
buildTypes {
release {
signingConfig signingConfigs.release
if(project.hasProperty("RELEASE_STORE_FILE")) {
buildTypes {
release {
signingConfig signingConfigs.release
}
}
}
}
// called every time gradle gets executed, takes the native dependencies of
// the natives configuration, and extracts them to the proper libs/ folders
// so they get packed with the APK.
task copyAndroidNatives() {
task copyAndroidNatives(){
file("libs/armeabi/").mkdirs()
file("libs/armeabi-v7a/").mkdirs()
file("libs/arm64-v8a/").mkdirs()
file("libs/x86_64/").mkdirs()
file("libs/x86/").mkdirs()
configurations.natives.files.each { jar ->
configurations.natives.files.each{ jar ->
def outputDir = null
if (jar.name.endsWith("natives-arm64-v8a.jar")) outputDir = file("libs/arm64-v8a")
if (jar.name.endsWith("natives-armeabi-v7a.jar")) outputDir = file("libs/armeabi-v7a")
if (jar.name.endsWith("natives-armeabi.jar")) outputDir = file("libs/armeabi")
if (jar.name.endsWith("natives-x86_64.jar")) outputDir = file("libs/x86_64")
if (jar.name.endsWith("natives-x86.jar")) outputDir = file("libs/x86")
if (outputDir != null) {
copy {
if(jar.name.endsWith("natives-arm64-v8a.jar")) outputDir = file("libs/arm64-v8a")
if(jar.name.endsWith("natives-armeabi-v7a.jar")) outputDir = file("libs/armeabi-v7a")
if(jar.name.endsWith("natives-armeabi.jar")) outputDir = file("libs/armeabi")
if(jar.name.endsWith("natives-x86_64.jar")) outputDir = file("libs/x86_64")
if(jar.name.endsWith("natives-x86.jar")) outputDir = file("libs/x86")
if(outputDir != null){
copy{
from zipTree(jar)
into outputDir
include "*.so"
@@ -155,47 +139,24 @@ task copyAndroidNatives() {
}
}
task run(type: Exec) {
task run(type: Exec){
def path
def localProperties = project.file("../local.properties")
if (localProperties.exists()) {
if(localProperties.exists()){
Properties properties = new Properties()
localProperties.withInputStream { instr ->
localProperties.withInputStream{ instr ->
properties.load(instr)
}
def sdkDir = properties.getProperty('sdk.dir')
if (sdkDir) {
if(sdkDir){
path = sdkDir
} else {
}else{
path = "$System.env.ANDROID_HOME"
}
} else {
}else{
path = "$System.env.ANDROID_HOME"
}
def adb = path + "/platform-tools/adb"
commandLine "$adb", 'shell', 'am', 'start', '-n', 'io.anuke.mindustry/io.anuke.mindustry.AndroidLauncher'
}
// sets up the Android Idea project, using the old Ant based build.
idea {
module {
sourceDirs += file("src")
scopes = [COMPILE: [plus: [project.configurations.compile]]]
iml {
withXml {
def node = it.asNode()
def builder = NodeBuilder.newInstance()
builder.current = node
builder.component(name: "FacetManager") {
facet(type: "android", name: "Android") {
configuration {
option(name: "UPDATE_PROPERTY_FILES", value: "true")
}
}
}
}
}
}
}
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 87 KiB

-1
View File
@@ -9,6 +9,5 @@
#
# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
# Project target.
target=android-19
Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 911 B

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 28 KiB

-32
View File
@@ -1,32 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#000">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="top"
android:adjustViewBounds="false"
android:contentDescription="background"
android:cropToPadding="false"
android:scaleType="centerCrop"
android:src="@drawable/background" />
<LinearLayout
android:id="@+id/donations_activity_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
</LinearLayout>
</RelativeLayout>
</LinearLayout>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 553 B

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.0 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 29 KiB

-15
View File
@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Mindustry</string>
<string-array name="donation_google_catalog_values">
<item>1 달러</item>
<item>2 달러</item>
<item>5 달러</item>
<item>10 달러</item>
<item>15 달러</item>
<item>25 달러</item>
<item>50 달러</item>
</string-array>
</resources>
-15
View File
@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Mindustry</string>
<string-array name="donation_google_catalog_values">
<item>1 Доллар</item>
<item>2 Доллара</item>
<item>5 Долларов</item>
<item>10 Долларов</item>
<item>15 Долларов</item>
<item>25 Долларов</item>
<item>50 Долларов</item>
</string-array>
</resources>
-15
View File
@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Mindustry</string>
<string-array name="donation_google_catalog_values">
<item>1 Доллар</item>
<item>2 Доллара</item>
<item>5 Долларів</item>
<item>10 Долларів</item>
<item>15 Долларів</item>
<item>25 Долларів</item>
<item>50 Долларів</item>
</string-array>
</resources>
+1 -10
View File
@@ -2,14 +2,5 @@
<resources>
<string name="app_name">Mindustry</string>
<string-array name="donation_google_catalog_values">
<item>1 Dollar</item>
<item>2 Dollars</item>
<item>5 Dollars</item>
<item>10 Dollars</item>
<item>15 Dollars</item>
<item>25 Dollars</item>
<item>50 Dollars</item>
</string-array>
</resources>
</resources>
@@ -1,41 +1,26 @@
package io.anuke.mindustry;
import android.Manifest;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.provider.Settings.Secure;
import android.telephony.TelephonyManager;
import android.util.Log;
import com.google.android.gms.common.GoogleApiAvailability;
import com.google.android.gms.common.GooglePlayServicesNotAvailableException;
import com.google.android.gms.common.GooglePlayServicesRepairableException;
import com.google.android.gms.security.ProviderInstaller;
import io.anuke.arc.Core;
import io.anuke.arc.backends.android.surfaceview.AndroidApplication;
import io.anuke.arc.backends.android.surfaceview.AndroidApplicationConfiguration;
import io.anuke.arc.files.FileHandle;
import io.anuke.arc.function.Consumer;
import io.anuke.arc.scene.ui.layout.Unit;
import io.anuke.arc.util.Strings;
import io.anuke.arc.util.serialization.Base64Coder;
import io.anuke.net.KryoClient;
import io.anuke.net.KryoServer;
import io.anuke.mindustry.core.Platform;
import io.anuke.mindustry.game.Saves.SaveSlot;
import io.anuke.mindustry.io.SaveIO;
import io.anuke.mindustry.net.Net;
import io.anuke.mindustry.ui.dialogs.FileChooser;
import android.app.*;
import android.content.*;
import android.content.pm.*;
import android.net.*;
import android.os.Build.*;
import android.os.*;
import android.provider.Settings.*;
import android.telephony.*;
import io.anuke.arc.*;
import io.anuke.arc.backends.android.surfaceview.*;
import io.anuke.arc.files.*;
import io.anuke.arc.function.*;
import io.anuke.arc.scene.ui.layout.*;
import io.anuke.arc.util.*;
import io.anuke.arc.util.serialization.*;
import io.anuke.mindustry.game.Saves.*;
import io.anuke.mindustry.io.*;
import io.anuke.mindustry.ui.dialogs.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.io.*;
import java.lang.System;
import static io.anuke.mindustry.Vars.*;
@@ -43,18 +28,20 @@ public class AndroidLauncher extends AndroidApplication{
public static final int PERMISSION_REQUEST_CODE = 1;
boolean doubleScaleTablets = true;
FileChooser chooser;
Runnable permCallback;
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
config.useImmersiveMode = true;
config.depth = 0;
Platform.instance = new Platform(){
if(doubleScaleTablets && isTablet(this.getContext())){
Scl.setAddition(0.5f);
}
initialize(new ClientLauncher(){
@Override
public void openDonations(){
showDonations();
public void hide(){
moveTaskToBack(true);
}
@Override
@@ -64,7 +51,7 @@ public class AndroidLauncher extends AndroidApplication{
int len = s.length();
byte[] data = new byte[len / 2];
for(int i = 0; i < len; i += 2){
data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4)
data[i / 2] = (byte)((Character.digit(s.charAt(i), 16) << 4)
+ Character.digit(s.charAt(i + 1), 16));
}
String result = new String(Base64Coder.encode(data));
@@ -80,21 +67,38 @@ public class AndroidLauncher extends AndroidApplication{
}
@Override
public void showFileChooser(String text, String content, Consumer<FileHandle> cons, boolean open, String filetype){
chooser = new FileChooser(text, file -> file.extension().equalsIgnoreCase(filetype), open, cons);
if(Build.VERSION.SDK_INT < Build.VERSION_CODES.M || (checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED &&
checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED)){
chooser.show();
chooser = null;
public void showFileChooser(boolean open, String extension, Consumer<FileHandle> cons){
if(VERSION.SDK_INT >= 19){
Intent intent = new Intent(open ? Intent.ACTION_OPEN_DOCUMENT : Intent.ACTION_CREATE_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("*/*");
addResultListener(i -> startActivityForResult(intent, i), (code, in) -> {
if(code == Activity.RESULT_OK && in != null && in.getData() != null){
Uri uri = in.getData();
Core.app.post(() -> Core.app.post(() -> cons.accept(new FileHandle(uri.getPath()){
@Override
public InputStream read(){
try{
return getContentResolver().openInputStream(uri);
}catch(IOException e){
throw new ArcRuntimeException(e);
}
}
@Override
public OutputStream write(boolean append){
try{
return getContentResolver().openOutputStream(uri);
}catch(IOException e){
throw new ArcRuntimeException(e);
}
}
})));
}
});
}else{
ArrayList<String> perms = new ArrayList<>();
if(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED){
perms.add(Manifest.permission.WRITE_EXTERNAL_STORAGE);
}
if(checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED){
perms.add(Manifest.permission.READ_EXTERNAL_STORAGE);
}
requestPermissions(perms.toArray(new String[perms.size()]), PERMISSION_REQUEST_CODE);
super.showFileChooser(open, extension, cons);
}
}
@@ -105,41 +109,33 @@ public class AndroidLauncher extends AndroidApplication{
@Override
public void endForceLandscape(){
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_USER);
}
@Override
public boolean canDonate(){
return true;
}
};
try{
ProviderInstaller.installIfNeeded(this);
}catch(GooglePlayServicesRepairableException e){
GoogleApiAvailability apiAvailability = GoogleApiAvailability.getInstance();
apiAvailability.getErrorDialog(this, e.getConnectionStatusCode(), 0).show();
}catch(GooglePlayServicesNotAvailableException e){
Log.e("SecurityException", "Google Play Services not available.");
}
if(doubleScaleTablets && isTablet(this.getContext())){
Unit.dp.addition = 0.5f;
}
config.hideStatusBar = true;
Net.setClientProvider(new KryoClient());
Net.setServerProvider(new KryoServer());
initialize(new Mindustry(), config);
}, new AndroidApplicationConfiguration(){{
useImmersiveMode = true;
depth = 0;
hideStatusBar = true;
}});
checkFiles(getIntent());
}
@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults){
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults){
if(requestCode == PERMISSION_REQUEST_CODE){
for(int i : grantResults){
if(i != PackageManager.PERMISSION_GRANTED) return;
}
if(chooser != null){
chooser.show();
Core.app.post(chooser::show);
}
if(permCallback != null){
Core.app.post(permCallback);
permCallback = null;
}
}
}
@@ -162,7 +158,7 @@ public class AndroidLauncher extends AndroidApplication{
InputStream inStream;
if(myFile != null) inStream = new FileInputStream(myFile);
else inStream = getContentResolver().openInputStream(uri);
Core.app.post(() -> {
Core.app.post(() -> Core.app.post(() -> {
if(save){ //open save
System.out.println("Opening save.");
FileHandle file = Core.files.local("temp-save." + saveExtension);
@@ -172,10 +168,10 @@ public class AndroidLauncher extends AndroidApplication{
SaveSlot slot = control.saves.importSave(file);
ui.load.runLoadSave(slot);
}catch(IOException e){
ui.showError(Core.bundle.format("save.import.fail", Strings.parseException(e, false)));
ui.showException("$save.import.fail", e);
}
}else{
ui.showError("$save.import.invalid");
ui.showErrorMessage("$save.import.invalid");
}
}else if(map){ //open map
FileHandle file = Core.files.local("temp-map." + mapExtension);
@@ -188,29 +184,15 @@ public class AndroidLauncher extends AndroidApplication{
ui.editor.beginEditMap(file);
});
}
});
}));
}
}catch(IOException e){
e.printStackTrace();
}
}
private boolean isPackageInstalled(String packagename){
try{
getPackageManager().getPackageInfo(packagename, 0);
return true;
}catch(Exception e){
return false;
}
}
private boolean isTablet(Context context){
TelephonyManager manager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
return manager.getPhoneType() == TelephonyManager.PHONE_TYPE_NONE;
}
private void showDonations(){
Intent intent = new Intent(this, DonationsActivity.class);
startActivity(intent);
TelephonyManager manager = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
return manager != null && manager.getPhoneType() == TelephonyManager.PHONE_TYPE_NONE;
}
}
@@ -1,73 +0,0 @@
package io.anuke.mindustry;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.view.View;
import android.widget.Button;
import org.sufficientlysecure.donations.DonationsFragment;
public class DonationsActivity extends FragmentActivity{
/**
* Google
*/
private static final String GOOGLE_PUBKEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzG93KhpfBPKTo2jF0yxbWkkmMKwsPNM4SsMj1aDq7vv6n3R+mqJVfprOJxFfJh7JchXTflLIgiaKXFAiU70gJbMTniEWnEaFSxAeF09a7U0RjOwN+7rFwjCG91c2CpYxPanBTQP4zasc1ODPVzq4q6/4ByjhenN71V4WmR08NFIAodcfFPrOkDPil7i8y7cgcd1Ky53U0TS+LLYJttAK3XdTK4s7VE3I5IKoeNa4uwCmIM59R67q2k3cXjLk/nP6MP+y++EzHN/PTiR1sVg4dMP8K31RPw/1QNLPQwJz6Wc872oWwb7xo5gkoXbDc5WPPydsi8F3SyKNaYwzN6CDFQIDAQAB";
private static final String[] GOOGLE_CATALOG = new String[]{
"mindustry.donation.1", "mindustry.donation.2", "mindustry.donation.5",
"mindustry.donation.10", "mindustry.donation.15",
"mindustry.donation.25", "mindustry.donation.50"};
DonationsFragment donationsFragment;
/**
* Called when the activity is first created.
*/
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setTheme(R.style.GdxTheme);
setContentView(R.layout.donations_activity);
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
if(BuildConfig.DONATIONS_GOOGLE){
donationsFragment = DonationsFragment.newInstance(BuildConfig.DEBUG, true, GOOGLE_PUBKEY, GOOGLE_CATALOG,
getResources().getStringArray(R.array.donation_google_catalog_values), false, null, null,
null, false, null, null, false, null);
}
ft.replace(R.id.donations_activity_container, donationsFragment, "donationsFragment");
ft.commit();
}
public void onStart(){
super.onStart();
Button b = findViewById(org.sufficientlysecure.donations.R.id.donations__google_android_market_donate_button);
b.setOnClickListener(view -> {
donationsFragment.donateGoogleOnClick(donationsFragment.getView());
b.setEnabled(false);
});
}
/**
* Needed for Google Play In-app Billing. It uses startIntentSenderForResult(). The result is not propagated to
* the Fragment like in startActivityForResult(). Thus we need to propagate manually to our Fragment.
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data){
super.onActivityResult(requestCode, resultCode, data);
Button b = findViewById(org.sufficientlysecure.donations.R.id.donations__google_android_market_donate_button);
b.setEnabled(true);
FragmentManager fragmentManager = getSupportFragmentManager();
Fragment fragment = fragmentManager.findFragmentByTag("donationsFragment");
if(fragment != null){
fragment.onActivityResult(requestCode, resultCode, data);
}
}
}
+2 -2
View File
@@ -1,6 +1,6 @@
apply plugin: "java"
sourceCompatibility = 1.8
sourceSets.main.java.srcDirs = [ "src/main/java/" ]
sourceSets.main.resources.srcDirs = [ "src/main/resources/" ]
sourceSets.main.java.srcDirs = ["src/main/java/"]
sourceSets.main.resources.srcDirs = ["src/main/resources/"]
@@ -1,31 +1,60 @@
package io.anuke.annotations;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.annotation.*;
public class Annotations{
/** Marks a class as serializable.*/
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.SOURCE)
public @interface StyleDefaults {
}
/** Indicates that a method should always call its super version. */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface CallSuper{
}
/** Annotation that allows overriding CallSuper annotation. To be used on method that overrides method with CallSuper annotation from parent class.*/
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface OverrideCallSuper {
}
/** Indicates that a method return or field can be null.*/
@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.LOCAL_VARIABLE})
@Retention(RetentionPolicy.SOURCE)
public @interface Nullable{
}
/** Indicates that a method return or field cannot be null.*/
@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER, ElementType.LOCAL_VARIABLE})
@Retention(RetentionPolicy.SOURCE)
public @interface NonNull{
}
/** Marks a class as serializable. */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.SOURCE)
public @interface Serialize{
}
/** Marks a class as a special value type struct. Class name must end in 'Struct'.*/
/** Marks a class as a special value type struct. Class name must end in 'Struct'. */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.SOURCE)
public @interface Struct{
}
/**Marks a field of a struct. Optional.*/
/** Marks a field of a struct. Optional. */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.SOURCE)
public @interface StructField{
/**Size of a struct field in bits. Not valid on booleans or floating point numbers.*/
/** Size of a struct field in bits. Not valid on booleans or floating point numbers. */
int value();
}
@@ -0,0 +1,172 @@
package io.anuke.annotations;
import com.squareup.javapoet.*;
import io.anuke.annotations.Annotations.*;
import javax.annotation.processing.*;
import javax.lang.model.*;
import javax.lang.model.element.*;
import javax.tools.Diagnostic.*;
import javax.tools.*;
import java.nio.file.*;
import java.util.*;
@SupportedSourceVersion(SourceVersion.RELEASE_8)
@SupportedAnnotationTypes("io.anuke.annotations.Annotations.StyleDefaults")
public class AssetsAnnotationProcessor extends AbstractProcessor{
/** Name of the base package to put all the generated classes. */
private static final String packageName = "io.anuke.mindustry.gen";
private String path;
private int round;
@Override
public synchronized void init(ProcessingEnvironment processingEnv){
super.init(processingEnv);
//put all relevant utils into utils class
Utils.typeUtils = processingEnv.getTypeUtils();
Utils.elementUtils = processingEnv.getElementUtils();
Utils.filer = processingEnv.getFiler();
Utils.messager = processingEnv.getMessager();
}
@Override
public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv){
if(round++ != 0) return false; //only process 1 round
try{
path = Paths.get(Utils.filer.createResource(StandardLocation.CLASS_OUTPUT, "no", "no")
.toUri().toURL().toString().substring(System.getProperty("os.name").contains("Windows") ? 6 : "file:".length()))
.getParent().getParent().getParent().getParent().getParent().getParent().toString();
processSounds("Sounds", path + "/assets/sounds", "io.anuke.arc.audio.Sound");
processSounds("Musics", path + "/assets/music", "io.anuke.arc.audio.Music");
processUI(roundEnv.getElementsAnnotatedWith(StyleDefaults.class));
return true;
}catch(Exception e){
e.printStackTrace();
throw new RuntimeException(e);
}
}
void processUI(Set<? extends Element> elements) throws Exception{
String[] iconSizes = {"small", "smaller", "tiny"};
TypeSpec.Builder type = TypeSpec.classBuilder("Tex").addModifiers(Modifier.PUBLIC);
TypeSpec.Builder ictype = TypeSpec.classBuilder("Icon").addModifiers(Modifier.PUBLIC);
MethodSpec.Builder load = MethodSpec.methodBuilder("load").addModifiers(Modifier.PUBLIC, Modifier.STATIC);
MethodSpec.Builder loadStyles = MethodSpec.methodBuilder("loadStyles").addModifiers(Modifier.PUBLIC, Modifier.STATIC);
MethodSpec.Builder icload = MethodSpec.methodBuilder("load").addModifiers(Modifier.PUBLIC, Modifier.STATIC);
String resources = path + "/assets-raw/sprites/ui";
Files.walk(Paths.get(resources)).forEach(p -> {
if(Files.isDirectory(p) || p.getFileName().toString().equals(".DS_Store")) return;
String filename = p.getFileName().toString();
filename = filename.substring(0, filename.indexOf("."));
ArrayList<String> names = new ArrayList<>();
names.add("");
if(filename.contains("icon")){
names.addAll(Arrays.asList(iconSizes));
}
for(String suffix : names){
suffix = suffix.isEmpty() ? "" : "-" + suffix;
String sfilen = filename + suffix;
String dtype = p.getFileName().toString().endsWith(".9.png") ? "io.anuke.arc.scene.style.NinePatchDrawable" : "io.anuke.arc.scene.style.TextureRegionDrawable";
String varname = capitalize(sfilen);
TypeSpec.Builder ttype = type;
MethodSpec.Builder tload = load;
if(varname.startsWith("icon")){
varname = varname.substring("icon".length());
varname = Character.toLowerCase(varname.charAt(0)) + varname.substring(1);
ttype = ictype;
tload = icload;
if(SourceVersion.isKeyword(varname)) varname += "i";
}
if(SourceVersion.isKeyword(varname)) varname += "s";
ttype.addField(ClassName.bestGuess(dtype), varname, Modifier.STATIC, Modifier.PUBLIC);
tload.addStatement(varname + " = ("+dtype+")io.anuke.arc.Core.atlas.drawable($S)", sfilen);
}
});
for(Element elem : elements){
TypeElement t = (TypeElement)elem;
t.getEnclosedElements().stream().filter(e -> e.getKind() == ElementKind.FIELD).forEach(field -> {
String fname = field.getSimpleName().toString();
if(fname.startsWith("default")){
loadStyles.addStatement("io.anuke.arc.Core.scene.addStyle(" + field.asType().toString() + ".class, io.anuke.mindustry.ui.Styles." + fname + ")");
}
});
}
ictype.addMethod(icload.build());
JavaFile.builder(packageName, ictype.build()).build().writeTo(Utils.filer);
type.addMethod(load.build());
type.addMethod(loadStyles.build());
JavaFile.builder(packageName, type.build()).build().writeTo(Utils.filer);
}
void processSounds(String classname, String path, String rtype) throws Exception{
TypeSpec.Builder type = TypeSpec.classBuilder(classname).addModifiers(Modifier.PUBLIC);
MethodSpec.Builder dispose = MethodSpec.methodBuilder("dispose").addModifiers(Modifier.PUBLIC, Modifier.STATIC);
MethodSpec.Builder loadBegin = MethodSpec.methodBuilder("load").addModifiers(Modifier.PUBLIC, Modifier.STATIC);
HashSet<String> names = new HashSet<>();
Files.list(Paths.get(path)).forEach(p -> {
String fname = p.getFileName().toString();
String name = p.getFileName().toString();
name = name.substring(0, name.indexOf("."));
if(names.contains(name)){
Utils.messager.printMessage(Kind.ERROR, "Duplicate file name: " + p.toString() + "!");
}else{
names.add(name);
}
if(SourceVersion.isKeyword(name)){
name = name + "s";
}
String filepath = path.substring(path.lastIndexOf("/") + 1) + "/" + fname;
String filename = "io.anuke.arc.Core.app.getType() != io.anuke.arc.Application.ApplicationType.iOS ? \"" + filepath + "\" : \"" + filepath.replace(".ogg", ".mp3")+"\"";
loadBegin.addStatement("io.anuke.arc.Core.assets.load("+filename +", "+rtype+".class).loaded = a -> " + name + " = ("+rtype+")a", filepath, filepath.replace(".ogg", ".mp3"));
dispose.addStatement(name + ".dispose()");
dispose.addStatement(name + " = null");
type.addField(FieldSpec.builder(ClassName.bestGuess(rtype), name, Modifier.STATIC, Modifier.PUBLIC).initializer("new io.anuke.arc.audio.mock.Mock" + rtype.substring(rtype.lastIndexOf(".") + 1)+ "()").build());
});
if(classname.equals("Sounds")){
type.addField(FieldSpec.builder(ClassName.bestGuess(rtype), "none", Modifier.STATIC, Modifier.PUBLIC).initializer("new io.anuke.arc.audio.mock.Mock" + rtype.substring(rtype.lastIndexOf(".") + 1)+ "()").build());
}
type.addMethod(loadBegin.build());
type.addMethod(dispose.build());
JavaFile.builder(packageName, type.build()).build().writeTo(Utils.filer);
}
static String capitalize(String s){
StringBuilder result = new StringBuilder(s.length());
for(int i = 0; i < s.length(); i++){
char c = s.charAt(i);
if(c != '_' && c != '-'){
if(i > 0 && (s.charAt(i - 1) == '_' || s.charAt(i - 1) == '-')){
result.append(Character.toUpperCase(c));
}else{
result.append(c);
}
}
}
return result.toString();
}
}
@@ -0,0 +1,65 @@
package io.anuke.annotations;
import com.sun.source.util.TreePath;
import com.sun.source.util.Trees;
import com.sun.tools.javac.tree.JCTree;
import com.sun.tools.javac.tree.JCTree.JCExpressionStatement;
import io.anuke.annotations.Annotations.OverrideCallSuper;
import javax.annotation.processing.*;
import javax.lang.model.SourceVersion;
import javax.lang.model.element.Element;
import javax.lang.model.element.TypeElement;
import javax.tools.Diagnostic.Kind;
import java.util.List;
import java.util.Set;
@SupportedAnnotationTypes("java.lang.Override")
public class CallSuperAnnotationProcessor extends AbstractProcessor{
private Trees trees;
@Override
public void init (ProcessingEnvironment pe) {
super.init(pe);
trees = Trees.instance(pe);
}
public boolean process (Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) {
for (Element e : roundEnv.getElementsAnnotatedWith(Override.class)) {
if (e.getAnnotation(OverrideCallSuper.class) != null) return false;
CodeAnalyzerTreeScanner codeScanner = new CodeAnalyzerTreeScanner();
codeScanner.setMethodName(e.getSimpleName().toString());
TreePath tp = trees.getPath(e.getEnclosingElement());
codeScanner.scan(tp, trees);
if (codeScanner.isCallSuperUsed()) {
List list = codeScanner.getMethod().getBody().getStatements();
if (!doesCallSuper(list, codeScanner.getMethodName())) {
processingEnv.getMessager().printMessage(Kind.ERROR, "Overriding method '" + codeScanner.getMethodName() + "' must explicitly call super method from its parent class.", e);
}
}
}
return false;
}
private boolean doesCallSuper (List list, String methodName) {
for (Object object : list) {
if (object instanceof JCTree.JCExpressionStatement) {
JCTree.JCExpressionStatement expr = (JCExpressionStatement) object;
String exprString = expr.toString();
if (exprString.startsWith("super." + methodName) && exprString.endsWith(");")) return true;
}
}
return false;
}
@Override
public SourceVersion getSupportedSourceVersion () {
return SourceVersion.RELEASE_8;
}
}
@@ -1,7 +1,5 @@
package io.anuke.annotations;
import io.anuke.annotations.MethodEntry;
import java.util.ArrayList;
/** Represents a class witha list method entries to include in it. */
@@ -0,0 +1,110 @@
package io.anuke.annotations;
import com.sun.source.tree.*;
import com.sun.source.util.TreePathScanner;
import com.sun.source.util.Trees;
import com.sun.tools.javac.code.Scope;
import com.sun.tools.javac.code.Symbol;
import com.sun.tools.javac.code.Symbol.MethodSymbol;
import com.sun.tools.javac.code.Type.ClassType;
import com.sun.tools.javac.tree.JCTree.JCIdent;
import com.sun.tools.javac.tree.JCTree.JCTypeApply;
import io.anuke.annotations.Annotations.CallSuper;
import java.lang.annotation.Annotation;
class CodeAnalyzerTreeScanner extends TreePathScanner<Object, Trees> {
private String methodName;
private MethodTree method;
private boolean callSuperUsed;
@Override
public Object visitClass (ClassTree classTree, Trees trees) {
Tree extendTree = classTree.getExtendsClause();
if (extendTree instanceof JCTypeApply) { //generic classes case
JCTypeApply generic = (JCTypeApply) extendTree;
extendTree = generic.clazz;
}
if (extendTree instanceof JCIdent) {
JCIdent tree = (JCIdent) extendTree;
Scope members = tree.sym.members();
if (checkScope(members))
return super.visitClass(classTree, trees);
if (checkSuperTypes((ClassType) tree.type))
return super.visitClass(classTree, trees);
}
callSuperUsed = false;
return super.visitClass(classTree, trees);
}
public boolean checkSuperTypes (ClassType type) {
if (type.supertype_field != null && type.supertype_field.tsym != null) {
if (checkScope(type.supertype_field.tsym.members()))
return true;
else
return checkSuperTypes((ClassType) type.supertype_field);
}
return false;
}
@SuppressWarnings("unchecked")
public boolean checkScope (Scope members) {
Iterable<Symbol> it;
try{
it = (Iterable<Symbol>)members.getClass().getMethod("getElements").invoke(members);
}catch(Throwable t){
try{
it = (Iterable<Symbol>)members.getClass().getMethod("getSymbols").invoke(members);
}catch(Exception e){
throw new RuntimeException(e);
}
}
for (Symbol s : it) {
if (s instanceof MethodSymbol) {
MethodSymbol ms = (MethodSymbol) s;
if (ms.getSimpleName().toString().equals(methodName)) {
Annotation annotation = ms.getAnnotation(CallSuper.class);
if (annotation != null) {
callSuperUsed = true;
return true;
}
}
}
}
return false;
}
@Override
public Object visitMethod (MethodTree methodTree, Trees trees) {
if (methodTree.getName().toString().equals(methodName))
method = methodTree;
return super.visitMethod(methodTree, trees);
}
public void setMethodName (String methodName) {
this.methodName = methodName;
}
public String getMethodName () {
return methodName;
}
public MethodTree getMethod () {
return method;
}
public boolean isCallSuperUsed () {
return callSuperUsed;
}
}
@@ -1,8 +1,6 @@
package io.anuke.annotations;
import io.anuke.annotations.Annotations.Loc;
import io.anuke.annotations.Annotations.PacketPriority;
import io.anuke.annotations.Annotations.Variant;
import io.anuke.annotations.Annotations.*;
import javax.lang.model.element.ExecutableElement;
@@ -1,18 +1,13 @@
package io.anuke.annotations;
import com.squareup.javapoet.FieldSpec;
import com.squareup.javapoet.JavaFile;
import com.squareup.javapoet.TypeSpec;
import com.squareup.javapoet.*;
import io.anuke.annotations.Annotations.Loc;
import io.anuke.annotations.Annotations.Remote;
import io.anuke.annotations.IOFinder.ClassSerializer;
import javax.annotation.processing.*;
import javax.lang.model.SourceVersion;
import javax.lang.model.element.Element;
import javax.lang.model.element.ExecutableElement;
import javax.lang.model.element.Modifier;
import javax.lang.model.element.TypeElement;
import javax.lang.model.element.*;
import javax.tools.Diagnostic.Kind;
import java.util.*;
import java.util.stream.Collectors;
@@ -21,14 +16,14 @@ import java.util.stream.Collectors;
/** The annotation processor for generating remote method call code. */
@SupportedSourceVersion(SourceVersion.RELEASE_8)
@SupportedAnnotationTypes({
"io.anuke.annotations.Annotations.Remote",
"io.anuke.annotations.Annotations.WriteClass",
"io.anuke.annotations.Annotations.ReadClass",
"io.anuke.annotations.Annotations.Remote",
"io.anuke.annotations.Annotations.WriteClass",
"io.anuke.annotations.Annotations.ReadClass",
})
public class RemoteMethodAnnotationProcessor extends AbstractProcessor{
/** Maximum size of each event packet. */
public static final int maxPacketSize = 4096;
/** Warning on top of each autogenerated file.*/
/** Warning on top of each autogenerated file. */
public static final String autogenWarning = "Autogenerated file. Do not modify!\n";
/** Name of the base package to put all the generated classes. */
private static final String packageName = "io.anuke.mindustry.gen";
@@ -37,7 +32,7 @@ public class RemoteMethodAnnotationProcessor extends AbstractProcessor{
private static final String readServerName = "RemoteReadServer";
/** Name of class that handles reading and invoking packets on the client. */
private static final String readClientName = "RemoteReadClient";
/**Simple class name of generated class name.*/
/** Simple class name of generated class name. */
private static final String callLocation = "Call";
/** Processing round number. */
@@ -115,7 +110,7 @@ public class RemoteMethodAnnotationProcessor extends AbstractProcessor{
//create and add entry
MethodEntry method = new MethodEntry(entry.name, Utils.getMethodName(element), annotation.targets(), annotation.variants(),
annotation.called(), annotation.unreliable(), annotation.forward(), lastMethodID++, (ExecutableElement) element, annotation.priority());
annotation.called(), annotation.unreliable(), annotation.forward(), lastMethodID++, (ExecutableElement)element, annotation.priority());
entry.methods.add(method);
methods.add(method);
@@ -140,7 +135,7 @@ public class RemoteMethodAnnotationProcessor extends AbstractProcessor{
TypeSpec.Builder hashBuilder = TypeSpec.classBuilder("MethodHash").addModifiers(Modifier.PUBLIC);
hashBuilder.addJavadoc(autogenWarning);
hashBuilder.addField(FieldSpec.builder(int.class, "HASH", Modifier.STATIC, Modifier.PUBLIC, Modifier.FINAL)
.initializer("$1L", Objects.hash(methods)).build());
.initializer("$1L", Objects.hash(methods)).build());
//build and write resulting hash class
TypeSpec spec = hashBuilder.build();
@@ -3,9 +3,7 @@ package io.anuke.annotations;
import com.squareup.javapoet.*;
import io.anuke.annotations.IOFinder.ClassSerializer;
import javax.lang.model.element.Modifier;
import javax.lang.model.element.TypeElement;
import javax.lang.model.element.VariableElement;
import javax.lang.model.element.*;
import javax.tools.Diagnostic.Kind;
import java.io.IOException;
import java.lang.reflect.Constructor;
@@ -25,24 +23,23 @@ public class RemoteReadGenerator{
/**
* Generates a class for reading remote invoke packets.
*
* @param entries List of methods to use.
* @param className Simple target class name.
* @param packageName Full target package name.
* @param needsPlayer Whether this read method requires a reference to the player sender.
*/
public void generateFor(List<MethodEntry> entries, String className, String packageName, boolean needsPlayer)
throws IllegalAccessException, InvocationTargetException, InstantiationException, NoSuchMethodException, IOException{
throws IllegalAccessException, InvocationTargetException, InstantiationException, NoSuchMethodException, IOException{
TypeSpec.Builder classBuilder = TypeSpec.classBuilder(className).addModifiers(Modifier.PUBLIC);
classBuilder.addJavadoc(RemoteMethodAnnotationProcessor.autogenWarning);
//create main method builder
MethodSpec.Builder readMethod = MethodSpec.methodBuilder("readPacket")
.addModifiers(Modifier.PUBLIC, Modifier.STATIC)
.addParameter(ByteBuffer.class, "buffer") //buffer to read form
.addParameter(int.class, "id") //ID of method type to read
.returns(void.class);
.addModifiers(Modifier.PUBLIC, Modifier.STATIC)
.addParameter(ByteBuffer.class, "buffer") //buffer to read form
.addParameter(int.class, "id") //ID of method type to read
.returns(void.class);
if(needsPlayer){
//since the player type isn't loaded yet, creating a type def is necessary
@@ -115,13 +112,13 @@ public class RemoteReadGenerator{
//execute the relevant method before the forward
//if it throws a ValidateException, the method won't be forwarded
readBlock.addStatement("$N." + entry.element.getSimpleName() + "(" + varResult.toString() + ")", ((TypeElement) entry.element.getEnclosingElement()).getQualifiedName().toString());
readBlock.addStatement("$N." + entry.element.getSimpleName() + "(" + varResult.toString() + ")", ((TypeElement)entry.element.getEnclosingElement()).getQualifiedName().toString());
//call forwarded method, don't forward on the client reader
if(entry.forward && entry.where.isServer && needsPlayer){
//call forwarded method
readBlock.addStatement(packageName + "." + entry.className + "." + entry.element.getSimpleName() +
"__forward(player.con.id" + (varResult.length() == 0 ? "" : ", ") + varResult.toString() + ")");
"__forward(player.con" + (varResult.length() == 0 ? "" : ", ") + varResult.toString() + ")");
}
readBlock.nextControlFlow("catch (java.lang.Exception e)");
@@ -4,10 +4,7 @@ import com.squareup.javapoet.*;
import io.anuke.annotations.Annotations.Loc;
import io.anuke.annotations.IOFinder.ClassSerializer;
import javax.lang.model.element.ExecutableElement;
import javax.lang.model.element.Modifier;
import javax.lang.model.element.TypeElement;
import javax.lang.model.element.VariableElement;
import javax.lang.model.element.*;
import javax.tools.Diagnostic.Kind;
import java.io.IOException;
import java.nio.ByteBuffer;
@@ -33,7 +30,7 @@ public class RemoteWriteGenerator{
//add temporary write buffer
classBuilder.addField(FieldSpec.builder(ByteBuffer.class, "TEMP_BUFFER", Modifier.STATIC, Modifier.PRIVATE, Modifier.FINAL)
.initializer("ByteBuffer.allocate($1L)", RemoteMethodAnnotationProcessor.maxPacketSize).build());
.initializer("ByteBuffer.allocate($1L)", RemoteMethodAnnotationProcessor.maxPacketSize).build());
//go through each method entry in this class
for(MethodEntry methodEntry : entry.methods){
@@ -65,8 +62,8 @@ public class RemoteWriteGenerator{
//create builder
MethodSpec.Builder method = MethodSpec.methodBuilder(elem.getSimpleName().toString() + (forwarded ? "__forward" : "")) //add except suffix when forwarding
.addModifiers(Modifier.STATIC, Modifier.SYNCHRONIZED)
.returns(void.class);
.addModifiers(Modifier.STATIC, Modifier.SYNCHRONIZED)
.returns(void.class);
//forwarded methods aren't intended for use, and are not public
if(!forwarded){
@@ -88,19 +85,19 @@ public class RemoteWriteGenerator{
//if toAll is false, it's a 'send to one player' variant, so add the player as a parameter
if(!toAll){
method.addParameter(int.class, "playerClientID");
method.addParameter(ClassName.bestGuess("io.anuke.mindustry.net.NetConnection"), "playerConnection");
}
//add sender to ignore
if(forwarded){
method.addParameter(int.class, "exceptSenderID");
method.addParameter(ClassName.bestGuess("io.anuke.mindustry.net.NetConnection"), "exceptConnection");
}
//call local method if applicable, shouldn't happen when forwarding method as that already happens by default
if(!forwarded && methodEntry.local != Loc.none){
//add in local checks
if(methodEntry.local != Loc.both){
method.beginControlFlow("if(" + getCheckString(methodEntry.local) + " || !io.anuke.mindustry.net.Net.active())");
method.beginControlFlow("if(" + getCheckString(methodEntry.local) + " || !io.anuke.mindustry.Vars.net.active())");
}
//concatenate parameters
@@ -109,7 +106,7 @@ public class RemoteWriteGenerator{
for(VariableElement var : elem.getParameters()){
//special case: calling local-only methods uses the local player
if(index == 0 && methodEntry.where == Loc.client){
results.append("io.anuke.mindustry.Vars.players[0]");
results.append("io.anuke.mindustry.Vars.player");
}else{
results.append(var.getSimpleName());
}
@@ -119,7 +116,7 @@ public class RemoteWriteGenerator{
//add the statement to call it
method.addStatement("$N." + elem.getSimpleName() + "(" + results.toString() + ")",
((TypeElement) elem.getEnclosingElement()).getQualifiedName().toString());
((TypeElement)elem.getEnclosingElement()).getQualifiedName().toString());
if(methodEntry.local != Loc.both){
method.endControlFlow();
@@ -162,7 +159,7 @@ public class RemoteWriteGenerator{
boolean writePlayerSkipCheck = methodEntry.where == Loc.both && i == 0;
if(writePlayerSkipCheck){ //write begin check
method.beginControlFlow("if(io.anuke.mindustry.net.Net.server())");
method.beginControlFlow("if(io.anuke.mindustry.Vars.net.server())");
}
if(Utils.isPrimitive(typeName)){ //check if it's a primitive, and if so write it
@@ -170,7 +167,7 @@ public class RemoteWriteGenerator{
method.addStatement("TEMP_BUFFER.put(" + varName + " ? (byte)1 : 0)");
}else{
method.addStatement("TEMP_BUFFER.put" +
capName + "(" + varName + ")");
capName + "(" + varName + ")");
}
}else{
//else, try and find a serializer
@@ -197,19 +194,19 @@ public class RemoteWriteGenerator{
if(forwarded){ //forward packet
if(!methodEntry.local.isClient){ //if the client doesn't get it called locally, forward it back after validation
sendString = "send(";
sendString = "io.anuke.mindustry.Vars.net.send(";
}else{
sendString = "sendExcept(exceptSenderID, ";
sendString = "io.anuke.mindustry.Vars.net.sendExcept(exceptConnection, ";
}
}else if(toAll){ //send to all players / to server
sendString = "send(";
sendString = "io.anuke.mindustry.Vars.net.send(";
}else{ //send to specific client from server
sendString = "sendTo(playerClientID, ";
sendString = "playerConnection.send(";
}
//send the actual packet
method.addStatement("io.anuke.mindustry.net.Net." + sendString + "packet, " +
(methodEntry.unreliable ? "io.anuke.mindustry.net.Net.SendMode.udp" : "io.anuke.mindustry.net.Net.SendMode.tcp") + ")");
method.addStatement(sendString + "packet, " +
(methodEntry.unreliable ? "io.anuke.mindustry.net.Net.SendMode.udp" : "io.anuke.mindustry.net.Net.SendMode.tcp") + ")");
//end check for server/client
@@ -220,8 +217,8 @@ public class RemoteWriteGenerator{
}
private String getCheckString(Loc loc){
return loc.isClient && loc.isServer ? "io.anuke.mindustry.net.Net.server() || io.anuke.mindustry.net.Net.client()" :
loc.isClient ? "io.anuke.mindustry.net.Net.client()" :
loc.isServer ? "io.anuke.mindustry.net.Net.server()" : "false";
return loc.isClient && loc.isServer ? "io.anuke.mindustry.Vars.net.server() || io.anuke.mindustry.Vars.net.client()" :
loc.isClient ? "io.anuke.mindustry.Vars.net.client()" :
loc.isServer ? "io.anuke.mindustry.Vars.net.server()" : "false";
}
}
@@ -5,23 +5,17 @@ import io.anuke.annotations.Annotations.Serialize;
import javax.annotation.processing.*;
import javax.lang.model.SourceVersion;
import javax.lang.model.element.Modifier;
import javax.lang.model.element.TypeElement;
import javax.lang.model.element.VariableElement;
import javax.lang.model.element.*;
import javax.lang.model.util.ElementFilter;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.io.*;
import java.lang.reflect.Field;
import java.util.List;
import java.util.Set;
@SupportedSourceVersion(SourceVersion.RELEASE_8)
@SupportedAnnotationTypes({
"io.anuke.annotations.Annotations.Serialize"
})
@SupportedAnnotationTypes("io.anuke.annotations.Annotations.Serialize")
public class SerializeAnnotationProcessor extends AbstractProcessor{
/**Target class name.*/
/** Target class name. */
private static final String className = "Serialization";
/** Name of the base package to put all the generated classes. */
private static final String packageName = "io.anuke.mindustry.gen";
@@ -48,10 +42,13 @@ public class SerializeAnnotationProcessor extends AbstractProcessor{
TypeSpec.Builder classBuilder = TypeSpec.classBuilder(className).addModifiers(Modifier.PUBLIC);
classBuilder.addAnnotation(AnnotationSpec.builder(SuppressWarnings.class).addMember("value", "\"unchecked\"").build());
classBuilder.addJavadoc(RemoteMethodAnnotationProcessor.autogenWarning);
MethodSpec.Builder method = MethodSpec.methodBuilder("init").addModifiers(Modifier.PUBLIC, Modifier.STATIC);
for(TypeElement elem : elements){
TypeName type = TypeName.get(elem.asType());
String simpleTypeName = type.toString().substring(type.toString().lastIndexOf('.') + 1);
TypeSpec.Builder serializer = TypeSpec.anonymousClassBuilder("")
.addSuperinterface(ParameterizedTypeName.get(
@@ -74,7 +71,8 @@ public class SerializeAnnotationProcessor extends AbstractProcessor{
List<VariableElement> fields = ElementFilter.fieldsIn(Utils.elementUtils.getAllMembers(elem));
for(VariableElement field : fields){
if(field.getModifiers().contains(Modifier.STATIC) || field.getModifiers().contains(Modifier.TRANSIENT) || field.getModifiers().contains(Modifier.PRIVATE)) continue;
if(field.getModifiers().contains(Modifier.STATIC) || field.getModifiers().contains(Modifier.TRANSIENT) || field.getModifiers().contains(Modifier.PRIVATE))
continue;
String name = field.getSimpleName().toString();
String typeName = Utils.typeUtils.erasure(field.asType()).toString().replace('$', '.');
@@ -84,8 +82,8 @@ public class SerializeAnnotationProcessor extends AbstractProcessor{
writeMethod.addStatement("stream.write" + capName + "(object." + name + ")");
readMethod.addStatement("object." + name + "= stream.read" + capName + "()");
}else{
writeMethod.addStatement("io.anuke.arc.Core.settings.getSerializer(" + typeName+ ".class).write(stream, object." + name + ")");
readMethod.addStatement("object." + name + " = (" +typeName+")io.anuke.arc.Core.settings.getSerializer(" + typeName+ ".class).read(stream)");
writeMethod.addStatement("io.anuke.arc.Core.settings.getSerializer(" + typeName + ".class).write(stream, object." + name + ")");
readMethod.addStatement("object." + name + " = (" + typeName + ")io.anuke.arc.Core.settings.getSerializer(" + typeName + ".class).read(stream)");
}
}
@@ -94,12 +92,10 @@ public class SerializeAnnotationProcessor extends AbstractProcessor{
serializer.addMethod(writeMethod.build());
serializer.addMethod(readMethod.build());
method.addStatement("io.anuke.arc.Core.settings.setSerializer($N, $L)", Utils.elementUtils.getBinaryName(elem).toString().replace('$', '.') + ".class", serializer.build());
method.addStatement("io.anuke.arc.Core.settings.setSerializer($N, $L)", Utils.elementUtils.getBinaryName(elem).toString().replace('$', '.') + ".class", serializer.build());
String sname = type.toString().substring(type.toString().lastIndexOf('.') + 1);
name(writeMethod, "write" + sname);
name(readMethod, "read" + sname);
name(writeMethod, "write" + simpleTypeName);
name(readMethod, "read" + simpleTypeName);
writeMethod.addModifiers(Modifier.STATIC);
readMethod.addModifiers(Modifier.STATIC);
@@ -1,28 +1,25 @@
package io.anuke.annotations;
import com.squareup.javapoet.JavaFile;
import com.squareup.javapoet.MethodSpec;
import com.squareup.javapoet.TypeName;
import com.squareup.javapoet.TypeSpec;
import com.squareup.javapoet.*;
import io.anuke.annotations.Annotations.Struct;
import io.anuke.annotations.Annotations.StructField;
import javax.annotation.processing.*;
import javax.lang.model.SourceVersion;
import javax.lang.model.element.Modifier;
import javax.lang.model.element.TypeElement;
import javax.lang.model.element.VariableElement;
import javax.lang.model.element.*;
import javax.lang.model.type.TypeKind;
import javax.lang.model.util.ElementFilter;
import javax.tools.Diagnostic.Kind;
import java.util.List;
import java.util.Set;
/**Generates ""value types"" classes that are packed into integer primitives of the most aproppriate size.
* It would be nice if Java didn't make crazy hacks like this necessary.*/
/**
* Generates ""value types"" classes that are packed into integer primitives of the most aproppriate size.
* It would be nice if Java didn't make crazy hacks like this necessary.
*/
@SupportedSourceVersion(SourceVersion.RELEASE_8)
@SupportedAnnotationTypes({
"io.anuke.annotations.Annotations.Struct"
"io.anuke.annotations.Annotations.Struct"
})
public class StructAnnotationProcessor extends AbstractProcessor{
/** Name of the base package to put all the generated classes. */
@@ -57,7 +54,7 @@ public class StructAnnotationProcessor extends AbstractProcessor{
String structParam = structName.toLowerCase();
TypeSpec.Builder classBuilder = TypeSpec.classBuilder(structName)
.addModifiers(Modifier.FINAL, Modifier.PUBLIC);
.addModifiers(Modifier.FINAL, Modifier.PUBLIC);
try{
List<VariableElement> variables = ElementFilter.fieldsIn(elem.getEnclosedElements());
@@ -92,14 +89,14 @@ public class StructAnnotationProcessor extends AbstractProcessor{
//[get] field(structType) : fieldType
MethodSpec.Builder getter = MethodSpec.methodBuilder(var.getSimpleName().toString())
.addModifiers(Modifier.STATIC, Modifier.PUBLIC)
.returns(varType)
.addParameter(structType, structParam);
.addModifiers(Modifier.STATIC, Modifier.PUBLIC)
.returns(varType)
.addParameter(structType, structParam);
//[set] field(structType, fieldType) : structType
MethodSpec.Builder setter = MethodSpec.methodBuilder(var.getSimpleName().toString())
.addModifiers(Modifier.STATIC, Modifier.PUBLIC)
.returns(structType)
.addParameter(structType, structParam).addParameter(varType, "value");
.addModifiers(Modifier.STATIC, Modifier.PUBLIC)
.returns(structType)
.addParameter(structType, structParam).addParameter(varType, "value");
//[getter]
if(varType == TypeName.BOOLEAN){
@@ -129,7 +126,7 @@ public class StructAnnotationProcessor extends AbstractProcessor{
//floats: need conversion
setter.addStatement("return ($T)(($L & $L) | (($T)Float.floatToIntBits(value) << $LL))", structType, structParam, bitString(offset, size, structTotalSize), structType, offset);
}else{
cons.append(" | (").append("(").append(structType).append(")").append(varName).append(" << ").append(offset).append("L)");
cons.append(" | (((").append(structType).append(")").append(varName).append(" << ").append(offset).append("L)").append(" & ").append(bitString(offset, size, structTotalSize)).append(")");
//bytes, shorts, chars, ints
setter.addStatement("return ($T)(($L & $L) | (($T)value << $LL))", structType, structParam, bitString(offset, size, structTotalSize), structType, offset);
@@ -209,7 +206,7 @@ public class StructAnnotationProcessor extends AbstractProcessor{
throw new IllegalArgumentException("Too many fields, must fit in 64 bits. Curent size: " + size);
}
/**returns a type's element size in bits.*/
/** returns a type's element size in bits. */
static int typeSize(TypeKind kind) throws IllegalArgumentException{
switch(kind){
case BOOLEAN:
@@ -14,11 +14,11 @@ public class Utils{
public static Messager messager;
public static String getMethodName(Element element){
return ((TypeElement) element.getEnclosingElement()).getQualifiedName().toString() + "." + element.getSimpleName();
return ((TypeElement)element.getEnclosingElement()).getQualifiedName().toString() + "." + element.getSimpleName();
}
public static boolean isPrimitive(String type){
return type.equals("boolean") || type.equals("byte") || type.equals("short") || type.equals("int")
|| type.equals("long") || type.equals("float") || type.equals("double") || type.equals("char");
|| type.equals("long") || type.equals("float") || type.equals("double") || type.equals("char");
}
}
@@ -1,3 +1,5 @@
io.anuke.annotations.RemoteMethodAnnotationProcessor
io.anuke.annotations.SerializeAnnotationProcessor
io.anuke.annotations.StructAnnotationProcessor
io.anuke.annotations.CallSuperAnnotationProcessor
io.anuke.annotations.AssetsAnnotationProcessor
+107 -59
View File
@@ -8,45 +8,37 @@ buildscript{
}
dependencies{
classpath 'com.mobidevelop.robovm:robovm-gradle-plugin:2.3.5'
classpath "com.badlogicgames.gdx:gdx-tools:1.9.9"
classpath 'com.mobidevelop.robovm:robovm-gradle-plugin:2.3.7'
classpath "com.badlogicgames.gdx:gdx-tools:1.9.10"
classpath "com.badlogicgames.packr:packr:2.1-SNAPSHOT"
}
}
allprojects{
apply plugin: "idea"
version = 'release'
apply plugin: 'maven'
group = 'com.github.Anuken'
ext{
versionNumber = '4'
versionModifier = 'beta'
if(!project.hasProperty("versionModifier")) versionModifier = 'release'
if(!project.hasProperty("versionType")) versionType = 'official'
appName = 'Mindustry'
gdxVersion = '1.9.9'
roboVMVersion = '2.3.0'
gdxVersion = '1.9.10'
roboVMVersion = '2.3.7'
steamworksVersion = '1.8.0'
arcHash = null
debugged = {
return new File(projectDir.parent, '../debug').exists() && System.properties["release"] == null
return new File(projectDir.parent, '../debug').exists() && !project.hasProperty("release") && project.hasProperty("args")
}
localArc = {
return (System.properties["release"] == null || System.properties["release"] == "false") && new File(projectDir.parent, '../Arc').exists()
return !project.hasProperty("release") && new File(projectDir.parent, '../Arc').exists()
}
getArcHash = {
//get latest commit hash from gtihub since JITPack's '-snapshot' version doesn't work correctly
if(arcHash == null){
try{
arcHash = 'git ls-remote https://github.com/Anuken/Arc.git'.execute().text.split("\t")[0]
}catch(e){
e.printStackTrace()
arcHash = "-SNAPSHOT";
}
}
return arcHash
return new Properties().with{ p -> p.load(new File((File)projectDir, 'gradle.properties').newReader()); return p }["archash"]
}
arcModule = { String name ->
@@ -59,11 +51,36 @@ allprojects{
}
}
generateDeployName = { String platform ->
if(platform == "windows"){
platform += "64"
}
platform = platform.capitalize()
if(platform.endsWith("64") || platform.endsWith("32")){
platform = "${platform.substring(0, platform.length() - 2)}-${platform.substring(platform.length() - 2)}bit"
}
return "[${platform}]${getModifierString()}[${getNeatVersionString()}]${appName}"
}
getVersionString = {
String buildVersion = getBuildVersion()
return "$versionNumber-$versionModifier-$buildVersion"
}
getNeatVersionString = {
String buildVersion = getBuildVersion()
return "v$buildVersion"
}
getModifierString = {
if(versionModifier != "release"){
return "[${versionModifier.toUpperCase()}]"
}
return ""
}
getBuildVersion = {
if(!project.hasProperty("buildversion")) return "custom build"
return project.getProperties()["buildversion"]
@@ -89,12 +106,14 @@ allprojects{
try{
pfile.createNewFile()
}catch(Exception ignored){}
}catch(Exception ignored){
}
if(pfile.exists()){
props.load(new FileInputStream(pfile))
String buildid = getBuildVersion()
println("Compiling with build: '$buildid'")
props["type"] = versionType
props["number"] = versionNumber
@@ -112,7 +131,10 @@ allprojects{
maven{ url "https://oss.sonatype.org/content/repositories/snapshots/" }
maven{ url "https://oss.sonatype.org/content/repositories/releases/" }
maven{ url 'https://jitpack.io' }
jcenter()
}
tasks.withType(Javadoc).all{ enabled = false }
}
project(":desktop"){
@@ -120,15 +142,17 @@ project(":desktop"){
dependencies{
compile project(":core")
compile project(":net")
if(debugged()) compile project(":debug")
compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop"
compile "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-desktop"
compile arcModule("backends:backend-lwjgl3")
compile 'com.github.MinnDevelopment:java-discord-rpc:v2.0.0'
compile "com.code-disaster.steamworks4j:steamworks4j:$steamworksVersion"
compile "com.code-disaster.steamworks4j:steamworks4j-server:$steamworksVersion"
compile arcModule("backends:backend-sdl")
compile 'com.github.MinnDevelopment:java-discord-rpc:v2.0.2'
}
}
@@ -145,7 +169,7 @@ project(":ios"){
}
props['app.id'] = 'io.anuke.mindustry'
props['app.version'] = '4.0'
props['app.version'] = '4.2.1'
props['app.mainclass'] = 'io.anuke.mindustry.IOSLauncher'
props['app.executable'] = 'IOSLauncher'
props['app.name'] = 'Mindustry'
@@ -155,10 +179,10 @@ project(":ios"){
dependencies{
compile project(":core")
compile project(":net")
compileOnly project(":annotations")
compile arcModule("backends:backend-robovm")
compile "com.mobidevelop.robovm:robovm-rt:$roboVMVersion"
compile "com.mobidevelop.robovm:robovm-cocoatouch:$roboVMVersion"
compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios"
@@ -169,36 +193,44 @@ project(":ios"){
project(":core"){
apply plugin: "java"
task finish{
task preGen{
outputs.upToDateWhen{ false }
generateLocales()
}
task cleanGen{
doFirst{
delete{
delete "../core/src/io/anuke/mindustry/gen/"
}
}
}
task copyGen{
doLast{
copy{
from("../core/build/classes/java/main/io/anuke/mindustry/gen/"){
include "**/*.java"
}
into "../core/src/io/anuke/mindustry/gen"
}
}
writeVersion()
}
dependencies{
compileJava.dependsOn(cleanGen)
compileJava.finalizedBy(copyGen)
if(System.properties["user.name"] == "anuke"){
task cleanGen{
doFirst{
delete{
delete "../core/src/io/anuke/mindustry/gen/"
}
}
}
task copyGen{
doLast{
copy{
from("../core/build/generated/sources/annotationProcessor/java/main/io/anuke/mindustry/gen"){
include "**/*.java"
}
into "../core/src/io/anuke/mindustry/gen"
}
}
}
compileJava.dependsOn(cleanGen)
compileJava.finalizedBy(copyGen)
}
compileJava.dependsOn(preGen)
compile "org.lz4:lz4-java:1.4.1"
compile arcModule("arc-core")
compile arcModule("extensions:freetype")
compile arcModule("extensions:arcnet")
if(localArc() && debugged()) compile arcModule("extensions:recorder")
compileOnly project(":annotations")
@@ -211,7 +243,6 @@ project(":server"){
dependencies{
compile project(":core")
compile project(":net")
compile arcModule("backends:backend-headless")
}
}
@@ -238,6 +269,12 @@ project(":tools"){
dependencies{
compile project(":core")
//for render tests
compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop"
compile "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-desktop"
compile arcModule("backends:backend-sdl")
}
}
@@ -246,16 +283,27 @@ project(":annotations"){
dependencies{
compile 'com.squareup:javapoet:1.11.0'
compile files("${System.getProperty('java.home')}/../lib/tools.jar")
}
}
project(":net"){
apply plugin: "java"
task deployAll{
task cleanDeployOutput{
doFirst{
if("${getBuildVersion()}" == "custom build" || "${getBuildVersion()}" == "") throw new IllegalArgumentException("----\n\nSET A BUILD NUMBER FIRST!\n\n----")
if(!project.hasProperty("release")) throw new IllegalArgumentException("----\n\nSET THE RELEASE PROJECT PROPERTY FIRST!\n\n----")
dependencies{
compile project(":core")
compile "org.lz4:lz4-java:1.4.1"
compile 'com.github.Anuken:kryonet:a64d2280880e80566ca1bdaffa55de43e51cad38'
compile 'com.github.Anuken:WaifUPnP:05eb46bc577fd7674596946ba288c96c0cedd893'
delete{
delete "deploy/"
}
}
}
dependsOn cleanDeployOutput
dependsOn "desktop:packrLinux64"
dependsOn "desktop:packrWindows64"
dependsOn "desktop:packrWindows32"
dependsOn "desktop:packrMacOS"
dependsOn "server:deploy"
dependsOn "android:deploy"
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 B

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 312 B

After

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 B

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 217 B

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 B

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 B

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 123 B

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 83 B

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 93 B

After

Width:  |  Height:  |  Size: 123 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 95 B

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 119 B

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 B

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 B

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 B

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 B

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 116 B

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 B

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 119 B

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 B

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 113 B

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 B

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 B

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 B

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 109 B

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 B

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 110 B

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 110 B

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 109 B

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 B

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 B

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 109 B

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 B

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 B

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 B

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 103 B

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 127 B

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 127 B

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 B

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 129 B

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 120 B

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 114 B

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 110 B

After

Width:  |  Height:  |  Size: 1.4 KiB

Some files were not shown because too many files have changed in this diff Show More