所以我对尝试了多少次感到沮丧。
我在这里使用#/ 100 =%* Balance =罚款,但是由于某些原因始终会导致结果为0。请注意,这使用了外部API。
double fine = (getConfig().getBoolean("fineispercentage") == true ? getConfig().getInt("fine") / 100 * count * econ.getBalance(event.getPlayer().getName()) : econ.getBalance(event.getPlayer().getName()) - (econ.getBalance(event.getPlayer().getName()) - count * getConfig().getInt("fine")));
如果为true,则始终为0。如果为false,则按照预期的方式进行操作,即根据计数减去一个量。
最佳答案
试试看(未测试):
double fine = (getConfig().getBoolean("fineispercentage") == true ? getConfig().getInt("fine") / 100.0 * count * econ.getBalance(event.getPlayer().getName()) : econ.getBalance(event.getPlayer().getName()) - (econ.getBalance(event.getPlayer().getName()) - count * getConfig().getInt("fine")));
诀窍是用
100.0
(双精度)除而不是100
(int)