This commit is contained in:
Anuken
2018-12-31 19:03:51 -05:00
453 changed files with 7330 additions and 8572 deletions
Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 110 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 120 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 107 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 120 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 127 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 96 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 93 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 211 B

After

Width:  |  Height:  |  Size: 397 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 B

After

Width:  |  Height:  |  Size: 264 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 122 B

After

Width:  |  Height:  |  Size: 219 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 170 B

After

Width:  |  Height:  |  Size: 236 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 241 B

After

Width:  |  Height:  |  Size: 329 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 B

After

Width:  |  Height:  |  Size: 242 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 124 B

After

Width:  |  Height:  |  Size: 221 B

Before

Width:  |  Height:  |  Size: 70 B

After

Width:  |  Height:  |  Size: 70 B

+3 -1
View File
@@ -2,5 +2,7 @@
duplicatePadding: true,
combineSubdirectories: true,
flattenPaths: true,
fast: true
maxWidth: 2048,
maxHeight: 2048,
fast: true,
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 256 B

After

Width:  |  Height:  |  Size: 294 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 261 B

After

Width:  |  Height:  |  Size: 282 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 253 B

After

Width:  |  Height:  |  Size: 277 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 271 B

After

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 247 B

After

Width:  |  Height:  |  Size: 268 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 284 B

After

Width:  |  Height:  |  Size: 303 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 112 B

After

Width:  |  Height:  |  Size: 202 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 282 B

After

Width:  |  Height:  |  Size: 320 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 392 B

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 B

After

Width:  |  Height:  |  Size: 237 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 248 B

After

Width:  |  Height:  |  Size: 250 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 401 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 156 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 280 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 223 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 350 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 228 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 368 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 320 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 186 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 319 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 373 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 362 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 199 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 378 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 348 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 179 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 321 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 165 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 306 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 283 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 241 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 389 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 249 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 404 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 226 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 333 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 195 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 374 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 363 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 198 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 379 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 363 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 355 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 381 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 295 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 461 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 427 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 464 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 541 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 460 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 472 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 438 B

Before

Width:  |  Height:  |  Size: 68 B

After

Width:  |  Height:  |  Size: 68 B

Before

Width:  |  Height:  |  Size: 883 B

After

Width:  |  Height:  |  Size: 883 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 B

Before

Width:  |  Height:  |  Size: 200 B

After

Width:  |  Height:  |  Size: 200 B

