KOJIMA Hiroyoshi
kojim****@robok*****
2003年 5月 19日 (月) 11:55:34 JST
小島です。 うーん 結局またバグってました。 皆さんすいません。 > Konkiti です。 > > > ======================= > > > > -1ということは、セットされていないということだと思います。 > > たぶん原因は GetLeagueFinalResultAction.java で > > robotId を 1 からそのシーズンにいるロボット数で > > 決め打ちしているからだと思います。 > > > > すぐに修正できそうなのですが、確認作業中に > > 環境を壊しちゃったので、これで修正できるのではないか、 > > と思われるパッチを rumble-jp-dev に投げます。 > > > > ======================= > > > > ということでパッチを。 > > > > どなたかチェックしてみて頂けるとありがたいです。 > > 外してるかもしれませんが… > > チェックしてみたいのですが、私の環境で生存率 -1のロボットがおりません。 > どのような条件で再現しますでしょうか。 > シーズンで戦っているロボットの数よりも、 robotIdで登録されている登録数(idの番号)の方が多いときこのバグが出てしまいます。 バグってる方では int totalRobots=robots_leagueId_seasonId.length; for(int i=0;i<totalRobots;i++){ SeasonRobot[] robots_leagueId_robotId = manager.getLeagueRobot(form.getLeagueId(),i+1); : : : } としておいて、(form.getLeagueId(),i+1);の、i+1にはrobotIdが入ってました。 ですが、実はそんなことはしていけなくて、 実際には、totalRobotsの数よりも、多くのロボットのrobotId番号の方が大きいわけで、 大きなrobotIdの生存率が、計算されなくなってしまいます。 気が付かずそのまま出してしまいました。 浜地さんのパッチでちゃんと動いています。 浜地さんありがとうございます。 -- KOJIMA Hiroyoshi (M2) 小島 弘義 mail : kojim****@robok*****