Re: [求助] 有人航海日志正常的吗

楼主: Akaz (Akaz)   2015-09-25 18:29:25
关于扩张版的问题,在 github 上已经有人提出 issue:
https://github.com/nekopanda/logbook/issues/38
在 logbook.internal.Ship.java 666行:
/** 改造最终舰のID */
public static int getCharId(ShipInfoDto shipinfo) {
int charId = shipinfo.getShipId();
int afterShipId = shipinfo.getAftershipid();
while (afterShipId != 0) {
charId = afterShipId;
afterShipId = Ship.get(String.valueOf(afterShipId)).getAftershipid();
}
return charId;
}
因为 翔鹤改二改造后 = 翔鹤改二甲
翔鹤改二甲改造后 = 翔鹤改二
造成了无穷循环,导致航海日志扩张版无法正常运作。
(航海日志原版没有这样的设计)
如果会自行编译的板友可以稍微修改一下:
import java.util.Vector;
(中略)
/** 改造最终舰のID */
public static int getCharId(ShipInfoDto shipinfo) {
int charId = shipinfo.getShipId();
int afterShipId = shipinfo.getAftershipid();
Vector<Integer> seenId = new Vector<>();
while (afterShipId != 0) {
boolean seen = false;
for (int i : seenId) {
if (i == afterShipId) {
seen = true;
break;
}
}
if (seen)
break;
seenId.add (afterShipId);
charId = afterShipId;
afterShipId = Ship.get(String.valueOf(afterShipId)).getAftershipid();
}
return charId;
}
应该算是一个比较通用的暂时解法吧...
不过其实蛮无用的,会自行编译的人应该都有办法自己改...
作者: tonekaini (吾辈)   2015-09-25 18:30:00
这ID 是学弟
作者: Bread (面包)   2015-09-25 18:32:00
是tone的学弟应该是强者,我先跪一下
作者: tonekaini (吾辈)   2015-09-25 18:33:00
↖(‧ω‧‵) 也是面包的学弟啊 XDD
作者: zxcvb123454 (Allan)   2015-09-25 18:46:00
作者更新了
作者: Carrarese (母鸡带小鸭)   2015-09-25 18:50:00
感谢情报
作者: twosheep0603 (两羊)   2015-09-25 18:51:00
居然是这么神奇的bug
作者: ian90911 (xopowo)   2015-09-25 19:12:00
666
作者: Shissoufubi (疾走风靡)   2015-09-25 19:41:00
竟然是这原因wwww
作者: kira925 (1 2 3 4 疾风炭)   2015-09-25 19:54:00
居然是无穷循环XDDD

Links booklink

Contact Us: admin [ a t ] ucptt.com