91 lines
3.1 KiB
Python
91 lines
3.1 KiB
Python
"""
|
|
Script to help migrate main.py endpoints to router files.
|
|
This script analyzes endpoint patterns and generates router code.
|
|
"""
|
|
|
|
# Endpoint grouping patterns
|
|
ROUTER_GROUPS = {
|
|
"game_routes": [
|
|
"/api/game/state",
|
|
"/api/game/profile",
|
|
"/api/game/spend_point",
|
|
"/api/game/location",
|
|
"/api/game/move",
|
|
"/api/game/inspect",
|
|
"/api/game/interact",
|
|
"/api/game/use_item",
|
|
"/api/game/pickup",
|
|
"/api/game/inventory",
|
|
"/api/game/item/drop"
|
|
],
|
|
"equipment": [
|
|
"/api/game/equip",
|
|
"/api/game/unequip",
|
|
"/api/game/equipment",
|
|
"/api/game/repair_item",
|
|
"/api/game/repairable",
|
|
"/api/game/salvageable"
|
|
],
|
|
"crafting": [
|
|
"/api/game/craftable",
|
|
"/api/game/craft_item",
|
|
"/api/game/uncraft_item"
|
|
],
|
|
"loot": [
|
|
"/api/game/corpse/{corpse_id}",
|
|
"/api/game/loot_corpse"
|
|
],
|
|
"combat": [
|
|
"/api/game/combat",
|
|
"/api/game/combat/initiate",
|
|
"/api/game/combat/action",
|
|
"/api/game/pvp/initiate",
|
|
"/api/game/pvp/status",
|
|
"/api/game/pvp/acknowledge",
|
|
"/api/game/pvp/action"
|
|
],
|
|
"admin": [
|
|
"/api/internal/player/by_id/{player_id}",
|
|
"/api/internal/player/{player_id}/combat",
|
|
"/api/internal/combat/create",
|
|
"/api/internal/combat/{player_id}",
|
|
"/api/internal/player/{player_id}",
|
|
"/api/internal/player/{player_id}/move",
|
|
"/api/internal/player/{player_id}/inspect",
|
|
"/api/internal/player/{player_id}/interact",
|
|
"/api/internal/player/{player_id}/inventory",
|
|
"/api/internal/player/{player_id}/use_item",
|
|
"/api/internal/player/{player_id}/pickup",
|
|
"/api/internal/player/{player_id}/drop_item",
|
|
"/api/internal/player/{player_id}/equip",
|
|
"/api/internal/player/{player_id}/unequip",
|
|
"/api/internal/dropped-items",
|
|
"/api/internal/dropped-items/{dropped_item_id}",
|
|
"/api/internal/location/{location_id}/dropped-items",
|
|
"/api/internal/corpses/player",
|
|
"/api/internal/corpses/player/{corpse_id}",
|
|
"/api/internal/corpses/npc",
|
|
"/api/internal/corpses/npc/{corpse_id}",
|
|
"/api/internal/wandering-enemies",
|
|
"/api/internal/location/{location_id}/wandering-enemies",
|
|
"/api/internal/wandering-enemies/{enemy_id}",
|
|
"/api/internal/inventory/item/{item_db_id}",
|
|
"/api/internal/cooldown/{cooldown_key}",
|
|
"/api/internal/location/{location_id}/corpses/player",
|
|
"/api/internal/location/{location_id}/corpses/npc",
|
|
"/api/internal/image-cache/{image_path:path}",
|
|
"/api/internal/image-cache",
|
|
"/api/internal/player/{player_id}/status-effects"
|
|
],
|
|
"statistics": [
|
|
"/api/statistics/{player_id}",
|
|
"/api/statistics/me",
|
|
"/api/leaderboard/{stat_name}"
|
|
]
|
|
}
|
|
|
|
print("Router migration patterns defined")
|
|
print(f"Total routes to migrate: {sum(len(v) for v in ROUTER_GROUPS.values())}")
|
|
for router_name, routes in ROUTER_GROUPS.items():
|
|
print(f" - {router_name}: {len(routes)} routes")
|