changed api of Battle