Batalha atualizada com init e self