+1
View File
@@ -270,6 +270,7 @@ text.error.timedout = Timed out!\nMake sure the host has port forwarding set up,
text.error.mismatch = Packet error:\npossible client/server version mismatch.\nMake sure you and the host have the latest version of Mindustry!
text.error.alreadyconnected = Already connected.
text.error.mapnotfound = Map file not found!
text.error.io = Network I/O error.
text.error.any = Unknown network error.
text.settings.language = Language
+93 -86
View File
@@ -7,9 +7,10 @@ text.link.github.description = ゲームのソースコード
text.link.dev-builds.description = 不安定な開発ビルド
text.link.trello.description = 公式 Trelloボード の実装予定の機能をチェック
text.link.itch.io.description = itch.ioでPC版のダウンロードやweb版をプレイ
text.link.google-play.description = Google Playのストアページ
text.link.google-play.description = Google Playのストア
text.link.wiki.description = 公式 Mindustry Wiki
text.linkfail = リンクを開くのに失敗しました!\nURLをクリップボードにコピーしました。
text.linkfail = リンクを開けませんでした!\nURLをクリップボードにコピーしました。
text.screenshot = スクリーンショットを {0} に保存しました。
text.gameover = ゲームオーバー
text.gameover.pvp = [accent] {0}[] チームの勝利!
text.sector.gameover = この区域は敗北しました。 再配備しますか?
@@ -21,11 +22,11 @@ text.level.delete.title = 削除の確認
text.map.delete = マップ "[accent]{0}[]" を削除してもよろしいですか?
text.level.select = レベル選択
text.level.mode = ゲームモード:
text.construction.desktop = ブロックの選択や建設を止めるには、[accent]スペースを使用してください[]
text.construction.desktop = ブロックの選択や建設を止めるには、[accent]スペースを使用[]してください。
text.construction.title = ブロック建設ガイド
text.construction = [accent]ブロック建設モード[]になりました。\n設置するには、機体の近くの設置可能な場所をタップしてください。\nブロックを選択した状態で、チェックボタンを押して確認すると、機体が建設を始めます。\n\n- [accent]ブロック撤去[]は、タップして範囲を選択してください。\n- [accent]範囲選択[]は、長押しして、範囲のブロックをドラッグしてください。\n- [accent]一列にブロックを設置[]するには、 タップで空いている場所を長押しして、伸ばしたい方向にドラッグしてください\n- [accent]建設や範囲の選択をキャンセル[]するには、左下の X ボタンを押してください。
text.construction = [accent]ブロック建設モード[]になりました。\n設置するには、機体の近くの設置可能な場所をタップしてください。\nブロックを選択した状態で、チェックボタンを押して確認すると、機体が建設を始めます。\n\n- [accent]ブロック撤去[]するには、タップして範囲を選択してください。\n- [accent]範囲選択[]するには、長押しして、範囲のブロックをドラッグしてください。\n- [accent]一列にブロックを設置[]するには、 タップで空いている場所を長押しして、伸ばしたい方向にドラッグしてください\n- [accent]建設や範囲の選択をキャンセル[]するには、左下の X ボタンを押してください。
text.deconstruction.title = ブロック撤去ガイド
text.deconstruction = [accent]ブロック撤去モード[]になりました。\n\nブロックを撤去するには、機体の近くのブロックをタップしてください。\nブロックを選択した状態で、チェックボタンを押して確認すると、機体がブロックの撤去を始めます。\n\n- [accent]ブロックの破壊[]は、タップ範囲を選択してください。\n- [accent]範囲を選択してブロックを撤去[]するには、 タップで空いている場所を長押しして、伸ばしたい方向にドラッグしてください\n- [accent]撤去や範囲選択をキャンセル[]するには、左下の X ボタンを押してください。
text.deconstruction = [accent]ブロック撤去モード[]になりました。\n\nブロックを撤去するには、機体の近くのブロックをタップしてください。\nブロックを選択した状態で、チェックボタンを押して確認すると、機体がブロックの撤去を始めます。\n\n- [accent]ブロックを撤去[]するには、タップして範囲を選択してください。\n- [accent]範囲を選択してブロックを撤去[]するには、 タップで空いている場所を長押しして、伸ばしたい方向にドラッグしてください\n- [accent]撤去や範囲選択をキャンセル[]するには、左下の X ボタンを押してください。
text.showagain = 次回以降表示しない
text.coreattack = < コアが攻撃を受けています! >
text.unlocks = アンロック
@@ -132,7 +133,7 @@ text.confirmunban = このプレイヤーの Ban を解除しますか?
text.confirmadmin = このプレイヤーを管理者にしますか?
text.confirmunadmin = このプレイヤーを管理者から削除しますか?
text.joingame.title = サーバーに参加
text.joingame.ip = IP:
text.joingame.ip = アドレス:
text.disconnect = 接続が切断されました。
text.disconnect.data = ワールドデータの読み込みに失敗しました!
text.connecting = [accent]接続中...
@@ -293,7 +294,7 @@ text.blocks.blockinfo = ブロック情報
text.blocks.powercapacity = 電力容量
text.blocks.powershot = 電力/ショット
text.blocks.targetsair = 対空攻撃
text.blocks.itemspeed = ユニットの移動速度
text.blocks.itemspeed = 輸送速度
text.blocks.shootrange = 範囲
text.blocks.size = 大きさ
text.blocks.liquidcapacity = 液体容量
@@ -324,7 +325,7 @@ text.blocks.liquidfueluse = 液体燃料使用量
text.blocks.boostitem = 加速アイテム
text.blocks.boostliquid = 加速液体
text.blocks.health = 耐久値
text.blocks.inaccuracy = 不正確
text.blocks.inaccuracy = 精度のずれ
text.blocks.shots = ショット
text.blocks.reload = ショット/秒
text.blocks.inputfuel = 燃料
@@ -348,6 +349,7 @@ text.category.items = アイテム
text.category.crafting = 製作速度
text.category.shooting = 攻撃速度
text.category.optional = 機能強化オプション
setting.indicators.name = 味方の方角表示
setting.autotarget.name = 自動ターゲット
setting.fpscap.name = 最大FPS
setting.fpscap.none = なし
@@ -379,9 +381,12 @@ category.view.name = 表示
category.multiplayer.name = マルチプレイ
command.attack = 攻撃
command.retreat = 退却
command.patrol = 警戒
command.patrol = 巡回
keybind.gridMode.name = ブロック選択
keybind.gridModeShift.name = カテゴリー選択
keybind.press = キーを押してください...
keybind.press.axis = 軸またはキーを押してください...
keybind.screenshot.name = スクリーンショット
keybind.move_x.name = 左右移動
keybind.move_y.name = 上下移動
keybind.select.name = 選択/ショット
@@ -405,13 +410,15 @@ keybind.drop_unit.name = ドロップユニット
keybind.zoom_minimap.name = ミニマップのズーム
mode.text.help.title = モード説明
mode.waves.name = ウェーブ
mode.waves.description = ノーマルモードです。限られた資源でウェーブが自動的に始まります。
mode.waves.description = 通常モードです。限られた資源の中でウェーブが自動的に進行します。
mode.sandbox.name = サンドボックス
mode.sandbox.description = 無限の資源でウェーブを自由に始められます。
mode.sandbox.description = 無限の資源でウェーブを自由に進行できます。
mode.freebuild.name = フリービルド
mode.freebuild.description = 限られた資源でウェーブを自由に始められます。
mode.freebuild.description = 限られた資源の中でウェーブを自由に進行できます。
mode.pvp.name = PvP
mode.pvp.description = ローカルで他のプレイヤー戦います。
mode.pvp.description = ローカルで他のプレイヤー戦います。
mode.attack.name = アタック
mode.attack.descrption = ウェーブはなく、敵基地の破壊を目指します。
content.item.name = アイテム
content.liquid.name = 液体
content.unit.name = ユニット
@@ -426,27 +433,27 @@ item.lead.description = 一般的で手軽な鉱石です。機械や液体輸
item.coal.name = 石炭
item.coal.description = 一般的で有用な燃料です。
item.dense-alloy.name = 高密度合金
item.dense-alloy.description = 銅と鉛でできた丈夫な合金です。高性能な戦争ブロックやドリルに使われます。
item.dense-alloy.description = 銅と鉛でできた丈夫な合金です。高性能な輸送ブロックやドリルに使われます。
item.titanium.name = チタン
item.titanium.description = 希少で軽量な金属です。液体輸送やドリル、航空機などで使われます。
item.titanium.description = 希少で非常に軽量な金属です。液体輸送やドリル、航空機などで使われます。
item.thorium.name = トリウム
item.thorium.description = 高密度で放射性の金属です。構造的な支援や核燃料使われます。
item.thorium.description = 放射性を持つ高密度な金属です。建物の補強や核燃料として使われます。
item.silicon.name = シリコン
item.silicon.description = 非常に有用な半導体でソーラーパネルや多くの複雑な機械に応用できます。
item.plastanium.name = プラスタニウム
item.plastanium.description = 軽量で伸縮性のある材料です。飛行機や弾薬に使用されます。
item.plastanium.description = 軽量で伸縮性のある材料です。機や弾薬に使用されます。
item.phase-fabric.name = フェーズファイバー
item.phase-fabric.description = 軽くない物質です。高度な機械や自己修復技術に使用されます。
item.phase-fabric.description = 極めて軽量な素材です。高度な機械や自己修復技術に使用されます。
item.surge-alloy.name = サージ合金
item.surge-alloy.description = 独特な電気的特性を持った特殊合金です。
item.surge-alloy.description = 電気的特性を持った特殊合金です。
item.biomatter.name = バイオメター
item.biomatter.description = 有機物の混ざったの塊です。石油への転換や燃料として使われます。
item.biomatter.description = 有機物を含んだ塊です。石油への転換や燃料として使われます。
item.sand.name =
item.sand.description = 合金や融剤など広く使用されている一般的な材料です。
item.blast-compound.name = 爆発性化合物
item.blast-compound.description = 爆弾や爆発物に使われる揮発性化合物です。燃料として燃やすこともできますが、推奨されません。
item.blast-compound.description = 爆弾や爆発物に使われる揮発性化合物です。燃料として燃やすこともできますが、お勧めしません。
item.pyratite.name = ピラタイト
item.pyratite.description = 兵器に使われる非常に燃えやすい物質です。
item.pyratite.description = 兵器などに使われる非常に燃えやすい物質です。
liquid.water.name =
liquid.lava.name = 溶岩
liquid.oil.name = 石油
@@ -454,31 +461,31 @@ liquid.cryofluid.name = 冷却水
mech.alpha-mech.name = アルファ
mech.alpha-mech.weapon = 重武装機関砲
mech.alpha-mech.ability = ドローン部隊
mech.alpha-mech.description = 一般的な機体です。標準的な速度と攻撃力を持っています。攻撃力を高めるために最大3体のドローンを作成することができます。
mech.alpha-mech.description = 一般的な機体です。標準的な速度と攻撃力を持っています。攻撃力を高めるために最大3体のドローン機を持っています。
mech.delta-mech.name = デルタ
mech.delta-mech.weapon = 電撃砲
mech.delta-mech.ability = 撃チャージ
mech.delta-mech.description = 高速移動する敵のために素早く軽化された機体です。建物にはほとんどダメージを与えませんが、電撃を使って、たくさんの敵を素早く倒すことができます。
mech.delta-mech.ability =
mech.delta-mech.description = 高速移動する敵のために素早く軽化された機体です。建物にはほとんどダメージを与えられませんが、電撃たくさんの敵を攻撃することができます。
mech.tau-mech.name = タウ
mech.tau-mech.weapon = 修復レーザー
mech.tau-mech.ability = リペアバースト
mech.tau-mech.description = 支援型機体です。ダメージを受けたブロックを修復や火災の消火、半径内の味方治療を行います。
mech.tau-mech.description = 支援型機体です。ダメージを受けたブロックを修復や火災の消火、半径内の味方治療を行います。
mech.omega-mech.name = オメガ
mech.omega-mech.weapon = ロケット弾
mech.omega-mech.ability = 重装備
mech.omega-mech.description = 最前線での攻撃向けに作られた大型機体です。重装備によってダメージの90%を防ぐことができます。
mech.dart-ship.name = ダー
mech.omega-mech.ability = プロテクター
mech.omega-mech.description = 最前線での攻撃向けに作られた大型機体です。プロテクターによってダメージの90%を防ぐことができます。
mech.dart-ship.name = ダー
mech.dart-ship.weapon = 機関砲
mech.dart-ship.description = 一般的な機体です。高速で軽く使いやすいですが、攻撃能力はほとんどなく採掘速度遅いのが点です。
mech.dart-ship.description = 一般的な機体です。軽く高速で使いやすいですが、攻撃能力はほとんどなく採掘速度遅いのが点です。
mech.javelin-ship.name = ジャベリン
mech.javelin-ship.description = 最初は遅いですが、敵の基地では速度と飛行能力が飛躍的に高まり、電撃やミサイルで多量のダメージを与えることができます。
mech.javelin-ship.description = 高速移動ができる機体です。最初は遅いですが、敵の基地で飛行能力が飛躍的に高まり、電撃やミサイルで多量のダメージを与えることができます。
mech.javelin-ship.weapon = バーストミサイル
mech.javelin-ship.ability = 放電ブースター
mech.trident-ship.name = トライデント
mech.trident-ship.description = 強力な爆撃機です。頑丈な装甲す。
mech.trident-ship.description = 強力な爆撃機です。強固な装甲を有しています。
mech.trident-ship.weapon = 爆弾
mech.glaive-ship.name = グライブ
mech.glaive-ship.description = 大きく、重武装された攻撃機です。焼夷弾が装備され、優れた加速と最高速度を有しています。
mech.glaive-ship.description = 重武装された大型攻撃機です。焼夷弾が装備され、機体の中でも優れた加速と最高速度を有しています。
mech.glaive-ship.weapon = 焼夷弾
text.item.explosiveness = [LIGHT_GRAY]爆発性: {0}%
text.item.flammability = [LIGHT_GRAY]可燃性: {0}%
@@ -495,7 +502,7 @@ text.mech.ability = [LIGHT_GRAY]能力: {0}
text.liquid.heatcapacity = [LIGHT_GRAY]熱容量: {0}
text.liquid.viscosity = [LIGHT_GRAY]粘度: {0}
text.liquid.temperature = [LIGHT_GRAY]温度: {0}
block.constructing = {0}\n[LIGHT_GRAY](Constructing)
block.constructing = {0}\n[LIGHT_GRAY](建設中)
block.spawn.name = エネミースポーン
block.core.name = コア
block.metalfloor.name = 金属製の床
@@ -534,7 +541,7 @@ block.junction.name = ジャンクション
block.router.name = ルーター
block.distributor.name = ディストリビューター
block.sorter.name = ソーター
block.sorter.description = アイテムを分別します。設定されたアイテムを通します。異なるアイテムの場合、左右に搬出します。
block.sorter.description = アイテムを分別して搬出します。設定されたアイテムは通過させ、異なるアイテムの場合、左右に搬出します。
block.overflow-gate.name = オーバーフローゲート
block.overflow-gate.description = 搬出先がいっぱいの場合に左右にアイテムを搬出します。
block.smelter.name = 溶鉱炉
@@ -560,7 +567,7 @@ block.laser-drill.name = レーザードリル
block.water-extractor.name = ウォーターポンプ
block.cultivator.name = 耕作機
block.alpha-mech-pad.name = アルファパッド
block.dart-ship-pad.name = ダーパッド
block.dart-ship-pad.name = ダーパッド
block.delta-mech-pad.name = デルタパッド
block.javelin-ship-pad.name = ジャベリンパッド
block.trident-ship-pad.name = トライデントパッド
@@ -582,7 +589,7 @@ block.salvo.name = サルボー
block.ripple.name = リップル
block.phase-conveyor.name = フェーズコンベアー
block.bridge-conveyor.name = ブリッジコンベアー
block.plastanium-compressor.name = プラスタニウムコンプレッサー
block.plastanium-compressor.name = プラスタニウム圧縮機
block.pyratite-mixer.name = ピラタイトミキサー
block.blast-mixer.name = 化合物ミキサー
block.solidifer.name = 冷却機
@@ -608,7 +615,7 @@ block.rotary-pump.name = ロータリーポンプ
block.thorium-reactor.name = トリウムリアクター
block.command-center.name = コマンドセンター
block.mass-driver.name = マスドライバー
block.blast-drill.name = エアブラドリル
block.blast-drill.name = エアブラストドリル
block.thermal-pump.name = サーマルポンプ
block.thermal-generator.name = サーマル発電機
block.alloy-smelter.name = 合金溶鉱炉
@@ -669,7 +676,7 @@ tutorial.silicon = シリコン溶鉱炉で製造したシリコンを回収し
tutorial.daggerfactory = [accent]ダガーユニット製造機[]を作りましょう。\n\nこれを使うと攻撃ユニットを作ってくれます。
tutorial.router = 生産機には電力が必要です。\nコンベアーから資源を分けるためにルーターを作りましょう。
tutorial.dagger = 電源ノードを生産機に接続しましょう。\n要件が揃うと、ユニットを作り始めます。\n\n必要に応じて、ドリルや発電機、コンベアーを増やしましょう。
tutorial.battle = [LIGHT_GRAY]敵[]のコアが見つかりました。\nユニットやダガー破壊しましょう。
tutorial.battle = [LIGHT_GRAY]敵[]のコアが見つかりました。\nユニットやダガー機で敵の基地を破壊しましょう。
block.copper-wall.description = 安価な防壁ブロックです。\n最初のウェーブでコアやターレットを保護するのに便利です。
block.copper-wall-large.description = 安価な大型防壁ブロックです。\n最初のウェーブでコアやターレットを保護するのに便利です。
block.dense-alloy-wall.description = 標準的な防壁ブロックです。\n敵からの保護に最適です。
@@ -678,64 +685,64 @@ block.thorium-wall.description = 強化された防壁ブロックです。\n敵
block.thorium-wall-large.description = 強化された大型防壁ブロックです。\n敵からの保護により強固です。
block.phase-wall.description = トリウムの壁ほど強固ではないが、強力な弾でなければ弾き返すことができます。
block.phase-wall-large.description = トリウムの壁ほど強固ではないが、強力な弾でなければ弾き返すことができます。
block.surge-wall.description = 最も硬い防壁ブロックです。\nに攻撃されると敵に電撃を与えます。
block.surge-wall-large.description = 最も硬い大型防壁ブロックです。\nに攻撃されると敵に電撃を与えます。
block.door.description = 小さなドアです。タップすることで開閉することができます。\nただし、ドアが開いている場合、弾や敵も通過できます。
block.door-large.description = 大きなドアです。タップすることで開閉することができます。\nただし、ドアが開いている場合、弾や敵も通過できます。
block.mend-projector.description = 周辺のブロックを修復します。
block.overdrive-projector.description = ドリルやコンベアなど近くの施設の速度を向上させます。
block.force-projector.description = 六角形の力場を作り出し、内部の建造物やユニットなどを守ります。
block.surge-wall.description = 最も硬い防壁ブロックです。\nたまに攻撃されると敵に電撃を与えます。
block.surge-wall-large.description = 最も硬い大型防壁ブロックです。\nたまに攻撃されると敵に電撃を与えます。
block.door.description = 小さなドアブロックです。タップすることで開閉することができます。\nただし、ドアが開いている場合、弾や敵も通過できます。
block.door-large.description = 大きなドアブロックです。タップすることで開閉することができます。\nただし、ドアが開いている場合、弾や敵も通過できます。
block.mend-projector.description = 定期的に周辺のブロックを修復します。
block.overdrive-projector.description = ドリルやコンベアなど近くの施設の効率を向上させます。
block.force-projector.description = 周囲に六角形の力場を作り出し、内部の建造物やユニットなどを守ります。
block.shock-mine.description = 敵が踏むと、ダメージを与えます。敵には見えません。
block.duo.description = 小さく安価なターレットです。
block.arc.description = さな電撃ターレットです。敵に向かってランダムな半円状に電撃を放ちます。
block.hail.description = さな砲撃ターレットです。
block.arc.description = 型の電撃ターレットです。敵に向かってランダムな半円状に電撃を放ちます。
block.hail.description = 型の砲撃ターレットです。
block.lancer.description = チャージビームを放つ中型ターレットです。
block.wave.description = バブルの連射攻撃をする中型ターレットです。
block.salvo.description = 一斉に攻撃を行う中型のターレットです。
block.swarmer.description = バーストミサイルで攻撃する中型ターレットです。
block.ripple.description = 同時に複数ショットを発射する大型ターレットです。
block.cyclone.description = 大型連射ターレットです。
block.fuse.description = 短距離攻撃をする大型ターレットです。
block.spectre.description = 一度に2発の強力な弾をつ大型ターレットです。
block.meltdown.description = 強力な長距離攻撃をする大型ターレットです。
block.conveyor.description = 一般的なアイテム輸送ブロックです。アイテムを前方に移動し、自動的にターレットや製造機などに入れます。回転できます。
block.titanium-conveyor.description = 強化されたアイテム輸送ブロックです。通常のコンベアーよりも速くアイテムを移動します。
block.phase-conveyor.description = 強化されたアイテム転送ブロックです。電力を使用して、離れた場所にあるフェーズコンベアーにアイテムを転送することができます。
block.junction.description = 交差している2つのコンベアーをブリッジします。2つの異なるコンベアーが異なる場所に異なる材料を運んでいるときに便利です。
block.mass-driver.description = 長距離の輸送が可能なアイテム輸送ブロックです。離れた別のマスドライバーにアイテムを発射します。
block.fuse.description = 短距離攻撃が得意な大型ターレットです。
block.spectre.description = 一度に2発の強力な弾をつ大型ターレットです。
block.meltdown.description = 強力な長距離攻撃が可能な大型ターレットです。
block.conveyor.description = 一般的なアイテム輸送ブロックです。アイテムを前方に移動し、自動的にターレットや機械などに搬入します。回転させることができます。
block.titanium-conveyor.description = 改良されたアイテム輸送ブロックです。通常のコンベアーよりも速くアイテムを輸送します。
block.phase-conveyor.description = 改良されたアイテム転送ブロックです。電力を使用して、離れた場所にあるフェーズコンベアーにアイテムを転送することができます。
block.junction.description = 十字に交差したコンベアーをそれぞれ前方に搬出します。コンベアーで複雑な構造を組み立てるときに便利です。
block.mass-driver.description = 長距離の輸送が可能なアイテム上位輸送ブロックです。離れた別のマスドライバーにアイテムを発射します。
block.smelter.description = 石炭を燃やして、銅と鉛から高密度合金を製錬します。
block.arc-smelter.description = 電力を使用して銅と鉛から高密度合金を製錬します。
block.silicon-smelter.description = 石炭と砂からシリコンを製造します。
block.plastanium-compressor.description = オイルとチタンからプラスチナニウムを製造します。
block.plastanium-compressor.description = オイルとチタンからプラスニウムを製造します。
block.phase-weaver.description = 放射性トリウムと多量の砂からフェーズファイバーを作り出します。
block.alloy-smelter.description = チタンや鉛、シリコン、銅からサージ合金を製造します。
block.pulverizer.description = 石を砕いて砂にします。自然の砂がないに便利です。
block.pyratite-mixer.description = 石炭、鉛、砂から燃えやすいピラタイトを作成します。
block.pulverizer.description = 石を砕いて砂にします。自然の砂がない場合に便利です。
block.pyratite-mixer.description = 石炭、鉛、砂から燃えやすいピラタイトを製造します。
block.blast-mixer.description = 可燃性のピラタイトを石油を使用してさらに爆発性化合物にします。
block.cryofluidmixer.description = 水とチタンから冷却に効率的な冷却水を生成します。
block.solidifer.description = 溶岩から急速に冷やして石を生成します。
block.melter.description = 石を高温にして溶岩を生成します。
block.cryofluidmixer.description = 水とチタンから冷却に効率的な冷却水を製造します。
block.solidifer.description = 溶岩急速に冷却し、石を生成します。
block.melter.description = 石を熱で溶かして溶岩を生成します。
block.incinerator.description = 不要なアイテムや液体を焼却します。
block.biomattercompressor.description = バイオメターを圧縮し、石油を回収します。
block.separator.description = 水圧をかけて、石に含まれる様々な鉱石を回収します。
block.centrifuge.description = 分離機よりも効率的ですが、建設費が高価で電力必要です。
block.power-node.description = 他のノードに接続して電気を送ります。最大で4つの電力源やノードなどに接続できます。隣接するブロックから電力を受け取ったり、電力の供給を行います。
block.power-node-large.description = 電源ノードよりも大きく、最大で6つの電力源やノードなどに接続できます。
block.battery.description = 電源ノード間で電力が余っていれば充電し、不足していれば供給します。
block.battery-large.description = 通常のバッテリーより多くの電力をめてくことができます
block.biomattercompressor.description = バイオメターを圧縮し、石油を回収します。
block.separator.description = 水圧で砕き、石に含まれる様々な鉱石を回収します。
block.centrifuge.description = 建設費が高価で電力必要ですが、分離機よりも効率的に回収できます
block.power-node.description = 電力ノード間で電力の送電を行います。最大で4つの電力源やノードなどに接続できます。隣接するブロックから電力の送電や供給を行います。
block.power-node-large.description = 巨大な電力ノードです。最大で6つの電力源やノードに接続できます。
block.battery.description = 余分な電力の充電して、貯めておくことができます。必要があれば、溜まった電力を供給します。
block.battery-large.description = 通常のバッテリーよりもたくさんの電力をめてくことができます
block.combustion-generator.description = 石油や可燃性の物質を燃やして発電します。
block.turbine-generator.description = 火力発電機より効率的ですが、水が必要です。
block.turbine-generator.description = 水を使って火力発電機より効率的に発電します。
block.thermal-generator.description = 溶岩から大量の電力を発電します。
block.solar-panel.description = 太陽光から少量の電力を発電します。
block.solar-panel-large.description = 通常のソーラーパネルより大量の電力を発電できますが、建設費が高価です。
block.thorium-reactor.description = 高放射性トリウムから大量の電力を発電します。これには一定の冷却が必要です。冷却が不十分な場合大きな爆発が発生します。
block.solar-panel-large.description = 建設費が高価ですが、通常のソーラーパネルより大量の電力を発電することができます。
block.thorium-reactor.description = 放射性を持ったトリウムから大量の電力を発電します。これには一定の冷却が必要です。冷却が不十分な場合大きな爆発が発生します。
block.rtg-generator.description = トリウムリアクターよりも発電量は少ないですが、冷却を必要としない放射性同位体熱発電機(RTG)です。
block.unloader.description = コンテナやボールト、コアからアイテムをコンベアーか隣接するブロックに搬出します。アンローダーをタップすると搬出するアイテムを変更することができます。
block.container.description = 各種類のアイテムを少量ずつ保管します。隣接するコンテナーやボール卜、コアは一つのストレージユニットとして扱われます。 [LIGHT_GRAY]アンローダー[]を使って、コンテナーからアイテムを搬出できます。
block.vault.description = 各種類のアイテムを大量に保管します。隣接するコンテナーやボール卜、コアは一つのストレージユニットとして扱われます。[LIGHT_GRAY]アンローダー[]を使って、ボールトからアイテムを搬出できます。
block.mechanical-drill.description = 安価なドリルです。採掘可能な鉱脈に設置すると、アイテムを採掘して搬出します。
block.pneumatic-drill.description = 速く採掘できるように改善されたドリルです。また、より硬い鉱石も採掘することができます。
block.laser-drill.description = 電力を使用して、レーザー技術でより速く採掘することができます。また、このドリルで放射性トリウムを回収することができます。
block.laser-drill.description = 電力を使用して、レーザー技術でより速く採掘することができます。また、放射性トリウムを回収することができます。
block.blast-drill.description = 高級ドリルです。大量の電力が必要です。
block.water-extractor.description = 地面から水を汲み上げます。近くに湖がない場合に便利です。
block.cultivator.description = 水で土壌を耕して、バイオメターを回収します。
@@ -748,7 +755,7 @@ block.tau-mech-pad.description = 今使っている機体から仲間の建物
block.delta-mech-pad.description = 今使っている機体から速く突撃攻撃に向いた軽装備の戦闘機に乗り換えます。\nパッドに乗って、パッドをダブルタップすることで使用できます。
block.omega-mech-pad.description = 今使っている機体から最前線での戦いに向けた重装備の大型機体に乗り換えます。\nパッドに乗って、パッドをダブルタップすることで使用できます。
block.spirit-factory.description = 鉱石の採掘やブロックの修復を行う軽いドローンを製造します。
block.phantom-factory.description = スピリットドローンより効率的な強化されたドローンユニットを製造します。
block.phantom-factory.description = スピリットドローンより効率的な上位ドローンユニットを製造します。
block.wraith-factory.description = 素速く、突撃攻撃が得意な戦闘ユニットを製造します。
block.ghoul-factory.description = 重爆撃機を製造します。
block.dagger-factory.description = 一般的な地上ユニットを製造します。
@@ -756,27 +763,27 @@ block.titan-factory.description = 強化され武装した地上ユニットを
block.fortress-factory.description = 地上砲撃ユニットを製造します。
block.revenant-factory.description = 航空レーザーユニットを製造します。
block.repair-point.description = 近くの負傷したユニットを修復します。
block.command-center.description = 仲間のAIの動作を変更できるようにします。現在は攻撃、撤退、警戒に対応しています。
block.command-center.description = 味方のAIの動作を変更できるようにします。現在は攻撃、撤退、巡回に対応しています。
block.conduit.description = 一般的な液体輸送ブロックです。液体版のコンベアーです。ポンプや他のパイプに使うことができます。
block.pulse-conduit.description = 強化された液体輸送ブロックです。通常のパイプより速く多くのアイテムを輸送することができます。
block.phase-conduit.description = 強化された液体転送ブロックです。電力を使用して、液体を他の離れたフューズコンベアーに転送することができます。
block.pulse-conduit.description = 改良された液体輸送ブロックです。通常のパイプより速く、たくさんのアイテムを輸送することができます。
block.phase-conduit.description = 改良された液体転送ブロックです。電力を使用して、液体を他の離れたフューズコンベアーに転送することができます。
block.liquid-router.description = 一つの方向から受け取った液体を他の3方向に搬出します。一定の量の液体を貯めておくこともできます。一つの資源から複数に分ける際に便利です。
block.liquid-tank.description = たくさんの量の水を保管できます。需要が安定しない素材の製造時や重要な施設の冷却水の予備として使えます。
block.liquid-junction.description = 交差している2つのコンベアーをブリッジします。2つの異なるパイプが異なる場所に異なる材料を運んでいるときに便利です。
block.bridge-conduit.description = 高度な液体輸送ブロックです。地形や建物を超えて、3ブロック離れた場所に輸送することができます。
block.mechanical-pump.description = 安価で性能の低いポンプです。電力が必要ありません
block.rotary-pump.description = 強化されたポンプです。電力を使用して2倍速く搬出ます。
block.liquid-tank.description = たくさんの量の水を貯めておくことができます。需要が安定な製造設備や重要な施設の冷却水の予備として使えます。
block.liquid-junction.description = 十字に交差したパイプをそれぞれ前方に搬出します。パイプで複雑な構造を組み立てるときに便利です。
block.bridge-conduit.description = 高度な液体輸送ブロックです。地形や建物を超えて、3ブロック離れた場所に液体を輸送することができます。
block.mechanical-pump.description = 安価なポンプです。性能はよくありませんが、電力なしで使うことができます
block.rotary-pump.description = 改良されたポンプです。電力を使用して2倍速く搬出することができます。
block.thermal-pump.description = 高級ポンプです。機械ポンプより3倍速く、唯一溶岩を採取できるポンプです。
block.router.description = 一つの方向から受け取ったアイテムを他の3方向に搬出します。一つの資源から複数に分ける際に便利です。
block.distributor.description = 高度なルーターです。アイテムを7方向に均等に分けて搬出します。
block.bridge-conveyor.description = 高度な輸送ブロックです。地形や建物を超えて、3ブロック離れた場所に輸送することができます。
block.alpha-mech-pad.description = 電力を使用して、機体を[accent]アルファ[]機体に作り直します。
block.bridge-conveyor.description = 高度な輸送ブロックです。地形や建物を超えて、3ブロック離れた場所にアイテムを輸送することができます。
block.alpha-mech-pad.description = 電力を使用して、機体を[accent]アルファ[]機体に作り替えます。
block.itemsource.description = アイテムを無限に搬出します。サンドボックスのみ。
block.liquidsource.description = 液体を無限に搬出します。サンドボックスのみ。
block.itemvoid.description = 電力なしでアイテムを廃棄します。サンドボックスのみ。
block.powerinfinite.description = 無限に電力を搬出します。サンドボックスのみ。
block.powervoid.description = 入力されたすべての電力を破棄します。サンドボックスのみ。
liquid.water.description = 機械の冷却や廃棄物の処理に一般的に使用されます。
liquid.water.description = 一般的に機械の冷却や廃棄物の処理などに使用されます。
liquid.lava.description = 冷却して石にしたり、発電や一部ターレットの弾薬として使用することができます。
liquid.oil.description = 燃焼させたり、爆発させたり、冷却水しても使ます。
liquid.oil.description = 燃焼させたり、爆発させたり、冷却水しても使われます。
liquid.cryofluid.description = 冷却させるのに最も効率的な液体です。

