Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
### Adding a server to the list
|
### Adding a server to the list
|
||||||
|
|
||||||
Mindustry now has a public list of servers that everyone can see and connect to.
|
Mindustry now has a public list of servers that everyone can see and connect to.
|
||||||
This is done by letting clients `GET` a [JSON list of servers](https://github.com/Anuken/Mindustry/blob/master/servers.json) in this repository.
|
This is done by letting clients `GET` a [JSON list of servers](https://github.com/Anuken/Mindustry/blob/master/servers_v6.json) in this repository.
|
||||||
|
|
||||||
You may want to add your server to this list. The steps for getting this done are as follows:
|
You may want to add your server to this list. The steps for getting this done are as follows:
|
||||||
|
|
||||||
@@ -16,7 +16,7 @@ You'll need to either hire some moderators, or make use of (currently non-existe
|
|||||||
3. **Get some good maps.** *(optional, but highly recommended)*. Add some maps to your server and set the map rotation to custom-only. You can get maps from the Steam workshop by subscribing and exporting them; using the `#maps` channel on Discord is also an option.
|
3. **Get some good maps.** *(optional, but highly recommended)*. Add some maps to your server and set the map rotation to custom-only. You can get maps from the Steam workshop by subscribing and exporting them; using the `#maps` channel on Discord is also an option.
|
||||||
4. **Check your server configuration.** *(optional)* I would recommend adding a message rate limit of 1 second (`config messageRateLimit 1`), and disabling connect/disconnect messages to reduce spam (`config showConnectMessages false`).
|
4. **Check your server configuration.** *(optional)* I would recommend adding a message rate limit of 1 second (`config messageRateLimit 1`), and disabling connect/disconnect messages to reduce spam (`config showConnectMessages false`).
|
||||||
5. Finally, **submit a pull request** to add your server's IP to the list.
|
5. Finally, **submit a pull request** to add your server's IP to the list.
|
||||||
This should be fairly straightforward: Press the edit button on the [server file](https://github.com/Anuken/Mindustry/blob/master/servers.json), then add a JSON object with a single key, indicating your server address.
|
This should be fairly straightforward: Press the edit button on the [server file](https://github.com/Anuken/Mindustry/blob/master/servers_v6.json), then add a JSON object with a single key, indicating your server address.
|
||||||
For example, if your server address is `google.com`, you would add a comma after the last entry and insert:
|
For example, if your server address is `google.com`, you would add a comma after the last entry and insert:
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ link.google-play.description = Google Play 스토어 목록
|
|||||||
link.f-droid.description = F-Droid 카탈로그 목록
|
link.f-droid.description = F-Droid 카탈로그 목록
|
||||||
link.wiki.description = 공식 Mindustry 위키
|
link.wiki.description = 공식 Mindustry 위키
|
||||||
link.suggestions.description = 새 기능 제안하기
|
link.suggestions.description = 새 기능 제안하기
|
||||||
|
link.bug.description = 버그 제보하기
|
||||||
linkfail = 링크를 열지 못했습니다!\nURL이 클립보드에 복사되었습니다.
|
linkfail = 링크를 열지 못했습니다!\nURL이 클립보드에 복사되었습니다.
|
||||||
screenshot = 스크린 캡처가 {0} 에 저장되었습니다.
|
screenshot = 스크린 캡처가 {0} 에 저장되었습니다.
|
||||||
screenshot.invalid = 맵이 너무 커서 스크린 캡처에 사용될 메모리가 부족합니다.
|
screenshot.invalid = 맵이 너무 커서 스크린 캡처에 사용될 메모리가 부족합니다.
|
||||||
@@ -299,7 +300,7 @@ cancelbuilding = [accent][[{0}][] 를 눌러 건설 계획을 초기화
|
|||||||
selectschematic = [accent][[{0}][] 를 눌러 선택+복사
|
selectschematic = [accent][[{0}][] 를 눌러 선택+복사
|
||||||
pausebuilding = [accent][[{0}][] 를 눌러 건설을 일시중지
|
pausebuilding = [accent][[{0}][] 를 눌러 건설을 일시중지
|
||||||
resumebuilding = [scarlet][[{0}][] 를 눌러 건설을 재개
|
resumebuilding = [scarlet][[{0}][] 를 눌러 건설을 재개
|
||||||
showui = UI를 .\n[accent][[{0}][] 키를 눌러 UI를 활성화
|
showui = [accent][[{0}][] 키를 눌러 UI를 활성화
|
||||||
wave = [accent]{0} 단계
|
wave = [accent]{0} 단계
|
||||||
wave.cap = [accent]단계 {0}/{1}
|
wave.cap = [accent]단계 {0}/{1}
|
||||||
wave.waiting = 다음 단계까지[lightgray] {0}초
|
wave.waiting = 다음 단계까지[lightgray] {0}초
|
||||||
@@ -832,6 +833,7 @@ setting.chatopacity.name = 채팅창 투명도
|
|||||||
setting.lasersopacity.name = 전선 투명도
|
setting.lasersopacity.name = 전선 투명도
|
||||||
setting.bridgeopacity.name = 터널 투명도
|
setting.bridgeopacity.name = 터널 투명도
|
||||||
setting.playerchat.name = 채팅 말풍선 표시
|
setting.playerchat.name = 채팅 말풍선 표시
|
||||||
|
setting.showweather.name = 날씨 그래픽 표시
|
||||||
public.confirm = 게임을 모두에게 공개하시겠습니까?\n[accent]모든 플레이어가 게임에 참여할 수 있습니다.\n[lightgray]설정->게임->멀티플레이 공용 서버로 표시에서 나중에 변경할 수 있습니다.\n\n[sky]번역자 추가[]\n[accent]친구끼리 하려고 이 기능을 활성화 한 뒤에, 친구 외에 다른 플레이어가 들어왔을 때\n해당 플레이어를 차단하는 행위는 비매너를 넘어서는 얌체 행위 그 자체입니다.\n정말로 [scarlet]많은 다른 플레이어들이 오길 원한다[]면 확인하세요.
|
public.confirm = 게임을 모두에게 공개하시겠습니까?\n[accent]모든 플레이어가 게임에 참여할 수 있습니다.\n[lightgray]설정->게임->멀티플레이 공용 서버로 표시에서 나중에 변경할 수 있습니다.\n\n[sky]번역자 추가[]\n[accent]친구끼리 하려고 이 기능을 활성화 한 뒤에, 친구 외에 다른 플레이어가 들어왔을 때\n해당 플레이어를 차단하는 행위는 비매너를 넘어서는 얌체 행위 그 자체입니다.\n정말로 [scarlet]많은 다른 플레이어들이 오길 원한다[]면 확인하세요.
|
||||||
public.beta = 베타 버전의 게임은 공개 서버를 만들 수 없습니다.
|
public.beta = 베타 버전의 게임은 공개 서버를 만들 수 없습니다.
|
||||||
uiscale.reset = UI 스케일이 변경되었습니다.\n"확인"버튼을 눌러 저장하세요.\n[accent] {0}[][scarlet]초 후에 예전 설정으로 되돌리고 게임을 종료합니다...
|
uiscale.reset = UI 스케일이 변경되었습니다.\n"확인"버튼을 눌러 저장하세요.\n[accent] {0}[][scarlet]초 후에 예전 설정으로 되돌리고 게임을 종료합니다...
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ link.google-play.description = Strona w sklepie Google Play
|
|||||||
link.f-droid.description = Wykaz Katalogu F-Droid
|
link.f-droid.description = Wykaz Katalogu F-Droid
|
||||||
link.wiki.description = Oficjana Wiki Mindustry
|
link.wiki.description = Oficjana Wiki Mindustry
|
||||||
link.suggestions.description = Zaproponuj nowe funkcje
|
link.suggestions.description = Zaproponuj nowe funkcje
|
||||||
|
link.bug.description = Znalazłeś błąd? Zgłoś go tutaj
|
||||||
linkfail = Nie udało się otworzyć linku!\nURL został skopiowany.
|
linkfail = Nie udało się otworzyć linku!\nURL został skopiowany.
|
||||||
screenshot = Zapisano zrzut ekranu w {0}
|
screenshot = Zapisano zrzut ekranu w {0}
|
||||||
screenshot.invalid = Zrzut ekranu jest zbyt duży. Najprawdopodobniej brakuje miejsca w pamięci urządzenia.
|
screenshot.invalid = Zrzut ekranu jest zbyt duży. Najprawdopodobniej brakuje miejsca w pamięci urządzenia.
|
||||||
@@ -511,7 +512,7 @@ resources = Zasoby
|
|||||||
bannedblocks = Zabronione bloki
|
bannedblocks = Zabronione bloki
|
||||||
addall = Dodaj wszystkie
|
addall = Dodaj wszystkie
|
||||||
launch.from = Wstrzelony Z: [accent]{0}
|
launch.from = Wstrzelony Z: [accent]{0}
|
||||||
launch.destination = Cell: {0}
|
launch.destination = Cel: {0}
|
||||||
configure.invalid = Ilość musi być liczbą pomiędzy 0 a {0}.
|
configure.invalid = Ilość musi być liczbą pomiędzy 0 a {0}.
|
||||||
add = Dodaj...
|
add = Dodaj...
|
||||||
boss.health = Zdrowie Strażnika
|
boss.health = Zdrowie Strażnika
|
||||||
@@ -832,6 +833,7 @@ setting.chatopacity.name = Przezroczystość czatu
|
|||||||
setting.lasersopacity.name = Przezroczystość laserów zasilających
|
setting.lasersopacity.name = Przezroczystość laserów zasilających
|
||||||
setting.bridgeopacity.name = Przezroczystość mostów
|
setting.bridgeopacity.name = Przezroczystość mostów
|
||||||
setting.playerchat.name = Wyświetlaj czat w grze
|
setting.playerchat.name = Wyświetlaj czat w grze
|
||||||
|
setting.showweather.name = Pokaż pogodę
|
||||||
public.confirm = Czy chcesz ustawić swoją grę jako publiczną?\n[accent]Każdy będzie mógł dołączyć do Twojej gry.\n[lightgray]Można to później zmienić w Ustawienia->Gra->Widoczność Gry Publicznej.
|
public.confirm = Czy chcesz ustawić swoją grę jako publiczną?\n[accent]Każdy będzie mógł dołączyć do Twojej gry.\n[lightgray]Można to później zmienić w Ustawienia->Gra->Widoczność Gry Publicznej.
|
||||||
public.beta = Wersje beta gry nie mogą tworzyć publicznych pokoi.
|
public.beta = Wersje beta gry nie mogą tworzyć publicznych pokoi.
|
||||||
uiscale.reset = Skala interfejsu uległa zmianie.\nNaciśnij "OK" by potwierdzić zmiany.\n[scarlet]Cofanie zmian i wyjście z gry za[accent] {0}[]
|
uiscale.reset = Skala interfejsu uległa zmianie.\nNaciśnij "OK" by potwierdzić zmiany.\n[scarlet]Cofanie zmian i wyjście z gry za[accent] {0}[]
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ link.google-play.description = Google Play
|
|||||||
link.f-droid.description = Catalogul F-Droid
|
link.f-droid.description = Catalogul F-Droid
|
||||||
link.wiki.description = Wikiul oficial al Mindustry
|
link.wiki.description = Wikiul oficial al Mindustry
|
||||||
link.suggestions.description = Sugerează noi funcții
|
link.suggestions.description = Sugerează noi funcții
|
||||||
|
link.bug.description = Ai găsit vreunul? Raportează-l aici
|
||||||
linkfail = Linkul nu a putut fi deschis!\nAdresa URL a fost copiată.
|
linkfail = Linkul nu a putut fi deschis!\nAdresa URL a fost copiată.
|
||||||
screenshot = Captură de ecran salvată la {0}
|
screenshot = Captură de ecran salvată la {0}
|
||||||
screenshot.invalid = Harta e prea mare. Se poate să nu existe suficientă memorie pentru captura de ecran.
|
screenshot.invalid = Harta e prea mare. Se poate să nu existe suficientă memorie pentru captura de ecran.
|
||||||
@@ -832,6 +833,7 @@ setting.chatopacity.name = Opacitate Chat
|
|||||||
setting.lasersopacity.name = Opacitate Laser Electric
|
setting.lasersopacity.name = Opacitate Laser Electric
|
||||||
setting.bridgeopacity.name = Opacitate Poduri
|
setting.bridgeopacity.name = Opacitate Poduri
|
||||||
setting.playerchat.name = Vezi Chat Temporar
|
setting.playerchat.name = Vezi Chat Temporar
|
||||||
|
setting.showweather.name = Vezi Vremea
|
||||||
public.confirm = Vrei să îți faci jocul public?\n[accent]Oricine va putea intra în jocurile tale.\n[lightgray]Asta se poate schimba mai târziu în Setări->Joc->Vizibilitatea Jocurilor Publice.
|
public.confirm = Vrei să îți faci jocul public?\n[accent]Oricine va putea intra în jocurile tale.\n[lightgray]Asta se poate schimba mai târziu în Setări->Joc->Vizibilitatea Jocurilor Publice.
|
||||||
public.beta = De reținut că versiunile beta ale jocului nu poate face servere publice.
|
public.beta = De reținut că versiunile beta ale jocului nu poate face servere publice.
|
||||||
uiscale.reset = Scara interfeței a fost schimbată.\nApasă "OK" pt a confirma această scară.\n[scarlet]Revin setările și se iese în [accent] {0}[] secunde...
|
uiscale.reset = Scara interfeței a fost schimbată.\nApasă "OK" pt a confirma această scară.\n[scarlet]Revin setările și se iese în [accent] {0}[] secunde...
|
||||||
|
|||||||
@@ -165,6 +165,7 @@ const SectorInvasionEvent = Packages.mindustry.game.EventType.SectorInvasionEven
|
|||||||
const SectorLoseEvent = Packages.mindustry.game.EventType.SectorLoseEvent
|
const SectorLoseEvent = Packages.mindustry.game.EventType.SectorLoseEvent
|
||||||
const WorldLoadEvent = Packages.mindustry.game.EventType.WorldLoadEvent
|
const WorldLoadEvent = Packages.mindustry.game.EventType.WorldLoadEvent
|
||||||
const ClientLoadEvent = Packages.mindustry.game.EventType.ClientLoadEvent
|
const ClientLoadEvent = Packages.mindustry.game.EventType.ClientLoadEvent
|
||||||
|
const ContentInitEvent = Packages.mindustry.game.EventType.ContentInitEvent
|
||||||
const BlockInfoEvent = Packages.mindustry.game.EventType.BlockInfoEvent
|
const BlockInfoEvent = Packages.mindustry.game.EventType.BlockInfoEvent
|
||||||
const CoreItemDeliverEvent = Packages.mindustry.game.EventType.CoreItemDeliverEvent
|
const CoreItemDeliverEvent = Packages.mindustry.game.EventType.CoreItemDeliverEvent
|
||||||
const TurretAmmoDeliverEvent = Packages.mindustry.game.EventType.TurretAmmoDeliverEvent
|
const TurretAmmoDeliverEvent = Packages.mindustry.game.EventType.TurretAmmoDeliverEvent
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package mindustry.core;
|
package mindustry.core;
|
||||||
|
|
||||||
|
import arc.*;
|
||||||
import arc.files.*;
|
import arc.files.*;
|
||||||
import arc.func.*;
|
import arc.func.*;
|
||||||
import arc.graphics.*;
|
import arc.graphics.*;
|
||||||
@@ -7,8 +8,10 @@ import arc.struct.*;
|
|||||||
import arc.util.*;
|
import arc.util.*;
|
||||||
import mindustry.content.*;
|
import mindustry.content.*;
|
||||||
import mindustry.ctype.*;
|
import mindustry.ctype.*;
|
||||||
|
import mindustry.game.EventType.*;
|
||||||
import mindustry.entities.bullet.*;
|
import mindustry.entities.bullet.*;
|
||||||
import mindustry.mod.Mods.*;
|
import mindustry.mod.Mods.*;
|
||||||
|
import mindustry.net.*;
|
||||||
import mindustry.type.*;
|
import mindustry.type.*;
|
||||||
import mindustry.world.*;
|
import mindustry.world.*;
|
||||||
|
|
||||||
@@ -97,6 +100,7 @@ public class ContentLoader{
|
|||||||
public void init(){
|
public void init(){
|
||||||
initialize(Content::init);
|
initialize(Content::init);
|
||||||
if(constants != null) constants.init();
|
if(constants != null) constants.init();
|
||||||
|
Events.fire(new ContentInitEvent());
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Calls Content#load() on everything. Use only after all modules have been created on the client.*/
|
/** Calls Content#load() on everything. Use only after all modules have been created on the client.*/
|
||||||
|
|||||||
@@ -424,7 +424,7 @@ public class Control implements ApplicationListener, Loadable{
|
|||||||
net.dispose();
|
net.dispose();
|
||||||
Musics.dispose();
|
Musics.dispose();
|
||||||
Sounds.dispose();
|
Sounds.dispose();
|
||||||
ui.editor.dispose();
|
if(ui != null && ui.editor != null) ui.editor.dispose();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -284,7 +284,7 @@ public class NetServer implements ApplicationListener{
|
|||||||
}
|
}
|
||||||
|
|
||||||
StringBuilder result = new StringBuilder();
|
StringBuilder result = new StringBuilder();
|
||||||
result.append(Strings.format("[orange]-- Commands Page[lightgray] @[gray]/[lightgray]@[orange] --\n\n", (page+1), pages));
|
result.append(Strings.format("[orange]-- Commands Page[lightgray] @[gray]/[lightgray]@[orange] --\n\n", (page + 1), pages));
|
||||||
|
|
||||||
for(int i = commandsPerPage * page; i < Math.min(commandsPerPage * (page + 1), clientCommands.getCommandList().size); i++){
|
for(int i = commandsPerPage * page; i < Math.min(commandsPerPage * (page + 1), clientCommands.getCommandList().size); i++){
|
||||||
Command command = clientCommands.getCommandList().get(i);
|
Command command = clientCommands.getCommandList().get(i);
|
||||||
@@ -347,8 +347,8 @@ public class NetServer implements ApplicationListener{
|
|||||||
|
|
||||||
boolean checkPass(){
|
boolean checkPass(){
|
||||||
if(votes >= votesRequired()){
|
if(votes >= votesRequired()){
|
||||||
Call.sendMessage(Strings.format("[orange]Vote passed.[scarlet] @[orange] will be banned from the server for @ minutes.", target.name, (kickDuration/60)));
|
Call.sendMessage(Strings.format("[orange]Vote passed.[scarlet] @[orange] will be banned from the server for @ minutes.", target.name, (kickDuration / 60)));
|
||||||
target.getInfo().lastKicked = Time.millis() + kickDuration*1000;
|
target.getInfo().lastKicked = Time.millis() + kickDuration * 1000;
|
||||||
Groups.player.each(p -> p.uuid().equals(target.uuid()), p -> p.kick(KickReason.vote));
|
Groups.player.each(p -> p.uuid().equals(target.uuid()), p -> p.kick(KickReason.vote));
|
||||||
map[0] = null;
|
map[0] = null;
|
||||||
task.cancel();
|
task.cancel();
|
||||||
|
|||||||
@@ -111,7 +111,10 @@ public class Renderer implements ApplicationListener{
|
|||||||
minimap.dispose();
|
minimap.dispose();
|
||||||
effectBuffer.dispose();
|
effectBuffer.dispose();
|
||||||
blocks.dispose();
|
blocks.dispose();
|
||||||
planets.dispose();
|
if(planets != null){
|
||||||
|
planets.dispose();
|
||||||
|
planets = null;
|
||||||
|
}
|
||||||
if(bloom != null){
|
if(bloom != null){
|
||||||
bloom.dispose();
|
bloom.dispose();
|
||||||
bloom = null;
|
bloom = null;
|
||||||
|
|||||||
@@ -64,6 +64,8 @@ public class EventType{
|
|||||||
public static class CoreItemDeliverEvent{}
|
public static class CoreItemDeliverEvent{}
|
||||||
/** Called when the player opens info for a specific block.*/
|
/** Called when the player opens info for a specific block.*/
|
||||||
public static class BlockInfoEvent{}
|
public static class BlockInfoEvent{}
|
||||||
|
/** Called *after* all content has been initialized. */
|
||||||
|
public static class ContentInitEvent{}
|
||||||
/** Called when the client game is first loaded. */
|
/** Called when the client game is first loaded. */
|
||||||
public static class ClientLoadEvent{}
|
public static class ClientLoadEvent{}
|
||||||
/** Called when a game begins and the world is loaded. */
|
/** Called when a game begins and the world is loaded. */
|
||||||
|
|||||||
@@ -54,5 +54,9 @@
|
|||||||
{
|
{
|
||||||
"name": "MindustryBR",
|
"name": "MindustryBR",
|
||||||
"address": ["mindustryptbr.ddns.net", "mindustryptbr.ddns.net:4444", "mindustryptbr.myddns.me:6666", "mindustryptbr.myddns.me:5555"]
|
"address": ["mindustryptbr.ddns.net", "mindustryptbr.ddns.net:4444", "mindustryptbr.myddns.me:6666", "mindustryptbr.myddns.me:5555"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ALEX",
|
||||||
|
"address": ["alexmindustry.ddns.net:6568", "alexmindustry.ddns.net:6569"]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
Reference in New Issue
Block a user