using System.Collections.Generic;

[System.Serializable]
public class GameData
{
    // Player Stats
    public int currentLevel;
    public int currentXP;
    public int overall_matches;
    public int overall_wins;
    public int overall_losses;
    public int win_streak;
    public int loss_streak;
    
    // Rank Data
    public int rank_game;
    public int rank_level;
    public int prevrank_level;
    public string rank;
    public string prevRank;
    
    // Mission Data
    public List<int> completed_missions;
    public List<int> completed_missions_toAnimate;
    public int animation_status;

    // Authentication and Settings
    public bool isAuthenticated;
    public GameSettings settings;

    // Constructor with default values
    public GameData()
    {
        currentLevel = 1;
        currentXP = 100; // Starting XP for new players
        overall_matches = 0;
        overall_wins = 0;
        overall_losses = 0;
        win_streak = 0;
        loss_streak = 0;
        rank_game = 0;
        rank_level = 1;
        prevrank_level = 1;
        rank = "Bronze";
        prevRank = "Bronze";
        completed_missions = new List<int>();
        completed_missions_toAnimate = new List<int>();
        animation_status = 0;
        isAuthenticated = false;
        settings = new GameSettings();
    }
} 