Before

Width:  |  Height:  |  Size: 196 B

After

Width:  |  Height:  |  Size: 196 B

+2 -6
View File
@@ -29,10 +29,6 @@ bool cont(vec2 T, vec2 v){
id(T + vec2(step, 0) * v, base) || id(T + vec2(-step, 0) * v, base));
}
float rand(vec2 co){
return fract(sin(dot(co.xy ,vec2(12.9898,78.233))) * 43758.5453);
}
void main() {
vec2 t = v_texCoord.xy;
@@ -51,11 +47,11 @@ void main() {
chance = 1.0-(u_progress-0.8)*5.0;
}
if((mod(u_time / 1.5 + value, 20.0) < 5.0 && cont(t, v)) && rand(coords) < chance){
if((mod(u_time / 1.5 + value, 20.0) < 5.0 && cont(t, v))){
gl_FragColor = u_color;
}else if(dst > (1.0-u_progress) * (center.x)){
gl_FragColor = color;
}else if((dst + 1.0 > (1.0-u_progress) * (center.x)) && color.a > 0.1 && rand(coords) < chance){
}else if((dst + 1.0 > (1.0-u_progress) * (center.x)) && color.a > 0.1){
gl_FragColor = u_color;
}else{
gl_FragColor = vec4(0.0);
+1 -8
View File
@@ -29,18 +29,11 @@ void main() {
vec4 c = texture2D(u_texture, v_texCoord.xy);
vec2 v = vec2(1.0/u_texsize.x, 1.0/u_texsize.y);
float step = 1.0;
bool outline = texture2D(u_texture, t).a < 0.1 &&
(id(texture2D(u_texture, t + vec2(0, step) * v)) || id(texture2D(u_texture, t + vec2(0, -step) * v)) ||
id(texture2D(u_texture, t + vec2(step, 0) * v)) || id(texture2D(u_texture, t + vec2(-step, 0) * v)));
if(1.0-abs(coords.x - 0.5)*2.0 < 1.0-u_progress){
c = vec4(0.0);
}
if(c.a > 0.01 || outline){
if(c.a > 0.01){
float f = abs(sin(coords.x*2.0 + u_time));
if(f > 0.9 )
f = 1.0;
+5 -5
View File
@@ -7,6 +7,7 @@ precision mediump int;
#define p2 vec3(234.0,182.0,120.0)/255.0
#define p3 vec3(212.0,129.0,107.0)/255.0
#define p4 vec3(142.0,77.0,72.0)/255.0
#define roundm 0.2
uniform sampler2D u_texture;
uniform vec2 u_resolution;
@@ -21,12 +22,11 @@ varying vec2 v_texCoord;
void main() {
ivec2 coords = ivec2((gl_FragCoord.xy - u_resolution/2.0)/u_scl);
int roundx = 8;
int roundy = roundx;
float roundm = 0.2;
//int roundx = 8;
//int roundy = roundx;
coords.x = (coords.x / roundx) * roundx;
coords.y = (coords.y / roundy) * roundy;
//coords.x = (coords.x / roundx) * roundx;
//coords.y = (coords.y / roundy) * roundy;
float d = (abs(float(coords.x)) - abs(float(coords.y)));
+22 -5
View File
@@ -3,12 +3,13 @@ precision mediump float;
precision mediump int;
#endif
#define SPACE 1.0
#define SPACE 2.0
uniform sampler2D u_texture;
uniform vec4 u_color;
uniform vec2 u_texsize;
uniform float u_scl;
varying vec4 v_color;
varying vec2 v_texCoord;
@@ -17,11 +18,27 @@ void main() {
vec2 v = vec2(1.0/u_texsize.x, 1.0/u_texsize.y);
vec4 c = texture2D(u_texture, v_texCoord.xy);
float spacing = SPACE * u_scl;
gl_FragColor = mix(c * v_color, u_color,
(1.0-step(0.1, texture2D(u_texture, v_texCoord.xy).a)) *
step(0.1, texture2D(u_texture, v_texCoord.xy + vec2(0, SPACE) * v).a +
texture2D(u_texture, v_texCoord.xy + vec2(0, -SPACE) * v).a +
texture2D(u_texture, v_texCoord.xy + vec2(SPACE, 0) * v).a +
texture2D(u_texture, v_texCoord.xy + vec2(-SPACE, 0) * v).a));
step(0.1,
//cardinals
texture2D(u_texture, v_texCoord.xy + vec2(0, spacing) * v).a +
texture2D(u_texture, v_texCoord.xy + vec2(0, -spacing) * v).a +
texture2D(u_texture, v_texCoord.xy + vec2(spacing, 0) * v).a +
texture2D(u_texture, v_texCoord.xy + vec2(-spacing, 0) * v).a +
//cardinal edges
texture2D(u_texture, v_texCoord.xy + vec2(spacing, spacing) * v).a +
texture2D(u_texture, v_texCoord.xy + vec2(spacing, -spacing) * v).a +
texture2D(u_texture, v_texCoord.xy + vec2(-spacing, spacing) * v).a +
texture2D(u_texture, v_texCoord.xy + vec2(-spacing, -spacing) * v).a +
//cardinals * 2
texture2D(u_texture, v_texCoord.xy + vec2(0, spacing) * v*2.0).a +
texture2D(u_texture, v_texCoord.xy + vec2(0, -spacing) * v*2.0).a +
texture2D(u_texture, v_texCoord.xy + vec2(spacing, 0) * v*2.0).a +
texture2D(u_texture, v_texCoord.xy + vec2(-spacing, 0) * v*2.0).a
));
}
File diff suppressed because it is too large Load Diff
Binary file not shown.

Before

Width:  |  Height:  |  Size: 103 KiB

After

Width:  |  Height:  |  Size: 327 KiB

+42 -20
View File
@@ -1,20 +1,26 @@
package io.anuke.mindustry;
import io.anuke.arc.ApplicationCore;
import io.anuke.arc.Core;
import io.anuke.arc.Events;
import io.anuke.arc.util.Log;
import io.anuke.arc.util.Time;
import io.anuke.mindustry.core.*;
import io.anuke.mindustry.game.EventType.GameLoadEvent;
import io.anuke.mindustry.io.BundleLoader;
import io.anuke.ucore.core.Events;
import io.anuke.ucore.core.Timers;
import io.anuke.ucore.modules.ModuleCore;
import io.anuke.ucore.util.Log;
import static io.anuke.mindustry.Vars.*;
public class Mindustry extends ModuleCore{
public class Mindustry extends ApplicationCore{
@Override
public void init(){
Timers.mark();
public void setup(){
Time.setDeltaProvider(() -> {
float result = Core.graphics.getDeltaTime() * 60f;
return Float.isNaN(result) || Float.isInfinite(result) ? 1f : Math.min(result, 60f / 10f);
});
Time.mark();
Vars.init();
@@ -22,26 +28,42 @@ public class Mindustry extends ModuleCore{
BundleLoader.load();
content.load();
module(logic = new Logic());
module(world = new World());
module(control = new Control());
module(renderer = new Renderer());
module(ui = new UI());
module(netServer = new NetServer());
module(netClient = new NetClient());
add(logic = new Logic());
add(world = new World());
add(control = new Control());
add(renderer = new Renderer());
add(ui = new UI());
add(netServer = new NetServer());
add(netClient = new NetClient());
}
@Override
public void postInit(){
Log.info("Time to load [total]: {0}", Timers.elapsed());
public void init(){
super.init();
Log.info("Time to load [total]: {0}", Time.elapsed());
Events.fire(new GameLoadEvent());
}
@Override
public void render(){
threads.handleBeginRender();
super.render();
threads.handleEndRender();
public void update(){
long lastFrameTime = Time.millis();
super.update();
int fpsCap = Core.settings.getInt("fpscap", 125);
if(fpsCap <= 120){
long target = 1000/fpsCap;
long elapsed = Time.timeSinceMillis(lastFrameTime);
if(elapsed < target){
try{
Thread.sleep(target - elapsed);
}catch(InterruptedException e){
e.printStackTrace();
}
}
}
}
}
+53 -45
View File
@@ -1,9 +1,13 @@
package io.anuke.mindustry;
import com.badlogic.gdx.Application.ApplicationType;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.files.FileHandle;
import com.badlogic.gdx.graphics.Color;
import io.anuke.arc.Application.ApplicationType;
import io.anuke.arc.Core;
import io.anuke.arc.entities.Entities;
import io.anuke.arc.entities.EntityGroup;
import io.anuke.arc.entities.impl.EffectEntity;
import io.anuke.arc.entities.trait.DrawTrait;
import io.anuke.arc.files.FileHandle;
import io.anuke.arc.graphics.Color;
import io.anuke.mindustry.core.*;
import io.anuke.mindustry.entities.Player;
import io.anuke.mindustry.entities.TileEntity;
@@ -17,42 +21,45 @@ import io.anuke.mindustry.game.Version;
import io.anuke.mindustry.gen.Serialization;
import io.anuke.mindustry.net.Net;
import io.anuke.mindustry.world.blocks.defense.ForceProjector.ShieldEntity;
import io.anuke.ucore.core.Settings;
import io.anuke.ucore.entities.Entities;
import io.anuke.ucore.entities.EntityGroup;
import io.anuke.ucore.entities.impl.EffectEntity;
import io.anuke.ucore.entities.trait.DrawTrait;
import io.anuke.ucore.scene.ui.layout.Unit;
import io.anuke.ucore.util.Translator;
import java.util.Arrays;
import java.util.Locale;
@SuppressWarnings("unchecked")
public class Vars{
/**main application name, capitalized*/
public static final String appName = "Mindustry";
/**URL for discord invite.*/
public static final String discordURL = "https://discord.gg/mindustry";
/**URL for Github API for releases*/
public static final String releasesURL = "https://api.github.com/repos/Anuken/Mindustry/releases";
/**URL for Github API for contributors*/
public static final String contributorsURL = "https://api.github.com/repos/Anuken/Mindustry/contributors";
/**URL for sending crash reports to*/
public static final String crashReportURL = "http://mindustry.us.to/report";
//time between waves in frames (on normal mode)
/**time between waves in ticks (on normal mode)*/
public static final float wavespace = 60 * 60 * 1.5f;
/**maximum distance between mine and core that supports automatic transferring*/
public static final float mineTransferRange = 220f;
//set ridiculously high for now
/**maximum distance from core that the player can be before it is no longer used for building*/
public static final float coreBuildRange = 999999f;
//team of the player by default
/**team of the player by default*/
public static final Team defaultTeam = Team.blue;
//team of the enemy in waves
/**team of the enemy in waves/sectors*/
public static final Team waveTeam = Team.red;
public static final float unlockResourceScaling = 1f;
/**max chat message length*/
public static final int maxTextLength = 150;
/**max player name length in bytes*/
public static final int maxNameLength = 40;
/**displayed item size when ingame, TODO remove.*/
public static final float itemSize = 5f;
/**size of tiles in units*/
public static final int tilesize = 8;
/**size of sectors in tiles*/
public static final int sectorSize = 256;
/**specific number indicating 'invalid' sector*/
public static final int invalidSector = Integer.MAX_VALUE;
public static Locale[] locales;
/**all choosable player colors in join/host dialog*/
public static final Color[] playerColors = {
Color.valueOf("82759a"),
Color.valueOf("c0c1c5"),
@@ -71,36 +78,38 @@ public class Vars{
Color.valueOf("4b5ef1"),
Color.valueOf("2cabfe"),
};
//server port
/**default server port*/
public static final int port = 6567;
/**if true, UI is not drawn*/
public static boolean disableUI;
/**if true, game is set up in mobile mode, even on desktop. used for debugging*/
public static boolean testMobile;
//shorthand for whether or not this is running on android or ios
/**whether the game is running on a mobile device*/
public static boolean mobile;
/**whether the game is running on an iOS device*/
public static boolean ios;
/**whether the game is running on an Android device*/
public static boolean android;
//main data directory
/**whether the game is running on a headless server*/
public static boolean headless;
/**application data directory, equivalent to {@link io.anuke.arc.Settings#getDataDirectory()}*/
public static FileHandle dataDirectory;
//subdirectory for screenshots
/**data subdirectory used for screenshots*/
public static FileHandle screenshotDirectory;
//directory for user-created map data
/**data subdirectory used for custom mmaps*/
public static FileHandle customMapDirectory;
//save file directory
/**data subdirectory used for saves*/
public static FileHandle saveDirectory;
public static String mapExtension = "mmap";
public static String saveExtension = "msav";
//camera zoom displayed on startup
public static int baseCameraScale;
public static boolean showBlockDebug = false;
public static boolean showFog = true;
public static boolean headless = false;
public static float controllerMin = 0.25f;
public static float baseControllerSpeed = 11f;
public static boolean snapCamera = true;
/**map file extension*/
public static final String mapExtension = "mmap";
/**save file extension*/
public static final String saveExtension = "msav";
/**list of all locales that can be switched to*/
public static Locale[] locales;
public static ContentLoader content;
public static GameState state;
public static ThreadHandler threads;
public static Control control;
public static Logic logic;
@@ -110,8 +119,6 @@ public class Vars{
public static NetServer netServer;
public static NetClient netClient;
public static Player[] players = {};
public static EntityGroup<Player> playerGroup;
public static EntityGroup<TileEntity> tileGroup;
public static EntityGroup<Bullet> bulletGroup;
@@ -122,13 +129,14 @@ public class Vars{
public static EntityGroup<Fire> fireGroup;
public static EntityGroup<BaseUnit>[] unitGroups;
public static final Translator[] tmptr = new Translator[]{new Translator(), new Translator(), new Translator(), new Translator()};
/**all local players, currently only has one player. may be used for local co-op in the future*/
public static Player[] players = {};
public static void init(){
Serialization.init();
//load locales
String[] stra = Gdx.files.internal("locales").readString().split("\n");
String[] stra = Core.files.internal("locales").readString().split("\n");
locales = new Locale[stra.length];
for(int i = 0; i < locales.length; i++){
String code = stra[i];
@@ -167,16 +175,16 @@ public class Vars{
}
state = new GameState();
threads = new ThreadHandler();
mobile = Gdx.app.getType() == ApplicationType.Android || Gdx.app.getType() == ApplicationType.iOS || testMobile;
ios = Gdx.app.getType() == ApplicationType.iOS;
android = Gdx.app.getType() == ApplicationType.Android;
mobile = Core.app.getType() == ApplicationType.Android || Core.app.getType() == ApplicationType.iOS || testMobile;
ios = Core.app.getType() == ApplicationType.iOS;
android = Core.app.getType() == ApplicationType.Android;
dataDirectory = Settings.getDataDirectory(appName);
Core.settings.setAppName(appName);
dataDirectory = Core.settings.getDataDirectory();
screenshotDirectory = dataDirectory.child("screenshots/");
customMapDirectory = dataDirectory.child("maps/");
saveDirectory = dataDirectory.child("saves/");
baseCameraScale = Math.round(Unit.dp.scl(4));
}
}

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