我正在为一款名为Minecraft的游戏制作一个modded客户端。我的数组列表将显示屏幕左上角的mod。如何更改每个mod的颜色?防爆。 KillAura将为绿色,而ChestFinder将为红色。感谢
//Arraylist GUI
if(Camb.killaura){
if(!arraygui.contains("KillAura")){
arraygui.add("KillAura");
}
}else{
if(arraygui.contains("KillAura")){
arraygui.remove(arraygui.indexOf("KillAura"));
}
}
if(Camb.chestfinder){
if(!arraygui.contains("ChestFinder")){
arraygui.add("ChestFinder");
}
}else{
if(arraygui.contains("ChestFinder")){
arraygui.remove(arraygui.indexOf("ChestFinder"));
}
}
if(Camb.fullbright){
if(!arraygui.contains("FullBright")){
arraygui.add("FullBright");
}
}else{
if(arraygui.contains("FullBright")){
arraygui.remove(arraygui.indexOf("FullBright"));
}
}
if(Camb.tracers){
if(!arraygui.contains("Tracers")){
arraygui.add("Tracers");
}
}else{
if(arraygui.contains("Tracers")){
arraygui.remove(arraygui.indexOf("Tracers"));
}
}
if(Camb.autowalk){
if(!arraygui.contains("AutoWalk")){
arraygui.add("AutoWalk");
}
}else{
if(arraygui.contains("AutoWalk")){
arraygui.remove(arraygui.indexOf("AutoWalk"));
}
}
if(Camb.noweather){
if(!arraygui.contains("NoWeather")){
arraygui.add("NoWeather");
}
}else{
if(arraygui.contains("NoWeather")){
arraygui.remove(arraygui.indexOf("NoWeather"));
}
}
if(Camb.sneak){
if(!arraygui.contains("Sneak")){
arraygui.add("Sneak");
}
}else{
if(arraygui.contains("Sneak")){
arraygui.remove(arraygui.indexOf("Sneak"));
}
}
if(Camb.nocheat){
if(!arraygui.contains("NoCheat")){
arraygui.add("NoCheat");
}
}else{
if(arraygui.contains("NoCheat")){
arraygui.remove(arraygui.indexOf("NoCheat"));
}
}
if(Camb.nofall){
if(!arraygui.contains("NoFall")){
arraygui.add("NoFall");
}
}else{
if(arraygui.contains("NoFall")){
arraygui.remove(arraygui.indexOf("NoFall"));
}
}
if(Camb.xray){
if(!arraygui.contains("X-Ray")){
arraygui.add("X-Ray");
}
}else{
if(arraygui.contains("X-Ray")){
arraygui.remove(arraygui.indexOf("X-Ray"));
}
}
if(Camb.speedmine){
if(!arraygui.contains("Speedy Gonzales")){
arraygui.add("Speedy Gonzales");
}
}else{
if(arraygui.contains("Speedy Gonzales")){
arraygui.remove(arraygui.indexOf("Speedy Gonzales"));
}
}
if(Camb.criticals){
if(!arraygui.contains("Criticals")){
arraygui.add("Criticals");
}
}else{
if(arraygui.contains("Criticals")){
arraygui.remove(arraygui.indexOf("Criticals"));
}
}
if(Camb.flight){
if(!arraygui.contains("Flight")){
arraygui.add("Flight");
}
}else{
if(arraygui.contains("Flight")){
arraygui.remove(arraygui.indexOf("Flight"));
}
}
if(Camb.wallhack){
if(!arraygui.contains("WallHack")){
arraygui.add("WallHack");
}
}else{
if(arraygui.contains("WallHack")){
arraygui.remove(arraygui.indexOf("WallHack"));
}
}
int gh = 17;
for(int guiInt = 0; guiInt < arraygui.size(); guiInt++){
var8.drawString("" + arraygui.get(guiInt), 5, gh, 0xFF0000);
答案 0 :(得分:1)
如果您编辑代码如下:
for(int guiInt = 0; guiInt < arraygui.size(); guiInt++){
String curmod = arraygui.get(guiInt);
var8.setColor(this.getModColor(curmod));
var8.drawString(curmod, 5, gh, 0xFF0000);
// rest of your logic
}
/** This method gets your color for the specified mod
*
*/
private Color getModColor(String mod)
{
switch (mod)
{
case "KillAura":
return Color.green;
case "ChestFinder":
return Color.red;
}
throw new Exception("This mod has no specified color");
}
它应该为每个句子设置方法getModColor(String mod)
中指定的颜色。