"""Expedition blueprint.""" import datetime import time from math import floor from flask import Blueprint, g from flask import request, abort import util from app import logger from db import Expedition, db from kancolle.helpers import MemberHelper from util import prepare_api_blueprint, svdata api_mission = Blueprint("api_mission", __name__) prepare_api_blueprint(api_mission) @api_mission.route("/start", methods=["GET", "POST"]) def start_mission(): # This is mostly an internal method. # This sets up the fleet for an expedition, sending them out. # First, get the required data from the request. fleet_id = int(request.values.get("api_deck_id")) - 1 expedition_id = int(request.values.get("api_mission_id")) # There's an extra value, api_mission. # No idea what it does. # Also, api_serial_cid # This is presumably an anti-bot method by DMM.
from flask import Blueprint from util import prepare_api_blueprint api_game = Blueprint('api_game', __name__) prepare_api_blueprint(api_game) from modules.api.entrypoint import member from modules.api.entrypoint import actions
""" kancolle/api -> Core API stuff. Bleh. """ from flask import g from util import prepare_api_blueprint, load_datadump, svdata from .actions import api_actions, api_user from .init import api_init from .member import api_member as api_member from .expedition import api_mission prepare_api_blueprint(api_actions) prepare_api_blueprint(api_member) prepare_api_blueprint(api_init) prepare_api_blueprint(api_user) @api_actions.before_request def load_api_start2(): if not 'data_start2' in g: g.data_start2 = load_datadump("api_start2.json") @api_actions.route('/api_start2', methods=['GET', 'POST']) def start2(): return svdata(g.data_start2)
from flask import request, Blueprint from db import db from helpers import _QuestHelper, _AdmiralHelper, _DockHelper from util import get_token_admiral_or_error, svdata, prepare_api_blueprint api_actions = Blueprint('api_actions', __name__) prepare_api_blueprint(api_actions) @api_actions.route('/api_req_hensei/lock', methods=['POST']) def lock(): """Heartlock/unheartlock a ship.""" admiral = get_token_admiral_or_error() admiralship = admiral.admiral_ships.filter_by(local_ship_num=int(request.values.get("api_ship_id")) - 1).first() locked = not admiralship.heartlocked admiralship.heartlocked = locked db.session.add(admiralship) db.session.commit() return svdata({"api_locked": int(locked)}) @api_actions.route('/api_req_kousyou/createship', methods=['POST']) def build(): admiral = get_token_admiral_or_error() fuel = int(request.values.get("api_item1")) ammo = int(request.values.get("api_item2")) steel = int(request.values.get("api_item3")) baux = int(request.values.get("api_item4"))
db.session.commit() return svdata({}) print(ship_pos, current_ship_pos) # Change fleet position of kanmusu 1. kmsu.fleet_position = ship_pos # Change fleet position of kanmusu 2, if applicable. if kmsu2: kmsu2.fleet_position = current_ship_pos db.session.add(kmsu, kmsu2) db.session.commit() return svdata({}) api_user = Blueprint('api_user', __name__) prepare_api_blueprint(api_user) @api_user.route('/api_get_member/ship3', methods=['GET', 'POST']) # Heh def ship3(): admiral = g.admiral # No idea. # spi_sort_order = request.values.get('spi_sort_order') # spi_sort_order = request.values.get('api_sort_key') admiral_ship_id = request.values.get('api_shipid') data = { "api_ship_data": [_ShipHelper.get_admiral_ship_api_data( admiral_ship_id)], "api_deck_data": AdmiralHelper.get_admiral_deck_api_data( admiral), "api_slot_data": _ItemHelper.get_slottype_list(admiral=admiral) }
db.session.commit() return svdata({}) print(ship_pos, current_ship_pos) # Change fleet position of kanmusu 1. kmsu.fleet_position = ship_pos # Change fleet position of kanmusu 2, if applicable. if kmsu2: kmsu2.fleet_position = current_ship_pos db.session.add(kmsu, kmsu2) db.session.commit() return svdata({}) api_user = Blueprint('api_user', __name__) prepare_api_blueprint(api_user) @api_user.route('/api_get_member/ship3', methods=['GET', 'POST']) # Heh def ship3(): admiral = g.admiral # No idea. # spi_sort_order = request.values.get('spi_sort_order') # spi_sort_order = request.values.get('api_sort_key') admiral_ship_id = request.values.get('api_shipid') data = { "api_ship_data": [_ShipHelper.get_admiral_ship_api_data(admiral_ship_id)], "api_deck_data": AdmiralHelper.get_admiral_deck_api_data(admiral), "api_slot_data": _ItemHelper.get_slottype_list(admiral=admiral)
from flask import request, Blueprint from db import db from helpers import DockHelper, ShipHelper, AdmiralHelper, QuestHelper from util import get_token_admiral_or_error, svdata, prepare_api_blueprint api_actions = Blueprint('api_actions', __name__) prepare_api_blueprint(api_actions) @api_actions.route('/api_req_hensei/lock', methods=['POST']) def lock(): """Heartlock/unheartlock a ship.""" admiral = get_token_admiral_or_error() admiralship = admiral.admiral_ships.filter_by( local_ship_num=int(request.values.get("api_ship_id")) - 1).first() locked = not admiralship.heartlocked admiralship.heartlocked = locked db.session.add(admiralship) db.session.commit() return svdata({"api_locked": int(locked)}) @api_actions.route('/api_req_kousyou/createship', methods=['POST']) def build(): admiral = get_token_admiral_or_error() fuel = int(request.values.get("api_item1")) ammo = int(request.values.get("api_item2")) steel = int(request.values.get("api_item3"))