This commit is contained in:
Joan
2025-11-27 16:27:01 +01:00
parent 33cc9586c2
commit 81f8912059
304 changed files with 56149 additions and 10122 deletions

View File

@@ -0,0 +1,49 @@
#!/usr/bin/env python3
"""
Migration: Remove attacker_hp and defender_hp columns from pvp_combats table
These fields are no longer needed as we use player HP directly from players table.
"""
import asyncio
from api.database import engine
from sqlalchemy import text
async def migrate():
"""Remove HP fields from pvp_combats table"""
async with engine.begin() as conn:
print("🔧 Starting migration: Remove attacker_hp and defender_hp from pvp_combats...")
# Check if columns exist
check_query = text("""
SELECT column_name
FROM information_schema.columns
WHERE table_name = 'pvp_combats'
AND column_name IN ('attacker_hp', 'defender_hp')
""")
result = await conn.execute(check_query)
existing_columns = result.fetchall()
if not existing_columns:
print("✅ Columns already removed. Nothing to do.")
return
column_names = [row[0] for row in existing_columns]
print(f"Found {len(existing_columns)} column(s) to remove: {column_names}")
# Drop the columns
if 'attacker_hp' in column_names:
print("Dropping attacker_hp column...")
await conn.execute(text("ALTER TABLE pvp_combats DROP COLUMN IF EXISTS attacker_hp"))
print("✅ Dropped attacker_hp")
if 'defender_hp' in column_names:
print("Dropping defender_hp column...")
await conn.execute(text("ALTER TABLE pvp_combats DROP COLUMN IF EXISTS defender_hp"))
print("✅ Dropped defender_hp")
print("✅ Migration completed successfully!")
if __name__ == "__main__":
asyncio.run(migrate())