84 lines
4.1 KiB
Java
84 lines
4.1 KiB
Java
package mindustry.ui;
|
|
|
|
import arc.*;
|
|
import arc.graphics.*;
|
|
import arc.scene.style.*;
|
|
import arc.util.*;
|
|
import mindustry.*;
|
|
import mindustry.core.*;
|
|
import mindustry.gen.*;
|
|
import mindustry.graphics.*;
|
|
import mindustry.mod.Mods.*;
|
|
|
|
public class Links{
|
|
private static LinkEntry[] links;
|
|
|
|
private static void createLinks(){
|
|
links = new LinkEntry[]{
|
|
new LinkEntry("discord", "https://discord.gg/mindustry", Icon.discord, Color.valueOf("7289da")),
|
|
new LinkEntry("changelog", "https://github.com/Anuken/Mindustry/releases", Icon.list, Pal.accent.cpy()),
|
|
new LinkEntry("trello", "https://trello.com/b/aE2tcUwF", Icon.trello, Color.valueOf("026aa7")),
|
|
new LinkEntry("wiki", "https://mindustrygame.github.io/wiki/", Icon.book, Color.valueOf("0f142f")),
|
|
new LinkEntry("suggestions", "https://github.com/Anuken/Mindustry-Suggestions/issues/new/choose/", Icon.add, Color.valueOf("ebebeb")),
|
|
new LinkEntry("reddit", "https://www.reddit.com/r/Mindustry/", Icon.redditAlien, Color.valueOf("ee593b")),
|
|
new LinkEntry("itch.io", "https://anuke.itch.io/mindustry", Icon.itchio, Color.valueOf("fa5c5c")),
|
|
new LinkEntry("google-play", "https://play.google.com/store/apps/details?id=io.anuke.mindustry", Icon.googleplay, Color.valueOf("689f38")),
|
|
new LinkEntry("f-droid", "https://f-droid.org/packages/io.anuke.mindustry/", Icon.android, Color.valueOf("026aa7")),
|
|
new LinkEntry("github", "https://github.com/Anuken/Mindustry/", Icon.github, Color.valueOf("24292e")),
|
|
new LinkEntry("dev-builds", "https://github.com/Anuken/MindustryBuilds", Icon.githubSquare, Color.valueOf("fafbfc")),
|
|
new LinkEntry("bug", report(), Icon.wrench, Color.valueOf("cbd97f"))
|
|
};
|
|
}
|
|
|
|
public static LinkEntry[] getLinks(){
|
|
if(links == null){
|
|
createLinks();
|
|
}
|
|
|
|
return links;
|
|
}
|
|
|
|
public static class LinkEntry{
|
|
public final String name, title, description, link;
|
|
public final Color color;
|
|
public final Drawable icon;
|
|
|
|
public LinkEntry(String name, String link, Drawable icon, Color color){
|
|
this.name = name;
|
|
this.color = color;
|
|
this.description = Core.bundle.get("link." + name + ".description", "");
|
|
this.link = link;
|
|
this.icon = icon;
|
|
this.title = Core.bundle.get("link." + name + ".title", Strings.capitalize(name.replace("-", " ")));
|
|
}
|
|
}
|
|
|
|
private static String report(){
|
|
return "https://github.com/Anuken/Mindustry/issues/new?assignees=&labels=bug&body=" +
|
|
Strings.encode(Strings.format(
|
|
"""
|
|
**Platform**: `@`
|
|
|
|
**Build**: `@`
|
|
|
|
**Issue**: *Explain your issue in detail.*
|
|
|
|
**Steps to reproduce**: *How you happened across the issue, and what exactly you did to make the bug happen.*
|
|
|
|
**Link(s) to mod(s) used**: `@`
|
|
|
|
**Save file**: *The (zipped) save file you were playing on when the bug happened. THIS IS REQUIRED FOR ANY ISSUE HAPPENING IN-GAME, REGARDLESS OF WHETHER YOU THINK IT HAPPENS EVERYWHERE. DO NOT DELETE OR OMIT THIS LINE UNLESS YOU ARE SURE THAT THE ISSUE DOES NOT HAPPEN IN-GAME.*
|
|
|
|
**Crash report**: *The contents of relevant crash report files. REQUIRED if you are reporting a crash.*
|
|
|
|
---
|
|
|
|
*Place an X (no spaces) between the brackets to confirm that you have read the line below.*
|
|
- [ ] **I have updated to the latest release (https://github.com/Anuken/Mindustry/releases) to make sure my issue has not been fixed.**
|
|
- [ ] **I have searched the closed and open issues to make sure that this problem has not already been reported.**
|
|
""",
|
|
OS.isAndroid ? "Android " + Core.app.getVersion() : (OS.osName + " x" + OS.osArchBits),
|
|
Version.combined(),
|
|
Vars.mods.list().any() ? Vars.mods.list().select(LoadedMod::enabled).map(l -> l.meta.author + "/" + l.name + ":" + l.meta.version) : "none"));
|
|
}
|
|
} |