Public Repository for the Magicbane Emulator Project Called BattleBane

121 lines
2.7 KiB

package engine.gameManager;
import engine.objects.Guild;
public class ZergManager {
public static int getBaneCap(Guild guild){
if(guild.getOwnedCity().getTOL().getRank() == 8)
return 20;
if(guild.getNation().getSubGuildList().size() + 1 <= 4)
return 10;
return 20;
}
public static float getMultiplier3Man(int count){
float multiplier = 1.0f;
if(count <= 3)
return 1.0f;
if(count > 6)
return 0.0f;
switch(count){
case 4:
multiplier -= 0.37f;
break;
case 5:
multiplier -= 0.60f;
break;
case 6:
multiplier -= 0.75f;
break;
}
return multiplier;
}
public static float getMultiplier5Man(int count){
float multiplier = 1.0f;
if(count <= 5)
return 1.0f;
if(count > 10)
return 0.0f;
switch(count){
case 6:
multiplier -= 0.25f;
break;
case 7:
multiplier -= 0.43f;
break;
case 8:
multiplier -= 0.56f;
break;
case 9:
multiplier -= 0.67f;
break;
case 10:
multiplier -= 0.75f;
break;
}
return multiplier;
}
public static float getMultiplier10Man(int count){
float multiplier = 1.0f;
if(count <= 10)
return 1.0f;
if(count > 20)
return 0.0f;
switch(count){
case 11:
multiplier -= 0.14f;
break;
case 12:
multiplier -= 0.25f;
break;
case 13:
multiplier -= 0.35f;
break;
case 14:
multiplier -= 0.43f;
break;
case 15:
multiplier -= 0.50f;
break;
case 16:
multiplier -= 0.56f;
break;
case 17:
multiplier -= 0.62f;
break;
case 18:
multiplier -= 0.67f;
break;
case 19:
multiplier -= 0.71f;
break;
case 20:
multiplier -= 0.75f;
break;
}
return multiplier;
}
public static float getMultiplier20Man(int count){
return getMultiplier10Man(((int)(count * 0.5f)));
}
public static float getMultiplier40Man(int count){
return getMultiplier10Man(((int)(count * 0.25f)));
}
}