Ejemplo n.º 1
0
        public DbInterface()
        {
            _campaignDb = new SqLiteDb(Properties.Settings.Default.CampaignDatabaseName);
            _mapDb      = new SqLiteDb(Properties.Settings.Default.MapDatabaseName);

            Party   = new DbParty(this, _campaignDb);
            Session = new DbSession(this, _campaignDb);

            Hexes          = new DbHex(this, _mapDb);
            HexConnections = new DbHexConnection(this, _mapDb);
            DbUpdater.CheckForCampaignDbSchemaUpdates(_campaignDb, Party, Session);
            DbUpdater.CheckForMapDbSchemaUpdates(_mapDb, Hexes, HexConnections);
        }
Ejemplo n.º 2
0
        public static void CheckForMapDbSchemaUpdates(IDbInstance db, DbHex hexes, DbHexConnection hexConnections)
        {
            long version = db.GetVersion();

            if (version == 0)
            {
                db.CreateTables(new IDbModule[] { hexes, hexConnections });
            }
            else
            {
                if (version <= 1)
                {
                    db.AlterAddColumn(hexes.TableName, DbHex.PlayerIcons, DbColumn.Text, true, "'0'");
                }
                if (version <= 2)
                {
                    db.AlterAddColumn(hexes.TableName, DbHex.FogOfWar, DbColumn.Integer, true, "0");
                }
            }


            db.SetVersion(CurrentMapDbVersion);
        }