我为一个问题感到尴尬:
此代码有问题(完整代码超过500:
public static int requiredPointByBreed(int breedId, int statsId, int value) {
switch(statsId) {
case 11 ://Vitality
return 1; //Cost 1 point for all breed
case 12 ://Wisdom
return 3; //Cost 3 point for all breed
case 10 ://Strength
switch(breedId) {
case 11 :
return 3;
case 1 :
if(value < 50)
return 2;
if(value < 150)
return 3;
if(value < 250)
return 4;
return 5;
case 5 :
if(value < 50)
return 2;
if(value < 150)
return 3;
if(value < 250)
return 4;
return 5;
case 4 :
if(value < 100)
return 1;
if(value < 200)
return 2;
if(value < 300)
return 3;
if(value < 400)
return 4;
return 5;
case 2 :
if(value < 50)
return 2;
if(value < 150)
return 3;
if(value < 250)
return 4;
return 5;
case 7 :
if(value < 50)
return 2;
if(value < 150)
return 3;
if(value < 250)
return 4;
return 5;
case 12 :
if(value < 50)
return 1;
if(value < 200)
return 2;
return 3;
case 10 :
if(value < 50)
return 1;
if(value < 250)
return 2;
if(value < 300)
return 3;
if(value < 400)
return 4;
return 5;
case 9 :
if(value < 50)
return 1;
if(value < 150)
return 2;
if(value < 250)
return 3;
if(value < 350)
return 4;
return 5;
case 3 :
if(value < 50)
return 1;
if(value < 150)
return 2;
if(value < 250)
return 3;
if(value < 350)
return 4;
return 5;
case 6 :
if(value < 100)
return 1;
if(value < 200)
return 2;
if(value < 300)
return 3;
if(value < 400)
return 4;
return 5;
case 8 :
if(value < 100)
return 1;
if(value < 200)
return 2;
if(value < 300)
return 3;
if(value < 400)
return 4;
return 5;
}
break;
}
return 5;
}
我正在与一个可以添加特征(生命力,力量,敏捷性等)的玩家一起编写游戏,但是这些特征具有这样的底限:
强度:
值=基本特征
如果值<50的成本2或值<150的成本3点等,则为品种ID 1。
但是我在数据库中创建了一个表,该表管理所有品种和类型(生命力,强度等)的成本点,但是idk如何在我的代码中实现
品种1的强度: 0,50:1-2 | 51,150:1-3 | 151,250:1-4 | 251:1-5
0,50是值
1-2是成本点
对不起,我的英语不好,但我希望你能理解我!
感谢您将来的回答!