作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为自己编写一个程序,用于学习java。这是某种实验。它有玩家、 Action 、怪物、元素、游戏玩法等类。在我的类播放器中,我添加了一个构造函数,我将其称为 lvlUp,并带有参数 exp。我的问题是,当我想在玩家达到 100 exp、200 exp、300 exp 等时增加他的 lvl 时,我必须写什么。当他有 100 exp 时,他会升一级,当他有 200 exp 时,他会升一级。 ,他获得 2 级提升,等等。顺便说一句,exp是随机的,所以我也想打印出剩余的exp。例如,他杀死一个怪物并获得 245 exp,这应该是 2 lvl ups 和 45 exp。这是我的 atm 代码:
public int lvlUp(int exp) {
if (exp < 100) {
System.out.println("LvL: " + this.lvl + " You have " + exp + " experience!");
} else if (exp == 100) {
System.out.println("Level up !!!");
exp = 0;
this.lvl++;
} else if (exp > 100) {
System.out.println("Level up !!!");
exp = exp - 100;
this.lvl++;
System.out.println("LvL: " + this.lvl + " You have " + exp + " experience!");
}
return this.lvl++;
最佳答案
首先,你必须弄清楚玩家应该升级多少级。要计算该值,请除以 100。
int levels = exp / 100;
由于这是整数算术,它会为您截断。 (因此,在您的 exp = 245
示例中,级别将为 2。
接下来,使用该值来计算用户还剩下多少体验。
exp = exp - (levels * 100);
最后,添加新级别。
this.lvl += levels;
关于java - 如何在另一个变量超过某个值时向变量添加增量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53546526/
我是一名优秀的程序员,十分优秀!