示例#1
0
文件: Move.java 项目: jpollo/rcrss
 public long getWeightToLowProcess(List<ShapeInArea> targets, Class<? extends MoveType> type) {
   long min = Long.MAX_VALUE;
   MoveType movetype = moves.get(type.hashCode());
   for (ShapeInArea shapeInArea : targets) {
     if (shapeInArea
         .getArea(me.model())
         .equals(me.me().getAreaPosition())) { // source and destination is in same area
       if (shapeInArea.contains(((Human) me.me()).getX(), ((Human) me.me()).getY())) {
         log().debug("in shape--Yoosef");
         return 0;
       }
     }
     min =
         Math.min(
             min,
             movetype.getWeightToLowProcess(
                 shapeInArea.getArea(me.model()),
                 shapeInArea.getCenterX(),
                 shapeInArea.getCenterY()));
   }
   if (min < 0) log().error(new Error("why it become negetive here???"));
   return min;
 }